/* Neutral Zinc foundation; red is the MCQUEEN brand accent. */
:root{color-scheme:light;--bg:#fafafa;--surface:#f4f4f5;--surface-hover:#e4e4e7;--text:#18181b;--muted:#52525b;--line:#d4d4d8;--quiet:#71717a;--watermark:#e4e4e7;--header:rgba(250,250,250,.96);--red:#dc2626;--accent-hover:#b91c1c;--photo-text:#fafafa;--photo-muted:#d4d4d8}
:root[data-theme=dark]{color-scheme:dark;--bg:#09090b;--surface:#18181b;--surface-hover:#27272a;--text:#fafafa;--muted:#a1a1aa;--line:#3f3f46;--quiet:#a1a1aa;--watermark:#27272a;--header:rgba(9,9,11,.96);--red:#ef4444;--accent-hover:#dc2626}
body{background:var(--bg);color:var(--text)}header{color:var(--text)}.header-actions{display:flex;align-items:center;gap:24px}.header-cta{border-color:var(--line)}.theme-toggle{width:44px;height:44px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background 150ms,border-color 150ms}.theme-toggle:hover{background:var(--surface-hover)}.theme-toggle svg{width:19px;height:19px}.theme-toggle .icon-sun{display:none}[data-theme=dark] .theme-toggle .icon-sun{display:block}[data-theme=dark] .theme-toggle .icon-moon{display:none}.menu{color:var(--text)}.services,.contact{background:var(--surface);color:var(--text)}.approach{background:var(--bg)}p,.contact p{color:var(--muted)}.contact>.eyebrow,.num,.service-summary,footer{color:var(--quiet)}.address p{color:var(--text)}.address,.phone{border-color:var(--line)}.race-mark{color:var(--watermark)}.service{color:var(--text)}.service:hover{color:var(--red)}.button,.garage-stage .button{color:#fff;background:#dc2626}.button:hover,.garage-stage .button:hover{background:#b91c1c}.skip{background:var(--surface);color:var(--text)}footer{background:var(--bg);border-top:1px solid var(--line)}
@media(max-width:760px){.header-actions{gap:12px}nav{background:var(--surface);border:1px solid var(--line)}.menu{width:36px;height:44px;padding:0}}
@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}

/* Transparent navigation over the studio; a quiet surface when returning from below. */
header{top:0;left:0;right:0;height:76px;padding:8px 5%;border:0;border-radius:0;background:transparent;backdrop-filter:none;transition:transform 300ms cubic-bezier(.16,1,.3,1),background-color 240ms ease,backdrop-filter 240ms ease}
header.scrolled{background:rgba(9,9,11,.76);backdrop-filter:blur(16px)}
header.header-hidden{transform:translateY(-100%)}
header:has(:focus-visible){transform:translateY(0)}
header .brand{width:164px;padding:0}
header .brand .brand-current{height:60px}
header nav{align-items:center;gap:26px;font-size:13px}
header nav>a,header .services-toggle{min-height:44px;display:flex;align-items:center;font-size:13px}
header nav>a[aria-current=page]{color:#fafafa;text-decoration:underline;text-decoration-color:#ef4444;text-underline-offset:8px;text-decoration-thickness:1px}
header .header-actions{gap:22px}
.header-phone{font-size:12px;white-space:nowrap;padding:12px 0}
header .header-cta{display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:12px 18px;min-height:44px;border:1px solid #ffffff55;border-radius:4px;white-space:nowrap;font-size:12px;background:transparent;transition:background-color 180ms ease,border-color 180ms ease}
header .header-cta:hover{background:#ffffff12;border-color:#ffffff99}
header .services-menu{top:52px;left:-125px;border-radius:4px;background:rgba(18,18,20,.97)}
@media(max-width:1100px){.header-phone{display:none}header .header-actions{gap:16px}}
@media(max-width:980px){
 header{height:70px;padding:7px 24px}
 header .brand{width:146px}
 header .brand .brand-current{height:56px}
 header nav{display:none;position:absolute;top:70px;left:0;right:0;max-height:calc(100svh - 70px);overflow:auto;padding:18px 24px 24px;border-radius:0;border:0;border-top:1px solid #ffffff1a;flex-direction:column;align-items:stretch;gap:8px;background:rgba(14,14,16,.98)}
 header nav.open{display:flex}
 header:has(nav.open){background:rgba(14,14,16,.98)}
 header nav>a,header .services-toggle{font-size:16px}
 header .menu{display:block;width:36px;height:44px;padding:0;background:none;border:0;color:var(--text);font-size:22px;cursor:pointer}
 header .services-toggle{width:100%;justify-content:space-between}
 header .services-menu{position:static;width:100%;margin-top:8px;padding:18px 0;max-height:none;overflow:visible;border:0;border-top:1px solid var(--line);box-shadow:none;background:transparent}
 header .menu-groups{grid-template-columns:1fr;gap:24px}
 header .services-menu .menu-groups a{font-size:14px;padding:11px 0}
}
@media(max-width:480px){header{padding:7px 20px}header .brand{width:126px}header .header-actions{gap:10px}header .header-cta{padding:10px 12px;font-size:11px;gap:8px}}
@media(prefers-reduced-motion:reduce){header,header .header-cta{transition:none}}

/* Compact phone navigation, with permanent contact actions below. */
@media(max-width:760px){
 header{height:70px;padding:7px 20px}
 header .brand{width:108px}
 header .brand .brand-current{height:51px}
 header .header-phone{display:block;font-size:10px;padding:12px 0}
 header .header-cta{display:none}
 header .header-actions{gap:10px}
 header .menu{width:54px;height:38px;font-size:11px;border:1px solid #ffffff50;border-radius:4px;background:transparent}
 header nav{max-height:calc(100svh - 135px)}
}
@media(max-width:350px){header{padding:7px 16px}header .brand{width:94px}header .header-phone{font-size:9px}header .header-actions{gap:7px}}
