XML 72 R55.htm IDEA: XBRL DOCUMENT
v3.20.4

Revenue from Customers - Narrative (Details) - USD ($) $ in Thousands | 12 Months Ended
--- | ---
Dec. 31, 2020 | Dec. 31, 2019 | Dec. 31, 2018
Operating income (Loss) |  |  |
Disaggregation of Revenue [Line Items] |  |  |
Estimated construction gain (loss) before tax | $ 7,439 | $ (9,044) | $ 7,098
Costs and Estimated Earnings in Excess of Billings |  |  |
Disaggregation of Revenue [Line Items] |  |  |
Provision for estimated loss on uncompleted contracts | $ 7,142 | $ 3,000 |

X
- Definition Represents net estimated gross profit (loss) before tax. + References No definition available. + Details
Name: | strl_EstimatedConstructionGrossProfitLossBeforeTax
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_DisaggregationOfRevenueLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of cost incurred on construction contract for unapproved change order, claim, or similar item subject to uncertainty. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 910 -SubTopic 20 -Section 50 -Paragraph 1 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=6471471&loc=d3e48698-109348 + Details
Name: | us-gaap_UnapprovedChangeOrdersAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_OperatingIncomeLossMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BalanceSheetLocationAxis=strl_CostsAndEstimatedEarningsInExcessOfBillingsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |