<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.26.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>54</ContextCount>
  <ElementCount>27</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>8</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>1</UnitCount>
  <MyReports>
    <Report instance="trn-20260408.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>995100 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/dei/role/document/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="trn-20260408.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>995410 - Disclosure - Pay vs Performance Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/PvpDisclosure</Role>
      <ShortName>Pay vs Performance Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="DEF 14A" isProxy="true" isUsgaap="true" original="trn-20260408.htm">trn-20260408.htm</File>
    <File>trn-20260408.xsd</File>
    <File>trn-20260408_def.xml</File>
    <File>trn-20260408_lab.xml</File>
    <File>trn-20260408_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>trn-20260408_g1.jpg</File>
    <File>trn-20260408_g10.gif</File>
    <File>trn-20260408_g11.jpg</File>
    <File>trn-20260408_g12.jpg</File>
    <File>trn-20260408_g13.jpg</File>
    <File>trn-20260408_g14.gif</File>
    <File>trn-20260408_g15.gif</File>
    <File>trn-20260408_g16.gif</File>
    <File>trn-20260408_g17.gif</File>
    <File>trn-20260408_g18.gif</File>
    <File>trn-20260408_g19.gif</File>
    <File>trn-20260408_g2.jpg</File>
    <File>trn-20260408_g20.gif</File>
    <File>trn-20260408_g21.jpg</File>
    <File>trn-20260408_g22.jpg</File>
    <File>trn-20260408_g23.jpg</File>
    <File>trn-20260408_g24.jpg</File>
    <File>trn-20260408_g25.jpg</File>
    <File>trn-20260408_g26.jpg</File>
    <File>trn-20260408_g27.jpg</File>
    <File>trn-20260408_g28.jpg</File>
    <File>trn-20260408_g29.gif</File>
    <File>trn-20260408_g3.jpg</File>
    <File>trn-20260408_g30.jpg</File>
    <File>trn-20260408_g31.jpg</File>
    <File>trn-20260408_g32.jpg</File>
    <File>trn-20260408_g33.jpg</File>
    <File>trn-20260408_g34.jpg</File>
    <File>trn-20260408_g35.jpg</File>
    <File>trn-20260408_g36.jpg</File>
    <File>trn-20260408_g37.jpg</File>
    <File>trn-20260408_g38.jpg</File>
    <File>trn-20260408_g39.jpg</File>
    <File>trn-20260408_g4.gif</File>
    <File>trn-20260408_g40.jpg</File>
    <File>trn-20260408_g5.gif</File>
    <File>trn-20260408_g6.gif</File>
    <File>trn-20260408_g7.jpg</File>
    <File>trn-20260408_g8.gif</File>
    <File>trn-20260408_g9.gif</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="5">http://fasb.org/us-gaap/2026</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/dei/2026</BaseTaxonomy>
    <BaseTaxonomy items="131">http://xbrl.sec.gov/ecd/2026</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
