XML 31 R48.htm IDEA: XBRL DOCUMENT
v3.20.1

Revenue From Contracts With Customers - Disaggregation of Revenue (Details) - USD ($) $ in Thousands | 3 Months Ended
--- | ---
Mar. 31, 2020 | Mar. 31, 2019
Disaggregation of Revenue [Line Items] |  |
Revenues | $ 296,688 | $ 223,949
Fixed-Unit Price |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 141,739 | 141,219
Lump Sum |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 114,252 | 39,132
Residential and Other |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 40,697 | 43,598
Heavy Civil |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 155,615 | 150,505
Heavy Civil | Heavy Highway |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 96,374 | 93,610
Heavy Civil | Aviation |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 28,457 | 29,937
Heavy Civil | Water Containment and Treatment |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 21,809 | 15,234
Heavy Civil | Other |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 8,975 | 11,724
Specialty Services |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 104,723 | 30,679
Specialty Services | Land Development |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 76,245 | 0
Specialty Services | Commercial |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | 28,478 | 30,679
Specialty Services |  |
Disaggregation of Revenue [Line Items] |  |
Revenues | $ 36,350 | $ 42,765

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_DisaggregationOfRevenueLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 4 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045 + Details
Name: | us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | us-gaap_ContractWithCustomerBasisOfPricingAxis=us-gaap_FixedPriceContractMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ContractWithCustomerBasisOfPricingAxis=strl_LumpSumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ContractWithCustomerBasisOfPricingAxis=strl_ResidentialAndOtherMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=strl_HeavyCivilConstructionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=strl_HeavyHighwayMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=strl_AviationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=strl_WaterContainmentAndTreatmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=strl_OtherRevenueMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=strl_SpecialtyServiceMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=strl_LandDevelopmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=strl_CommercialMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=strl_ResidentialConstructionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |