/* Lakache Auto shared responsive + site polish */
:root{--site-max:1580px;--site-red:#d71920;--site-line:#dfe4e7;--site-muted:#667076}
.mobile-toggle{display:none;background:transparent;border:0;color:inherit;width:42px;height:42px;padding:8px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.mobile-toggle span{display:block;width:23px;height:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}body.menu-open{overflow:hidden}.brand-red,.brand-period{color:var(--site-red)!important}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a,button{transition:opacity .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease}a:focus-visible,button:focus-visible{outline:2px solid var(--site-red);outline-offset:4px}nav .brand:hover,nav .links a:hover{opacity:.82}img{max-width:100%}.eyebrow,.kicker,.k,.drop{text-transform:uppercase}.wrap,.inner,.stories-inner,.section-head,.story-grid,.what-head,.cards,.philosophy-box,.close-row,.contact-grid,.direct-row,.social-row,.footer-inner{width:100%;max-width:var(--site-max)}.btn{transition:transform .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease}.btn:hover{transform:translateY(-2px);opacity:.92}
/* Bright Lakache treatment for legacy individual build-story pages. */
body:has(.hero-image){background:#fff!important;color:#111416!important}body:has(.hero-image) nav{position:sticky!important;top:0;z-index:100;background:rgba(255,255,255,.97)!important;color:#111416!important;border-bottom:1px solid #dfe4e7!important;backdrop-filter:blur(18px)}body:has(.hero-image) nav .brand i{color:#d71920!important}body:has(.hero-image) .hero{position:relative;padding-top:95px!important;background:radial-gradient(circle at 82% 12%,#dff1ff 0,#f6fbff 31%,#fff 68%)}body:has(.hero-image) .hero h1{color:#111416!important}body:has(.hero-image) .hero h1 span:not(.period){color:#7a8388!important}body:has(.hero-image) .lede,body:has(.hero-image) .k{color:#667076!important}body:has(.hero-image) .hero-image{border-color:#dfe4e7!important;box-shadow:0 14px 38px rgba(20,35,45,.08)}body:has(.hero-image) .facts{background:#fff!important;border-color:#dfe4e7!important;box-shadow:0 8px 28px rgba(20,35,45,.04)}body:has(.hero-image) .fact{border-color:#dfe4e7!important}body:has(.hero-image) .fact small{color:#7b858a!important}body:has(.hero-image) .chapter,body:has(.hero-image) .timeline,body:has(.hero-image) .road{background:#fff!important;color:#111416!important;border-color:#dfe4e7!important}body:has(.hero-image) .chapter.light,body:has(.hero-image) .status.light,body:has(.hero-image) .numbers.light{background:#edf7fd!important;color:#111416!important}body:has(.hero-image) .chapter-copy p,body:has(.hero-image) .timeline-head p,body:has(.hero-image) .road-head p,body:has(.hero-image) .status-copy,body:has(.hero-image) .note{color:#5f6b71!important}body:has(.hero-image) .chapter-copy strong,body:has(.hero-image) .status-copy strong{color:#111416!important}body:has(.hero-image) .steps{background:#dfe4e7!important;border-color:#dfe4e7!important;box-shadow:0 10px 30px rgba(20,35,45,.04)}body:has(.hero-image) .step{background:#fff!important;color:#111416!important}body:has(.hero-image) .step b{color:#d71920!important}body:has(.hero-image) .step p{color:#667076!important}body:has(.hero-image) .build-gallery,body:has(.hero-image) .generation-pair{border-color:#dfe4e7!important;background:#dfe4e7!important}body:has(.hero-image) .numbers .cost-grid{border-color:#cbdbe4!important}body:has(.hero-image) .numbers .cost{border-color:#cbdbe4!important}body:has(.hero-image) .watch{background:#eef6fb!important;color:#111416!important;border-top:1px solid #d6e5ed;border-bottom:1px solid #d6e5ed}body:has(.hero-image) .watch p{color:#5f6b71!important}body:has(.hero-image) .watch .btn{background:#d71920!important;color:#fff!important;border:1px solid #d71920!important}body:has(.hero-image) .watch .btn.alt{background:#fff!important;color:#111416!important;border-color:#c9d1d5!important}body:has(.hero-image) .next{background:#fff!important;border-color:#dfe4e7!important}body:has(.hero-image) .next small{color:#788287!important}body:has(.hero-image) footer{background:#111315!important;color:#979da0!important;border-top:1px solid #292d30!important}
/* Preserve older dark shop treatments until shop migration. */
body:has(.cinema) .section.paper{background:#111210!important;color:#f5f2ec!important;border-top:1px solid #292a27;border-bottom:1px solid #292a27;padding-top:94px;padding-bottom:104px}body:has(.cinema) .section.paper .drop{color:#aaa69e!important}body:has(.cinema) .section.paper .head h2{color:#f5f2ec}body:has(.cinema) .section.paper .head p{color:#9c988f!important}body:has(.cinema) .shop-grid{gap:12px;background:transparent!important;grid-template-columns:repeat(4,1fr)}body:has(.cinema) .product{min-height:330px;padding:30px;background:#181917!important;border:1px solid #32332f;color:#f5f2ec}
@media(max-width:1100px) and (min-width:801px){nav{padding-left:4vw!important;padding-right:4vw!important}.links{gap:20px!important;font-size:10px!important;letter-spacing:1.1px!important}body:has(.cinema) .shop-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){nav{height:64px!important;min-height:64px!important;padding:0 20px!important;position:sticky!important;top:0;z-index:100!important;backdrop-filter:blur(18px)}.brand{font-size:12px!important;letter-spacing:2px!important;position:relative;z-index:102}.brand img{width:24px!important;height:24px!important}.mobile-toggle{display:flex;position:relative;z-index:102}.mobile-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.mobile-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}nav .links{display:none!important;position:absolute!important;left:0;right:0;top:63px;height:auto!important;padding:18px 20px 26px!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;font-size:13px!important;letter-spacing:1.6px!important}nav .links.open{display:flex!important}nav .links a{height:auto!important;min-height:48px;display:flex!important;align-items:center!important;padding:0 4px!important}nav .links a:last-child{border-bottom:0}nav .links a.active:after,nav .links a:hover:after{display:none!important}nav .links a.active:before{content:"";width:16px;height:2px;background:var(--site-red);margin-right:10px}body:not(:has(.cinema)) nav{background:rgba(255,255,255,.98)!important;color:#111!important;border-bottom:1px solid #dfe3e5!important}body:not(:has(.cinema)) nav .links{background:#fff!important;color:#111!important;border-bottom:1px solid #dfe3e5;box-shadow:0 18px 40px rgba(20,30,35,.12)}body:not(:has(.cinema)) nav .links a{border-bottom:1px solid #e6e9ea}.hero h1,.intro h1{overflow-wrap:normal;word-break:normal}.btn:hover{transform:none}}
@media(max-width:560px){.hero h1,.intro h1{font-size:clamp(44px,14vw,60px)!important;line-height:.9!important;letter-spacing:-2.5px!important}.hero p,.intro p,.lede{font-size:14px!important;line-height:1.7!important}.section,.hero,.intro{scroll-margin-top:64px}.btn{max-width:100%;white-space:normal;text-align:center}img{max-width:100%;height:auto}footer{line-height:1.65}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Homepage hero: soft San Francisco skyline behind the foreground GTI. */
body:has(.hero-bg) .hero-bg{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.93) 31%,rgba(255,255,255,.58) 52%,rgba(255,255,255,.30) 100%),url('https://commons.wikimedia.org/wiki/Special:Redirect/file/San_Francisco_skyline_(Unsplash).jpg')!important;background-position:center 47%!important;background-size:cover!important;background-repeat:no-repeat!important;opacity:.62!important;filter:saturate(.75) contrast(.92) brightness(1.08)!important;transform:scale(1.02)!important}body:has(.hero-bg) .hero{background:linear-gradient(180deg,#fff 0%,#f7fafc 100%)!important}body:has(.hero-bg) .hero-car img{position:relative;z-index:3;filter:drop-shadow(0 22px 18px rgba(20,30,35,.22))!important}@media(max-width:760px){body:has(.hero-bg) .hero-bg{background-position:58% center!important;opacity:.38!important}body:has(.hero-bg) .hero-copy{position:relative;z-index:4}}

/* Unified Lakache Auto header branding — Stage 1. */
nav .brand{display:block!important;width:225px!important;max-width:24vw!important;height:64px!important;flex:0 0 auto!important;background:url('Lakache Auto Racing Logo.png') left center/contain no-repeat!important;font-size:0!important;line-height:0!important;color:transparent!important;overflow:hidden!important}nav .brand img{width:225px!important;max-width:100%!important;height:64px!important;object-fit:contain!important;object-position:left center!important}nav .brand:not(:has(img))>*{visibility:hidden!important}nav .links{font-size:13px!important;font-weight:900!important;letter-spacing:.65px!important}@media(max-width:1100px) and (min-width:801px){nav .brand{width:190px!important;height:58px!important}nav .brand img{width:190px!important;height:58px!important}nav .links{font-size:11px!important;gap:16px!important}}@media(max-width:800px){nav .brand{width:170px!important;max-width:62vw!important;height:52px!important}nav .brand img{width:170px!important;height:52px!important}nav .links{font-size:13px!important}}

/* Builds archive — compact scalable project gallery. Keep full vehicle visible. */
body:has(.project-grid) .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:start}
body:has(.project-grid) .project{box-shadow:0 6px 20px rgba(20,30,35,.045)!important}
body:has(.project-grid) .media{aspect-ratio:4/3!important;background:#eef1f2!important;display:flex!important;align-items:center!important;justify-content:center!important}
body:has(.project-grid) .media img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}
body:has(.project-grid) .project:hover .media img{transform:scale(1.008)!important}
body:has(.project-grid) .status,body:has(.project-grid) .number{top:12px!important;padding:7px 9px!important;font-size:7px!important}
body:has(.project-grid) .status{left:12px!important}body:has(.project-grid) .number{right:12px!important}
body:has(.project-grid) .body{padding:20px!important}
body:has(.project-grid) .body h3{font-size:clamp(22px,1.75vw,29px)!important;line-height:1.03!important;letter-spacing:-1px!important;margin:10px 0 9px!important}
body:has(.project-grid) .body>p{font-size:12px!important;line-height:1.55!important;margin-bottom:15px!important}
body:has(.project-grid) .fact{padding:11px 8px 11px 0!important}body:has(.project-grid) .fact+.fact{padding-left:10px!important}
body:has(.project-grid) .fact strong{font-size:10px!important}body:has(.project-grid) .project-link{margin-top:15px!important;font-size:8px!important}
body:has(.project-grid) .coming-mark{font-size:28px!important}
@media(max-width:1100px) and (min-width:701px){body:has(.project-grid) .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){body:has(.project-grid) .project-grid{grid-template-columns:1fr!important;gap:16px!important}body:has(.project-grid) .media{aspect-ratio:4/3!important}body:has(.project-grid) .body{padding:18px!important}}

/* 2024 GTI final-condition archive. Full-resolution source photos, clean editorial grid. */
.gti-final-gallery{margin-top:70px;padding-top:58px;border-top:1px solid #dfe4e7}.gti-final-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:end;margin-bottom:28px}.gti-final-head .k{grid-column:1/-1;color:#d71920!important}.gti-final-head h2{font-size:clamp(42px,5vw,70px);line-height:.92;letter-spacing:-3px;margin:0;color:#111416}.gti-final-head p{margin:0;color:#667076;font-size:14px;line-height:1.8;max-width:650px}.gti-final-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gti-final-shot{margin:0;position:relative;background:#eef1f2;overflow:hidden}.gti-final-shot.feature{grid-column:span 2;grid-row:span 2}.gti-final-shot img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}.gti-final-shot.feature img{aspect-ratio:auto;min-height:100%;object-fit:cover}.gti-final-shot figcaption{position:absolute;left:12px;bottom:12px;background:rgba(17,20,22,.9);color:#fff;padding:8px 10px;font-size:8px;font-weight:800;letter-spacing:1.3px}.hero-image[src*="2024-vw-gti-final"]{object-fit:contain!important;background:#eef1f2!important}@media(max-width:850px){.gti-final-head{grid-template-columns:1fr;gap:16px}.gti-final-head .k{grid-column:auto}.gti-final-grid{grid-template-columns:1fr 1fr}.gti-final-shot.feature{grid-column:1/-1;grid-row:auto}.gti-final-shot.feature img{aspect-ratio:16/10}}@media(max-width:560px){.gti-final-gallery{margin-top:50px;padding-top:42px}.gti-final-grid{grid-template-columns:1fr}.gti-final-shot.feature{grid-column:auto}.gti-final-shot img,.gti-final-shot.feature img{aspect-ratio:4/3}}
