XML 93 R79.htm IDEA: XBRL DOCUMENT
v3.8.0.1

Company Retirement Plans (Details) $ in Thousands | 12 Months Ended
--- | ---
Dec. 31, 2017 USD ($) item | Dec. 31, 2016 USD ($) | Dec. 31, 2015 USD ($)
United States | 401(k) Plan |  |  |
Company retirement plans |  |  |
Maximum contribution by employees (as a percent) | 100.00% |  |
Employer match of employee contributions on first level of eligible compensation (as a percent) | 100.00% |  |
Percentage of eligible compensation, first level, matched by employer | 3.00% |  |
Employer match of employee contributions on the second level of eligible compensation (as a percent) | 50.00% |  |
Percentage of eligible compensation, second level, partially matched by employer | 2.00% |  |
Employer discretionary contributions | $ 0 | $ 0 | $ 0
Employer's contribution | $ 4,100 | $ 3,900 | $ 3,700
Canada | On Quest Canada, ULC RRSP-DPSP Plan |  |  |
Company retirement plans |  |  |
Number of components of the plan | item | 2 |  |
Employer match of employee contributions on first level of eligible compensation (as a percent) | 100.00% |  |
Percentage of eligible compensation, first level, matched by employer | 3.00% |  |
Employer match of employee contributions on the second level of eligible compensation (as a percent) | 50.00% |  |
Percentage of eligible compensation, second level, partially matched by employer | 2.00% |  |
Number of years of employment as a vesting period of DPSP portion | 1 year |  |
Employer's contribution | $ 100 |  |

X
- Definition Represents the number of years of employment, considered as a vesting period of the DPSP Portion of the Registered Retirement Saving Plan - Deferred Profit Sharing Plan. + References No definition available. + Details
Name: | prim_DefinedContributionPlanDPSPPortionVestingPeriodAsNumberOfYearsOfEmployment
Namespace Prefix: | prim_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the second level of employee contributions (percentage of compensation) which are partially matched by the employer. + References No definition available. + Details
Name: | prim_DefinedContributionPlanEmployerMatchEmployeeContributionLevelTwo
Namespace Prefix: | prim_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the employer matching contribution of the first level of employee contributions. + References No definition available. + Details
Name: | prim_DefinedContributionPlanEmployerMatchLevelOne
Namespace Prefix: | prim_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the employer matching contribution of the second level of employee contributions. + References No definition available. + Details
Name: | prim_DefinedContributionPlanEmployerMatchLevelTwo
Namespace Prefix: | prim_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the first level of employee contributions (percentage of compensation) which are matched by the employer. + References No definition available. + Details
Name: | prim_DefinedContributionPlanEmployerMatchOfEmployeeContributionsLevelTwo
Namespace Prefix: | prim_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | prim_DefinedContributionPlanLineItems
Namespace Prefix: | prim_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the maximum contribution by eligible employees, as a percentage of their salary, subject to the annual limit prescribed by Internal Revenue Service. + References No definition available. + Details
Name: | prim_DefinedContributionPlanMaximumEmployeeContributionPercentage
Namespace Prefix: | prim_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the number of components of the defined contribution plan. + References No definition available. + Details
Name: | prim_DefinedContributionPlanNumberOfComponents
Namespace Prefix: | prim_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of cost for defined contribution plan. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 715 -SubTopic 70 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942 + Details
Name: | us-gaap_DefinedContributionPlanCostRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of discretionary contributions made by an employer to a defined contribution plan. + References No definition available. + Details
Name: | us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Details
Name: | us-gaap_RetirementPlanSponsorLocationAxis=country_US
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RetirementPlanNameAxis=prim_UnitedStatesDefinedContributionPlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RetirementPlanSponsorLocationAxis=country_CA
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RetirementPlanNameAxis=prim_ForeignDefinedContributionPlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |