XML 90 R73.htm IDEA: XBRL DOCUMENT
v3.20.4

Commitments and Contingencies - Narrative (Details) - USD ($) $ in Thousands | 12 Months Ended |
--- | --- | ---
Dec. 31, 2020 | Dec. 31, 2019 | Dec. 31, 2018 | Jun. 30, 2020
Loss Contingencies [Line Items] |  |  |  |
Claim amounts that affect ultimate liability | $ 100 |  |  |
Payments for general liability per occurrence | 350 |  |  |
Maximum liability | 4,000 |  |  |
Commercial insurance coverage | $ 75,000 |  |  |
Consolidated ownership percentage | 50.00% |  |  | 50.00%
Minimum |  |  |  |
Loss Contingencies [Line Items] |  |  |  |
Payments for workers compensation per occurrence | $ 2 |  |  |
Maximum |  |  |  |
Loss Contingencies [Line Items] |  |  |  |
Payments for workers compensation per occurrence | 250 |  |  |
Tealstone |  |  |  |
Loss Contingencies [Line Items] |  |  |  |
Earn-out expense | 1,500 | $ 2,000 | $ 1,900 |
Tealstone | Maximum |  |  |  |
Loss Contingencies [Line Items] |  |  |  |
Earn-out expense | $ 15,000 |  |  |

X
- Definition Commercial Insurance Coverage + References No definition available. + Details
Name: | strl_CommercialInsuranceCoverage
Namespace Prefix: | strl_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Consolidated Entities, Ownership Percentage + References No definition available. + Details
Name: | strl_ConsolidatedEntitiesOwnershipPercentage
Namespace Prefix: | strl_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Amount of cost from an agreement as earn-out expense. + References No definition available. + Details
Name: | strl_EarnoutExpense
Namespace Prefix: | strl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition General Liability And Workers Compensation Claim Per Occurrence That Would Affect Ultimate Liability + References No definition available. + Details
Name: | strl_GeneralLiabilityAndWorkersCompensationClaimPerOccurrenceThatWouldAffectUltimateLiability
Namespace Prefix: | strl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Represents self insurance general liability, amount per occurrence. + References No definition available. + Details
Name: | strl_SelfInsuranceGeneralLiabilityAmountPerOccurrence
Namespace Prefix: | strl_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Represents self insurance workers compensation claims, amount per occurrence. + References No definition available. + Details
Name: | strl_SelfInsuranceWorkersCompensationClaimsAmountPerOccurrence
Namespace Prefix: | strl_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Represents self insurance workers compensation claims, maximum liability + References No definition available. + Details
Name: | strl_SelfInsuranceWorkersCompensationClaimsMaximumLiability
Namespace Prefix: | strl_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_LossContingenciesLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=strl_TealstoneConstructionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |