/* Equipment composition. Load after rebuild-equipment, before finish-system. */
.rebuild-equipment { --equipment-paper:#f6f5f2; --equipment-line:#e4e1dc; }
.rebuild-equipment .equipment-section { padding-block:clamp(44px,5vw,68px); }
.rebuild-equipment .equipment-container { width:min(1240px,calc(100% - 64px)); }
.rebuild-equipment .equipment-section :is(h2,h3,h4) { text-wrap:balance; }
.rebuild-equipment .equipment-section h2 { margin-bottom:22px; }
.rebuild-equipment .equipment-section h4 { font-size:clamp(21px,1.9vw,26px); line-height:1.3; margin-block:0 18px; }
.rebuild-equipment .equipment-copy > :last-child,
.rebuild-equipment .equipment-reading > :last-child { margin-bottom:0; }
.rebuild-equipment .equipment-split { gap:clamp(30px,5vw,64px); }
.rebuild-equipment .equipment-grid { gap:24px; align-items:stretch; }
.rebuild-equipment .equipment-grid > * { margin-block:0!important; }
.rebuild-equipment .equipment-container > .equipment-grid:first-child { margin-top:0; }
.rebuild-equipment .equipment-card { display:flex; flex-direction:column; border:1px solid var(--equipment-line); border-radius:5px; }
.rebuild-equipment .equipment-card-media { padding:0; flex:none; background:#fff; line-height:0; }
.rebuild-equipment .equipment-card-media figure,
.rebuild-equipment .equipment-card-media .htc-card__media { width:100%; height:auto; min-height:0; aspect-ratio:auto!important; margin:0!important; background:#fff; border-bottom:0!important; }
.rebuild-equipment .equipment-card-media figure > a { display:block; width:100%; height:auto; }
.rebuild-equipment .equipment-card-media img { display:block; width:100%; height:auto; max-height:none; object-fit:cover; }
.rebuild-equipment .equipment-card-copy { display:flex; flex-direction:column; flex:1; gap:14px; margin:0!important; padding:26px; }
.rebuild-equipment .equipment-card-copy > :is(h2,h3,h4,p,ul) { margin:0; }
.rebuild-equipment .equipment-card-copy :is(h2,h3) { font-size:clamp(25px,2vw,31px); line-height:1.15; }
.rebuild-equipment .equipment-card-copy h4 { font-size:20px; line-height:1.35; }
.rebuild-equipment .equipment-card-copy :is(h2,h3,h4) a { text-decoration:none; color:inherit; }
.rebuild-equipment .equipment-card-copy :is(h2,h3,h4) a:hover { text-decoration:underline; text-decoration-color:#ff7044; text-underline-offset:4px; }
.rebuild-equipment .equipment-card-copy p { color:#514d47; font-size:16px; line-height:1.65; }
.rebuild-equipment .equipment-card-copy > .wp-block-buttons:last-child { margin-top:auto!important; padding-top:6px; }
.rebuild-equipment .equipment-card .wp-block-buttons { gap:10px; }
.rebuild-equipment .equipment-card .wp-block-button__link { padding:13px 18px!important; font-size:13px!important; letter-spacing:.035em; }
.rebuild-equipment .equipment-feature .equipment-card-copy { color:#272522; }
/* Core heading colors do not inherit the dark band's foreground. Set them explicitly. */
body main .rebuild-equipment .equipment-section.equipment-feature :is(h1,h2,h3,h4,h5,h6) { color:#fff!important; }
body main .rebuild-equipment .equipment-section.equipment-feature :is(.is-style-eyebrow,.equipment-kicker) { color:#eeeae4!important; }
body main .rebuild-equipment .equipment-section.equipment-feature a:not(.wp-block-button__link):not(.wp-element-button) { color:#ffb092; text-underline-offset:3px; }
body main .rebuild-equipment .equipment-section.equipment-feature a:not(.wp-block-button__link):not(.wp-element-button):hover { color:#fff; }
body main .rebuild-equipment .equipment-section.equipment-feature :is(h1,h2,h3,h4,h5,h6) a { color:inherit!important; }
/* White cards and disclosures remain light surfaces inside a dark section. */
body main .rebuild-equipment .equipment-section.equipment-feature :is(.equipment-card,.wp-block-details) :is(h1,h2,h3,h4,h5,h6,.is-style-eyebrow,.equipment-kicker) { color:#272522!important; }
body main .rebuild-equipment .equipment-section.equipment-feature :is(.equipment-card,.wp-block-details) a:not(.wp-block-button__link):not(.wp-element-button) { color:#91320f; }
body main .rebuild-equipment .equipment-section.equipment-feature :is(.equipment-card,.wp-block-details) a:not(.wp-block-button__link):not(.wp-element-button):hover { color:#272522; }
.rebuild-equipment .equipment-card ul { padding-left:20px; }
.rebuild-equipment .equipment-card li { margin-block:0 10px; }
.rebuild-equipment .equipment-card li:last-child { margin-bottom:0; }

/* The image itself owns the frame. Never force one height on every kind of asset. */
.rebuild-equipment .equipment-card-media .equipment-image--photo img { aspect-ratio:3/2; height:auto!important; object-fit:cover; }
.rebuild-equipment .equipment-card-media .equipment-image--wide-photo img { aspect-ratio:800/338; height:auto!important; object-fit:cover; }
.rebuild-equipment .equipment-card-media .equipment-image--product img { height:220px!important; aspect-ratio:auto; object-fit:contain; padding:16px 20px; background:#fff; }
.rebuild-equipment .equipment-card-media .equipment-image--diagram img { height:220px!important; aspect-ratio:auto; object-fit:contain; padding:16px 20px; background:#fff; }
.rebuild-equipment .equipment-card-media .equipment-image--document img { height:210px!important; aspect-ratio:auto; object-fit:contain; padding:18px; background:#f4f3f0; }
.rebuild-equipment .equipment-card-media .equipment-image--symbol img { height:110px!important; aspect-ratio:auto; object-fit:contain; padding:12px; background:#fff; }
.rebuild-equipment .equipment-media > .equipment-image--product img { max-height:390px; object-fit:contain; background:#fff; }
.rebuild-equipment .equipment-media > .equipment-image--photo img { max-height:none; border-radius:5px; }
.rebuild-equipment .equipment-media > .equipment-image--wide-photo img { max-height:none; border-radius:5px; }
.rebuild-equipment .equipment-specs > .equipment-container > .equipment-reading > figure img { max-height:380px; }
.rebuild-equipment .htc-compact-intro .wp-block-video { margin:24px 0 0; border-radius:5px; overflow:hidden; background:#272522; }
.rebuild-equipment .htc-compact-intro .wp-block-video video { display:block; width:100%; max-height:480px; object-fit:contain; }
.rebuild-equipment .equipment-floorplan { gap:18px; padding:22px; background:#fff; }
.rebuild-equipment .equipment-floorplan :is(h2,h3) { font-size:22px; line-height:1.25; min-height:2.5em; margin:0; }
.rebuild-equipment .equipment-floorplan img { height:auto; max-height:230px; aspect-ratio:808/282; object-fit:contain; }
.rebuild-equipment .equipment-diagram { padding:24px; gap:18px; }
.rebuild-equipment .equipment-diagram > * { margin:0!important; }
.rebuild-equipment .equipment-diagram > figure { width:100%; aspect-ratio:auto!important; background:#fff; }
.rebuild-equipment .equipment-diagram > figure img { height:auto; max-height:300px; object-fit:contain; }
.rebuild-equipment .equipment-diagram > figure.equipment-image--symbol img { width:200px; max-width:100%; height:70px; object-fit:contain; object-position:left center; }
.rebuild-equipment .equipment-diagram > figure:only-child { height:100%; display:flex; align-items:center; }
.rebuild-equipment .equipment-diagram > figure:only-child img { max-height:400px; }
.rebuild-equipment .equipment-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.rebuild-equipment .equipment-grid--seven { grid-template-columns:repeat(3,minmax(0,1fr)); }
.rebuild-equipment .equipment-grid--seven > .equipment-card:last-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; }
.rebuild-equipment .equipment-grid--seven > .equipment-card:last-child .equipment-card-media { display:flex; align-items:center; background:#fff; }
.rebuild-equipment .equipment-grid--seven > .equipment-card:last-child .equipment-card-copy { justify-content:center; }
.rebuild-equipment .equipment-grid--seven > .equipment-card:last-child .wp-block-buttons { margin-top:0!important; }
.rebuild-equipment .equipment-engine-options > .equipment-card:first-child { align-items:stretch; }
.rebuild-equipment .equipment-engine-options > .equipment-card:first-child .equipment-card-media { display:flex; align-items:center; background:#e8e7e4; }
.rebuild-equipment .equipment-engine-options > .equipment-card:first-child .equipment-card-media img { aspect-ratio:1.6; object-fit:cover; }
.rebuild-equipment .equipment-engine-options > .equipment-card:first-child .equipment-card-copy { justify-content:center; padding:36px; }
.rebuild-equipment .equipment-engine-options > .equipment-card:first-child .wp-block-buttons { margin-top:0!important; }
.rebuild-equipment .equipment-page-new-trailers .equipment-card-copy { padding:24px; }

/* Selected real-world photographs fill a half-width slice, echoing the homepage. */
.rebuild-equipment .equipment-section.equipment-edge-split { padding:0!important; }
.rebuild-equipment .equipment-edge-split > .equipment-container { width:100%; max-width:none; margin:0!important; }
.rebuild-equipment .equipment-edge-split .equipment-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0; align-items:stretch; }
.rebuild-equipment .equipment-edge-split .equipment-copy { margin:0!important; padding:56px clamp(30px,5vw,76px) 56px max(32px,calc((100vw - 1240px)/2)); align-self:center; }
.rebuild-equipment .equipment-edge-split .equipment-copy > :first-child { margin-top:0; }
.rebuild-equipment .equipment-edge-split .equipment-copy ul { padding-left:22px; }
.rebuild-equipment .equipment-edge-split .equipment-copy li { margin-bottom:10px; }
.rebuild-equipment .equipment-edge-split .equipment-media { position:relative; margin:0!important; min-height:440px; align-self:stretch; overflow:hidden; }
.rebuild-equipment .equipment-edge-split .equipment-media > figure { position:absolute; inset:0; width:100%; height:100%; margin:0!important; }
.rebuild-equipment .equipment-edge-split .equipment-media img { display:block; width:100%; height:100%; max-height:none; object-fit:cover; border-radius:0; }
.rebuild-equipment .equipment-edge-split--media-left .equipment-media { grid-column:1; grid-row:1; }
.rebuild-equipment .equipment-edge-split--media-left .equipment-copy { grid-column:2; grid-row:1; padding:56px max(32px,calc((100vw - 1240px)/2)) 56px clamp(30px,5vw,76px); }

/* Trailer support cards and the EV service journey share aligned photographic entries. */
.rebuild-equipment .equipment-support-card { padding:0; }
.rebuild-equipment .equipment-support-card .equipment-card-copy { padding:28px; }
.rebuild-equipment .equipment-support-card .equipment-card-media img { aspect-ratio:1.8!important; }
.rebuild-equipment .equipment-grid--journey { grid-template-columns:minmax(0,1fr)!important; gap:24px; }
.rebuild-equipment .equipment-journey-card { padding:0; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); }
.rebuild-equipment .equipment-journey-card .equipment-card-media { position:relative; min-height:350px; border-bottom:0!important; border-right:4px solid #ff7044; }
.rebuild-equipment .equipment-journey-card .equipment-card-media > figure { position:absolute; inset:0; height:100%; }
.rebuild-equipment .equipment-journey-card .equipment-card-media img { height:100%!important; aspect-ratio:auto!important; object-fit:cover; }
.rebuild-equipment .equipment-journey-card .equipment-card-copy { padding:32px; gap:14px; }
.rebuild-equipment .equipment-journey-card .equipment-card-copy h2 { font-size:34px; }
.rebuild-equipment .equipment-journey-card .equipment-kicker { color:#6a6359; font-size:12px; }
.rebuild-equipment .equipment-journey-card:nth-child(even) { grid-template-columns:minmax(0,2fr) minmax(0,1fr); }
.rebuild-equipment .equipment-journey-card:nth-child(even) .equipment-card-media { grid-column:2; grid-row:1; border-right:0; border-left:4px solid #ff7044; }
.rebuild-equipment .equipment-journey-card:nth-child(even) .equipment-card-copy { grid-column:1; grid-row:1; }

/* Text-heavy steps become legible rows, rather than artificially matched tall cards. */
.rebuild-equipment .equipment-grid--steps { grid-template-columns:minmax(0,1fr)!important; gap:16px; }
.rebuild-equipment .equipment-grid--steps > .equipment-stage { display:grid; grid-template-columns:52px minmax(180px,.8fr) minmax(0,1.8fr); gap:28px; align-items:start; padding:28px; border:1px solid var(--equipment-line); border-left:4px solid #ff7044; }
.rebuild-equipment .equipment-stage > * { margin:0!important; }
.rebuild-equipment .equipment-stage .equipment-step { font-size:32px; line-height:1.1; font-weight:700; color:#b5411c; }
.rebuild-equipment .equipment-stage h2 { font-size:28px; line-height:1.15; }
.rebuild-equipment .equipment-stage-body > :last-child { margin-bottom:0; }
.rebuild-equipment .equipment-stage-body p { font-size:16px; line-height:1.65; }
.rebuild-equipment .equipment-stages .equipment-container > .wp-block-buttons,
.rebuild-equipment .equipment-charging .equipment-container > .wp-block-buttons { margin-top:28px; }
.rebuild-equipment .equipment-subnav { padding-block:20px!important; background:#f4f3f0!important; }
.rebuild-equipment .equipment-subnav .equipment-reading { max-width:1240px; }
.rebuild-equipment .equipment-subnav .wp-block-buttons { gap:8px; }
.rebuild-equipment .equipment-subnav .wp-block-button__link { font-size:12px!important; padding:12px 16px!important; }
.rebuild-equipment .equipment-charging-photo { max-width:900px; margin:32px auto 0; border-radius:5px; overflow:hidden; }
.rebuild-equipment .equipment-charging-photo img { max-height:470px; height:auto; width:100%; object-fit:cover; }

/* Long bus pages: calm chapter starts, readable facts, compact icon rows. */
.rebuild-equipment .equipment-chapter-head { padding-block:34px!important; background:#efede8!important; }
.rebuild-equipment .equipment-chapter-head .equipment-kicker { font-size:13px; margin-bottom:12px; color:#6c6257; }
.rebuild-equipment .equipment-chapter-head h2 { margin:0; font-size:clamp(30px,3vw,43px); }
.rebuild-equipment .equipment-chapter-section { padding-block:44px; }
.rebuild-equipment .equipment-grid.equipment-chapter-section { padding:0; }
.rebuild-equipment .equipment-chapter-section .equipment-grid { align-items:stretch; }
.rebuild-equipment .equipment-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; border:1px solid var(--equipment-line); border-radius:5px; overflow:hidden; margin-top:24px; }
.rebuild-equipment .equipment-facts p { margin:0!important; padding:14px 16px; font-size:14px; line-height:1.5; border-bottom:1px solid var(--equipment-line); background:#fff; }
.rebuild-equipment .equipment-facts p:nth-child(4n+3),
.rebuild-equipment .equipment-facts p:nth-child(4n+4) { background:#f4f3f0; }
.rebuild-equipment .equipment-facts p:nth-child(odd) { border-right:1px solid var(--equipment-line); }
.rebuild-equipment .equipment-facts p:nth-last-child(-n+2) { border-bottom:0; }
.rebuild-equipment .equipment-facts strong { display:block; color:#292622; font-size:14px; }
.rebuild-equipment .equipment-grid--icons > .equipment-card { display:grid; grid-template-columns:60px minmax(0,1fr); align-items:start; gap:18px; padding:22px; }
.rebuild-equipment .equipment-grid--icons .equipment-card-media { border:0!important; background:none; }
.rebuild-equipment .equipment-grid--icons .equipment-card-media img { width:60px; height:60px!important; padding:0; object-fit:contain; }
.rebuild-equipment .equipment-grid--icons .equipment-card-copy { padding:0; }
.rebuild-equipment .equipment-grid--icons .equipment-card-copy p { font-size:15px; }
.rebuild-equipment .equipment-grid--symbols .equipment-card { flex-direction:row; align-items:center; gap:16px; padding:24px; }
.rebuild-equipment .equipment-grid--symbols .equipment-card-media { width:76px; border:0!important; }
.rebuild-equipment .equipment-grid--symbols .equipment-card-media img { height:76px!important; width:76px; padding:0; }
.rebuild-equipment .equipment-grid--symbols .equipment-card-copy { padding:0; gap:8px; }
.rebuild-equipment .equipment-grid--symbols .equipment-card-copy h3 { font-size:22px; }
.rebuild-equipment .equipment-grid--symbols .equipment-card-copy p { font-size:14px; line-height:1.5; }
.rebuild-equipment .equipment-financing:not(.equipment-edge-split) { background:#f0eee9!important; padding-block:42px; }
.rebuild-equipment .equipment-financing .equipment-media:has(img[src*="finance-spheres"]) { flex-basis:32%!important; flex-grow:0; }
.rebuild-equipment .equipment-financing .equipment-media img[src*="finance-spheres"] { max-width:360px; max-height:180px; margin-left:auto; background:transparent; }
.rebuild-equipment .equipment-faq details { border:1px solid var(--equipment-line); border-radius:5px; margin-bottom:12px; padding:22px 24px; }
.rebuild-equipment .equipment-faq details summary { font-size:21px; line-height:1.35; }
.rebuild-equipment .equipment-faq details[open] summary { margin-bottom:18px; }
.rebuild-equipment .equipment-faq details > :last-child { margin-bottom:0; }
.rebuild-equipment .equipment-specs .wp-block-table { border:1px solid var(--equipment-line); border-radius:5px; }
.rebuild-equipment .equipment-specs table { font-size:15px; }
.rebuild-equipment .equipment-specs :is(td,th) { padding:14px 16px; }

@media(max-width:1000px) {
 .rebuild-equipment .equipment-grid--three,
 .rebuild-equipment .equipment-grid--seven { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .rebuild-equipment .equipment-grid--steps > .equipment-stage { grid-template-columns:40px minmax(0,1fr); gap:16px 22px; }
 .rebuild-equipment .equipment-stage-body { grid-column:2; }
 .rebuild-equipment .equipment-journey-card .equipment-card-copy { padding:26px; }
 .rebuild-equipment .equipment-edge-split .equipment-copy { padding:38px 28px; }
 .rebuild-equipment .equipment-grid--icons > .equipment-card { gap:14px; padding:20px; }
}
@media(max-width:781px) {
 .rebuild-equipment .equipment-container { width:calc(100% - 40px); }
 .rebuild-equipment .equipment-section { padding-block:40px; }
 .rebuild-equipment .equipment-grid,
 .rebuild-equipment .equipment-resources .equipment-grid { grid-template-columns:minmax(0,1fr)!important; gap:20px; }
 .rebuild-equipment .equipment-card-copy,
 .rebuild-equipment .equipment-support-card .equipment-card-copy { padding:23px; }
 .rebuild-equipment .equipment-card-media .equipment-image--product img { height:210px!important; }
 .rebuild-equipment .equipment-floorplan img { max-height:none; }
 .rebuild-equipment .equipment-floorplan :is(h2,h3) { min-height:0; }
 .rebuild-equipment .equipment-engine-options > .equipment-card:first-child { display:flex; }
 .rebuild-equipment .equipment-engine-options > .equipment-card:first-child .equipment-card-copy { padding:24px; }
 .rebuild-equipment .equipment-grid--seven > .equipment-card:last-child { display:flex; }
 .rebuild-equipment .equipment-edge-split > .equipment-container { width:100%; }
 .rebuild-equipment .equipment-edge-split .equipment-split { display:flex; flex-direction:column; gap:0; }
 .rebuild-equipment .equipment-edge-split .equipment-split > .wp-block-column { width:100%; flex-basis:auto!important; }
 .rebuild-equipment .equipment-edge-split .equipment-media { order:-1; min-height:0; }
 .rebuild-equipment .equipment-edge-split .equipment-media > figure { position:static; height:auto; }
 .rebuild-equipment .equipment-edge-split .equipment-media img { height:auto; aspect-ratio:3/2; }
 .rebuild-equipment .equipment-edge-split .equipment-copy { padding:34px 22px; }
 .rebuild-equipment .equipment-journey-card,
 .rebuild-equipment .equipment-journey-card:nth-child(even) { display:flex; flex-direction:column; }
 .rebuild-equipment .equipment-journey-card .equipment-card-media,
 .rebuild-equipment .equipment-journey-card:nth-child(even) .equipment-card-media { position:static; min-height:0; border:0; border-bottom:4px solid #ff7044!important; }
 .rebuild-equipment .equipment-journey-card .equipment-card-media > figure { position:static; height:auto; }
 .rebuild-equipment .equipment-journey-card .equipment-card-media img { height:auto!important; aspect-ratio:1.8!important; }
 .rebuild-equipment .equipment-journey-card .equipment-card-copy { padding:24px; }
 .rebuild-equipment .equipment-stage h2 { font-size:26px; }
 .rebuild-equipment .equipment-grid--steps > .equipment-stage { padding:22px 18px; }
 .rebuild-equipment .equipment-stage-body { grid-column:1/-1; }
 .rebuild-equipment .equipment-chapter-head { padding-block:28px!important; }
 .rebuild-equipment .equipment-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .rebuild-equipment .equipment-facts p { padding:12px; font-size:13px; }
 .rebuild-equipment .equipment-grid--icons > .equipment-card { grid-template-columns:52px minmax(0,1fr); }
 .rebuild-equipment .equipment-grid--icons .equipment-card-media img { width:52px; height:52px!important; }
 .rebuild-equipment .equipment-financing .equipment-media img[src*="finance-spheres"] { max-width:260px; margin-inline:0; }
}
