:root{--red:#d90018;--ink:#090909;--panel:#121212;--line:#292929;--muted:#9b9b9b;--white:#f7f7f5;--carpro-sans:"TikTok Sans",Inter,Arial,sans-serif}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;min-width:0;overflow-x:clip;background:var(--ink);color:var(--white);font-family:Inter,Arial,sans-serif}main,section,div,article,form{min-width:0}img{max-width:100%;display:block}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-header{height:78px;padding:0 3vw;display:flex;align-items:center;justify-content:center;background:#101010;border-bottom:1px solid var(--line);position:relative;z-index:50}.site-logo img{width:116px;max-height:52px;object-fit:contain}.site-nav{position:absolute;inset:0 3vw;display:flex;align-items:center;gap:27px;pointer-events:none}.site-nav a{font-size:12px;text-transform:uppercase;letter-spacing:normal;text-decoration:none;color:#bbb;pointer-events:auto;transition:.2s}.site-nav a:hover,.site-nav a.active{color:white}.site-nav .site-cart-toggle{margin-left:auto}.site-nav .nav-cta{padding:11px 15px;border:1px solid #555;color:white}.nav-toggle{display:none}
.home-hero{height:calc(100vh - 78px);min-height:620px;position:relative;overflow:hidden}.hero-panels{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.hero-panels div{background-size:cover;background-position:center;filter:saturate(.8)}.hero-panels div:first-child{clip-path:polygon(0 0,100% 0,88% 100%,0 100%)}.hero-panels div:nth-child(2){clip-path:polygon(12% 0,100% 0,88% 100%,0 100%);margin-left:-12%}.hero-panels div:last-child{clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);margin-left:-12%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.16)),linear-gradient(0deg,rgba(0,0,0,.55),transparent 55%)}.hero-copy{position:absolute;left:6vw;top:50%;transform:translateY(-46%)}.hero-copy h1,.page-hero h1{font-size:clamp(3.8rem,8vw,8rem);line-height:.85;letter-spacing:-.07em;text-transform:uppercase;margin:18px 0 32px;font-weight:900}.eyebrow,.kicker{font-size:10px;letter-spacing:normal;text-transform:uppercase;color:#aaa}.text-link{text-transform:uppercase;letter-spacing:normal;font-size:11px;text-decoration:none;border-bottom:1px solid #777;padding-bottom:8px}.text-link span{color:var(--red);margin-left:12px}.scroll-cue{position:absolute;right:4vw;bottom:35px;text-decoration:none;font-size:22px}
.social-rail{height:42px;display:flex;gap:24px;align-items:center;padding:0 3vw;background:#181818;border-bottom:1px solid var(--line)}.social-rail a{text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:normal;color:#aaa}.home-services{display:grid;grid-template-columns:repeat(4,1fr)}.image-tile{min-height:390px;position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:26px 22px;text-decoration:none;overflow:hidden;border-right:1px solid var(--line);isolation:isolate}.image-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000 0%,transparent 70%),var(--image) center/cover;z-index:-1;transition:transform .6s}.image-tile:hover:before{transform:scale(1.05)}.image-tile span{font-size:9px;color:#aaa;text-transform:uppercase;letter-spacing:normal}.image-tile h2{font-size:17px;margin:8px 0}.section-pad{padding:110px 7vw}.split-story,.trust-band{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.story-copy{max-width:600px}.story-copy h2,.section-title{font-size:clamp(2.5rem,5vw,5rem);line-height:.98;letter-spacing:-.055em;text-transform:uppercase;margin:18px 0 30px}.story-copy p,.lede{font-size:15px;line-height:1.8;color:#aaa;margin-bottom:32px}.photo-stack{height:650px;position:relative}.photo-stack img{position:absolute;width:72%;height:72%;object-fit:cover}.photo-stack img:last-child{right:0;bottom:0}.trust-band{background:#111}.trust-images{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:610px}.trust-images img{width:100%;height:100%;object-fit:cover}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #555;padding:15px 21px;text-decoration:none;text-transform:uppercase;letter-spacing:normal;font-size:11px;color:white;background:transparent;cursor:pointer}.button-red{background:var(--red);border-color:var(--red)}
.page-hero{min-height:52vh;padding:110px 7vw 60px;display:flex;align-items:flex-end;background:linear-gradient(90deg,#090909 35%,transparent),var(--hero,none) center/cover}.page-hero h1{margin-bottom:0}.content-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.placeholder{border:1px dashed #555;background:#181818;display:flex;align-items:center;justify-content:center;color:#777;text-transform:uppercase;letter-spacing:normal;font-size:10px;min-height:260px}.interview{grid-column:2/8}.owner-portrait{grid-column:9/13;min-height:560px;object-fit:cover;width:100%}.quote-q{color:var(--red);font-size:12px;text-transform:uppercase;letter-spacing:normal}.quote-a{font-size:clamp(1.8rem,3vw,3.4rem);line-height:1.2;letter-spacing:-.04em}.certificate-grid,.project-grid,.package-grid,.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.certificate,.project-card,.package-card,.product-card{background:#151515;border:1px solid var(--line);overflow:hidden}.certificate img,.project-card img,.product-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.card-body{padding:22px}.card-body h2,.card-body h3{margin:8px 0 12px}.card-body p{color:#999;line-height:1.65;font-size:14px}.pending-badge{display:inline-block;padding:6px 8px;background:#32201e;color:#e9928b;font-size:9px;letter-spacing:normal;text-transform:uppercase}
.content-grid.without-portrait .interview{grid-column:2/12}
.profile-copy{max-width:760px;color:#b5b5b5;font-size:16px;line-height:1.85}.profile-copy p{margin:0 0 22px}.profile-copy p:first-child{color:#f0f0ed;font-size:20px;line-height:1.65}
.service-experience{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.7fr);min-height:680px;background:#0d0d0d}.car-stage{position:relative;min-height:640px;touch-action:pan-y}.car-stage canvas{width:100%;height:100%;display:block}.viewer-status{position:absolute;left:24px;bottom:20px;color:#aaa;font-size:11px}.ppf-panel{padding:60px 5vw 40px 30px;display:flex;flex-direction:column;justify-content:center}.level-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:25px 0}.level-tab{display:flex;min-width:0;min-height:62px;padding:11px 12px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:11px;background:#181818;border:1px solid #333;color:#aaa;cursor:pointer;text-align:left;transition:border-color .2s,background-color .2s,color .2s}.level-tab:last-child{grid-column:1/-1}.level-tab:hover{border-color:#777;color:#fff}.level-tab[aria-selected=true]{background:#241311;border-color:var(--red);color:white}.level-tab-name{font-size:10px;font-weight:700;letter-spacing:normal;text-transform:uppercase}.level-tab-meter{display:block;width:100%;height:3px;overflow:hidden;background:#383838}.level-tab-meter i{display:block;width:var(--coverage);height:100%;background:var(--red)}.level-tab[aria-selected=true] .level-tab-meter{background:#55302b}.level-tab[aria-selected=true] .level-tab-meter i{background:#fff}.feature-list{padding:0;list-style:none;color:#aaa}.feature-list li{padding:10px 0;border-bottom:1px solid #252525}.paint-selector{margin:10px 0 26px}.colour-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:13px}.colour-tab{min-width:0;padding:8px 3px;background:#151515;border:1px solid #333;color:#999;cursor:pointer}.colour-tab span{display:block;width:18px;height:18px;margin:0 auto 7px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.colour-tab b{display:block;overflow:hidden;font-size:8px;font-weight:500;text-overflow:ellipsis}.colour-tab[aria-pressed=true]{border-color:#eee;color:white}.colour-white{--swatch:#f4f4f0}.colour-yellow{--swatch:#dda300}.colour-red{--swatch:#d5001c}.colour-silver{--swatch:#92979a}.colour-black{--swatch:#08090a}
.catalog-toolbar{display:flex;gap:12px;margin-bottom:30px}.input,select,textarea{width:100%;background:#121212;color:white;border:1px solid #383838;padding:15px;font:inherit}.product-card button{width:100%}.product-price{font-size:13px;color:#ddd}.empty-state{padding:50px;border:1px dashed #444;text-align:center;color:#aaa}.cart-drawer{position:fixed;z-index:90;right:0;top:0;height:100vh;width:min(430px,100%);background:#141414;padding:30px;transform:translateX(105%);transition:.3s;box-shadow:none}.cart-drawer.open{transform:none;box-shadow:-20px 0 60px #000}.cart-head{display:flex;justify-content:space-between}.cart-close{background:none;border:0;color:white;font-size:25px}.cart-line{padding:18px 0;border-bottom:1px solid #333;display:grid;grid-template-columns:1fr auto;gap:10px}.cart-line input{width:70px}.cart-checkout{width:100%;margin-top:25px}
.facebook-section{background:#111}.fb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fb-card{border:1px solid #2d2d2d;padding:20px;text-decoration:none}.fb-card img{aspect-ratio:1;object-fit:cover;margin-bottom:16px}.fb-card p{color:#aaa;line-height:1.6}.article{max-width:850px;margin:auto}.article-cover{width:100%;max-height:600px;object-fit:cover;margin-bottom:45px}.article-body{white-space:pre-line;line-height:1.9;color:#ccc}
.booking-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.booking-choice-section{padding-bottom:0}.booking-choice{display:grid;grid-template-columns:1fr 1fr;gap:22px}.booking-option{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:46px 42px;border:1px solid var(--line);background:var(--panel)}.booking-option h2{font-size:clamp(1.9rem,3.2vw,2.8rem);text-transform:uppercase;letter-spacing:-.03em;line-height:.98;margin:4px 0 2px}.booking-option p{color:var(--muted);font-size:15px;line-height:1.6;margin:0 0 14px;flex:1}.booking-option .button{width:auto}.booking-option--wash{border-color:var(--red)}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:10px;text-transform:uppercase;letter-spacing:normal;color:#aaa}.validation-summary-errors,.field-validation-error{color:#ff8b84;font-size:12px}
.site-footer{background:#f3f3f0;color:#171717;padding:65px 5vw 30px;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:45px}.site-footer>div{display:flex;flex-direction:column;gap:9px}.footer-brand img{width:130px;filter:url("#footer-logo-on-light")}.site-footer p,.site-footer a{color:#666;text-decoration:none;font-size:13px;line-height:1.7}.footer-label{font-size:9px;text-transform:uppercase;letter-spacing:normal;color:#999;margin-bottom:10px}.site-footer small{grid-column:1/-1;border-top:1px solid #ddd;padding-top:22px;color:#999}
.admin-shell{max-width:1100px;margin:50px auto;padding:25px}.admin-nav{display:flex;justify-content:space-between;align-items:center}.admin-table{width:100%;border-collapse:collapse;margin-top:25px}.admin-table td,.admin-table th{padding:13px;border-bottom:1px solid #333;text-align:left}.reveal{opacity:0;transform:translateY(20px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{justify-content:flex-start}.nav-toggle{display:flex;flex-direction:column;gap:4px;position:absolute;right:20px;background:none;border:1px solid #333;padding:12px}.nav-toggle span:not(.sr-only){display:block;width:19px;height:1px;background:white}.site-nav{position:fixed;inset:78px 0 auto;background:#141414;display:none;flex-direction:column;align-items:stretch;padding:22px}.site-nav.open{display:flex}.site-nav a,.site-nav a:nth-last-child(-n+3){margin:0;padding:13px}.home-services,.certificate-grid,.project-grid,.package-grid,.product-grid,.fb-grid{grid-template-columns:1fr 1fr}.split-story,.trust-band,.service-experience,.booking-wrap,.booking-choice{grid-template-columns:1fr}.content-grid{display:block}.interview,.owner-portrait{margin-bottom:35px}.ppf-panel{padding:45px 6vw}.site-footer{grid-template-columns:1fr 1fr}.home-hero{min-height:560px}.hero-panels{grid-template-columns:1fr}.hero-panels div:not(:first-child){display:none}}
@media(max-width:600px){.site-header{height:72px;padding:0 20px}.site-logo img{width:112px}.site-nav{inset:72px 0 auto;max-height:calc(100dvh - 72px);overflow-y:auto}.nav-toggle{right:16px;min-width:44px;min-height:44px;align-items:center;justify-content:center}.home-services,.certificate-grid,.project-grid,.package-grid,.product-grid,.fb-grid{grid-template-columns:1fr}.section-pad{padding:64px 20px}.page-hero{min-height:360px;padding:72px 20px 32px;background-position:62% center}.hero-copy{left:20px;right:20px;width:auto}.hero-copy h1,.page-hero h1{max-width:100%;font-size:clamp(2.85rem,14.5vw,3.65rem);line-height:.9;letter-spacing:-.06em;overflow-wrap:break-word}.section-title,.story-copy h2{max-width:100%;font-size:clamp(2.35rem,12.5vw,3.15rem);line-height:.95;overflow-wrap:break-word}.story-copy p,.lede{font-size:15px;line-height:1.7}.trust-images{height:440px}.photo-stack{height:460px}.owner-portrait{min-height:400px}.service-experience{display:block}.car-stage{height:360px;min-height:360px;overflow:hidden}.car-stage canvas{transform:scale(1.2);transform-origin:center}.viewer-status{left:16px;right:16px;bottom:12px;font-size:9px;line-height:1.4}.ppf-panel{padding:42px 20px 52px}.ppf-panel .section-title{font-size:clamp(2.6rem,14vw,3.5rem);margin-bottom:22px}.ppf-panel .pending-badge{line-height:1.45}.ppf-panel .button{width:100%}.level-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:22px 0}.level-tab{min-height:60px;padding:10px}.colour-tab{min-height:48px}.colour-tab b{display:none}.package-card .placeholder{min-height:210px}.catalog-toolbar{flex-direction:column}.catalog-toolbar .button{width:100%;min-height:48px}.empty-state{padding:32px 20px}.empty-state h2{font-size:1.45rem;overflow-wrap:anywhere}.booking-form{grid-template-columns:1fr}.field.full{grid-column:auto}.input,select,textarea{font-size:16px;min-height:48px}.button{min-height:46px}.cart-drawer{padding:22px 20px}.site-footer{grid-template-columns:1fr;padding:52px 20px 26px;gap:30px}}
.studio-editorial{min-height:920px;display:grid;grid-template-columns:.45fr 1.15fr .8fr;grid-template-rows:auto 1fr;gap:34px 5vw;position:relative;overflow:hidden;background:#0c0c0c}.editorial-number{position:absolute;right:4vw;top:20px;font-size:clamp(8rem,20vw,20rem);line-height:1;font-weight:900;letter-spacing:-.09em;color:#121212;z-index:0}.editorial-heading{grid-column:1/3;z-index:1;max-width:780px}.editorial-heading h2,.protection-copy h2,.showcase-intro h2,.closing-inner h2{font-size:clamp(3rem,6.5vw,7rem);line-height:.88;letter-spacing:-.065em;text-transform:uppercase;margin:18px 0 30px}.editorial-main{grid-column:1/3;margin:0;align-self:end;z-index:1}.editorial-main img{width:100%;height:500px;object-fit:cover}.editorial-main figcaption,.showcase-shot span{padding-top:12px;font-size:9px;color:#777;text-transform:uppercase;letter-spacing:normal}.editorial-note{grid-column:3;grid-row:2;align-self:start;z-index:1;max-width:380px}.editorial-note p{color:#aaa;line-height:1.8;font-size:14px;margin:0 0 35px}.editorial-detail{grid-column:3;grid-row:2;align-self:end;margin:0 0 -90px}.editorial-detail img{width:100%;height:330px;object-fit:cover}
.protection-feature{height:min(880px,92vh);min-height:680px;position:relative;overflow:hidden;display:flex;align-items:center;padding:7vw}.protection-image,.protection-wash{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.protection-wash{background:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.52) 48%,rgba(0,0,0,.08)),linear-gradient(0deg,rgba(0,0,0,.65),transparent 45%)}.protection-copy{position:relative;z-index:2;max-width:740px}.protection-copy p{max-width:520px;color:#bbb;line-height:1.8;margin-bottom:34px}.protection-index{position:absolute;right:4vw;top:2vw;z-index:1;font-size:clamp(9rem,24vw,23rem);font-weight:900;letter-spacing:-.1em;color:rgba(255,255,255,.07)}.protection-spec{position:absolute;z-index:2;right:4vw;bottom:38px;display:flex;border-top:1px solid rgba(255,255,255,.3)}.protection-spec span{padding:16px 24px;border-right:1px solid rgba(255,255,255,.2);font-size:9px;letter-spacing:normal;text-transform:uppercase}
.work-showcase{display:grid;grid-template-columns:.75fr 1.25fr 1fr;grid-template-rows:auto 240px 300px;gap:20px;background:#eee;color:#111}.showcase-intro{grid-row:1/3;align-self:center;padding-right:4vw}.showcase-intro p{color:#666;line-height:1.7;margin-bottom:30px}.work-showcase .eyebrow{color:#777}.work-showcase .text-link{border-color:#999}.showcase-gallery{display:contents}.showcase-shot{position:relative;text-decoration:none;overflow:hidden;display:flex;flex-direction:column}.showcase-shot img{width:100%;height:calc(100% - 28px);object-fit:cover;filter:saturate(.75);transition:filter .45s,transform .65s}.showcase-shot:hover img{filter:saturate(1);transform:scale(1.025)}.showcase-shot-tall{grid-column:2;grid-row:1/4}.showcase-shot-wide{grid-column:3;grid-row:1/3}.showcase-shot-small{grid-column:3;grid-row:3}.showcase-shot span{color:#777}
.closing-statement{min-height:700px;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:radial-gradient(circle at 50% 60%,#251513 0%,#111 42%,#090909 70%)}.closing-track{position:absolute;white-space:nowrap;font-size:clamp(6rem,15vw,15rem);font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.025);transform:rotate(-7deg)}.closing-inner{position:relative;z-index:1;padding:80px 5vw}.closing-inner h2{margin:22px 0 45px}.closing-actions{display:flex;align-items:center;justify-content:center;gap:35px}
@media(max-width:900px){.studio-editorial{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;min-height:auto}.editorial-heading{grid-column:1/3}.editorial-main{grid-column:1/3}.editorial-note{grid-column:1;grid-row:3}.editorial-detail{grid-column:2;grid-row:3;margin:0}.protection-spec{left:7vw;right:auto}.work-showcase{grid-template-columns:1fr 1fr;grid-template-rows:auto 430px 260px}.showcase-intro{grid-column:1/3;grid-row:1}.showcase-shot-tall{grid-column:1;grid-row:2/4}.showcase-shot-wide{grid-column:2;grid-row:2}.showcase-shot-small{grid-column:2;grid-row:3}}
@media(max-width:600px){.studio-editorial{display:block}.editorial-heading,.editorial-main,.editorial-note,.editorial-detail{margin-bottom:45px}.editorial-heading h2,.protection-copy h2,.showcase-intro h2,.closing-inner h2{font-size:clamp(2.65rem,13.5vw,3.55rem);overflow-wrap:break-word}.editorial-main img{height:360px}.editorial-detail{display:none}.protection-feature{height:760px;padding:20px}.protection-copy{max-width:100%}.protection-spec{left:20px;right:20px;bottom:25px;display:grid;grid-template-columns:1fr}.protection-spec span{padding:10px 0;border-right:0}.work-showcase{display:block}.showcase-intro,.showcase-shot{margin-bottom:45px}.showcase-shot img{height:360px}.closing-statement{min-height:620px}.closing-inner{padding:70px 20px}.closing-actions{flex-direction:column;gap:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Past projects archive - every vehicle remains its own editorial section. */
.projects-hero{min-height:72vh;background-image:linear-gradient(90deg,rgba(9,9,9,.9) 0%,rgba(9,9,9,.34) 58%,rgba(9,9,9,.12)),var(--hero);background-position:center}.projects-hero h1{font-size:clamp(4rem,10vw,10rem)}
.project-archive-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:8vw;align-items:end}.project-archive-intro .section-title{max-width:900px;margin-bottom:0}.project-archive-summary{padding-bottom:8px}.project-archive-summary>p{max-width:520px;margin:0 0 42px;color:#aaa;font-size:15px;line-height:1.8}.project-archive-summary dl{display:flex;gap:52px;margin:0}.project-archive-summary dl div{display:flex;flex-direction:column}.project-archive-summary dt{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:800;letter-spacing:-.06em}.project-archive-summary dd{margin:5px 0 0;color:#777;font-size:9px;letter-spacing:normal;text-transform:uppercase}
.project-jump{position:sticky;top:0;z-index:40;display:flex;gap:0;overflow-x:auto;background:rgba(12,12,12,.96);border-block:1px solid #2a2a2a;scrollbar-width:none;backdrop-filter:blur(16px)}.project-jump::-webkit-scrollbar{display:none}.project-jump a{display:flex;flex:none;min-width:170px;padding:17px 24px;flex-direction:column;gap:5px;border-right:1px solid #292929;color:#ddd;font-family:inherit;font-size:11px;letter-spacing:normal;text-decoration:none}.project-jump a span{color:#777;font-family:inherit;font-size:8px;letter-spacing:normal;text-transform:uppercase}.project-jump a:hover{background:#1c1c1c;color:#fff}
.past-project{padding-bottom:100px;overflow:hidden;border-bottom:1px solid #272727;scroll-margin-top:74px}.past-project:nth-child(even){background:#101010}.past-project-heading{display:grid;grid-template-columns:110px 1fr auto;gap:32px;align-items:end;padding-top:90px;padding-bottom:40px}.past-project-number{color:#3a3a3a;font-size:clamp(3.8rem,7vw,7rem);font-weight:900;line-height:.75;letter-spacing:-.08em}.past-project-heading .eyebrow{font-family:inherit;letter-spacing:normal}.past-project-heading h2{margin:8px 0 0;font-family:inherit;font-size:clamp(2.8rem,6vw,6.8rem);line-height:.88;letter-spacing:normal;text-transform:uppercase}.past-project-heading p{margin:0;color:#666;font-size:9px;letter-spacing:normal;text-transform:uppercase;display:flex;align-items:center;gap:6px}.past-project-heading p span:last-child{color:#aaa}.past-project-scroll-arrow{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;padding:0;border:0;background:transparent;color:#aaa;font-size:20px;line-height:1;cursor:pointer;transition:color .2s}.past-project-scroll-arrow:hover,.past-project-scroll-arrow:focus-visible{color:#fff}.past-project-scroll-back{margin-left:auto;padding-left:18px;margin-right:4px}
.past-project-gallery{display:grid;grid-auto-flow:column;grid-auto-columns:min(31vw,520px);grid-template-rows:repeat(2,minmax(190px,28vh));gap:10px;overflow-x:auto;padding:0 7vw 18px;scroll-padding-inline:7vw;scrollbar-color:#555 transparent;overscroll-behavior-inline:contain}.past-project-photo{position:relative;min-width:0;margin:0;padding:0;overflow:hidden;border:0;background:#181818;cursor:zoom-in}.past-project-photo-featured{grid-row:span 2;grid-column:span 2;min-width:0}.past-project-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.82);transition:transform .6s,filter .35s}.past-project-photo:hover img,.past-project-photo:focus-visible img{transform:scale(1.025);filter:saturate(1)}.past-project-photo>span{position:absolute;right:12px;bottom:10px;padding:5px 7px;background:rgba(8,8,8,.68);color:#bbb;font-size:8px;letter-spacing:normal}.past-project-photo:focus-visible{outline:2px solid #fff;outline-offset:-2px}
.past-project-video{cursor:default}.past-project-video video{display:block;width:100%;height:100%;object-fit:cover;background:#090909}.past-project-video>span{text-transform:uppercase}
.project-video-toggle{position:absolute;z-index:2;left:4px;bottom:2px;width:44px;height:44px;padding:0;align-items:center;justify-content:center;border:0;background:transparent;color:rgba(255,255,255,.52);filter:drop-shadow(0 1px 3px rgba(0,0,0,.9));cursor:pointer;transition:color .2s,transform .2s}.project-video-toggle:hover,.project-video-toggle:active{color:rgba(255,255,255,.88);transform:scale(1.06)}.project-video-toggle:focus-visible{outline:1px solid rgba(255,255,255,.7);outline-offset:-7px}.project-video-toggle span{position:relative;display:block;width:12px;height:14px}.project-video-toggle[data-state="paused"] span::before{position:absolute;top:1px;left:2px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;content:""}.project-video-toggle[data-state="playing"] span::before,.project-video-toggle[data-state="playing"] span::after{position:absolute;top:1px;width:3px;height:12px;background:currentColor;content:""}.project-video-toggle[data-state="playing"] span::before{left:2px}.project-video-toggle[data-state="playing"] span::after{right:2px}
.project-video-sound{position:absolute;z-index:2;left:48px;bottom:2px;width:44px;height:44px;padding:0;align-items:center;justify-content:center;border:0;background:transparent;color:rgba(255,255,255,.52);filter:drop-shadow(0 1px 3px rgba(0,0,0,.9));cursor:pointer;transition:color .2s,transform .2s}.project-video-sound:hover,.project-video-sound:active{color:rgba(255,255,255,.88);transform:scale(1.06)}.project-video-sound:focus-visible{outline:1px solid rgba(255,255,255,.7);outline-offset:-7px}.project-video-sound svg{width:17px;height:17px;overflow:visible}.project-video-sound .speaker{fill:currentColor;stroke:none}.project-video-sound .sound-waves,.project-video-sound .sound-slash{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.project-video-sound[data-state="muted"] .sound-waves,.project-video-sound[data-state="audible"] .sound-slash{display:none}
.project-video-toggle:not([hidden]),.project-video-sound:not([hidden]){display:flex}
.past-project{content-visibility:auto;contain-intrinsic-size:auto 900px}
.project-journal{background:#0c0c0c}.project-lightbox-open{overflow:hidden}.project-lightbox{position:fixed;z-index:200;inset:0;display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;padding:24px;background:rgba(4,4,4,.97)}.project-lightbox figure{display:flex;min-width:0;height:calc(100dvh - 48px);margin:0;flex-direction:column;align-items:center;justify-content:center}.project-lightbox img{max-width:100%;max-height:calc(100% - 45px);object-fit:contain}.project-lightbox figcaption{display:flex;width:min(100%,1200px);padding-top:15px;justify-content:space-between;color:#aaa;font-size:10px;letter-spacing:normal;text-transform:uppercase}.project-lightbox figcaption b{font-weight:400}.project-lightbox button{border:0;background:transparent;color:#fff;cursor:pointer}.project-lightbox-close{position:absolute;z-index:2;top:18px;right:22px;width:52px;height:52px;font-size:34px}.project-lightbox-arrow{width:60px;height:80px;font-size:48px}.project-lightbox-arrow:hover,.project-lightbox-close:hover{color:var(--red)}
@media(max-width:900px){.project-archive-intro{grid-template-columns:1fr}.past-project-heading{grid-template-columns:80px 1fr}.past-project-heading p{display:none}.past-project-gallery{grid-auto-columns:47vw}.past-project-photo-featured{min-width:70vw}}
@media(max-width:600px){.projects-hero{min-height:72svh}.projects-hero h1{font-size:clamp(3.55rem,18vw,5rem)}.project-archive-intro{gap:42px}.project-archive-summary>p{margin-bottom:28px}.project-archive-summary dl{gap:38px}.project-jump{top:72px}.project-jump a{min-width:145px;padding:14px 18px}.past-project{padding-bottom:64px;scroll-margin-top:126px}.past-project-heading{grid-template-columns:52px 1fr;gap:14px;padding-top:58px;padding-bottom:28px}.past-project-number{font-size:3rem}.past-project-heading h2{font-size:clamp(2.15rem,11vw,3.1rem);overflow-wrap:break-word}.past-project-gallery{grid-auto-columns:76vw;grid-template-rows:repeat(2,190px);gap:7px;padding:0 20px 14px;scroll-padding-inline:20px}.past-project-photo-featured{grid-column:span 1;min-width:0}.project-lightbox{grid-template-columns:42px minmax(0,1fr) 42px;padding:12px}.project-lightbox figure{height:calc(100dvh - 24px)}.project-lightbox-arrow{width:42px;padding:0;font-size:38px}.project-lightbox-close{top:8px;right:8px}.project-lightbox figcaption{font-size:8px;gap:15px}}
/* Shopify catalogue */
.product-media{aspect-ratio:4/3;background:#fff;display:flex;align-items:center;justify-content:center;padding:16px}.product-card>.product-media img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain}.product-media .placeholder{width:100%;height:100%;min-height:0}.product-card{display:flex;flex-direction:column}.product-card .card-body{flex:1}.collection-nav{display:flex;gap:8px;overflow-x:auto;padding:4px 0 18px;margin-bottom:20px;scrollbar-width:thin}.collection-nav a{flex:none;border:1px solid #383838;color:#bbb;padding:11px 15px;font-size:11px;letter-spacing:normal;text-transform:uppercase;text-decoration:none}.collection-nav a:hover,.collection-nav a.active{background:var(--red);border-color:var(--red);color:#fff}.catalog-context{text-transform:uppercase;letter-spacing:normal;color:#aaa;margin:0 0 22px}.catalog-pagination{display:flex;justify-content:center;margin-top:38px}.variant-label{display:block;margin:18px 0 7px;color:#aaa;font-size:10px;letter-spacing:normal;text-transform:uppercase}.cart-line small{display:block;color:#999;margin-top:5px}

/* Light storefront, aligned with the connected Shopify shop */
.products-hero{padding:86px 7vw 64px;background:#fff;color:#060606;text-align:center;border-bottom:1px solid #e5e7e9}.products-hero span{display:block;font-size:10px;letter-spacing:normal;text-transform:uppercase;color:#6f7378}.products-hero h1{margin:12px 0 14px;font-size:clamp(3rem,7vw,6.5rem);line-height:.9;letter-spacing:-.06em;text-transform:uppercase}.products-hero p{margin:0;color:#666;font-size:14px}.products-page{background:#fff;color:#060606;padding-top:54px}.products-page .catalog-toolbar{max-width:650px;margin:0 auto 32px}.products-page .catalog-toolbar .input{background:#eff0f1;color:#060606;border:1px solid transparent;border-radius:2px}.products-page .catalog-toolbar .input:focus{background:#fff;border-color:#060606;outline:0}.products-page .catalog-toolbar .button{background:#373e48;border-color:#373e48;color:#fff}.products-page .collection-nav{justify-content:center;border-bottom:1px solid #e2e4e6;padding-bottom:24px;margin-bottom:36px}.products-page .collection-nav a{border:0;border-bottom:1px solid transparent;color:#555;padding:10px 4px;margin:0 11px}.products-page .collection-nav a:hover,.products-page .collection-nav a.active{background:transparent;border-color:#060606;color:#060606}.products-page .catalog-context{text-align:center;color:#666;margin-bottom:30px}.products-page .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:42px 20px}.products-page .product-card{background:#fff;border:0;color:#060606;overflow:visible;text-align:center}.products-page .product-media{aspect-ratio:1/1;background:#eff0f1;padding:20px;overflow:hidden}.products-page .product-card .card-body{padding:18px 6px 15px}.products-page .product-vendor{display:block;color:#70757a;font-size:10px;letter-spacing:normal;text-transform:uppercase;margin-bottom:7px}.products-page .card-body h2{margin:0 0 9px;font-size:15px;line-height:1.35;font-weight:600}.products-page .product-price{color:#060606;font-size:18px;margin:12px 0 0}.products-page .variant-label{color:#666}.products-page .variant-select{background:#eff0f1;color:#060606;border:1px solid transparent;padding:12px;font-size:13px}.products-page .product-card>.button{background:#373e48;border-color:#373e48;color:#fff;transition:background .2s,border-color .2s}.products-page .product-card>.button:hover{background:#060606;border-color:#060606}.products-page .empty-state{border-color:#c2c8d1;color:#555;background:#f7f8f9}.products-page .catalog-pagination .button{border-color:#060606;color:#060606}.products-page .catalog-pagination .button:hover{background:#060606;color:#fff}.products-page+.cart-drawer{background:#fff;color:#060606;box-shadow:-18px 0 55px rgba(0,0,0,.18)}.products-page+.cart-drawer .cart-close{color:#060606}.products-page+.cart-drawer .cart-line{border-color:#ddd}.products-page+.cart-drawer .cart-line small{color:#666}.products-page+.cart-drawer .cart-line input{background:#eff0f1;color:#060606;border-color:#d7dadd}.products-page+.cart-drawer .cart-checkout{background:#060606;border-color:#060606;color:#fff}
@media(max-width:1100px){.products-page .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.products-hero{padding:66px 20px 46px}.products-hero p{max-width:320px;margin-inline:auto;line-height:1.6}.products-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 12px}.products-page .collection-nav{justify-content:flex-start}.products-page .collection-nav a{margin:0 6px}.products-page .product-media{padding:12px}.products-page .product-card .card-body{padding:14px 2px 12px}.products-page .card-body h2{font-size:13px}.products-page .product-price{font-size:16px}.products-page .variant-select{padding:10px 7px}.products-page .product-card>.button{padding-inline:8px}}
@media(max-width:390px){.products-page .product-grid{grid-template-columns:1fr}.products-page .product-media{padding:18px}}

/* Custom not-found page */
.not-found{position:relative;isolation:isolate;min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:7vw;padding:80px 7vw;overflow:hidden;background:radial-gradient(circle at 25% 50%,#271413 0%,#111 37%,#090909 68%)}
.not-found:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.035) 48.1% 48.35%,transparent 48.45%),linear-gradient(115deg,transparent 0 61%,rgba(217,0,24,.16) 61.1% 61.35%,transparent 61.45%)}
.not-found-mark{display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.5vw,24px);color:#f2f2ef;font-size:clamp(10rem,24vw,25rem);font-weight:900;line-height:.72;letter-spacing:-.1em;text-shadow:0 16px 45px rgba(0,0,0,.4)}
.not-found-mark i{width:clamp(52px,8vw,120px);aspect-ratio:1;border:clamp(12px,2vw,30px) solid var(--red);border-radius:50%;box-shadow:0 0 60px rgba(217,0,24,.22)}
.not-found-copy{position:relative;z-index:1;max-width:560px;padding-left:clamp(24px,4vw,70px);border-left:1px solid #383838}
.not-found-copy h1{max-width:560px;margin:18px 0 24px;font-size:clamp(3rem,6vw,6.4rem);font-weight:900;line-height:.88;letter-spacing:-.065em;text-transform:uppercase}
.not-found-copy p{max-width:500px;margin:0 0 38px;color:#aaa;font-size:15px;line-height:1.8}
.not-found-actions{display:flex;align-items:center;gap:32px}
@media(max-width:900px){.not-found{grid-template-columns:1fr;gap:60px;padding-block:100px}.not-found-mark{justify-content:flex-start}.not-found-copy{max-width:680px}}
@media(max-width:600px){.not-found{min-height:calc(100dvh - 72px);gap:48px;padding:70px 20px}.not-found-mark{font-size:clamp(8rem,41vw,12rem)}.not-found-mark i{width:clamp(42px,18vw,70px);border-width:clamp(10px,4vw,16px)}.not-found-copy{padding-left:20px}.not-found-copy h1{font-size:clamp(2.8rem,14vw,4rem)}.not-found-actions{align-items:flex-start;flex-direction:column;gap:28px}.not-found-actions .button{width:100%}}

/* Keep the modern product gallery full-width after legacy gallery rules. */
.product-detail .product-gallery{display:block;width:100%;max-width:none}.product-detail .product-thumbnail-gallery,.product-detail .product-thumbnail-track{width:100%}

/* Mobile-first production polish. Keep this final so it wins over legacy storefront rules. */
@media(max-width:600px){
html{scroll-padding-top:72px}
body{font-size:15px}
body.nav-open{overflow:hidden}
.site-header{position:sticky;top:0;z-index:100;height:72px;padding:0 20px;background:#101010;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.site-logo{display:flex;align-items:center;min-width:120px;min-height:44px}
.site-logo img{width:118px}
.nav-toggle{right:16px;width:46px;min-width:46px;height:46px;min-height:46px;padding:0;border:0;background:transparent}
.nav-toggle span:not(.sr-only){width:20px;transition:transform .2s,opacity .2s}
.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(5px) rotate(45deg)}
.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
.site-nav{inset:72px 0 0;z-index:99;max-height:none;padding:18px 20px 28px;overflow-y:auto;background:rgba(12,12,12,.985);overscroll-behavior:contain}
.site-nav.open{display:flex}
.site-nav a,.site-nav a:nth-last-child(-n+3),.site-cart-toggle{display:flex;align-items:center;width:100%;min-height:51px;margin:0;padding:12px 4px;border:0;border-bottom:1px solid #292929;font-size:12px;letter-spacing:normal}
.site-nav .site-cart-toggle{justify-content:space-between}
.site-nav .nav-cta{justify-content:center;margin-top:18px;border:1px solid var(--red);background:var(--red);color:#fff}
.cart-count{min-width:26px;height:26px}
.home-hero{height:calc(100svh - 72px);min-height:600px;max-height:820px}
.hero-copy{left:20px;right:20px;top:auto;bottom:86px;transform:none}
.hero-copy h1,.page-hero h1{font-size:clamp(2.8rem,14vw,3.65rem);line-height:.88}
.hero-copy h1{margin:16px 0 24px}
.scroll-cue{right:20px;bottom:28px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:20px}
.social-rail{height:48px;padding:0 20px;gap:10px}
.social-rail a{display:flex;align-items:center;min-height:44px;padding-right:18px}
.home-services{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84vw;gap:3px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-width:none;overscroll-behavior-inline:contain}
.home-services::-webkit-scrollbar{display:none}
.image-tile{min-height:390px;padding:24px 20px;border-right:0;border-bottom:1px solid var(--line);scroll-snap-align:start}
.section-pad{padding:72px 20px}
.page-hero{min-height:340px;padding:86px 20px 36px;background-position:62% center}
.section-title,.story-copy h2{font-size:clamp(2.25rem,11.5vw,3.05rem);margin:16px 0 24px}
.story-copy p,.lede{margin-bottom:26px;font-size:15px;line-height:1.72}
.text-link{display:inline-flex;align-items:center;min-height:44px;padding-top:8px}
.studio-editorial{padding-top:80px;padding-bottom:54px}
.editorial-heading,.editorial-main,.editorial-note{margin-bottom:38px}
.editorial-heading h2,.protection-copy h2,.showcase-intro h2,.closing-inner h2{font-size:clamp(2.55rem,12.5vw,3.35rem);line-height:.9}
.editorial-main{margin-right:-20px;margin-left:-20px}
.editorial-main img{height:420px}
.editorial-main figcaption{padding-right:20px;padding-left:20px}
.protection-feature{height:auto;min-height:680px;padding:72px 20px 138px;align-items:center}
.protection-copy p{font-size:15px;line-height:1.72}
.protection-spec{bottom:24px}
.work-showcase{padding-top:76px;padding-bottom:48px}
.showcase-intro{margin-bottom:36px}
.showcase-gallery{display:grid;grid-auto-flow:column;grid-auto-columns:86%;gap:12px;margin:0 -20px;padding:0 20px 24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;scrollbar-width:none;overscroll-behavior-inline:contain}
.showcase-gallery::-webkit-scrollbar{display:none}
.showcase-shot{grid-column:auto;grid-row:auto;margin:0;scroll-snap-align:start}
.showcase-shot img,.showcase-shot-tall img{height:390px}
.closing-statement{min-height:590px}
.closing-inner{padding:70px 20px}
.closing-inner h2{margin-bottom:36px}
.button{min-height:48px}
.content-grid{padding-bottom:45px}
.owner-portrait{min-height:360px}
.quote-a{font-size:clamp(1.65rem,7vw,2.05rem)}
.certificate-grid,.project-grid,.package-grid,.fb-grid{gap:14px}
.placeholder{min-height:230px}
.services-hero{min-height:250px;padding-top:72px;padding-bottom:28px}
.car-stage{height:300px;min-height:300px;background:radial-gradient(circle at 50% 58%,#252525 0%,#101010 58%,#090909 100%)}
.car-stage canvas{transform:none}
.viewer-status{left:14px;right:14px;bottom:10px;font-size:10px}
.ppf-panel{padding:42px 20px 58px;border-top:1px solid #242424}
.ppf-panel .section-title{margin-bottom:20px}
.level-picker-label{display:block;color:#777;font-size:9px;letter-spacing:normal;text-transform:uppercase}
.level-tabs{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:142px;gap:8px;margin:13px -20px 28px;padding:0 20px 8px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;scrollbar-width:none}
.level-tabs::-webkit-scrollbar{display:none}
.level-tab,.level-tab:last-child{grid-column:auto;min-height:74px;padding:12px;scroll-snap-align:start}
.level-tab-name{font-size:9px;line-height:1.35}
.feature-list{margin-bottom:26px;font-size:14px;line-height:1.55}
.products-hero{padding:58px 20px 42px}
.products-hero h1{font-size:clamp(2.8rem,14vw,3.5rem)}
.products-page{padding:40px 20px 82px}
.products-page .catalog-toolbar{gap:9px;margin-bottom:26px}
.products-page .collection-nav{margin:0 -20px 34px;padding:2px 20px 15px;scroll-padding-inline:20px;scroll-snap-type:x proximity}
.products-page .collection-nav a{display:flex;align-items:center;min-height:44px;margin:0 10px 0 0;padding:8px 3px;scroll-snap-align:start}
.products-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:64px;width:100%;max-width:none}
.products-page .product-media{padding:8px}
.products-page .product-card .card-body{padding:17px 2px 13px}
.products-page .product-vendor{font-size:8px;line-height:1.4}
.products-page .card-body h2{font-size:13px;line-height:1.42}
.products-page .product-price{font-size:15px}
.variant-pills{gap:5px}
.variant-pills-empty{min-height:42px}
.product-card button.variant-pill{min-width:44px;min-height:42px;padding:7px;font-size:10px}
.products-page .product-card>.button{width:100%;min-width:0;padding:11px 7px;font-size:10px}
.products-page .product-card:after{left:8%;right:8%;bottom:-31px}
.products-page .catalog-pagination{gap:4px;margin-top:82px}
.pagination-page,.pagination-arrow{min-width:40px;width:40px;height:44px;padding:0}
.pagination-ellipsis{display:inline-flex;align-items:center;justify-content:center;width:18px;height:44px;color:#777}
.product-detail{padding:22px 20px 76px}
.product-breadcrumb{min-height:40px;margin-bottom:18px;line-height:1.5;white-space:normal}
.product-gallery .product-gallery-main{margin-bottom:12px;padding:8px}
.product-thumbnail-track{grid-auto-columns:42%;gap:8px}
.product-thumbnail{padding:7px}
.gallery-arrow{width:44px;height:60px}
.product-info{padding-top:30px}
.product-info h1{font-size:clamp(2.25rem,11vw,3.15rem);line-height:.94;margin-bottom:18px}
.product-detail-price{margin-bottom:28px}
.option-value{min-width:54px;min-height:46px;padding:11px 13px}
.product-purchase{gap:14px;margin:30px 0}
.purchase-quantity{grid-template-columns:44px 46px 44px;width:134px;height:48px}
.purchase-quantity button{min-width:44px}
.product-description{padding-top:26px}
.product-description p{font-size:15px;line-height:1.8}
.booking-wrap{gap:14px}
.booking-form{gap:16px}
.field{gap:9px}
.field label{font-size:11px}
.input,select,textarea{min-height:50px}
.legal-hero{min-height:300px;padding:96px 20px 42px}
.legal-hero h1{font-size:clamp(2.6rem,12.5vw,3.35rem);overflow-wrap:anywhere}
.legal-page{padding:52px 20px 82px;line-height:1.75}
.legal-page p,.legal-page li{font-size:15px}
.legal-page h2{margin-top:36px;font-size:1.35rem;line-height:1.25}
.legal-table-wrap{overflow:visible}
.legal-table{display:block;min-width:0}
.legal-table thead{display:none}
.legal-table tbody,.legal-table tr,.legal-table td{display:block;width:100%}
.legal-table tr{margin:0 0 14px;border:1px solid #333;background:#111}
.legal-table td{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:12px;border:0;border-bottom:1px solid #292929;font-size:13px;line-height:1.55}
.legal-table td:last-child{border-bottom:0}
.legal-table td:before{color:#888;font-size:9px;font-weight:700;letter-spacing:normal;text-transform:uppercase}
.legal-table td:nth-child(1):before{content:"Technology"}
.legal-table td:nth-child(2):before{content:"Purpose"}
.legal-table td:nth-child(3):before{content:"Duration"}
.site-footer{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:54px 20px 28px;gap:28px 20px}
.site-footer>div{gap:5px}
.footer-brand{grid-column:1/-1;margin-bottom:6px}
.site-footer>div:nth-child(2){grid-column:1}
.site-footer>div:nth-child(3){grid-column:1/-1}
.site-footer>div:nth-child(4){grid-column:2;grid-row:2}
.site-footer a{display:flex;align-items:center;min-height:38px}
.footer-legal{grid-column:1/-1;gap:14px;padding-top:18px}
.footer-legal nav{width:100%;gap:4px 14px}
.footer-legal nav a{min-height:34px}
.cart-backdrop{z-index:119}
.cart-drawer{z-index:120;width:100%;padding:24px 20px 20px}
.cart-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px}
.cart-line{grid-template-columns:72px minmax(0,1fr)}
}

@media(max-width:340px){
.products-page .product-grid{grid-template-columns:1fr;max-width:300px;margin-inline:auto}
.products-page .product-media{padding:16px}
}

/* Mobile project archive: deliberately isolated so the desktop composition stays unchanged. */
@media(max-width:760px){
.projects-hero{min-height:min(620px,68svh);padding-inline:20px}
.projects-hero .eyebrow{font-size:9px;letter-spacing:normal}
.projects-hero h1{max-width:10ch;font-size:clamp(3rem,14vw,5.25rem);line-height:.88;overflow-wrap:anywhere}
.project-archive-intro{gap:28px;padding:52px 20px}
.project-archive-intro h2{font-size:clamp(2rem,8.8vw,3.4rem);line-height:.96}
.project-archive-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.project-archive-summary dl>div{min-width:0}
.project-jump{top:0;max-width:100vw;padding-inline:20px;scroll-padding-inline:20px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.project-jump::-webkit-scrollbar{display:none}
.project-jump a{display:flex;align-items:center;min-height:48px;white-space:nowrap;scroll-snap-align:start}
.past-project{padding-bottom:58px;scroll-margin-top:126px}
.past-project-heading{grid-template-columns:58px minmax(0,1fr);gap:8px 12px;padding:48px 20px 24px}
.past-project-number{font-size:clamp(2.75rem,9vw,4.25rem)}
.past-project-heading h2{min-width:0;font-size:clamp(2rem,10.5vw,3.25rem);line-height:.92;overflow-wrap:anywhere}
.past-project-heading p{display:block;grid-column:2;margin:0;font-size:8px;line-height:1.45;letter-spacing:normal}
.past-project-gallery{display:grid;grid-auto-flow:column;grid-auto-columns:calc(100vw - 44px);grid-template-rows:none;gap:10px;padding:0 20px 18px;scroll-padding-inline:20px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.past-project-gallery::-webkit-scrollbar{display:none}
.past-project-photo,.past-project-photo-featured{grid-column:auto;grid-row:auto;width:auto;min-width:0;height:clamp(300px,62svh,520px)}
.past-project-photo img{width:100%;height:100%;object-fit:cover}
.past-project-photo:hover img{transform:none}
.project-lightbox{display:block;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
.project-lightbox figure{display:flex;height:100%;min-height:0;flex-direction:column;justify-content:center;padding:48px 0 34px}
.project-lightbox img{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 116px);object-fit:contain}
.project-lightbox figcaption{padding:10px 54px 0;font-size:9px;line-height:1.45;text-align:center}
.project-lightbox-arrow{position:absolute;z-index:3;top:50%;width:46px;height:64px;padding:0;transform:translateY(-50%);background:rgba(0,0,0,.45);backdrop-filter:blur(5px)}
.project-lightbox-previous{left:max(4px,env(safe-area-inset-left))}
.project-lightbox-next{right:max(4px,env(safe-area-inset-right))}
.project-lightbox-close{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));width:48px;height:48px}
}

@media(max-width:360px){
.past-project-heading{grid-template-columns:46px minmax(0,1fr);padding-inline:12px}
.past-project-gallery{grid-auto-columns:calc(100vw - 28px);padding-inline:12px;scroll-padding-inline:12px}
.project-lightbox figcaption{padding-inline:42px}
}

@media(max-width:760px) and (orientation:landscape){
.projects-hero{min-height:480px}
.past-project-photo,.past-project-photo-featured{height:calc(100svh - 96px);min-height:280px}
.project-lightbox figure{padding-block:28px 20px}
.project-lightbox img{max-height:calc(100dvh - 64px)}
.project-lightbox figcaption{position:absolute;right:54px;bottom:max(10px,env(safe-area-inset-bottom));left:54px;padding:0}
}

/* Refined mobile navigation and gallery interactions. */
.product-gallery-main{position:relative}
.gallery-main-arrow,.product-gallery-count{display:none}
.site-nav a,.site-cart-toggle,.home-hero .eyebrow,.home-hero .text-link,.social-rail a,.image-tile span,.studio-editorial .eyebrow,.studio-editorial .text-link,.editorial-main figcaption,.protection-feature .eyebrow,.protection-feature .text-link,.protection-feature .button,.protection-spec span,.work-showcase .eyebrow,.work-showcase .text-link,.showcase-shot span,.closing-statement .eyebrow,.closing-statement .text-link,.closing-statement .button{font-family:var(--carpro-sans)}

@media(max-width:900px){
.site-header{background:#0b0b0b}
.site-logo{position:relative;z-index:101}
.nav-toggle{z-index:101}
.site-nav{display:flex;inset:0;padding:102px 22px 28px;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-12px);background:#0b0b0b;transition:opacity .24s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility 0s linear .32s}
.site-nav.open{visibility:visible;opacity:1;pointer-events:auto;transform:none;transition:opacity .24s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility 0s}
.site-nav>a,.site-nav>.site-cart-toggle{opacity:0;transform:translateY(-6px);transition:opacity .2s ease,transform .28s ease}
.site-nav.open>a,.site-nav.open>.site-cart-toggle{opacity:1;transform:none}
.site-nav.open>:nth-child(2){transition-delay:.025s}
.site-nav.open>:nth-child(3){transition-delay:.05s}
.site-nav.open>:nth-child(4){transition-delay:.075s}
.site-nav.open>:nth-child(5){transition-delay:.1s}
.site-nav.open>:nth-child(6){transition-delay:.125s}
.site-nav.open>:nth-child(7){transition-delay:.15s}
body.nav-open .site-header{position:fixed;inset:0 0 auto;width:100%;background:#0b0b0b;box-shadow:none}
}

@media(max-width:600px){
.site-nav{inset:0;padding:96px 20px 28px}
.editorial-number,.protection-index{display:none}
.level-picker{position:relative}
.level-tabs{padding-right:calc(50% - 71px);padding-left:calc(50% - 71px);scroll-padding-inline:calc(50% - 71px)}
.level-picker-hint{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:-18px 0 27px;color:#898989;font-size:9px;letter-spacing:normal;text-transform:uppercase}
.level-picker-hint b{color:var(--red);font-size:17px;animation:level-nudge 1.25s ease-in-out infinite}
.product-thumbnail-gallery{display:none}
.gallery-main-arrow{position:absolute;z-index:2;top:50%;display:flex;align-items:center;justify-content:center;width:44px;height:52px;padding:0;border:0;background:rgba(10,10,10,.78);color:#fff;font-size:28px;transform:translateY(-50%);cursor:pointer}
.gallery-main-previous{left:0}
.gallery-main-next{right:0}
.product-gallery-count{position:absolute;right:10px;bottom:10px;display:block;padding:7px 9px;background:rgba(10,10,10,.78);color:#fff;font-size:10px;letter-spacing:normal}
}

@keyframes level-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}

.services-page,.book-now-page{--red:#d90018}
.services-hero h1{max-width:13ch;font-size:clamp(3.5rem,6vw,6rem)}
.service-page-anchor{display:block;scroll-margin-top:78px}
.service-chapter-nav{position:fixed;z-index:35;top:50%;right:clamp(14px,2vw,30px);display:flex;align-items:center;pointer-events:none;transform:translateY(-50%)}
.service-chapter-links{--active-index:0;position:relative;display:grid;gap:0}
.service-chapter-links:before{position:absolute;z-index:0;top:17px;right:2px;bottom:17px;width:1px;background:#3b3b3b;content:""}
.service-chapter-links:after{position:absolute;z-index:2;top:14px;right:0;width:6px;height:6px;border-radius:50%;background:var(--red);content:"";box-shadow:0 0 0 4px rgba(217,0,24,.14);transform:translateY(calc(var(--active-index) * 34px));transition:transform .5s cubic-bezier(.22,1,.36,1)}
.service-chapter-item{position:relative;z-index:1;display:flex;height:34px;align-items:center;justify-content:flex-end;gap:12px}
.service-chapter-item:after{width:5px;height:5px;border-radius:50%;background:#666;content:"";transition:background-color .3s,opacity .3s}
.service-chapter-links strong{color:#aaa;font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateX(7px);transition:color .3s,opacity .3s,transform .3s;white-space:nowrap}
.service-chapter-item.is-active strong{color:#fff;opacity:1;transform:translateX(0)}
.service-chapter-item.is-active:after{opacity:0}
.service-section{scroll-margin-top:78px}
.ppf-service-title{margin:14px 0 16px;font-size:clamp(2.5rem,4.2vw,4.6rem);line-height:.95;letter-spacing:-.055em;text-transform:uppercase}
.ppf-service-intro{margin:0 0 32px;color:#aaa;font-size:17px;line-height:1.65}
.ppf-photo-feature{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);column-gap:5vw;row-gap:26px;align-items:center;border-top:1px solid #2b2b2b;background:#111}
.ppf-photo-copy{max-width:580px}
.ppf-immortal-logo{width:min(100%,420px);height:auto;margin:22px 0 32px;opacity:.94}
.ppf-matte-note{margin:0 0 30px;color:#bbb;font-size:17px;line-height:1.7}
.ppf-photo-frame{width:100%;margin:0;overflow:hidden;background:#151515}
.ppf-photo-frame img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.ppf-photo-gallery{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px}
.ppf-photo-gallery figure{min-width:0;margin:0;overflow:hidden;aspect-ratio:2/3;background:#171717}
.ppf-photo-gallery img{width:100%;height:100%;object-fit:cover}
.ppf-gallery-hint{display:none}
.ppf-training{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:9vw;align-items:center;background:#111}
.ppf-training-intro{max-width:690px}
.ppf-training-intro .section-title{max-width:720px}
.ppf-training-intro .lede{max-width:650px}
.ppf-training-worldwide{display:grid;gap:5px;margin:0 0 28px;padding:22px 24px;border-left:3px solid var(--red);background:#181818}
.ppf-training-worldwide strong{font-size:18px;text-transform:uppercase}
.ppf-training-worldwide span{color:#bbb;font-size:16px;line-height:1.55}
.ppf-training-travel{max-width:650px;margin:0 0 30px;color:#aaa;font-size:15px;line-height:1.7}
.ppf-training-points{display:grid;gap:28px;margin:0;padding:0;list-style:none}
.ppf-training-points li{padding:0}
.ppf-training-points h3{margin:0 0 8px;font-size:16px;text-transform:uppercase;letter-spacing:normal}
.ppf-training-points p{margin:0;color:#999;font-size:14px;line-height:1.65}
.ppf-training-gallery{grid-column:1/-1;display:grid;gap:36px;padding-top:70px;border-top:1px solid #2b2b2b}
.ppf-training-gallery header{max-width:620px}
.ppf-training-gallery h3{margin:12px 0 14px;font-size:clamp(2rem,3.5vw,3.8rem);line-height:.95;text-transform:uppercase}
.ppf-training-gallery p{margin:0;color:#999;font-size:14px;line-height:1.7}
.ppf-training-photos{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:260px 260px 380px;gap:12px}
.ppf-training-photo{position:relative;margin:0;overflow:hidden;background:#151515}
.ppf-training-photo img{display:block;width:100%;height:100%;object-fit:cover}
.ppf-training-photo--group{grid-column:1/3;grid-row:1/3}
.ppf-training-photo:nth-child(2),.ppf-training-photo:nth-child(3){grid-row:1/3}
.ppf-training-photo:nth-child(4),.ppf-training-photo:nth-child(5){grid-column:span 2}
.ppf-training-photo:nth-child(4) img{object-position:50% 35%}
.ppf-training-photo:nth-child(5) img{object-position:50% 0}
.service-story{border-top:1px solid #292929;background:#090909}
#washes{background:#111}
.service-story-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:7vw;align-items:center}
#washes .service-story-layout figure{order:2}
.service-story figure{height:620px;margin:0;overflow:hidden;background:#151515}
.service-story figure img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.service-story:hover figure img{transform:scale(1.025)}
.service-story-copy{max-width:590px}
.service-story h2{margin:16px 0 24px;font-size:clamp(2.4rem,4.6vw,4.8rem);line-height:.92;letter-spacing:-.055em;text-transform:uppercase}
.service-story p{margin:0 0 22px;color:#aaa;font-size:16px;line-height:1.75}
.service-story ul{display:grid;gap:10px;margin:0 0 32px;padding:0;list-style:none;color:#d0d0ce;font-size:15px;font-weight:500}
.service-story li{line-height:1.55}
.coating-options{margin:34px 0 32px;padding-top:28px;border-top:1px solid #363636}
.coating-options .eyebrow{display:block;margin-bottom:13px}
.service-story .coating-options p{font-size:15px;line-height:1.7}
.service-story .coating-system-names{margin:0 0 7px;color:#f0f0ed;font-weight:600}
.service-story .coating-availability{margin:0;color:#929292}
.services-page .service-reveal-media.reveal{opacity:0;transform:translateY(30px) scale(.985);transition:opacity .75s ease,transform .9s cubic-bezier(.22,1,.36,1)}
.services-page .service-reveal-copy.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease .08s,transform .8s cubic-bezier(.22,1,.36,1) .08s}
.services-page .service-reveal-list.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease .14s,transform .8s cubic-bezier(.22,1,.36,1) .14s}
.services-page .service-reveal-media.reveal.visible,.services-page .service-reveal-copy.reveal.visible,.services-page .service-reveal-list.reveal.visible{opacity:1;transform:none}
.certificate-image{display:block;background:#e8e8e5}
.certificate .certificate-image img{width:100%;aspect-ratio:1800/1283;object-fit:contain}
.certificate .certificate-image--fill img{object-fit:cover}
.certificate-image--zoom{overflow:hidden}
.certificate .certificate-image--zoom img{transform:scale(1.025)}
.certificate-image--zoom-slightly{overflow:hidden}
.certificate .certificate-image--zoom-slightly img{transform:scale(1.01)}
.certificate-coming{display:flex;min-height:280px;align-items:center;justify-content:center;padding:34px;border-style:dashed;background:#111;color:#999;text-align:center}
.certificate-coming p{max-width:240px;margin:14px auto 0;font-size:14px;line-height:1.65}

@media(max-width:900px){
.service-chapter-nav{display:none}
.ppf-photo-feature{grid-template-columns:1fr;gap:36px}
.ppf-photo-copy{order:-1}
.ppf-photo-gallery{margin-top:0}
.ppf-training{grid-template-columns:1fr;gap:58px}
.ppf-training-gallery{padding-top:52px}
.ppf-training-gallery header{max-width:600px}
.service-story-layout{grid-template-columns:1fr;gap:32px}
#washes .service-story-layout figure{order:0}
.service-story figure{height:520px}
.service-story-copy{max-width:680px}
}

@media(max-width:600px){
.services-hero h1{font-size:clamp(2.6rem,12vw,3.4rem)}
.ppf-photo-feature{gap:30px}
.ppf-service-title{font-size:clamp(2.45rem,11vw,3.25rem)}
.ppf-immortal-logo{width:min(82vw,330px);margin:18px 0 28px}
.ppf-photo-copy .lede{margin-bottom:18px}
.ppf-matte-note{margin-bottom:24px}
.ppf-photo-feature{row-gap:28px}
.ppf-photo-gallery{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:76vw;gap:10px;margin:0 -20px;padding:0 20px 8px;overflow-x:auto;scroll-padding-inline:20px;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}
.ppf-photo-gallery::-webkit-scrollbar{display:none}
.ppf-photo-gallery figure{scroll-snap-align:start}
.ppf-gallery-hint{display:block;grid-column:1/-1;margin-top:-16px;color:#888;font-size:11px;text-transform:uppercase}
.ppf-training{gap:48px}
.ppf-training-intro .button{width:100%}
.ppf-training-points{gap:25px}
.ppf-training-gallery{gap:24px;padding-top:42px}
.ppf-training-photos{grid-template-columns:repeat(5,72vw);grid-template-rows:380px;grid-auto-rows:auto;margin-right:-20px;margin-left:-20px;padding:0 20px 8px;overflow-x:auto;scroll-padding-inline:20px;scroll-snap-type:x mandatory;scrollbar-width:none}
.ppf-training-photos::-webkit-scrollbar{display:none}
.ppf-training-photo,.ppf-training-photo--group,.ppf-training-photo:nth-child(n){grid-column:auto;grid-row:auto;scroll-snap-align:start}
.service-story-layout{gap:26px}
.service-story figure{height:420px;margin-right:-20px;margin-left:-20px}
.service-story h2{font-size:clamp(2.35rem,12vw,3.15rem)}
.service-story .text-link{margin-top:2px}
.certificate-coming{min-height:220px}
}

@media(prefers-reduced-motion:reduce){
.services-page .service-reveal-media.reveal,.services-page .service-reveal-copy.reveal,.services-page .service-reveal-list.reveal{opacity:1;transform:none;transition:none}
.services-page .service-chapter-links:after{transition:none}
}

@media(max-width:900px) and (max-height:520px){
.site-header{height:64px}
.site-nav{inset:64px 0 0}
.home-hero{height:calc(100svh - 64px);min-height:420px}
.hero-copy{bottom:44px}
.hero-copy h1{font-size:clamp(2.7rem,10vw,3.6rem)}
.page-hero{min-height:300px}
}

@media(hover:hover){
.nav-toggle:hover,.gallery-arrow:hover,.pagination-page:hover,.pagination-arrow:hover{border-color:#fff}
}

@media(max-width:900px){.nav-toggle{border:0;background:transparent}}

.products-page+.cart-drawer{box-shadow:none}
.products-page+.cart-drawer.open{box-shadow:-18px 0 55px rgba(0,0,0,.18)}

:focus-visible{outline:2px solid #fff;outline-offset:3px}
.products-page :focus-visible,.product-detail :focus-visible,.site-footer :focus-visible{outline-color:#111}

/* Catalog availability filter and unavailable product options */
.products-page .catalog-toolbar{max-width:820px;align-items:stretch}.stock-filter{display:flex;flex:none;align-items:center;gap:9px;padding:0 16px;border:1px solid #d7dadd;color:#333;font-size:12px;white-space:nowrap;cursor:pointer}.stock-filter input{width:17px;height:17px;margin:0;accent-color:#111}.product-detail .option-value:disabled{color:#999;border-color:#ddd;text-decoration:line-through;opacity:.55;cursor:not-allowed;box-shadow:none}.product-detail .option-value.selected:disabled{color:#555;border-color:#111;background:#f2f2ef;opacity:1;box-shadow:inset 0 0 0 1px #111}
@media(max-width:600px){.products-page .catalog-toolbar{display:grid;grid-template-columns:1fr auto}.products-page .catalog-toolbar .input{grid-column:1/-1}.stock-filter{min-height:46px}.products-page .catalog-toolbar .button{min-height:46px}}
.products-page .catalog-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:clamp(80px,9vw,130px)}.pagination-page,.pagination-arrow{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 10px;border:1px solid #d5d5d2;color:#333;text-decoration:none;font-size:12px;transition:background .2s,color .2s,border-color .2s}.pagination-arrow{font-size:24px}.pagination-page:hover,.pagination-arrow:hover,.pagination-page.active{background:#111;border-color:#111;color:#fff}.pagination-page.active{pointer-events:none}

/* Premium product page: transparent media and a more readable details column. */
.product-detail .product-gallery-main,.product-detail .product-thumbnail{background:transparent}.product-detail-grid{grid-template-columns:minmax(0,1.12fr) minmax(410px,.88fr);gap:clamp(42px,5vw,80px)}.product-info{padding-top:10px}.product-description p{font-size:16px;line-height:1.9;color:#494949}.product-description h2{font-size:13px}.product-info h1{max-width:720px}
@media(max-width:900px){.product-detail-grid{grid-template-columns:1fr}.product-info{max-width:760px;width:100%}}

/* Legal pages and shared legal navigation */
.footer-legal{grid-column:1/-1!important;border-top:1px solid #ddd;padding-top:22px;display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;gap:20px}.footer-legal small{border:0;padding:0}.footer-legal-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.footer-legal nav{display:flex;flex-wrap:wrap;gap:18px}.footer-credit{margin:0!important;color:#999!important;font-size:11px!important;text-align:right}.footer-credit-author{color:#666}.legal-hero{padding:165px 7vw 65px;background:#111;border-bottom:1px solid var(--line)}.legal-hero h1{max-width:1050px;margin:16px 0 18px;font-size:clamp(3.1rem,7vw,7.5rem);line-height:.9;letter-spacing:-.065em;text-transform:uppercase}.legal-hero p{margin:0;color:#888;font-size:12px}.legal-page{max-width:900px;margin:0 auto;padding:80px 30px 120px;color:#c7c7c7;line-height:1.85}.legal-page h2{margin:48px 0 13px;color:#fff;font-size:1.5rem;letter-spacing:-.025em}.legal-page p,.legal-page li{font-size:15px}.legal-page a{color:#fff;text-underline-offset:4px}.legal-page ul{padding-left:22px}.legal-page li+li{margin-top:8px}.legal-table-wrap{overflow-x:auto;margin-top:24px}.legal-table{width:100%;border-collapse:collapse;min-width:620px}.legal-table th,.legal-table td{padding:14px;text-align:left;vertical-align:top;border:1px solid #333}.legal-table th{color:#fff;background:#151515;font-size:12px;text-transform:uppercase;letter-spacing:normal}
@media(max-width:600px){.footer-legal{align-items:flex-start!important;flex-direction:column!important}.footer-legal-meta{align-items:flex-start}.footer-credit{text-align:left}.legal-hero{padding:125px 20px 50px}.legal-page{padding:55px 20px 85px}.legal-page h2{margin-top:38px}}

/* Product detail image gallery */
.product-gallery{display:block}.product-gallery .product-gallery-main{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;margin:0 0 16px;padding:clamp(16px,3vw,42px);background:#f4f4f2;overflow:hidden}.product-gallery .product-gallery-main img{width:100%;height:100%;object-fit:contain}.product-thumbnail-gallery{position:relative;width:100%}.product-thumbnail-track{display:grid;width:100%;grid-auto-flow:column;grid-auto-columns:43%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-width:none}.product-thumbnail-track::-webkit-scrollbar{display:none}.product-thumbnail{display:flex;align-items:center;justify-content:center;min-width:0;aspect-ratio:1;padding:12px;border:1px solid #deded9;background:#f7f7f5;cursor:pointer;scroll-snap-align:start;transition:border-color .2s,box-shadow .2s}.product-thumbnail:hover,.product-thumbnail.selected{border-color:#111;box-shadow:inset 0 0 0 1px #111}.product-thumbnail img{width:100%;height:100%;object-fit:contain}.gallery-arrow{position:absolute;z-index:2;top:50%;width:44px;height:68px;padding:0;border:1px solid rgba(17,17,17,.28);background:rgba(255,255,255,.92);color:#111;font-size:31px;line-height:1;cursor:pointer;transform:translateY(-50%);box-shadow:0 4px 18px rgba(0,0,0,.12);transition:background .2s,color .2s,opacity .2s}.gallery-previous{left:8px}.gallery-next{right:8px}.gallery-arrow:hover{background:#111;color:#fff}
@media(max-width:600px){.product-thumbnail-track{grid-auto-columns:44%;gap:8px}.product-thumbnail{padding:7px}.gallery-arrow{width:38px;height:58px}.gallery-previous{left:5px}.gallery-next{right:5px}}

/* Storefront interactions and product detail */
.site-cart-toggle{pointer-events:auto;background:none;border:0;color:#bbb;font:inherit;font-size:12px;letter-spacing:normal;text-transform:uppercase;cursor:pointer;white-space:nowrap}.site-cart-toggle:hover{color:#fff}.cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;margin-left:5px;padding:0 6px;border:1px solid #555;border-radius:50%;font-size:9px;color:#fff}.cart-backdrop{position:fixed;inset:0;z-index:89;background:rgba(0,0,0,.48);opacity:0;transition:opacity .3s}.cart-backdrop.open{opacity:1}.cart-open{overflow:hidden}.cart-drawer{display:flex;flex-direction:column;background:#fff;color:#080808;padding:34px 34px 28px}.cart-head{align-items:flex-start;padding-bottom:24px;border-bottom:1px solid #e5e5e2}.cart-head h2{margin:5px 0 0;font-size:25px;letter-spacing:-.035em}.cart-kicker{font-size:9px;letter-spacing:normal;text-transform:uppercase;color:#888}.cart-close{color:#080808;cursor:pointer}.cart-content{flex:1;overflow:auto}.cart-line{grid-template-columns:92px 1fr;gap:17px;padding:22px 0;border-color:#e5e5e2}.cart-line>img,.cart-image-placeholder{width:92px;height:92px;object-fit:contain;background:transparent}.cart-line-info{min-width:0}.cart-line-info strong{display:block;font-size:13px;line-height:1.4}.cart-line-info small{margin:4px 0;color:#777}.cart-line-info>span{display:block;margin:8px 0;font-size:13px}.cart-quantity{display:inline-grid;grid-template-columns:30px 32px 30px;align-items:center;border:1px solid #d7d7d3;height:32px}.cart-quantity button{height:100%;border:0;background:transparent;color:#111;font-size:17px;cursor:pointer}.cart-quantity span{text-align:center;font-size:12px}.cart-remove{border:0;background:none;color:#777;margin-left:10px;padding:0;font-size:10px;text-decoration:underline;cursor:pointer}.cart-footer{padding-top:20px;border-top:1px solid #e5e5e2}.cart-subtotal{display:flex;justify-content:space-between;font-size:14px}.cart-footer>p{font-size:10px;color:#888}.cart-checkout{background:#111;border-color:#111;color:#fff}.cart-empty{text-align:center;padding:70px 20px}.cart-empty>span{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid #ddd;border-radius:50%;color:#999}.cart-empty a{color:#111;text-underline-offset:5px;font-size:12px}.product-card .card-body h2 a{color:inherit;text-decoration:none}.product-card .product-media{text-decoration:none}.variant-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:7px}.variant-pills-empty{min-height:29px}.product-card button.variant-pill{width:auto;min-width:42px;padding:7px 9px;background:transparent;border:1px solid #d5d5d2;color:#555;font:inherit;font-size:10px;cursor:pointer}.product-card button.variant-pill:hover,.product-card button.variant-pill.selected{border-color:#111;color:#111}.product-card button.variant-pill:disabled{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.product-detail{background:#fff;color:#080808;padding:45px 7vw 110px}.product-breadcrumb{display:flex;gap:10px;align-items:center;margin-bottom:38px;font-size:10px;letter-spacing:normal;text-transform:uppercase;color:#777}.product-breadcrumb a{color:#080808;text-underline-offset:4px}.product-detail-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);gap:clamp(45px,7vw,110px);align-items:start;max-width:1500px;margin:auto}.product-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.product-gallery figure{display:flex;align-items:center;justify-content:center;aspect-ratio:1;margin:0;background:transparent;padding:20px}.product-gallery figure:first-child{grid-column:1/-1}.product-gallery img{width:100%;height:100%;object-fit:contain}.product-info{position:sticky;top:110px;padding-top:20px}.product-info>.product-vendor{font-size:9px;letter-spacing:normal;color:#777;text-transform:uppercase}.product-info h1{font-size:clamp(2.3rem,4vw,4.6rem);line-height:.95;letter-spacing:-.055em;margin:14px 0 22px}.product-detail-price{font-size:22px;margin-bottom:35px}.product-option{border:0;padding:0;margin:0 0 24px}.product-option legend{margin-bottom:11px;font-size:10px;letter-spacing:normal;text-transform:uppercase;color:#666}.option-values{display:flex;flex-wrap:wrap;gap:8px}.option-value{min-width:58px;padding:12px 16px;background:transparent;border:1px solid #cfcfcb;color:#333;cursor:pointer}.option-value:hover,.option-value.selected{border-color:#080808;box-shadow:inset 0 0 0 1px #080808}.product-purchase{display:grid;grid-template-columns:126px 1fr;gap:12px;margin:36px 0}.purchase-quantity{display:grid;grid-template-columns:38px 48px 38px;height:49px;border:1px solid #bbb}.purchase-quantity button{background:transparent;border:0;color:#111;font-size:19px;cursor:pointer}.purchase-quantity input{width:100%;border:0;background:transparent;color:#111;text-align:center;font-size:14px;-moz-appearance:textfield}.purchase-quantity input::-webkit-inner-spin-button{display:none}.product-add-cart{background:#111;border-color:#111;color:#fff}.product-add-cart:hover{background:var(--red);border-color:var(--red)}.product-description{padding-top:30px;border-top:1px solid #ddd}.product-description h2{font-size:12px;letter-spacing:normal;text-transform:uppercase}.product-description p{white-space:pre-line;color:#555;line-height:1.8;font-size:14px}
@media(max-width:900px){.site-cart-toggle{padding:13px;text-align:left;border:0}.product-detail-grid{grid-template-columns:1fr}.product-info{position:static;max-width:680px}.product-gallery{max-width:760px}.cart-drawer{width:min(430px,100%)}}
@media(max-width:600px){.cart-drawer{padding:24px 20px 20px}.cart-line{grid-template-columns:74px 1fr}.cart-line>img,.cart-image-placeholder{width:74px;height:74px}.product-detail{padding:30px 20px 75px}.product-breadcrumb{overflow:hidden;white-space:nowrap}.product-gallery{gap:8px}.product-gallery figure{padding:8px}.product-info h1{font-size:clamp(2.3rem,12vw,3.4rem)}.product-purchase{grid-template-columns:1fr}.purchase-quantity{width:126px}.option-value{min-height:46px}}
.product-description p{margin:16px 0}.product-description p+p{margin-top:22px}
@media(max-width:760px){.products-page .product-grid{grid-template-columns:1fr;row-gap:92px;max-width:520px}.products-page .product-card{width:100%}.products-page .product-media{width:100%;max-width:460px;margin-inline:auto;padding:20px}.products-page .product-card .card-body{max-width:420px;width:100%;margin-inline:auto;padding:24px 16px 18px}.products-page .card-body h2{font-size:15px}.products-page .product-price{font-size:17px}.products-page .product-card>.button{width:auto;min-width:190px}.products-page .product-card:after{left:20%;right:20%;bottom:-46px}}

/* Premium transparent product presentation */
.products-page .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(36px,5vw,88px);row-gap:clamp(72px,8vw,120px);max-width:1500px;margin-inline:auto}
.products-page .product-card{position:relative;background:transparent}
.products-page .product-card:after{content:"";position:absolute;left:12%;right:12%;bottom:-38px;height:1px;background:linear-gradient(90deg,transparent,#d9d9d6 20%,#d9d9d6 80%,transparent)}
.products-page .product-media{background:transparent;padding:clamp(14px,2vw,30px)}
.products-page .product-card .card-body{padding:25px 8px 18px}
.products-page .product-vendor{color:#848484;font-size:9px;letter-spacing:normal;margin-bottom:10px}
.products-page .card-body h2{margin-bottom:12px;font-size:15px;line-height:1.45;font-weight:500;letter-spacing:normal}
.products-page .product-price{font-size:17px;font-weight:500;letter-spacing:normal;margin-top:15px}
.products-page .variant-label{color:#777;letter-spacing:normal}
.products-page .variant-select{background:transparent;border-color:#d5d5d2}
.products-page .product-card>.button{width:auto;align-self:center;min-width:178px;background:#111;border-color:#111;padding:14px 25px;transition:background .2s,border-color .2s,transform .2s}
.products-page .product-card>.button:hover{background:var(--red);border-color:var(--red);transform:translateY(-1px)}
.products-page .special-service-action{text-decoration:none}.special-service-label{margin:18px 0 0;color:#777;font-size:10px;letter-spacing:normal;text-transform:uppercase}.special-service-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:1px solid #deded9;color:#888;font-size:10px;letter-spacing:normal;text-transform:uppercase}.special-service-notice{display:flex;flex-direction:column;gap:8px;margin:0 0 28px;padding:20px;background:#f4f4f2}.special-service-notice strong{font-size:14px}.special-service-notice span{color:#555;font-size:13px;line-height:1.6}.special-service-purchase{display:block}.special-service-purchase .button{width:100%;text-decoration:none}
@media(max-width:1100px){.products-page .product-grid{column-gap:32px;row-gap:80px}}
@media(max-width:760px){.products-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:65px}.products-page .product-media{padding:10px}.products-page .product-card .card-body{padding:18px 2px 13px}.products-page .product-card>.button{min-width:0;width:88%;padding-inline:8px}.products-page .product-card:after{bottom:-28px}}
@media(max-width:390px){.products-page .product-grid{grid-template-columns:1fr}.products-page .product-media{padding:18px}}

/* Final product-detail overrides must remain after the legacy storefront rules. */
.product-detail .product-gallery{display:block;width:100%;max-width:none}.product-detail .product-gallery .product-gallery-main,.product-detail .product-gallery .product-thumbnail{background-color:transparent}.product-detail .product-thumbnail-gallery,.product-detail .product-thumbnail-track{width:100%}.product-detail .product-detail-grid{grid-template-columns:minmax(0,1.12fr) minmax(410px,.88fr);gap:clamp(42px,5vw,80px)}.product-detail .product-info{padding-top:10px}.product-detail .product-description p{font-size:16px;line-height:1.9;color:#494949}.product-detail .product-description h2{font-size:13px}.product-detail .product-info h1{max-width:720px}
@media(max-width:900px){.product-detail .product-detail-grid{grid-template-columns:1fr}.product-detail .product-info{max-width:760px;width:100%}}

.product-detail .product-gallery{display:block;width:100%;max-width:none}.product-detail .product-thumbnail-gallery,.product-detail .product-thumbnail-track{width:100%}

/* Final mobile storefront cascade */
@media(max-width:600px){
.products-page{padding:40px 20px 82px}
.products-page .catalog-toolbar{gap:9px;margin-bottom:26px}
.products-page .collection-nav{margin:0 -20px 34px;padding:2px 20px 15px;scroll-padding-inline:20px;scroll-snap-type:x proximity}
.products-page .collection-nav a{display:flex;align-items:center;min-height:44px;margin:0 10px 0 0;padding:8px 3px;scroll-snap-align:start}
.products-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:64px;width:100%;max-width:none}
.products-page .product-media{padding:8px}
.products-page .product-card .card-body{padding:17px 2px 13px}
.products-page .product-vendor{font-size:8px;line-height:1.4}
.products-page .card-body h2{font-size:13px;line-height:1.42}
.products-page .product-price{font-size:15px}
.variant-pills{gap:5px}
.variant-pills-empty{min-height:42px}
.product-card button.variant-pill{min-width:44px;min-height:42px;padding:7px;font-size:10px}
.products-page .product-card>.button{width:100%;min-width:0;padding:11px 7px;font-size:10px}
.products-page .product-card:after{left:8%;right:8%;bottom:-31px}
.products-page .catalog-pagination{gap:4px;margin-top:82px}
.pagination-page,.pagination-arrow{min-width:40px;width:40px;height:44px;padding:0}
.pagination-ellipsis{display:inline-flex;align-items:center;justify-content:center;width:18px;height:44px;color:#777}
.product-detail{padding:22px 20px 76px}
.product-breadcrumb{min-height:40px;margin-bottom:18px;line-height:1.5;white-space:normal}
.product-gallery .product-gallery-main{margin-bottom:12px;padding:8px}
.product-thumbnail-track{grid-auto-columns:42%;gap:8px}
.product-thumbnail{padding:7px}
.gallery-arrow{width:44px;height:60px}
.product-info{padding-top:30px}
.product-info h1{font-size:clamp(2.25rem,11vw,3.15rem);line-height:.94;margin-bottom:18px}
.product-detail-price{margin-bottom:28px}
.option-value{min-width:54px;min-height:46px;padding:11px 13px}
.product-purchase{gap:14px;margin:30px 0}
.purchase-quantity{grid-template-columns:44px 46px 44px;width:134px;height:48px}
.purchase-quantity button{min-width:44px}
.product-description{padding-top:26px}
.product-description p{font-size:15px;line-height:1.8}
.legal-hero{min-height:300px;padding:96px 20px 42px}
.legal-hero h1{font-size:clamp(2.6rem,12.5vw,3.35rem);overflow-wrap:anywhere}
.legal-page{padding:52px 20px 82px;line-height:1.75}
.legal-page p,.legal-page li{font-size:15px}
.legal-page h2{margin-top:36px;font-size:1.35rem;line-height:1.25}
.legal-table-wrap{overflow:visible}
.legal-table{display:block;width:100%;min-width:0}
.legal-table thead{display:none}
.legal-table tbody,.legal-table tr{display:block;width:100%;min-width:0}
.legal-table tr{margin:0 0 14px;border:1px solid #333;background:#111}
.legal-table td{display:grid;width:100%;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:12px;border:0;border-bottom:1px solid #292929;font-size:13px;line-height:1.55}
.legal-table td:last-child{border-bottom:0}
.legal-table td:before{color:#888;font-size:9px;font-weight:700;letter-spacing:normal;text-transform:uppercase}
.legal-table td:nth-child(1):before{content:"Technology"}
.legal-table td:nth-child(2):before{content:"Purpose"}
.legal-table td:nth-child(3):before{content:"Duration"}
.footer-legal{gap:14px;padding-top:18px}
.footer-legal nav{width:100%;gap:4px 14px}
.footer-legal nav a{min-height:34px}
}

@media(max-width:340px){
.products-page .product-grid{grid-template-columns:1fr;max-width:300px;margin-inline:auto}
.products-page .product-media{padding:16px}
}

/* Projects labels use readable, normally spaced typography. */
.projects-page main .eyebrow,
.projects-page main .project-jump a,
.projects-page main .project-jump a span,
.projects-page main .project-archive-summary dd,
.projects-page main .past-project-heading p,
.projects-page main .past-project-photo>span,
.projects-page main .project-lightbox figcaption,
.projects-page main .text-link{
  font-family:inherit;
  font-size:14px;
  font-weight:500;
  letter-spacing:normal;
  line-height:1.4;
  text-transform:none;
}
.projects-page main .eyebrow{font-weight:600}
.projects-page main .projects-hero .eyebrow,
.projects-page main .past-project-heading .eyebrow,
.projects-page main .project-jump a span{text-transform:uppercase}
.projects-page .project-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:clamp(58px,7vw,96px) 20px;border-bottom:1px solid #272727;background:#080808}
.projects-page .project-pagination .pagination-page,
.projects-page .project-pagination .pagination-arrow{border-color:#444;color:#ddd}
.projects-page .project-pagination .pagination-page:hover,
.projects-page .project-pagination .pagination-arrow:hover,
.projects-page .project-pagination .pagination-page.active{background:#fff;border-color:#fff;color:#111}
.projects-page .project-pagination .pagination-ellipsis{color:#777}

/* Shared reading size for descriptive copy across the site. */
main p,
.legal-page li{font-size:17px}
.story-copy p,
.lede,
.editorial-note p,
.protection-copy p,
.showcase-intro p,
.project-archive-summary>p,
.service-story p,
.ppf-training-points p,
.card-body p,
.fb-card p,
.products-hero p,
.product-detail .product-description p,
.legal-page p,
.certificate-coming p{font-size:17px}

/* Keep formerly tracked labels readable without restoring wide spacing. */
.site-nav a,
.site-nav a:nth-last-child(-n+3),
.site-cart-toggle,
.eyebrow,
.kicker,
.text-link,
.button,
.quote-q,
.collection-nav a,
.legal-table th,
.product-description h2{font-size:13px}
.social-rail a,
.image-tile span,
.placeholder,
.pending-badge,
.level-tab-name,
.field label,
.footer-label,
.editorial-main figcaption,
.showcase-shot span,
.protection-spec span,
.variant-label,
.products-hero span,
.products-page .product-vendor,
.level-picker-label,
.level-picker-hint,
.product-gallery-count,
.cart-kicker,
.product-breadcrumb,
.product-info>.product-vendor,
.product-option legend,
.legal-table td:before{font-size:12px}

.cart-line-removing{height:var(--cart-line-height);overflow:hidden;box-sizing:border-box;pointer-events:none;animation:cart-line-exit .28s ease-in forwards}
.cart-content{overflow-x:hidden;overflow-y:auto}
@keyframes cart-line-exit{to{height:0;padding-top:0;padding-bottom:0;border-bottom-width:0;opacity:0;transform:translateX(24px)}}
@media(prefers-reduced-motion:reduce){.cart-line-removing{animation:none}}

.product-price small,.product-detail-price small{margin-left:6px;color:#777;font-size:11px;font-weight:400}

/* Keep the shared navigation visible while scrolling, except where the home hero
   or the project vehicle strip controls the top of the page. */
body:not(.preview2-page):not(.projects-page){padding-top:72px}
body:not(.preview2-page):not(.projects-page) .site-header{position:fixed;top:0;right:0;left:0;width:100%}
@media(max-width:900px) and (max-height:520px){
  body:not(.preview2-page):not(.projects-page){padding-top:64px}
}
/* Place the protection story in the open space beside the Porsche. */
.protection-feature{justify-content:flex-end}
.protection-image{object-position:center center}
.protection-wash{background:linear-gradient(90deg,rgba(0,0,0,.04) 20%,rgba(0,0,0,.16) 52%,rgba(0,0,0,.78) 100%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 35%)}
.protection-copy{width:min(40vw,560px);max-width:none}
.protection-copy h2{font-size:clamp(3rem,5vw,5.5rem)}
.protection-copy p{color:#e1e1e1}
@media(max-width:600px){
  .protection-feature{align-items:flex-start;padding-top:68px}
  .protection-image{object-position:42% center}
  .protection-wash{background:linear-gradient(180deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.52) 47%,rgba(0,0,0,.24) 75%,rgba(0,0,0,.78) 100%)}
  .protection-copy{width:100%;text-align:right}
  .protection-copy h2{font-size:clamp(2.55rem,12.5vw,3.35rem)}
  .protection-copy p{margin-left:auto}
}

/* The transparent 3D canvas sits over a soft studio backdrop. */
.car-stage{background:radial-gradient(ellipse at 48% 38%,#303741 0%,#1b2028 37%,#0d1015 76%,#090b0e 100%)}
.viewer-status{text-shadow:0 2px 8px #000}
@media(max-width:600px){
  .car-stage{height:clamp(350px,90vw,430px);min-height:350px}
}

/* Coverage choices stay visible as tabs instead of a swipe carousel. */
.ppf-panel{justify-content:flex-start}
.ppf-panel .level-tabs{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row;gap:0;margin:18px 0 25px;padding:0;overflow:visible;border-bottom:1px solid #3b3b3b;scroll-snap-type:none}
.ppf-panel .level-tab,.ppf-panel .level-tab:last-child{grid-column:auto;min-height:56px;padding:10px 5px;align-items:center;justify-content:center;background:transparent;border:0;border-bottom:2px solid transparent;color:#999;text-align:center;scroll-snap-align:none}
.ppf-panel .level-tab:hover{background:#1b1b1b;color:#fff}
.ppf-panel .level-tab[aria-selected=true]{background:#1b1b1b;border-bottom-color:var(--red);color:#fff}
.ppf-panel .level-tab:focus-visible{outline:2px solid #fff;outline-offset:-3px}
.ppf-panel .level-tab-name{font-size:10px;line-height:1.3}
.ppf-panel-details{display:flex;align-items:flex-start;flex-direction:column}
.ppf-panel-details #level-copy{width:100%;min-height:7.2em}
.ppf-panel-details .feature-list{width:100%;min-height:176px;margin:0 0 26px}

@media(max-width:600px){
  .service-experience{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"intro" "car" "details" "photo"}
  .ppf-panel{display:contents}
  .ppf-panel-intro{grid-area:intro;padding:42px 20px 0}
  .car-stage{grid-area:car}
  .ppf-panel-details{grid-area:details;padding:24px 20px 58px;border-top:1px solid #242424}
  .ppf-photo-feature{grid-area:photo}
  .ppf-panel .level-tabs{margin:13px 0 0}
  .ppf-panel .level-tab,.ppf-panel .level-tab:last-child{min-height:58px;padding:9px 3px}
  .ppf-panel .level-tab-name{font-size:clamp(8px,2.5vw,10px)}
  .ppf-panel-details .lede{min-height:8.5em;margin-top:0}
  .ppf-panel-details .feature-list{min-height:196px}
}

/* Give the vehicle selector the top position on the mobile projects archive. */
.project-jump-hint{display:none}
@media(max-width:900px){
  body.projects-page{padding-top:0}
  .projects-page .site-header{position:relative;top:auto}
  .projects-page.nav-open .site-header{position:fixed;top:0;right:0;left:0;width:100%}
  .projects-page .projects-hero{min-height:clamp(320px,45svh,480px)}
  .projects-page .project-jump{position:sticky;top:0;max-width:100%;padding-right:20px}
  .projects-page .project-jump a{min-width:155px;max-width:75vw}
  .projects-page .past-project{scroll-margin-top:90px}
  .project-jump-hint{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:14px 20px 8px;background:#0c0c0c;color:#bbb;font-size:13px}
  .project-jump-hint span{color:var(--red);font-size:23px;line-height:1}
  .projects-page .past-project-heading{padding-bottom:18px}
  .projects-page .past-project-heading p{display:block;grid-column:2;color:#aaa}
  .projects-page .past-project-heading p span:last-child{color:#fff}
  .projects-page .past-project-gallery{grid-auto-columns:min(78vw,420px);padding-right:20px}
  .projects-page .past-project-photo,.projects-page .past-project-photo-featured{height:clamp(270px,48svh,430px)}
}
@media(max-width:600px){
  .projects-page .past-project-gallery{grid-auto-columns:76vw}
}
@media(max-width:900px) and (max-height:520px){
  .projects-page .projects-hero{min-height:300px}
  .projects-page .past-project-gallery{grid-auto-columns:min(70vw,420px)}
  .projects-page .past-project-photo,.projects-page .past-project-photo-featured{height:clamp(230px,65svh,360px)}
  .projects-page .past-project{scroll-margin-top:72px}
}
