/* Offline truck-family rebuild. Parent enqueues this file on integration.
   All rules are scoped; the legacy contact group remains outside this root. */
.rebuild-trucks { --rt-ink:#272522; --rt-muted:#625e58; --rt-orange:#ff7044; --rt-paper:#faf9f6; --rt-warm:#eeece7; --rt-line:#d9d5ce; color:var(--rt-ink); background:var(--rt-paper); }
.rebuild-trucks .rt-container { width:min(1240px,calc(100% - 80px)); max-width:1240px; margin-inline:auto; }
.rebuild-trucks .rt-hero { padding:64px 0 54px; background:var(--rt-warm); overflow:hidden; }
.rebuild-trucks .rt-split { gap:clamp(28px,5vw,76px); margin:0; }
.rebuild-trucks .rt-split > .wp-block-column { min-width:0; }
.rebuild-trucks .rt-split--hero { align-items:center; }
.rebuild-trucks .rt-hero-heading h1 { font-size:clamp(42px,4.8vw,76px); line-height:1.04; letter-spacing:-.045em; margin:22px 0; max-width:12ch; text-wrap:balance; color:var(--rt-ink); }
.rebuild-trucks .rt-hero-heading h1 sup { font-size:.34em; vertical-align:super; }
.rebuild-trucks .htc-crumbs { color:var(--rt-muted); font-size:13px; line-height:1.65; margin:0 0 30px; }
.rebuild-trucks .rt-hero-heading .is-style-eyebrow,
.rebuild-trucks .rt-eyebrow { font-size:12px; font-weight:750; letter-spacing:.12em; text-transform:uppercase; color:var(--rt-muted); margin:0 0 18px; }
.rebuild-trucks .rt-hero-visual { min-width:0; background:#fff; border-bottom:5px solid var(--rt-orange); }
.rebuild-trucks .rt-hero-image { margin:0; width:100%; }
.rebuild-trucks .rt-hero-image img { display:block; width:100%; height:clamp(260px,30vw,440px); object-fit:contain; padding:20px; box-sizing:border-box; }
.rebuild-trucks .rt-hero-intro { max-width:1030px; margin-top:38px; }
.rebuild-trucks .rt-hero-intro h2,
.rebuild-trucks .rt-hero-intro h3 { font-size:clamp(24px,2.4vw,34px); line-height:1.18; margin:0 0 18px; }
.rebuild-trucks .rt-hero-intro p { max-width:85ch; line-height:1.65; }
.rebuild-trucks .rt-hero-intro .is-style-lead { font-size:clamp(18px,1.5vw,22px); }
.rebuild-trucks .rt-hero-intro .wp-block-buttons { margin-top:24px; }
.rebuild-trucks .rt-navigation { padding:22px 0; background:#fff; border-bottom:1px solid var(--rt-line); }
.rebuild-trucks .rt-page-nav { gap:10px; }
.rebuild-trucks .wp-block-buttons { display:flex; flex-wrap:wrap; gap:12px; }
.rebuild-trucks .wp-block-button { max-width:100%; }
.rebuild-trucks .wp-block-button .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:13px 21px; border:0; border-radius:0; background:var(--rt-orange); color:#272522; font-size:14px; font-weight:750; line-height:1.35; text-align:left; text-transform:none; text-decoration:none; box-shadow:none; box-sizing:border-box; overflow-wrap:anywhere; }
.rebuild-trucks .wp-block-button .wp-block-button__link:hover { background:#ed5c31; color:#171614; }
.rebuild-trucks .wp-block-button.is-style-text-link .wp-block-button__link::after { display:none; }
.rebuild-trucks :is(a,summary):focus-visible { outline:3px solid #a63812; outline-offset:5px; }
.rebuild-trucks .rt-page-nav .wp-block-button__link { font-size:12px; padding:10px 14px; min-height:42px; }
.rebuild-trucks .rt-section { margin:0; padding:clamp(48px,6vw,88px) 0; scroll-margin-top:120px; }
.rebuild-trucks .rt-section--warm { background:var(--rt-warm); }
.rebuild-trucks .rt-section--dark { background:var(--rt-ink); color:#fff; }
.rebuild-trucks .rt-section--dark :is(h2,h3,h4,p,li) { color:#fff; }
.rebuild-trucks .rt-section--dark .rt-eyebrow { color:#ff997a; }
.rebuild-trucks .rt-section h2 { font-size:clamp(28px,3vw,44px); line-height:1.12; letter-spacing:-.025em; text-wrap:balance; margin:0 0 26px; }
.rebuild-trucks .rt-section h3 { font-size:clamp(21px,2vw,28px); line-height:1.2; margin:0 0 16px; }
.rebuild-trucks .rt-section h4 { font-size:20px; line-height:1.3; }
.rebuild-trucks .rt-section p { line-height:1.65; }
.rebuild-trucks .rt-copy > :first-child,
.rebuild-trucks .rt-prose > :first-child { margin-top:0; }
.rebuild-trucks .rt-copy > :last-child,
.rebuild-trucks .rt-prose > :last-child { margin-bottom:0; }
.rebuild-trucks .rt-prose { max-width:960px; }
.rebuild-trucks .rt-media { min-width:0; }
.rebuild-trucks .rt-media figure { margin:0; }
.rebuild-trucks .rt-media figure + figure { margin-top:20px; }
.rebuild-trucks .rt-feature-image img { width:100%; max-height:490px; object-fit:contain; display:block; }
.rebuild-trucks .rt-logo { max-width:220px; margin-inline:auto !important; }
.rebuild-trucks .rt-logo img { width:100%; max-height:110px; object-fit:contain; }
.rebuild-trucks .wp-block-embed { min-width:0; }
.rebuild-trucks .rt-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; margin-block:28px; align-items:stretch; }
.rebuild-trucks .rt-grid--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.rebuild-trucks .rt-card { background:#fff; min-width:0; margin:0; display:flex; flex-direction:column; border-bottom:3px solid var(--rt-line); }
.rebuild-trucks .rt-card-body { padding:26px; display:flex; flex-direction:column; flex:1; gap:12px; }
.rebuild-trucks .rt-card-body > * { margin:0; }
.rebuild-trucks .rt-card-body .wp-block-buttons { margin-top:auto; padding-top:12px; }
.rebuild-trucks .rt-card-body :is(h2,h3) a { color:var(--rt-ink); text-decoration:none; }
.rebuild-trucks .rt-card-body p { font-size:16px; }
.rebuild-trucks .rt-card-image { margin:0; width:100%; overflow:hidden; background:#fff; }
.rebuild-trucks .rt-card-image a { display:block; }
.rebuild-trucks .rt-card-image img { display:block; width:100%; height:245px; object-fit:contain; padding:16px; box-sizing:border-box; }
.rebuild-trucks .rt-card--applications .rt-card-image img,
.rebuild-trucks .rt-card--application .rt-card-image img,
.rebuild-trucks .rt-card--related .rt-card-image img { object-fit:cover; padding:0; }
.rebuild-trucks .rt-feature-grid .rt-card-image img { height:300px; }
.rebuild-trucks .rt-builder-feature { margin-block:30px 46px; }
.rebuild-trucks .rt-card--builder,
.rebuild-trucks .rt-card--electric,
.rebuild-trucks .rt-card--featured { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); margin-bottom:36px; border-bottom:4px solid var(--rt-orange); align-items:center; }
.rebuild-trucks .rt-card--builder .rt-card-image img,
.rebuild-trucks .rt-card--electric .rt-card-image img,
.rebuild-trucks .rt-card--featured .rt-card-image img { height:330px; }
.rebuild-trucks .rt-model-grid + h2 { margin-top:52px; }
.rebuild-trucks .rt-card--cab .rt-card-image img { height:220px; }
.rebuild-trucks .rt-cab-grid .rt-card-body { text-align:center; }
.rebuild-trucks .rt-download-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.rebuild-trucks .rt-card--download .rt-card-image img { height:190px; padding:20px 35px; }
.rebuild-trucks .rt-card--download .rt-card-body { padding:18px; }
.rebuild-trucks .rt-card--download .wp-block-button,
.rebuild-trucks .rt-card--download .wp-block-button__link { width:100%; }
.rebuild-trucks .rt-card--download figcaption { padding:12px 18px; color:var(--rt-ink); }
.rebuild-trucks .rt-model-nav { margin:24px 0 36px; }
.rebuild-trucks .rt-model-panel { padding:36px; margin-top:30px; background:#fff; border-top:4px solid var(--rt-orange); scroll-margin-top:120px; }
.rebuild-trucks .rt-model-panel h2 { font-size:clamp(25px,2.5vw,35px); }
.rebuild-trucks .rt-model-panel .rt-split + .rt-details { margin-top:28px; }
.rebuild-trucks .rt-details { margin:20px 0 0; border:1px solid var(--rt-line); background:#fff; color:var(--rt-ink); }
.rebuild-trucks .rt-details > summary { cursor:pointer; padding:20px 24px; font-size:19px; font-weight:750; line-height:1.3; background:#f4f2ee; list-style-position:inside; }
.rebuild-trucks .rt-details[open] > summary { border-bottom:1px solid var(--rt-line); }
.rebuild-trucks .rt-details > :not(summary) { margin:24px; }
.rebuild-trucks .rt-spec-body ul { padding-left:22px; }
.rebuild-trucks .rt-spec-body li { padding:9px 0; border-bottom:1px solid #e8e4dd; line-height:1.5; break-inside:avoid; }
.rebuild-trucks .rt-spec-body ul > li:last-child { border-bottom:0; }
.rebuild-trucks .wp-block-table { max-width:100%; overflow-x:auto; }
.rebuild-trucks .wp-block-table table { width:100%; border-collapse:collapse; font-size:15px; }
.rebuild-trucks .wp-block-table :is(td,th) { padding:13px 16px; border:1px solid var(--rt-line); overflow-wrap:anywhere; vertical-align:top; }
.rebuild-trucks .wp-block-table th { text-align:left; background:var(--rt-ink); color:#fff; }
.rebuild-trucks .wp-block-table tr:nth-child(even) td { background:#f4f2ee; }
.rebuild-trucks .rt-builder-instructions { max-width:900px; margin-bottom:32px; }
.rebuild-trucks .rt-configurator { padding:16px; border-top:4px solid var(--rt-orange); background:#fff; }
.rebuild-trucks .rt-configurator iframe { width:100%; max-width:100%; min-height:700px; border:0; }
.rebuild-trucks .rt-section--finance .rt-media { max-width:320px; margin-inline:auto; }
.rebuild-trucks .rt-section--finance h3 { font-size:clamp(28px,3vw,42px); }
@media (max-width:1024px) {
 .rebuild-trucks .rt-container { width:calc(100% - 48px); }
 .rebuild-trucks .rt-grid,.rebuild-trucks .rt-download-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .rebuild-trucks .rt-split { gap:30px; }
 .rebuild-trucks .rt-model-panel { padding:26px; }
}
@media (max-width:781px) {
 .rebuild-trucks .rt-hero { padding:32px 0 36px; }
 .rebuild-trucks .rt-container { width:calc(100% - 36px); }
 .rebuild-trucks .rt-hero-heading h1 { max-width:20ch; }
 .rebuild-trucks .rt-hero-image img { height:290px; }
 .rebuild-trucks .rt-hero-intro { margin-top:28px; }
 .rebuild-trucks .rt-split { flex-direction:column; }
 .rebuild-trucks .rt-split > .wp-block-column { width:100%; flex-basis:auto !important; }
 .rebuild-trucks .rt-grid { gap:18px; }
 .rebuild-trucks .rt-card-body { padding:20px; }
 .rebuild-trucks .rt-card-image img { height:210px; }
 .rebuild-trucks .rt-feature-grid .rt-card-image img { height:230px; }
 .rebuild-trucks .rt-model-panel { padding:22px 18px; }
 .rebuild-trucks .rt-details > summary { padding:17px; }
 .rebuild-trucks .rt-details > :not(summary) { margin:18px; }
 .rebuild-trucks .rt-configurator { padding:6px; }
}
@media (max-width:560px) {
 .rebuild-trucks .rt-grid,.rebuild-trucks .rt-card--builder,.rebuild-trucks .rt-card--electric,.rebuild-trucks .rt-card--featured { grid-template-columns:minmax(0,1fr); }
 .rebuild-trucks .rt-page-nav { gap:8px; }
 .rebuild-trucks .rt-page-nav .wp-block-button__link { font-size:11px; padding:10px 12px; }
 .rebuild-trucks .rt-card-image img { height:240px; }
 .rebuild-trucks .rt-section h2 { overflow-wrap:break-word; }
}
