/* Route-scoped refinements for the existing truck content and native SHACMAN pages. */
.catalogue-document .document-root.rt-truck-page { --rt-edge:#c6d4db; --rt-surface:#eaf0f3; --rt-deep:#153b48; }
.catalogue-document .document-root.rt-truck-page .rt-hero-product { background:#f5f8f9; }
.catalogue-document .document-root.rt-truck-page .rt-hero-product > img { object-fit:contain; min-height:340px; padding:20px 20px 60px; }
.catalogue-document .document-root.rt-truck-page .dc-hero-grid { align-items:center; }
.catalogue-document .document-root.rt-truck-page .dc-hero-copy h1 { font-size:clamp(34px,3.7vw,54px); }
.catalogue-document .document-root.rt-truck-page .rt-original-hero-links { display:flex; flex-wrap:wrap; gap:18px; margin-top:16px; }
.catalogue-document .document-root.rt-truck-page .rt-original-hero-links:empty { display:none; }
.catalogue-document .document-root.rt-truck-page .rt-original-hero-links a { background:transparent!important; color:#00666b!important; padding:0!important; border:0!important; min-height:44px; display:inline-flex; align-items:center; font-size:13px; }
.catalogue-document .document-root.rt-truck-page .rt-hero-notes { display:flex; gap:8px 20px; flex-wrap:wrap; margin-top:18px; padding:0; list-style:none; font-size:12px; color:#536773; }
.catalogue-document .document-root.rt-truck-page .rt-hero-notes li { margin:0; }
.catalogue-document .document-root.rt-truck-page .rt-card-description { font-size:14px; line-height:1.7; margin-bottom:18px; }
.catalogue-document .document-root.rt-truck-page .rt-card-enquiry { font-size:12px; min-height:44px; justify-content:start; }
.catalogue-document .document-root.rt-truck-page .dc-card h3 { font-size:22px; }
.catalogue-document .document-root.rt-truck-page .dc-card-copy > p { font-size:14px; margin-bottom:18px; }
.catalogue-document .document-root.rt-truck-page .rt-related-models { width:calc(100% - 96px); max-width:1280px; margin:32px auto 56px; }
.catalogue-document .document-root.rt-truck-page .e-con { --display:flex; }
.catalogue-document .document-root.rt-truck-page .rt-content-section {
  display:block!important;
  width:100%!important; max-width:none!important; margin:0!important;
  padding:48px max(48px,calc((100% - 1280px)/2))!important;
  border:0!important; background:#fff!important; color:#40515c;
  min-height:0!important; border-radius:0!important; --container-default-padding-top:0; --container-default-padding-bottom:0;
}
.catalogue-document .document-root.rt-truck-page .rt-content-section > .e-con-inner,
.catalogue-document .document-root.rt-truck-page .rt-content-section > .elementor-container {
  display:flex!important;
  max-width:1280px!important; width:100%!important; padding:0!important; margin:0 auto!important;
}
.catalogue-document .document-root.rt-truck-page .rt-content-section:has(> .dc-model-grid) { padding-block:24px!important; }
.catalogue-document .document-root.rt-truck-page .rt-content-section:empty { display:none!important; }
.catalogue-document.catalogue-document .document-root.rt-truck-page .rt-content-section :is(h2,h3,h4) {
  color:#15232d!important; text-align:left!important; text-transform:none!important;
  font-weight:750!important; letter-spacing:-.035em!important; line-height:1.22!important;
}
.catalogue-document .document-root.rt-truck-page .rt-content-section h2 { font-size:clamp(27px,2.7vw,38px)!important; }
.catalogue-document .document-root.rt-truck-page .rt-content-section h3 { font-size:22px!important; }
.catalogue-document .document-root.rt-truck-page .rt-content-section h4 { font-size:19px!important; }
.catalogue-document.catalogue-document .document-root.rt-truck-page .rt-content-section p { color:#40515c!important; line-height:1.8!important; }
.catalogue-document.catalogue-document .document-root.rt-truck-page .rt-content-section :is(p,h2,h3,h4) :is(strong,span) { color:inherit!important; }
.catalogue-document .document-root.rt-truck-page .rt-content-section .elementor-widget-heading + .elementor-widget-text-editor { margin-top:18px; }
.catalogue-document .document-root.rt-truck-page .elementor-icon-box-wrapper {
  padding:24px!important; background:#eaf0f3!important; border:1px solid #c6d4db; border-radius:4px;
}
.catalogue-document .document-root.rt-truck-page .elementor-icon-box-icon { margin-bottom:16px!important; }
.catalogue-document .document-root.rt-truck-page .elementor-icon-box-icon svg { height:36px!important; width:36px!important; fill:#00666b!important; }
.catalogue-document .document-root.rt-truck-page .rt-content-section .elementor-button {
  background:#c74713!important; background-image:none!important; border:1px solid #c74713!important;
  border-radius:4px!important; color:#fff!important; box-shadow:none!important; min-height:46px;
  font-size:13px!important; font-weight:700!important; padding:12px 20px!important;
}
.catalogue-document .document-root.rt-truck-page :is(.rt-content-section,.rt-original-hero-links) a[href*="wa.me"] { background:#108441!important; border-color:#108441!important; color:white!important; padding:10px 16px!important; border-radius:4px!important; }
.catalogue-document .document-root.rt-truck-page .rt-content-section :is(article,[class$="-card"],[class$="__card"],[class$="-panel"],[class$="__panel"]) { border-radius:4px!important; box-shadow:none!important; }
.catalogue-document .document-root.rt-truck-page .uael_btn__blink { display:none!important; animation:none!important; }
.catalogue-document .document-root.rt-truck-page .dc-table-wrap { max-width:100%; margin:24px 0; }
.catalogue-document .document-root.rt-truck-page table.rt-spec-table { min-width:600px; font-size:14px!important; line-height:1.6!important; }
.catalogue-document .document-root.rt-truck-page .rt-spec-table :is(th,td) { padding:15px 18px!important; }
.catalogue-document .document-root.rt-truck-page .rt-spec-table th { background:#153b48!important; color:#fff!important; }
.catalogue-document .document-root.rt-truck-page .rt-spec-table td { color:#253a48!important; }
.catalogue-document .document-root.rt-truck-page .rt-spec-table tr:nth-child(even) td { background:#f5f8f9!important; }
.catalogue-document .document-root.rt-truck-page .rt-spec-table caption { color:#15232d!important; background:#eaf0f3!important; padding:16px!important; text-align:left; }
.catalogue-document .document-root.rt-truck-page .rt-form-panel {
  background:#fff!important; border:1px solid #c6d4db!important; border-top:4px solid #153b48!important;
  padding:28px!important; border-radius:4px!important; min-width:0;
}
.catalogue-document .document-root.rt-truck-page .rt-quote-form { width:100%; margin:0!important; padding:0!important; background:transparent!important; }
.catalogue-document .document-root.rt-truck-page .rt-quote-form .elementor-field-group { flex-wrap:nowrap!important; }
.catalogue-document .document-root.rt-truck-page .rt-quote-form input,
.catalogue-document .document-root.rt-truck-page .rt-quote-form textarea { font-size:16px!important; }
.catalogue-document .document-root.rt-truck-page .rt-quote-form label { color:#253a48!important; }
.catalogue-document .document-root.rt-truck-page .rt-quote-form input:is([type="radio"],[type="checkbox"]) { width:18px!important; height:18px!important; min-height:0!important; padding:0!important; flex-shrink:0; }
.catalogue-document .document-root.rt-truck-page .rt-quote-form .elementor-field-option { display:inline-flex; align-items:center; gap:8px; min-height:44px; margin-right:16px; }
.catalogue-document .document-root.rt-truck-page details { border-radius:4px!important; box-shadow:none!important; }
.catalogue-document .document-root.rt-truck-page details summary { min-height:48px; color:#15232d!important; font-weight:700; }
.catalogue-document .document-root.rt-truck-page :is(#truck-models,#truck-details,.rt-anchor,form) { scroll-margin-top:105px; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery { padding-top:81px; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery .rt-content-section { padding-top:28px!important; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery [id*="-banner"] { display:none!important; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery h1 { font-size:clamp(32px,3.6vw,50px)!important; color:#15232d!important; line-height:1.12!important; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery :is([class$="-main"],[class$="-card"]) { border-radius:4px!important; box-shadow:none!important; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery a[href="/contact"] { background:#c74713!important; border-color:#c74713!important; color:#fff!important; border-radius:4px!important; box-shadow:none!important; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery a[href="/contact"] .emoji { display:none!important; }
.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery a[href="/contact"]::after { content:"→"; margin-left:10px; }
.catalogue-document.catalogue-document .document-root.rt-truck-page.rt-integrated-gallery h1 span { color:#00666b!important; }
.catalogue-document .document-root.rt-truck-page :is(a,button,input,textarea,select,[tabindex]):focus-visible { outline:3px solid #c74713!important; outline-offset:4px; }

/* Native SHACMAN catalogue: retain filters and galleries, share the approved card language. */
.site-shell[data-design] .shacman-shell { max-width:1376px; padding-inline:48px; }
.site-shell[data-design] .shacman-shell h2 { color:#15232d; font-weight:750; letter-spacing:-.04em; }
.site-shell[data-design] .shacman-kicker { color:#00666b; display:flex; align-items:center; gap:10px; font-size:11px; }
.site-shell[data-design] .shacman-kicker::before { content:""; flex-shrink:0; width:8px; height:10px; background:#c74713; clip-path:polygon(30% 0,100% 0,70% 100%,0 100%); }
.site-shell[data-design] .shacman-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.site-shell[data-design] .shacman-card { position:relative; display:grid; grid-template-columns:47% 1fr; border:1px solid #c6d4db; border-radius:4px; content-visibility:visible; }
.site-shell[data-design] .shacman-card::before { content:""; position:absolute; z-index:1; right:0; top:0; width:18px; height:18px; background:#00666b; clip-path:polygon(100% 0,100% 100%,0 0); }
.site-shell[data-design] .shacman-card-image { aspect-ratio:auto; background:#fff; display:grid; align-items:center; min-height:230px; }
.site-shell[data-design] .shacman-card-image img { height:230px; padding:10px; }
.site-shell[data-design] .shacman-card-body { border-left:1px solid #e3e9ed; padding:24px; }
.site-shell[data-design] .shacman-card h2 { font-size:22px; line-height:1.2; }
.site-shell[data-design] .shacman-detail-link { padding:10px 12px; border:1px solid #bbcbd3; border-radius:4px; color:#15232d; font-size:12px; background:#fff; min-height:46px; }
.site-shell[data-design] .shacman-detail-link:hover { background:#00666b; color:white; text-decoration:none; }
.site-shell[data-design] .shacman-filters { background:#eaf0f3; border-color:#c6d4db; border-radius:4px; }
.site-shell[data-design] :is(.shacman-category-grid>a,.shacman-main-photo,.shacman-summary,.shacman-table-scroll) { border-radius:4px; box-shadow:none; border-color:#c6d4db; }
.site-shell[data-design] .shacman-product-heading h1 { font-size:clamp(32px,3.6vw,50px); line-height:1.12; letter-spacing:-.04em; color:#15232d; }
.site-shell[data-design] .shacman-summary { border-top:4px solid #153b48; }
.site-shell[data-design] .shacman-table-scroll caption { background:#153b48; color:#fff; }
.site-shell[data-design] .shacman-quote-box .btn-industrial { border-radius:4px; background-image:none; box-shadow:none; }
.site-shell[data-design] .product-detail-content { max-width:1376px; padding-inline:48px; }
.site-shell[data-design] .product-detail-content h1 { font-size:clamp(34px,3.6vw,52px); font-weight:750; letter-spacing:-.04em; line-height:1.12; }
.site-shell[data-design] .product-detail-content :is(h2,h3) { color:#15232d; font-weight:750; letter-spacing:-.035em; }
.site-shell[data-design] .product-detail-content :is(h2,h3).text-white { color:#fff; }
.site-shell[data-design] .product-detail-content :is(.product-gallery,.product-gallery-main,aside,article,form,.rounded-md,.rounded-lg) { border-radius:4px; box-shadow:none; }
.site-shell[data-design] .product-detail-content aside { border-top:4px solid #153b48; }
.site-shell[data-design] .product-detail-content .btn-industrial { border-radius:4px; box-shadow:none; background-image:none; }
.site-shell[data-design] :is(.product-detail-content,.catalogue-confirmed-details) .spec-table th { background:#eaf0f3; color:#15232d; }
.site-shell[data-design] :is(.product-detail-content,.catalogue-confirmed-details) .spec-table caption { background:#153b48; color:#fff; padding:16px; }
.site-shell[data-design] .product-detail-content input { min-height:46px; font-size:16px; }
.site-shell[data-design] .product-detail-content label { font-size:12px; }
@media(min-width:1101px){.site-shell[data-design] .shacman-product { padding-top:112px; }}
@media(max-width:1100px){
  .catalogue-document .document-root.rt-truck-page .rt-content-section { padding:40px 28px!important; }
  .catalogue-document .document-root.rt-truck-page .rt-related-models { width:calc(100% - 56px); }
  .catalogue-document .document-root.rt-truck-page.rt-integrated-gallery { padding-top:0; }
  .site-shell[data-design] .shacman-shell { padding-inline:28px; }
  .site-shell[data-design] .product-detail-content { padding-inline:28px; }
  .site-shell[data-design] .shacman-card { grid-template-columns:1fr; }
  .site-shell[data-design] .shacman-card-body { border-left:0; border-top:1px solid #e3e9ed; }
}
@media(max-width:600px){
  .catalogue-document .document-root.rt-truck-page .rt-content-section { padding:32px 18px!important; }
  .catalogue-document .document-root.rt-truck-page .rt-related-models { width:calc(100% - 36px); }
  .catalogue-document .document-root.rt-truck-page .rt-hero-product > img { min-height:0; padding:8px; }
  .catalogue-document .document-root.rt-truck-page .rt-content-section p { font-size:16px!important; }
  .catalogue-document .document-root.rt-truck-page .rt-form-panel { padding:22px 18px!important; }
  .catalogue-document .document-root.rt-truck-page .dc-hero-copy h1 { font-size:34px; }
  .catalogue-document .document-root.rt-truck-page .rt-spec-table { font-size:13px!important; }
  .site-shell[data-design] .shacman-shell { padding-inline:18px; }
  .site-shell[data-design] .product-detail-content { padding-inline:18px; }
  .site-shell[data-design] .shacman-product-grid { grid-template-columns:1fr; }
  .site-shell[data-design] .shacman-card-body { padding:22px; }
}

/* Match legacy colour overrides without shell selectors removed by catalogue CSS pruning. */
.catalogue-document.catalogue-document .document-root.rt-truck-page .dc-hero-copy > p { color:#40515c!important; }
.catalogue-document.catalogue-document .document-root.rt-truck-page .dc-hero-copy > p :is(strong,span) { color:inherit!important; }

/* Special-vehicle guidance uses the approved catalogue surfaces and original forms. */
.catalogue-document .document-root.rt-truck-page .rt-special-body > .e-con-inner { display:block!important; }
.catalogue-document .document-root.rt-truck-page .rt-special-prose { max-width:960px; }
.catalogue-document .document-root.rt-truck-page .rt-special-prose h2:not(:first-child) { margin-top:38px!important; }
.catalogue-document .document-root.rt-truck-page .rt-special-prose p { margin:16px 0; }
.catalogue-document .document-root.rt-truck-page .rt-special-prose ul { padding-left:24px; line-height:1.8; }
.catalogue-document .document-root.rt-truck-page .rt-special-prose li { margin-block:8px; }
.catalogue-document .document-root.rt-truck-page .rt-special-prose a:not(.dc-primary) { color:#00666b; text-decoration:underline; text-underline-offset:3px; }
.catalogue-document .document-root.rt-truck-page .rt-special-prose details { border:1px solid #c6d4db; padding:16px 20px; margin-block:12px; }
.catalogue-document .document-root.rt-truck-page .rt-special-reference { font-size:14px; padding-top:18px; border-top:1px solid #c6d4db; }
.catalogue-document .document-root.rt-truck-page .rt-special-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.catalogue-document .document-root.rt-truck-page .rt-special-gallery img { width:100%; height:auto; object-fit:contain; background:#f5f8f9; }
@media(max-width:640px) { .catalogue-document .document-root.rt-truck-page .rt-special-gallery { grid-template-columns:1fr; } }
