/* Refined charcoal / stone theme. Scoped to BaseLayout public pages only. */
html.public-theme {
  --pv-bg:#171716; --pv-surface:#232321; --pv-deep:#0b0c0c;
  --pv-text:#f6f3ed; --pv-muted:#bbb9b2; --pv-accent:#ff7919;
  --pv-line:rgba(238,232,221,.2); --pv-header:rgba(10,11,11,.84);
  --pv-glass:linear-gradient(145deg,rgba(7,9,9,.42),rgba(18,19,18,.28));
  --pv-card-end:rgba(9,11,11,.96); --pv-glass-blur:blur(5px);
  --pv-shadow:inset 0 0 0 1px var(--pv-line),0 16px 38px rgba(0,0,0,.24);
  --pv-row:rgba(12,14,14,.98); --pv-tint:rgba(0,0,0,.22);
  --pv-hero-scrim:linear-gradient(90deg,rgba(19,18,16,.86),rgba(19,18,16,.78) 30%,rgba(19,18,16,.24) 54%,transparent 76%);
  --pv-hero-mobile:linear-gradient(180deg,rgba(19,18,16,.9),rgba(19,18,16,.86) 34%,rgba(19,18,16,.22) 56%,transparent 76%);
  --ink:var(--pv-deep); --ink-2:var(--pv-bg); --ink-3:var(--pv-surface);
  --muted:var(--pv-muted); --line:var(--pv-line); --line-dark:var(--pv-line);
  --orange:#ff7919; --orange-2:#ffa565;
  background:var(--pv-bg); color-scheme:dark;
}
html.public-theme[data-theme=light] {
  --pv-bg:#d5d1c8; --pv-surface:#e2ded5; --pv-deep:#c7c3b9;
  --pv-text:#20211f; --pv-muted:#4c4d47; --pv-accent:#813405;
  --pv-line:rgba(50,49,44,.32); --pv-header:rgba(213,209,200,.94);
  --pv-glass:linear-gradient(145deg,rgba(233,229,220,.42),rgba(220,216,206,.3));
  --pv-card-end:rgba(225,221,212,.98); --pv-glass-blur:none;
  --pv-shadow:inset 0 0 0 1px var(--pv-line),0 12px 30px rgba(34,32,27,.1);
  --pv-row:rgba(224,220,210,.99); --pv-tint:rgba(76,70,57,.08);
  --pv-hero-scrim:linear-gradient(90deg,rgba(12,14,14,.86),rgba(12,14,14,.78) 30%,rgba(12,14,14,.2) 54%,transparent 76%);
  --pv-hero-mobile:linear-gradient(180deg,rgba(12,14,14,.9),rgba(12,14,14,.86) 34%,rgba(12,14,14,.2) 56%,transparent 76%);
  color-scheme:light;
}
html.public-theme .site-body {background:var(--pv-bg);color:var(--pv-text)}
html.public-theme .site-body::before {display:none}
html.public-theme .site-body :is(.section--dark,.section--paper,.section--muted,.topo-surface,.social-field,.split-story__copy,.stat-strip,.brand-rail) {background:var(--pv-bg);color:var(--pv-text);backdrop-filter:none}
html.public-theme .site-body :is(.section--paper,.section--muted) > .container {background:transparent;box-shadow:none;backdrop-filter:none;border-color:var(--pv-line)}
html.public-theme .site-body :is(.feature,.resource-card,.article-card,.spec-card,.lead-form,.form-aside,.legal-banner,.check,.equipment-card,.van-comparison) {background:var(--pv-glass);color:var(--pv-text);border-color:var(--pv-line);box-shadow:var(--pv-shadow);backdrop-filter:var(--pv-glass-blur)}
html.public-theme .site-body :is(.section-heading p,.feature p,.resource-card p,.article-card p,.spec-card p,.equipment-card p,.equipment-card__meta span,.form-note,.form-aside p,.faq-list p,.legal-content p,.legal-content li,.stat span,.split-story__copy p,.brand-rail__heading p,.muted) {color:var(--pv-muted)}
html.public-theme .site-body :is(.eyebrow,.section-heading .eyebrow,.split-story__copy .eyebrow,.feature__number,.arrow-link,.stat b) {color:var(--pv-accent)}
html.public-theme .site-body > .site-header {grid-template-columns:minmax(100px,180px) 1fr auto 44px;gap:clamp(10px,1.5vw,24px);background:var(--pv-header);color:var(--pv-text);border-color:var(--pv-line);box-shadow:none;backdrop-filter:blur(8px)}
html.public-theme .site-header a.header-build-yours {color:var(--pv-text);white-space:nowrap}
html.public-theme .site-header .header-build-yours__accent {color:#ff7919}
html.public-theme .site-header :is(.vans-dropdown__links,.mobile-menu nav) {background:var(--pv-deep);border-color:var(--pv-line);color:var(--pv-text)}
html.public-theme .site-header .vans-dropdown__links a {color:var(--pv-text)}
html.public-theme .site-header .vans-dropdown__links a:is(:hover,[aria-current=page]) {background:var(--pv-surface);color:var(--pv-accent)}
html.public-theme .site-header .mobile-menu summary {border-color:var(--pv-line);background:var(--pv-tint)}
html.public-theme .site-header .mobile-menu summary span {background:var(--pv-text)}
html.public-theme .theme-toggle {display:grid;place-items:center;width:44px;height:44px;min-width:44px;padding:0;border:0;background:transparent;color:var(--pv-text);cursor:pointer;justify-self:end}
html.public-theme .theme-toggle[hidden] {display:none}
html.public-theme .theme-toggle__ring {display:grid;place-items:center;width:29px;height:29px;border:1px solid currentColor;border-radius:50%;opacity:.85}
html.public-theme .theme-toggle svg {width:18px;height:18px}
html.public-theme .theme-toggle__sun {display:none}
html.public-theme[data-theme=light] .theme-toggle__sun {display:block}
html.public-theme[data-theme=light] .theme-toggle__moon {display:none}
html.public-theme .theme-toggle:hover {color:var(--pv-accent)}
html.public-theme .theme-toggle:focus-visible {outline:2px solid var(--pv-accent);outline-offset:2px;border-radius:6px}
html.public-theme .site-body .site-footer {background:var(--pv-deep);color:var(--pv-text);border-color:var(--pv-line)}
html.public-theme .site-footer :is(div > a,.footer-bottom,.footer-brand p) {color:var(--pv-muted)}
html.public-theme .site-footer h2 {color:var(--pv-accent)}
html.public-theme .site-body .home-hero--video {background:var(--pv-bg);color:var(--pv-text)}
html.public-theme .site-body .home-hero--video::before {background-image:var(--pv-hero-scrim)}
html.public-theme .site-body .home-hero--video h1 {color:#fffdf8}
html.public-theme[data-theme=light] .site-body .home-hero--video h1 {text-shadow:none}
html.public-theme .site-body .home-hero--video .lede {color:#ff9a50}
html.public-theme[data-theme=light] .site-body .home-hero--video .lede {text-shadow:none}
/* Short media-to-surface transition; no pale overlay across the video or added spacer. */
html.public-theme .site-body :is(.home-hero--video,.vehicle-film)::after {content:'';position:absolute;inset:auto 0 0;height:20%;z-index:1;background:linear-gradient(to bottom,transparent 0%,var(--pv-bg) 100%);pointer-events:none}
html.public-theme .site-body .home-hero--video + .section {padding-top:clamp(2rem,4vw,3.5rem)}
html.public-theme .site-body .hero-index {color:var(--pv-muted)}
html.public-theme .site-body .vehicle-film__bar {z-index:2;text-shadow:none}
html.public-theme .site-body .vehicle-film__bar :is(h1,.eyebrow) {color:var(--pv-text)}
html.public-theme .site-body .vehicle-film__bar .vehicle-film__v {color:#ff7919}
html.public-theme .site-body .vehicle-film__sound {z-index:3;background:var(--pv-header);color:var(--pv-text);border-color:var(--pv-line)}
html.public-theme .site-body .platform-card {background:var(--pv-card-end);border-color:var(--pv-line);box-shadow:var(--pv-shadow)}
html.public-theme .site-body .platform-card__shade {background:linear-gradient(to bottom,transparent 48%,var(--pv-card-end) 83%);pointer-events:none}
html.public-theme .site-body .platform-card__content {color:var(--pv-text)}
html.public-theme .site-body .platform-card__content span {color:var(--pv-text)}
html.public-theme .site-body .platform-card__content p {color:var(--pv-accent)}
html.public-theme .site-body .split-story__image {position:relative;overflow:hidden}
html.public-theme .site-body .split-story__image::after {content:'';position:absolute;inset:auto 0 0;height:10%;background:linear-gradient(transparent,var(--pv-bg));pointer-events:none}
/* Comparison and the 01/02/03 cards share exactly the same glass surface above. */
html.public-theme .site-body .van-comparison .comparison {background:transparent;color:var(--pv-text)}
html.public-theme .site-body .van-comparison .comparison :is(thead th,tbody td,tbody th[scope=row]) {background:transparent;color:var(--pv-text);border-color:var(--pv-line)}
html.public-theme .site-body .van-comparison .comparison .van-comparison__group th {background:var(--pv-tint);color:var(--pv-accent);border-color:var(--pv-line)}
html.public-theme .site-body .van-comparison .comparison .van-comparison__corner {color:var(--pv-accent)}
html.public-theme .site-body :is(.filter-links a,.field input,.field textarea,.field select,.equipment-dialog,.equipment-dialog__content,.legal-content,.article-body,.faq-list details,.placeholder,.placeholder__inner) {background:var(--pv-surface);color:var(--pv-text);border-color:var(--pv-line)}
html.public-theme .site-body :is(.equipment-dialog p,.equipment-dialog__facts,.form-status,.placeholder p) {color:var(--pv-muted)}
html.public-theme .site-body .form-status {background:var(--pv-surface)}
html.public-theme .site-body :is(.page-hero,.page-hero__inner) {color:#fffdf8}
html.public-theme .site-body .page-hero__inner .lede {color:#e7e1d9}
html.public-theme .site-body .page-hero__inner {background:linear-gradient(120deg,rgba(19,18,16,.78),rgba(42,37,33,.45));border-color:var(--pv-line);border-left-color:#ff7919}
html.public-theme .site-body .page-hero .eyebrow {color:#ff7919}
/* Remaining public content surfaces, captions, and form states. */
html.public-theme .site-body :is(.testimonial-card,.process-step,.article-body section) {background:var(--pv-glass);color:var(--pv-text);border-color:var(--pv-line);box-shadow:var(--pv-shadow)}
html.public-theme .site-body :is(.testimonials-section,.coming-soon) {background:var(--pv-bg);color:var(--pv-text)}
html.public-theme .site-body :is(.testimonial-card blockquote,.testimonial-card figcaption b) {color:var(--pv-text)}
html.public-theme .site-body :is(.testimonial-card figcaption,.testimonial-card figcaption small,.equipment-card__description,.equipment-dialog__facts dt,.spec-card span,.article-body p,.process-step p,.vans-pricing-note p,.coming-soon__description,.coming-soon__contact) {color:var(--pv-muted)}
html.public-theme .site-body .coming-soon__status {color:var(--pv-accent)}
html.public-theme .site-body .coming-soon__actions .button--light {color:var(--pv-text);border-color:var(--pv-line)}
html.public-theme .site-body :is(.social-grid span,.coming-soon__image figcaption) {color:#fffdf8}
html.public-theme .site-body .field select option {background:var(--pv-surface);color:var(--pv-text)}
html.public-theme .site-body :is(.field input,.field textarea)::placeholder {color:var(--pv-muted);opacity:1}
html.public-theme .site-body .brand-rail__viewport {border-color:var(--pv-line)}

/* Text that previously retained pale or white legacy colors in light mode. */
html.public-theme .site-body :is(.vehicle-overview .lede,.model-pricing-note p,.launch-planning-note,.equipment-card__scope,.equipment-dialog__scope,.footer-contact span,.footer-contact address,.site-footer address) {color:var(--pv-muted)}
html.public-theme .site-body .site-footer span {color:var(--pv-muted)}
html.public-theme[data-theme=light] .site-header .header-build-yours__accent {color:var(--pv-accent)}
html.public-theme .site-body .button:is(.button--light,.button--dark):not([data-button-art]) {color:var(--pv-text);background:var(--pv-tint);border-color:var(--pv-line);text-shadow:none}
html.public-theme .site-body .button:is(.button--light,.button--dark):not([data-button-art]):hover {background:var(--pv-surface);color:var(--pv-text)}
html.public-theme .site-body .legal-content section {background:var(--pv-glass);border-color:var(--pv-line);color:var(--pv-text)}
html.public-theme .site-body :is(.equipment-card__enquiry,.equipment-dialog__enquiry) {background:transparent;border-color:var(--pv-line)}
html.public-theme .site-body .faq-list details[open] {background:var(--pv-glass);color:var(--pv-text);border-color:var(--pv-line)}
html.public-theme .site-body :is(.equipment-card__meta,.equipment-dialog__facts,.equipment-dialog__facts div,.footer-bottom,.vans-pricing-note,.stat) {border-color:var(--pv-line)}
html.public-theme .site-body .vans-pricing-note {background:var(--pv-glass);box-shadow:var(--pv-shadow)}
html.public-theme .site-body :is(.feature,.form-aside) {border:1px solid var(--pv-line)}
html.public-theme .site-body .filter-links--art a {background:transparent;border:0;box-shadow:none}
html.public-theme .site-body .home-hero--video .hero-index {color:#e1ded6;text-shadow:0 1px 4px #000}
html.public-theme[data-theme=light] .site-body :is(.home-hero--video,.vehicle-film)::after {height:14%}
html.public-theme[data-theme=light] .site-body .vehicle-film__bar {text-shadow:0 1px 3px rgba(213,209,200,.8)}
/* Box highlights use inset light so no layout shifts or new clickable semantics are introduced. */
html.public-theme .site-body :is(.feature,.platform-card,.resource-card,.article-card,.spec-card,.equipment-card,.process-step,.gallery-item,.social-grid > a,.lead-form,.form-aside,.legal-banner,.check,.van-comparison,.vans-pricing-note,.faq-list details,.article-body section,.legal-content section,.page-hero__inner,.placeholder__inner,.stat,.equipment-dialog,.coming-soon__image) {transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
html.public-theme .site-body :is(.feature,.platform-card,.resource-card,.article-card,.spec-card,.equipment-card,.process-step,.gallery-item,.social-grid > a,.lead-form,.form-aside,.legal-banner,.check,.van-comparison,.vans-pricing-note,.faq-list details,.article-body section,.legal-content section,.page-hero__inner,.placeholder__inner,.stat,.equipment-dialog,.coming-soon__image):is(:hover,:focus-within) {border-color:#ff7919;box-shadow:inset 0 0 0 1px #ff7919,0 0 18px rgba(255,121,25,.24),var(--pv-shadow)}
html.public-theme .site-body .van-comparison .comparison :is(th,td):hover {box-shadow:inset 0 0 0 1px #ff7919}
html.public-theme .site-body :is(.field input,.field textarea,.field select):is(:hover,:focus-visible) {border-color:#ff7919;box-shadow:0 0 0 1px #ff7919,0 0 14px rgba(255,121,25,.2)}

@media(max-width:1080px) {
 html.public-theme .site-body > .site-header {grid-template-columns:1fr 44px 44px;gap:10px}
 html.public-theme .theme-toggle {grid-column:2;grid-row:1}
 html.public-theme .mobile-menu {grid-column:3;grid-row:1}
}
@media(max-width:760px) {
 html.public-theme .site-body .home-hero--video::before {background-image:var(--pv-hero-mobile)}
 html.public-theme .site-body :is(.home-hero--video,.vehicle-film)::after {height:18%}
}
@media(max-width:700px) {
 html.public-theme .site-body .van-comparison .comparison :is(tbody th[scope=row],thead .van-comparison__corner) {background:var(--pv-row)}
}
@media(prefers-reduced-motion:reduce) {html.public-theme {scroll-behavior:auto} html.public-theme .site-body :is(.feature,.platform-card,.resource-card,.article-card,.spec-card,.equipment-card,.process-step,.gallery-item,.social-grid > a,.lead-form,.form-aside,.legal-banner,.check,.van-comparison,.vans-pricing-note,.faq-list details,.article-body section,.legal-content section,.page-hero__inner,.placeholder__inner,.stat,.equipment-dialog,.coming-soon__image) {transition:none}}

html.public-theme[data-theme=light] .site-body :is(a,button,summary,input,textarea,select,[tabindex]):focus-visible {outline-color:var(--pv-accent)}

html.public-theme .site-body .article-card__meta {color:var(--pv-muted);border-color:var(--pv-line)}
html.public-theme .site-body :is(.testimonial-card figcaption > span,.orange,.status-pill) {color:var(--pv-accent)}
html.public-theme .site-body .status-pill {border-color:var(--pv-accent);background:var(--pv-tint)}

/* Translucent partner tiles and quiet customer review cards. Logos/text stay fully opaque. */
html.public-theme .site-body .brand-rail__track > li {background:#fff;border:0;box-shadow:0 24px 58px rgba(0,0,0,.42),0 6px 18px rgba(0,0,0,.28);backdrop-filter:none}
html.public-theme .site-body .testimonial-card {backdrop-filter:var(--pv-glass-blur)}
html.public-theme .site-body :is(.equipment-dialog,.equipment-dialog__content,.legal-content,.article-body,.faq-list details,.placeholder__inner) {background:var(--pv-glass)}
/* Match the header's translucent treatment; bring footer columns closer together. */
html.public-theme .site-body .site-footer {background:var(--pv-header);backdrop-filter:blur(8px);padding-top:24px;padding-bottom:12px}
html.public-theme .site-footer :is(.footer-grid,.footer-bottom) {width:100%;max-width:1180px;margin-inline:auto}
html.public-theme .site-footer .footer-grid {grid-template-columns:minmax(210px,1.4fr) repeat(3,minmax(125px,.9fr)) minmax(180px,1.1fr);gap:clamp(18px,2vw,28px);padding-bottom:20px}
html.public-theme .site-footer .footer-grid > * {min-width:0;grid-column:auto}
html.public-theme .site-footer .footer-bottom {flex-wrap:wrap;padding-top:12px}
html.public-theme .site-footer a {transition:color .18s ease,text-shadow .18s ease}
html.public-theme .site-body .site-footer a:is(:hover,:focus-visible) {color:#ff7919;text-shadow:0 0 12px rgba(255,121,25,.25)}
html.public-theme .site-footer .footer-social {gap:10px;flex-wrap:nowrap}
html.public-theme .site-footer .footer-social > a {width:44px;height:48px;min-width:44px;display:grid;place-items:center;padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;filter:none;transform:none;color:var(--pv-muted);text-shadow:none}
html.public-theme .site-footer .footer-social > a svg {display:block;width:40px;height:40px;fill:currentColor;pointer-events:none}
html.public-theme .site-footer .footer-social > a:is(:hover,:focus-visible) {background:transparent;box-shadow:none;color:#ff7919;filter:none;transform:none}
@media(max-width:1080px) {
 html.public-theme .site-footer .footer-grid {grid-template-columns:minmax(210px,1.3fr) repeat(2,minmax(150px,1fr));gap:28px}
}
@media(max-width:760px) {
 html.public-theme .site-footer .footer-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}
 html.public-theme .site-footer .footer-brand {grid-column:1 / -1}
 html.public-theme .site-footer .footer-bottom {display:flex;flex-direction:column;align-items:flex-start;gap:12px}
 html.public-theme .site-footer .footer-bottom div {margin:0;gap:16px;flex-wrap:wrap}
}
@media(max-width:480px) {html.public-theme .site-footer .footer-grid {grid-template-columns:1fr}}
html.public-theme[data-theme=light] .site-body .equipment-dialog {--pv-muted:#252621;--pv-accent:#642700}

/* Journal entries use the same orange focus treatment as the site's interactive cards. */
html.public-theme .site-body .journal-entry {background:var(--pv-glass);color:var(--pv-text);border-color:var(--pv-line);box-shadow:var(--pv-shadow);transition:border-color .2s ease,box-shadow .2s ease}
html.public-theme .site-body .journal-entry:is(:hover,:focus-within) {border-color:#ff7919;box-shadow:inset 0 0 0 1px #ff7919,0 0 18px rgba(255,121,25,.24),var(--pv-shadow)}

/* In light mode, partner tiles disappear into the site's stone background. */
html.public-theme[data-theme=light] .site-body .brand-rail__track > li {background:var(--pv-bg)}

@media(prefers-reduced-motion:reduce) {html.public-theme .site-body .journal-entry {transition:none}}
