/* Approved palette: graphite #17191B, silver #D0D1D0, warm white #F5F3EE. Loaded last; remaps the older navy/gold tokens. */
:root{--navy:#17191B;--navy-2:#1E2124;--surface:#222527;--gold:#D0D1D0;--gold-dim:#9A9C9B;--gold-bright:#EDEEED;--ink:#F5F3EE;--ink-2:#BDBEBC;--ink-3:#8F9190;--line:rgba(208,209,208,.14)}
.nav{background:rgba(23,25,27,.92)}
.light{--navy:#F5F3EE;--navy-2:#ECE9E2;--surface:#FFF;--gold:#17191B;--gold-dim:#4A4D4F;--gold-bright:#2B2E30;--ink:#17191B;--ink-2:#4A4D4F;--ink-3:#66696B;--line:rgba(23,25,27,.14);background:var(--navy);color:var(--ink)}
.veh-badge,.hero-media .tag{background:rgba(23,25,27,.88);color:#D0D1D0}
.hero-media .tag b{color:#D0D1D0}
.cat-card .label{background:linear-gradient(to top,rgba(23,25,27,.95),transparent)}
.cat-card .label b{color:#F5F3EE}.cat-card .label span{color:#BDBEBC}
.cat-card img{opacity:.9}
.cta-band{background:var(--surface)}
.ph-logo{object-fit:contain!important;opacity:.95!important;padding:14px;background:#0f1a2e}
.contact-card.wide{grid-column:1/-1}
:focus-visible{outline:2px solid #D0D1D0;outline-offset:3px}
.light :focus-visible,.ysi :focus-visible{outline-color:#17191B}
.credit{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin-top:18px;font-size:13px;color:var(--ink-2)}
.credit a{color:var(--ink);font-weight:700;text-decoration:none;letter-spacing:.02em}
.nav-toggle{display:none;position:relative;width:40px;height:40px;border:1px solid var(--line);border-radius:9px;background:transparent;cursor:pointer}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{position:absolute;left:11px;width:16px;height:2px;background:var(--ink)}
.nav-toggle span{top:19px}.nav-toggle span::before,.nav-toggle span::after{content:'';left:0}
.nav-toggle span::before{top:-6px}.nav-toggle span::after{top:6px}
@media(max-width:720px){.nav-toggle{display:inline-block}
.nav-links.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;gap:16px;padding:16px 18px 20px;background:var(--navy);border-bottom:1px solid var(--line)}}
.ysi{--ysi-navy:#F5F3EE;--ysi-navy-2:#FFF;--ysi-surface:#FFF;--ysi-gold:#17191B;--ysi-gold-dim:#4A4D4F;--ysi-ink:#17191B;--ysi-ink-2:#4A4D4F;--ysi-ink-3:#66696B;--ysi-line:rgba(23,25,27,.22);--ysi-line-soft:rgba(23,25,27,.12);--ysi-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 28px -10px rgba(0,0,0,.25)}
.ysi-btn--primary:hover{background:#2B2E30}
.ysi-feat{background:rgba(23,25,27,.05)}
.ysi-card.is-sold .ysi-btn--primary{background:rgba(23,25,27,.08);color:#4A4D4F}
.ysi-ph{background:#0f1a2e}.ysi-ph::after{display:none}
.ysi-ph img{width:56%;max-width:210px;height:auto}.ysi-ph span{color:#BDBEBC}
.ceo{background:var(--navy-2);border-top:1px solid var(--line)}
.ceo-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,6vw,80px);align-items:center}
.ceo-photo{margin:0;overflow:hidden;aspect-ratio:2/3;max-width:440px;border:1px solid var(--line)}
.ceo-photo img{width:100%;height:100%;object-fit:cover}
.ceo h2{font-size:clamp(26px,3.6vw,40px);font-weight:900;letter-spacing:-.025em;line-height:1.08;margin:0 0 22px}
.ceo blockquote{margin:0 0 28px;padding-top:22px;border-top:1px solid var(--gold-dim);font-size:clamp(18px,2.1vw,24px);line-height:1.5;font-weight:500;max-width:40ch}
.ceo-name b{display:block;font-size:18px}.ceo-name span{color:var(--ink-2);font-size:14px}
@media(max-width:980px){.ceo-grid{grid-template-columns:1fr}.ceo-photo{max-width:340px}}
.js-reveal [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1);transition-delay:calc(var(--i,0)*90ms)}
.js-reveal [data-reveal].in{opacity:1;transform:none}
.js-reveal .ceo-photo[data-reveal]{transform:none;clip-path:inset(0 0 100% 0);transition:clip-path 1s cubic-bezier(.2,.7,.3,1)}
.js-reveal .ceo-photo[data-reveal].in{clip-path:inset(0);opacity:1}
@media(max-width:720px){.js-reveal [data-reveal]{transform:translateY(8px);transition-duration:.45s;transition-delay:0s}.js-reveal .ceo-photo[data-reveal]{clip-path:none}}
@media(prefers-reduced-motion:no-preference) and (min-width:721px){@supports(animation-timeline:scroll()){
.hero-media img{animation:heroDrift linear both;animation-timeline:scroll(root);animation-range:0 70vh}
.ceo-photo img{animation:ceoDrift linear both;animation-timeline:view();animation-range:cover}}}
@keyframes heroDrift{to{transform:scale(1.07) translateY(3%)}}
@keyframes ceoDrift{from{transform:scale(1.08) translateY(-2.5%)}to{transform:scale(1.08) translateY(2.5%)}}
@media(prefers-reduced-motion:reduce){.js-reveal [data-reveal]{opacity:1;transform:none;transition:none;clip-path:none}}
