/* ====== RESET / TOKENS ====== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
/* Global mobile-first guards — prevent horizontal scroll & word overflow */
html{overflow-x:hidden;-webkit-text-size-adjust:100%}
img,video,iframe,svg,picture{max-width:100%;height:auto}
body,p,h1,h2,h3,h4,h5,h6,blockquote,figcaption,li,td,th,label,span,strong,em,b,a{word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}
button,a{-webkit-tap-highlight-color:rgba(229,232,235,.18);touch-action:manipulation}
:root{
  /* Premium Platinum + Obsidian palette (v2 — mauve removed) */
  --bg-deep:#0A0A0C;
  --bg-mid:#141418;
  --bg-hi:#1E1E22;
  --panel-light:#FFFFFF;
  --panel-off:#F7F7F8;
  /* Var names kept for downstream compatibility; values are now platinum tones */
  --mauve:#C7CDD2;
  --mauve-glow:#E5E8EB;
  --mauve-deep:#5A5D62;
  --chrome-1:#C5C8CB;
  --chrome-2:#9DA0A4;
  --chrome-3:#7A7D81;
  --ink-dark:#0A0A0C;
  --ink-light:#FFFFFF;
  --display:'Anton','Bebas Neue',sans-serif;
  --body:'Inter',system-ui,-apple-system,sans-serif;
  --chrome-grad:linear-gradient(135deg,#E5E8EB 0%,#C7CDD2 45%,#9DA0A4 100%);
  --chrome-grad-soft:linear-gradient(135deg,#F2F3F5 0%,#D8DBDE 50%,#A8ADB2 100%);
}
html{scroll-behavior:smooth}
body{
  background:linear-gradient(180deg,var(--bg-deep) 0%,var(--bg-mid) 100%);
  color:var(--ink-light);
  font-family:var(--body);
  font-weight:400;
  line-height:1.5;
  overflow-x:hidden;
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
input,textarea,select{font-family:inherit;color:inherit}
:focus-visible{outline:2px solid var(--mauve-glow);outline-offset:2px;border-radius:2px}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--bg-deep);color:#fff;padding:10px 16px;z-index:200;font-size:13px;letter-spacing:2px;text-transform:uppercase;border:1px solid var(--mauve)}
.skip-link:focus{left:0}
.container{max-width:1400px;margin:0 auto;padding:0 32px}

/* ====== TYPOGRAPHY ====== */
h1,h2,h3,h4{font-family:var(--display);font-weight:400;letter-spacing:.5px;text-transform:uppercase;line-height:1}
h1{font-size:clamp(40px,8vw,84px);letter-spacing:-1px}
h2{font-size:clamp(36px,5.5vw,72px);letter-spacing:-1px}
h3{font-size:clamp(22px,2.5vw,32px)}
h4{font-size:14px;letter-spacing:3px}
p{font-weight:400}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--body);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--mauve-glow)}
.eyebrow::before{content:"";width:32px;height:1px;background:var(--mauve-glow)}
.sec-tag{display:inline-flex;align-items:center;gap:10px;font-family:var(--body);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--mauve-glow);margin-bottom:18px}
.sec-tag::before{content:"";width:32px;height:1px;background:var(--mauve-glow)}
.sec-title{font-family:var(--display);font-size:clamp(36px,6vw,84px);line-height:.95;letter-spacing:-1px;text-transform:uppercase;margin-bottom:24px}
.sec-sub{max-width:640px;color:rgba(255,255,255,.7);font-size:16px;line-height:1.65}

/* ====== BUTTONS (brushed-steel premium) ====== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 32px;border-radius:2px;font-family:var(--body);font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase;transition:all .3s ease;cursor:pointer;border:1px solid transparent}
.btn-primary{background:var(--chrome-grad-soft);color:var(--ink-dark);border:1px solid rgba(255,255,255,.4);box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 8px 28px rgba(0,0,0,.4)}
.btn-primary:hover{background:linear-gradient(135deg,#FFFFFF 0%,#E5E8EB 50%,#C7CDD2 100%);box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 12px 40px rgba(0,0,0,.55)}
.btn-ghost{background:transparent;color:var(--ink-light);border:1px solid var(--chrome-2)}
.btn-ghost:hover{border-color:var(--chrome-1);background:rgba(255,255,255,.04)}
.btn-magnet{background:var(--chrome-grad-soft);color:var(--ink-dark);padding:24px 48px;font-size:14px;letter-spacing:3px;text-transform:uppercase;font-weight:700;border-radius:2px;position:relative;border:1px solid rgba(255,255,255,.45);box-shadow:0 1px 0 rgba(255,255,255,.55) inset,0 14px 50px rgba(0,0,0,.5);transition:transform .15s ease,box-shadow .3s ease,background .3s ease;will-change:transform;overflow:visible}
.btn-magnet::before{content:"";position:absolute;inset:-6px;border-radius:6px;border:1px solid rgba(229,232,235,.55);opacity:0;animation:btnMagnetPulse 2.6s ease-out infinite;pointer-events:none}
@keyframes btnMagnetPulse{
  0%   {transform:scale(.94);opacity:.7}
  70%  {opacity:0}
  100% {transform:scale(1.1);opacity:0}
}
.btn-magnet:hover{background:linear-gradient(135deg,#FFFFFF 0%,#E5E8EB 50%,#C7CDD2 100%);box-shadow:0 1px 0 rgba(255,255,255,.65) inset,0 18px 64px rgba(0,0,0,.6)}
.btn-magnetic-wrap{display:inline-block;padding:60px;position:relative}

/* ====== NAV ====== */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:18px 40px;background:linear-gradient(180deg,rgba(10,10,12,.94),rgba(10,10,12,.55) 70%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);gap:24px}
.nav-logo{display:flex;align-items:center;gap:12px;flex-shrink:0}
.nav-logo img{width:46px;height:46px;object-fit:cover;border:1px solid var(--chrome-3);border-radius:50%;background:#000;padding:0;box-shadow:0 2px 10px rgba(0,0,0,.55)}
.nav-logo-text{display:flex;flex-direction:column;line-height:1;letter-spacing:0}
.nav-logo-text strong{font-family:var(--display);font-size:18px;letter-spacing:3px;font-weight:400;color:#fff}
.nav-logo-text em{font-family:var(--body);font-size:10px;font-style:italic;font-weight:300;letter-spacing:4px;color:var(--mauve-glow);margin-top:2px;text-transform:lowercase;opacity:.85}
.nav-links{display:flex;gap:28px;list-style:none;flex:1;justify-content:center}
.nav-link{font-family:var(--body);font-size:12px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.78);padding:8px 0;position:relative;transition:color .25s ease}
.nav-link:hover{color:#fff}
.nav-link.is-active{color:var(--mauve-glow)}
.nav-link.is-active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--mauve-glow);box-shadow:0 0 8px rgba(229,232,235,.55)}
.nav-ticker{display:flex;align-items:center;gap:10px;font-family:var(--body);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1);flex-shrink:0}
.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--mauve-glow);box-shadow:0 0 12px rgba(229,232,235,.7);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}

/* mobile burger */
.menu-toggle{display:none;width:44px;height:44px;flex-direction:column;justify-content:center;align-items:center;gap:5px;border:1px solid var(--chrome-3);border-radius:4px;background:rgba(0,0,0,.3);position:relative;z-index:120}
.menu-toggle span{display:block;width:20px;height:2px;background:var(--chrome-1);transition:transform .3s ease,opacity .3s ease}
.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.is-open span:nth-child(2){opacity:0}
.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-nav{position:fixed;inset:0;z-index:110;background:linear-gradient(180deg,var(--bg-deep) 0%,var(--bg-mid) 100%);transform:translateX(100%);transition:transform .35s cubic-bezier(.7,0,.2,1);visibility:hidden;display:flex;align-items:center;justify-content:center}
.mobile-nav.is-open{transform:translateX(0);visibility:visible}
.mobile-nav-inner{text-align:center;padding:80px 24px}
.mobile-nav ul{list-style:none;display:flex;flex-direction:column;gap:18px;margin-bottom:40px}
.mobile-nav-link{font-family:var(--display);font-size:32px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.85)}
.mobile-nav-link.is-active{color:var(--mauve-glow)}
.mobile-nav-foot{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1);padding:8px 16px;border:1px solid var(--chrome-3);border-radius:2px}

/* ====== HERO (centered, logo-only override) ====== */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:120px 24px 80px;text-align:center;background:#000}
.hero--small{min-height:60vh;padding:140px 24px 80px}
.hero-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;filter:brightness(.32) saturate(1.05);transform:scale(1.08);animation:slowZoom 20s ease-in-out infinite alternate}
.hero-bg-dark{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at center,#1A1A1F 0%,#0A0A0C 70%);transition:opacity .9s ease}
.hero-video{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(1.05);opacity:0;transition:opacity 1.1s cubic-bezier(.22,.61,.36,1);will-change:opacity,filter}
.hero-video.is-ready{opacity:1;animation:heroVideoFade 7s ease-out 1.4s forwards}
.hero-video.is-ready ~ .hero-bg-dark{opacity:0}
@keyframes heroVideoFade{
  0%   { filter: brightness(.55) saturate(1.05); opacity: 1; }
  55%  { filter: brightness(.40) saturate(.95); opacity: .82; }
  100% { filter: brightness(.30) saturate(.88) blur(2px); opacity: .55; }
}
@keyframes slowZoom{from{transform:scale(1.05) translateY(0)}to{transform:scale(1.18) translateY(-20px)}}
.hero-grid{position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(rgba(229,232,235,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(229,232,235,.04) 1px,transparent 1px);background-size:60px 60px}
.hero-scanline{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(229,232,235,.07) 50%,transparent 100%);height:200px;animation:scanline 6s linear infinite}
@keyframes scanline{0%{transform:translateY(-100%)}100%{transform:translateY(110vh)}}
.hero-vignette{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse at center,transparent 25%,rgba(10,10,12,.88) 100%)}
.hero-content{position:relative;z-index:3;width:100%;max-width:900px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:24px}
.hero-logo{width:min(22vw,210px);aspect-ratio:1/1;height:auto;object-fit:cover;border-radius:50%;background:#000;opacity:0;transform:scale(.94);transition:opacity 1.2s ease-out,transform 1.2s ease-out;filter:drop-shadow(0 14px 56px rgba(229,232,235,.32));position:relative;z-index:1}
/* Subtle rotating chrome ring around the hero logo (decorative) */
.hero-logo-wrap{position:relative;display:inline-block;line-height:0}
.hero-logo-wrap::before{content:"";position:absolute;inset:-14px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0%,rgba(229,232,235,.45) 18%,transparent 36%,rgba(199,205,210,.18) 60%,transparent 78%,rgba(229,232,235,.38) 96%,transparent 100%);opacity:0;transition:opacity 1s ease;animation:logoRingSpin 18s linear infinite;will-change:transform;-webkit-mask:radial-gradient(circle,transparent calc(50% - 1.5px),#000 calc(50% - .5px),#000 50%,transparent calc(50% + 1px));mask:radial-gradient(circle,transparent calc(50% - 1.5px),#000 calc(50% - .5px),#000 50%,transparent calc(50% + 1px))}
.hero.loaded .hero-logo-wrap::before{opacity:1}
@keyframes logoRingSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
/* Per-page hero logo variants */
.page-home .hero-logo{width:min(22vw,210px)}
.page-services .hero-logo,.page-cars .hero-logo,.page-sold .hero-logo,.page-about .hero-logo,.page-contact .hero-logo{width:min(13vw,128px)}
.page-services .hero-logo-wrap::before,.page-cars .hero-logo-wrap::before,.page-sold .hero-logo-wrap::before,.page-about .hero-logo-wrap::before,.page-contact .hero-logo-wrap::before{inset:-9px;animation-duration:14s}
.page-services .hero-logo-wrap::before{animation-direction:reverse}
.page-cars .hero-logo-wrap::before{animation-duration:22s}
.page-about .hero-logo-wrap::before{animation-duration:16s}
.page-contact .hero-logo-wrap::before{animation-duration:20s;animation-direction:reverse}
.hero.loaded .hero-logo{opacity:1;transform:scale(1)}
.hero-tagline{font-family:var(--body);font-size:13px;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:var(--chrome-1);max-width:600px}
.hero-h1{font-family:var(--display);font-size:clamp(28px,7vw,56px);line-height:1;letter-spacing:-1px;text-transform:uppercase;color:var(--ink-light);max-width:900px}
.hero-h1 em{font-style:normal;color:var(--mauve-glow)}
.hero-cta-row{display:flex;gap:16px;margin-top:8px;flex-wrap:wrap;justify-content:center}
.hero-ticker-fixed{position:fixed;top:84px;right:24px;z-index:90;display:flex;align-items:center;gap:10px;padding:8px 14px;background:rgba(10,10,12,.85);border:1px solid var(--chrome-3);border-radius:2px;font-family:var(--body);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1);backdrop-filter:blur(6px);pointer-events:none}

/* ====== MARQUEE (brand strip) ====== */
.marquee{padding:32px 0;border-top:1px solid;border-bottom:1px solid;border-image:var(--chrome-grad) 1;overflow:hidden;background:rgba(0,0,0,.25)}
.marquee-track{display:flex;gap:64px;width:max-content;animation:marquee 40s linear infinite;will-change:transform}
.marquee-item{font-family:var(--display);font-size:22px;letter-spacing:4px;color:var(--chrome-1);white-space:nowrap;display:inline-flex;align-items:center;gap:64px}
.marquee-item::after{content:"·";color:var(--mauve-glow);margin-left:64px}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ====== SECTIONS ====== */
.section{padding:120px 0;position:relative}
.section-sm{padding:80px 0}
.section-head{padding:0 32px;margin-bottom:56px;max-width:1400px;margin-inline:auto}
.section-head--center{text-align:center}

/* ====== PANEL LIGHT ====== */
.panel-light{background:var(--panel-light);color:var(--ink-dark);position:relative}
.panel-light .sec-title,.panel-light h1,.panel-light h2,.panel-light h3{color:var(--ink-dark)}
.panel-light .sec-sub,.panel-light p{color:rgba(10,10,12,.7)}
.panel-light .sec-tag{color:var(--mauve-deep)}
.panel-light .sec-tag::before{background:var(--mauve-deep)}

/* ====== FEATURED FLEET (asymmetric) ====== */
.fleet{padding:120px 0}
.fleet-head{padding:0 32px;margin-bottom:48px;max-width:1400px;margin-inline:auto}
.fleet-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:240px;gap:20px;max-width:1400px;margin:0 auto;padding:0 32px}
.fleet-card{position:relative;border:1px solid transparent;border-image:var(--chrome-grad) 1;overflow:hidden;background:#000;transition:transform .4s ease,box-shadow .4s ease}
.fleet-card:hover{transform:translateY(-6px);box-shadow:0 18px 60px rgba(255,255,255,.06),0 0 0 1px rgba(229,232,235,.25)}
.fleet-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;filter:saturate(1.02)}
.fleet-card:hover img{transform:scale(1.06)}
.fleet-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(10,10,12,.92));pointer-events:none}
.fleet-badge{position:absolute;top:14px;right:14px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:rgba(10,10,12,.85);border:1px solid var(--mauve);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--mauve-glow);font-family:var(--display)}
.fleet-meta{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;font-family:var(--display);font-size:18px;letter-spacing:1px;text-transform:uppercase}
.fleet-card.span-3{grid-column:span 3;grid-row:span 2}
.fleet-card.span-2{grid-column:span 2;grid-row:span 2}
.fleet-card.span-2-1{grid-column:span 2;grid-row:span 1}
.fleet-card.span-3-1{grid-column:span 3;grid-row:span 1}

/* ====== TIERS / PRICELIST DARK (home teaser) ====== */
.tiers{padding:120px 0}
.tiers-head{padding:0 32px;margin-bottom:64px;text-align:center;max-width:900px;margin-inline:auto}
.tiers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1400px;margin:0 auto;padding:0 32px}
.tier{background:rgba(20,20,24,.7);border:1px solid var(--chrome-3);padding:36px 28px;border-radius:2px;position:relative;transition:all .4s ease;display:flex;flex-direction:column;gap:16px}
.tier::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--chrome-grad)}
.tier:hover{border-color:var(--mauve);box-shadow:0 18px 60px rgba(0,0,0,.6),0 0 0 1px rgba(229,232,235,.18);transform:translateY(-4px)}
.tier-num{font-family:var(--display);font-size:14px;letter-spacing:3px;color:var(--mauve-glow)}
.tier-name{font-family:var(--display);font-size:30px;letter-spacing:1px;text-transform:uppercase;line-height:1}
.tier-sub{font-size:13px;color:rgba(255,255,255,.6);letter-spacing:1px;text-transform:uppercase}
.tier-list{list-style:none}
.tier-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid rgba(197,200,203,.12);font-size:14px}
.tier-list li:last-child{border-bottom:none}
.tier-list .price{font-family:var(--display);font-size:18px;letter-spacing:1px;color:var(--mauve-glow);white-space:nowrap}
.tier-cta{margin-top:auto;font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--mauve-glow);padding-top:16px}
.tier-cta:hover{color:#fff}

/* ====== TIERS LIGHT (services page full pricelist) ====== */
.tiers-light{padding:120px 32px;background:linear-gradient(180deg,#FFFFFF 0%,#F2F3F5 100%);color:var(--ink-dark);position:relative;overflow:hidden}
.tiers-light::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:280px;height:1px;background:linear-gradient(90deg,transparent,var(--platinum-deep),transparent)}
.tiers-light-head{text-align:center;max-width:900px;margin:0 auto 64px;position:relative;z-index:2}
.tiers-light .sec-tag{color:var(--platinum-deep);background:rgba(90,93,98,.07);padding:8px 16px;border-radius:99px;border:1px solid rgba(90,93,98,.18);font-weight:600}
.tiers-light .sec-tag::before{background:var(--platinum-deep);width:20px;opacity:.7}
.tiers-light .sec-title{background:linear-gradient(180deg,#0A0A0C 0%,#3A3D42 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:tiersTitleSheen 4s ease-in-out infinite alternate}
@keyframes tiersTitleSheen{from{filter:none}to{filter:drop-shadow(0 4px 14px rgba(90,93,98,.18))}}
.tiers-light .sec-sub{color:rgba(10,10,12,.66)}
.tiers-light-list{display:flex;flex-direction:column;gap:48px;max-width:1100px;margin:0 auto}
.tier-light{border:1px solid #E2E4E7;border-top:3px solid var(--mauve-deep);background:#fff;padding:40px 32px;position:relative;border-radius:2px}
.tier-light-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid #E8EAED}
.tier-light-code{font-family:var(--display);font-size:14px;letter-spacing:3px;color:var(--mauve-deep)}
.tier-light-name{font-family:var(--display);font-size:36px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-dark);line-height:1}
.tier-light-sub{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#7A7D81;margin-top:4px}
.tier-light-services{display:flex;flex-direction:column;gap:0}
.tier-light-service{display:grid;grid-template-columns:1fr auto;gap:16px;padding:18px 0;border-top:1px solid #EAECEF}
.tier-light-service:first-child{border-top:none}
.tls-name{font-family:var(--body);font-size:16px;font-weight:600;color:var(--ink-dark);margin-bottom:6px}
.tls-desc{font-size:13px;color:#5A5D62;line-height:1.55;margin-bottom:6px}
.tls-meta{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#9DA0A4}
.tls-price{font-family:var(--display);font-size:24px;letter-spacing:1px;color:var(--ink-dark);align-self:start;white-space:nowrap}

/* ====== INVENTORY GRID ====== */
.inventory{padding:120px 0}
.inv-head{padding:0 32px;margin-bottom:48px;display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:16px;max-width:1400px;margin-inline:auto}
.inv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;max-width:1400px;margin:0 auto;padding:0 32px}
.car-card{position:relative;background:rgba(20,20,24,.7);border:1px solid var(--chrome-3);overflow:hidden;transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease;display:flex;flex-direction:column;border-radius:2px}
.car-card:hover{transform:translateY(-6px);border-color:var(--mauve);box-shadow:0 18px 60px rgba(0,0,0,.55),0 0 0 1px rgba(229,232,235,.2)}
.car-card-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:#000}
.car-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.car-card:hover .car-card-img img{transform:scale(1.06)}
.car-card-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(10,10,12,.9))}
.car-card-status{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:rgba(10,10,12,.85);border:1px solid var(--chrome-2);font-family:var(--body);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#fff}
.car-card-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:8px}
.car-card-title{font-family:var(--display);font-size:22px;letter-spacing:1px;text-transform:uppercase;line-height:1.05}
.car-card-meta{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.6);display:flex;flex-wrap:wrap;gap:10px}
.car-card-meta span{display:inline-flex;align-items:center;gap:6px}
.car-card-meta span+span::before{content:"·";color:var(--mauve-glow);margin-right:10px}
.car-card-price{font-family:var(--display);font-size:26px;color:var(--mauve-glow);letter-spacing:1px;margin-top:6px}

/* ====== CARS FILTER BAR ====== */
.filter-bar{position:sticky;top:78px;z-index:60;background:rgba(10,10,12,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(197,200,203,.18);border-bottom:1px solid rgba(197,200,203,.18);padding:18px 32px}
.filter-bar-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;flex-wrap:wrap;gap:18px}
.filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.filter-label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1);margin-right:4px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--chrome-3);background:rgba(255,255,255,.02);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.78);border-radius:99px;cursor:pointer;transition:all .25s ease}
.chip:hover{border-color:var(--mauve)}
.chip.is-active{background:var(--mauve);border-color:var(--mauve);color:var(--ink-dark)}
.filter-select{padding:8px 12px;background:rgba(255,255,255,.04);border:1px solid var(--chrome-3);color:#fff;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;border-radius:2px}
.filter-count{margin-left:auto;font-family:var(--display);font-size:14px;letter-spacing:2px;color:var(--mauve-glow)}
.filter-reset{background:transparent;border:1px solid var(--chrome-3);padding:8px 14px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1);border-radius:2px;cursor:pointer;transition:all .25s ease}
.filter-reset:hover{border-color:var(--mauve);color:#fff}

.empty-state{text-align:center;padding:80px 32px;color:rgba(255,255,255,.65);font-size:14px;letter-spacing:1px}
.empty-state p{margin-bottom:18px}

/* ====== CINEMATIC SPLIT ====== */
.cinema{position:relative;height:80vh;min-height:600px;background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;justify-content:center}
.cinema::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,12,.6),rgba(10,10,12,.88))}
.cinema-quote{position:relative;z-index:2;font-family:var(--display);font-size:clamp(36px,5.5vw,72px);line-height:1;letter-spacing:-1px;text-transform:uppercase;text-align:center;max-width:1100px;padding:0 32px}
.cinema-quote em{font-style:normal;color:var(--mauve-glow)}

/* ====== BOOKING CTA BAND ====== */
.booking-band{position:relative;padding:140px 32px;text-align:center;overflow:hidden}
.booking-band::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--chrome-grad)}
.booking-blob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(229,232,235,.12) 0%,transparent 60%);filter:blur(40px);pointer-events:none;animation:blobFloat 8s ease-in-out infinite alternate}
@keyframes blobFloat{from{transform:translate(-50%,-50%) scale(1)}to{transform:translate(-45%,-55%) scale(1.1)}}
.booking-content{position:relative;z-index:2}
.booking-title{font-family:var(--display);font-size:clamp(40px,7vw,108px);line-height:.9;letter-spacing:-1px;text-transform:uppercase;margin-bottom:20px}
.booking-sub{font-size:15px;letter-spacing:1.5px;color:rgba(255,255,255,.7);margin-bottom:32px;max-width:640px;margin-inline:auto;text-transform:uppercase}

/* ====== CONTACT STRIP ====== */
.contact-strip{padding:80px 32px;border-top:1px solid;border-image:var(--chrome-grad) 1}
.contact-strip-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.cs-cell{display:flex;flex-direction:column;gap:6px}
.cs-label{font-family:var(--display);font-size:13px;letter-spacing:3px;color:var(--mauve-glow);text-transform:uppercase}
.cs-value{font-size:14px;color:rgba(255,255,255,.85);line-height:1.5}
.cs-value a:hover{color:var(--mauve-glow)}

/* ====== FOOTER ====== */
.footer{position:relative;padding:80px 32px 0;border-top:1px solid;border-image:var(--chrome-grad) 1;background:rgba(0,0,0,.35)}
.footer-grid{max-width:1400px;margin:0 auto 48px;display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.2fr;gap:48px}
.footer-col h4.footer-h{font-family:var(--display);font-size:14px;letter-spacing:3px;color:var(--mauve-glow);margin-bottom:16px;text-transform:uppercase}
.footer-logo{width:88px;height:88px;object-fit:cover;margin-bottom:14px;border:1px solid var(--chrome-3);border-radius:50%;padding:0;background:#000;box-shadow:0 4px 18px rgba(0,0,0,.55)}
.footer-name{font-family:var(--display);font-size:24px;letter-spacing:4px;margin-bottom:6px}
.footer-tag{font-size:12px;color:rgba(255,255,255,.55);letter-spacing:1.5px;line-height:1.6}
.footer-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-list a,.footer-list li{font-size:13px;color:rgba(255,255,255,.7);transition:color .25s ease;line-height:1.5}
.footer-list a:hover{color:var(--mauve-glow)}
.footer-credit{position:relative;text-align:center;font-size:11px;color:rgba(255,255,255,.4);letter-spacing:2px;text-transform:uppercase;padding:24px 0 32px;display:inline-flex;flex-direction:column;align-items:center;gap:6px;width:100%}
.footer-credit b{color:var(--mauve-glow);font-weight:700}
.credit-underline{display:block;width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--mauve-glow),transparent)}
.footer-line{height:2px;width:100%;background:linear-gradient(90deg,transparent 0%,var(--mauve) 50%,transparent 100%);background-size:200% 100%;animation:flow 4s linear infinite}
@keyframes flow{from{background-position:200% 0}to{background-position:-200% 0}}

/* ====== REVEAL ANIMATIONS ====== */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease-out,transform .7s ease-out}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.reveal-up{opacity:0;transform:translateY(50px);transition:opacity .9s ease-out,transform .9s ease-out}
.reveal-up.is-visible{opacity:1;transform:translateY(0)}
.reveal:nth-child(2){transition-delay:.08s}
.reveal:nth-child(3){transition-delay:.16s}
.reveal:nth-child(4){transition-delay:.24s}
.reveal:nth-child(5){transition-delay:.32s}
.reveal:nth-child(6){transition-delay:.4s}

/* ====== CAR DETAIL PAGE ====== */
.car-hero{position:relative;padding:120px 32px 60px;display:grid;grid-template-columns:1.4fr 1fr;gap:40px;max-width:1400px;margin:0 auto;align-items:start}
.car-hero-photo{position:relative;border:1px solid var(--chrome-3);overflow:hidden;background:#000}
.car-hero-photo img{width:100%;height:auto;display:block;aspect-ratio:16/10;object-fit:cover}
.car-hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(10,10,12,.6));pointer-events:none}
.car-hero-photo .scanline{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(229,232,235,.08) 50%,transparent 100%);height:160px;animation:scanline 7s linear infinite}
.spec-card{background:rgba(20,20,24,.78);border:1px solid var(--chrome-3);padding:32px 28px;border-radius:2px;position:relative;display:flex;flex-direction:column;gap:18px}
.spec-card::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--chrome-grad)}
.spec-card-brand{font-size:12px;letter-spacing:3px;color:var(--mauve-glow);text-transform:uppercase}
.spec-card-title{font-family:var(--display);font-size:36px;letter-spacing:1px;line-height:1;text-transform:uppercase}
.spec-card-meta{font-size:13px;color:rgba(255,255,255,.7);letter-spacing:1px}
.spec-card-price{font-family:var(--display);font-size:42px;color:var(--mauve-glow);letter-spacing:1px;text-shadow:0 0 24px rgba(229,232,235,.25)}
.spec-rows{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;border-top:1px solid rgba(197,200,203,.15);padding-top:18px}
.spec-row{display:flex;flex-direction:column;gap:4px}
.spec-row-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1)}
.spec-row-val{font-family:var(--display);font-size:18px;letter-spacing:1px}
.spec-status{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--mauve);background:rgba(199,205,210,.1);font-size:10px;letter-spacing:2px;text-transform:uppercase;align-self:flex-start;color:var(--mauve-glow)}
.spec-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}

.highlights{padding:80px 32px}
.highlights-list{max-width:900px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.highlights-list li{list-style:none;display:flex;align-items:flex-start;gap:14px;padding:16px;border:1px solid #E2E4E7;background:#fff;border-radius:2px;font-size:14px;color:var(--ink-dark)}
.highlights-list li::before{content:"";width:14px;height:16px;background:var(--chrome-grad);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);flex-shrink:0;margin-top:2px}

.car-desc{padding:60px 32px;max-width:760px;margin:0 auto;font-size:16px;line-height:1.75;color:rgba(255,255,255,.8)}

.car-gallery{padding:60px 32px}
.car-gallery-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.car-gallery-grid button{padding:0;border:1px solid var(--chrome-3);overflow:hidden;background:#000;cursor:pointer;aspect-ratio:4/3;transition:transform .4s ease,border-color .4s ease}
.car-gallery-grid button:hover{transform:translateY(-4px);border-color:var(--mauve)}
.car-gallery-grid img{width:100%;height:100%;object-fit:cover}

.lightbox{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:32px;cursor:zoom-out;opacity:0;transition:opacity .3s ease}
.lightbox.is-open{display:flex;opacity:1}
.lightbox img{max-width:100%;max-height:100%;transform:scale(.96);transition:transform .4s ease;border:1px solid var(--chrome-3)}
.lightbox.is-open img{transform:scale(1)}
.lightbox-close{position:absolute;top:24px;right:24px;width:48px;height:48px;background:rgba(10,10,12,.85);border:1px solid var(--chrome-3);color:#fff;font-size:22px;border-radius:50%;cursor:pointer}

.back-strip{position:sticky;bottom:24px;padding:0 24px;display:flex;justify-content:flex-start;z-index:50}
.back-strip a{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;background:rgba(10,10,12,.92);border:1px solid var(--chrome-3);font-size:12px;letter-spacing:2px;text-transform:uppercase;backdrop-filter:blur(8px);transition:all .25s ease}
.back-strip a:hover{border-color:var(--mauve);color:var(--mauve-glow)}

/* ====== SOLD ====== */
.sold-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;max-width:1400px;margin:0 auto;padding:0 32px}
.sold-card{position:relative;border:1px solid var(--chrome-3);overflow:hidden;aspect-ratio:4/3;background:#000}
.sold-card img{width:100%;height:100%;object-fit:cover;filter:grayscale(.95) brightness(.65)}
.sold-card::before{content:"SOLD";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-18deg);font-family:var(--display);font-size:64px;letter-spacing:6px;color:rgba(229,232,235,.78);z-index:2;border:3px solid rgba(229,232,235,.55);padding:8px 24px;border-radius:4px;text-shadow:0 0 24px rgba(229,232,235,.25);pointer-events:none}
.sold-card-meta{position:absolute;left:16px;right:16px;bottom:14px;z-index:3;display:flex;justify-content:space-between;align-items:flex-end;gap:8px}
.sold-card-title{font-family:var(--display);font-size:18px;letter-spacing:1px;text-transform:uppercase}
.sold-card-date{font-family:var(--display);font-size:11px;letter-spacing:2px;color:var(--chrome-1)}

/* ====== ABOUT ====== */
.story{padding:120px 32px;max-width:900px;margin:0 auto}
.story p{font-size:17px;line-height:1.85;color:rgba(255,255,255,.78);margin-bottom:24px}
.story p:first-child::first-letter{font-family:var(--display);font-size:64px;float:left;line-height:.85;padding:8px 14px 0 0;color:var(--mauve-glow)}

.bays{padding:60px 32px}
.bays-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1400px;margin:0 auto}
.bay-walk{position:relative;border:1px solid var(--chrome-3);overflow:hidden;aspect-ratio:3/4;background:#000;transition:transform .4s ease,border-color .4s ease}
.bay-walk:hover{transform:translateY(-6px);border-color:var(--mauve)}
.bay-walk img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.bay-walk:hover img{transform:scale(1.06)}
.bay-walk::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(10,10,12,.94))}
.bay-walk-meta{position:absolute;left:24px;right:24px;bottom:24px;z-index:2}
.bay-walk-num{font-family:var(--display);font-size:14px;letter-spacing:3px;color:var(--mauve-glow);margin-bottom:4px}
.bay-walk-title{font-family:var(--display);font-size:24px;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px}
.bay-walk-desc{font-size:13px;color:rgba(255,255,255,.7);line-height:1.5}

.numbers{padding:120px 32px;text-align:center}
.numbers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;max-width:1200px;margin:0 auto}
.num-cell{display:flex;flex-direction:column;gap:8px;align-items:center}
.num-val{font-family:var(--display);font-size:clamp(48px,6vw,84px);color:var(--mauve-glow);letter-spacing:-1px;line-height:1}
.num-label{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--chrome-1)}

/* ====== PROCESS TIMELINE ====== */
.process{padding:120px 32px}
.process-list{max-width:900px;margin:0 auto;position:relative}
.process-list::before{content:"";position:absolute;left:14px;top:0;bottom:0;width:1px;background:var(--chrome-grad)}
.process-step{position:relative;padding:0 0 56px 60px;display:flex;flex-direction:column;gap:8px}
.process-step:last-child{padding-bottom:0}
.process-step::before{content:"";position:absolute;left:8px;top:8px;width:14px;height:14px;background:var(--mauve);border:2px solid var(--mauve-glow);border-radius:50%;box-shadow:0 0 16px rgba(229,232,235,.55)}
.process-num{font-family:var(--display);font-size:12px;letter-spacing:3px;color:var(--mauve-glow)}
.process-title{font-family:var(--display);font-size:26px;letter-spacing:1px;text-transform:uppercase;line-height:1}
.process-desc{font-size:14px;color:rgba(255,255,255,.7);line-height:1.6;max-width:600px}

/* ====== BOOKING FORM ====== */
.booking-form-wrap{padding:120px 32px;background:linear-gradient(180deg,var(--bg-mid),var(--bg-deep))}
.booking-form{max-width:900px;margin:0 auto;background:rgba(20,20,24,.78);border:1px solid var(--chrome-3);padding:48px 40px;border-radius:2px;position:relative}
.booking-form::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--chrome-grad)}
.booking-form-head{margin-bottom:32px;text-align:center}
.bf-row{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:18px}
.bf-row.full{grid-template-columns:1fr}
.bf-field{display:flex;flex-direction:column;gap:8px}
.bf-field label{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1)}
.bf-field input,.bf-field select,.bf-field textarea{background:rgba(255,255,255,.04);border:1px solid var(--chrome-3);padding:14px;color:#fff;font-size:14px;border-radius:2px;font-family:var(--body);transition:border-color .25s ease,background .25s ease}
.bf-field input:focus,.bf-field select:focus,.bf-field textarea:focus{border-color:var(--mauve-glow);background:rgba(255,255,255,.06);outline:none}
.bf-field textarea{min-height:120px;resize:vertical}
.bf-services{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.bf-service-cb{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--chrome-3);border-radius:2px;cursor:pointer;font-size:13px;transition:border-color .25s ease,background .25s ease}
.bf-service-cb:hover{border-color:var(--mauve);background:rgba(229,232,235,.04)}
.bf-service-cb input{accent-color:var(--mauve)}
.bf-service-cb .sn{flex:1}
.bf-service-cb .sp{font-family:var(--display);font-size:13px;color:var(--mauve-glow);letter-spacing:1px}
.bf-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:rgba(255,255,255,.7);line-height:1.5;margin:18px 0 24px}
.bf-consent input{accent-color:var(--mauve);margin-top:3px}
.bf-honeypot{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.booking-status{margin-bottom:24px;padding:14px 18px;border-radius:2px;font-size:13px;letter-spacing:1px}
.booking-status.ok{background:rgba(229,232,235,.08);border:1px solid var(--mauve);color:var(--mauve-glow)}
.booking-status.err{background:rgba(220,80,80,.1);border:1px solid #d56b6b;color:#f6b8b8}
.bf-submit{display:flex;justify-content:center}

/* ====== CARS empty-state (minimal — request-focused) ====== */
.cars-empty{padding:120px 32px;min-height:50vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--bg-deep) 0%,var(--bg-mid) 100%)}
.cars-empty-inner{max-width:680px;text-align:center;display:flex;flex-direction:column;gap:22px;align-items:center}
.cars-empty-title{font-family:var(--display);font-size:clamp(32px,5vw,52px);line-height:1.05;letter-spacing:-.5px;color:#fff;text-transform:uppercase}
.cars-empty-sub{font-size:16px;line-height:1.65;color:rgba(255,255,255,.72);max-width:520px}
.cars-empty-cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}
@media (max-width:600px){
  .cars-empty{padding:80px 20px}
  .cars-empty-title{font-size:28px}
  .cars-empty-sub{font-size:15px}
}

/* ====== BOOKING — quick-call shortcut + step structure ====== */
.booking-quick{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:18px 20px;margin-bottom:32px;background:rgba(229,232,235,.04);border:1px solid var(--chrome-3);border-radius:3px}
.booking-quick-or{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1);margin-right:6px}
.booking-quick-tel{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:transparent;border:1px solid var(--chrome-2);border-radius:99px;font-family:var(--display);font-size:18px;letter-spacing:1.5px;color:#fff;transition:all .25s ease}
.booking-quick-tel:hover{border-color:var(--mauve-glow);background:rgba(229,232,235,.06);color:var(--mauve-glow);transform:translateY(-1px)}
.booking-quick-icon{font-size:14px;line-height:1}
.booking-form-grid{display:flex;flex-direction:column;gap:22px}
.bf-step{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}
.bf-step-legend{display:inline-flex;align-items:center;gap:10px;padding:0;font-family:var(--display);font-size:16px;letter-spacing:2px;text-transform:uppercase;color:var(--mauve-glow);margin-bottom:4px}
.bf-step-num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--mauve);background:rgba(229,232,235,.08);font-family:var(--display);font-size:13px;color:#fff;letter-spacing:0}
.bf-optional{font-family:var(--body);font-size:11px;letter-spacing:1.5px;color:var(--chrome-1);text-transform:none;font-weight:400}
.bf-req{color:var(--mauve-glow);font-weight:700;margin-left:2px}
.bf-tier-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.bf-tier-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:18px 16px;background:rgba(255,255,255,.02);border:1px solid var(--chrome-3);border-radius:3px;cursor:pointer;transition:all .25s ease;min-height:130px}
.bf-tier-card input{position:absolute;opacity:0;pointer-events:none}
.bf-tier-card:hover{border-color:var(--mauve);background:rgba(229,232,235,.05);transform:translateY(-2px)}
.bf-tier-card:has(input:checked){border-color:var(--mauve-glow);background:rgba(229,232,235,.08);box-shadow:0 0 0 1px var(--mauve-glow),0 8px 20px rgba(0,0,0,.4)}
.bf-tier-card:has(input:checked)::after{content:"✓";position:absolute;top:10px;right:12px;font-family:var(--display);font-size:18px;color:var(--mauve-glow);text-shadow:0 0 8px rgba(229,232,235,.6)}
.bf-tier-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.bf-tier-card-code{font-family:var(--display);font-size:13px;letter-spacing:2px;color:var(--mauve-glow)}
.bf-tier-card-from{font-family:var(--body);font-size:11px;letter-spacing:1px;color:var(--chrome-1);text-transform:uppercase}
.bf-tier-card-name{font-family:var(--display);font-size:18px;letter-spacing:1px;line-height:1.1;text-transform:uppercase;color:#fff;font-weight:400}
.bf-tier-card-sub{font-size:12px;color:rgba(255,255,255,.62);letter-spacing:.5px;line-height:1.4}
.btn-large{padding:18px 36px !important;font-size:14px !important;letter-spacing:2.5px !important}
@media (max-width:720px){
  .bf-tier-picker{grid-template-columns:1fr}
  .bf-tier-card{min-height:auto;padding:14px 14px}
  .booking-quick{padding:14px;gap:10px}
  .booking-quick-tel{font-size:16px;padding:8px 14px}
}

/* ====== DETAIL JOB GALLERY (services page) ====== */
.dj-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1400px;margin:0 auto;padding:0 32px}
.dj-cell{position:relative;aspect-ratio:1/1;border:1px solid var(--chrome-3);overflow:hidden;background:#000;transition:transform .4s ease,border-color .4s ease}
.dj-cell:nth-child(3n){aspect-ratio:1/1.4}
.dj-cell:hover{transform:translateY(-4px);border-color:var(--mauve);box-shadow:0 14px 40px rgba(0,0,0,.55),0 0 0 1px rgba(229,232,235,.18)}
.dj-cell img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;filter:saturate(1.04)}
.dj-cell:hover img{transform:scale(1.06)}

/* ====== CONTACT ====== */
.contact-cards{padding:80px 32px;background:#fff;color:var(--ink-dark)}
.contact-cards-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.contact-card{padding:28px 24px;border:1px solid #E2E4E7;border-top:3px solid var(--mauve-deep);background:#fff;display:flex;flex-direction:column;gap:10px;transition:box-shadow .3s ease,transform .3s ease}
.contact-card:hover{transform:translateY(-3px);box-shadow:0 12px 36px rgba(10,10,12,.12)}
.contact-card-h{font-family:var(--display);font-size:13px;letter-spacing:3px;color:var(--mauve-deep);text-transform:uppercase}
.contact-card a{color:var(--ink-dark);font-weight:600;font-size:15px}
.contact-card a:hover{color:var(--mauve-deep)}
.contact-card-meta{font-size:13px;color:#5A5D62;line-height:1.6}

.hours-panel{padding:120px 32px}
.hours-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.hours-single{max-width:560px;margin:0 auto}
.hours-col-single{padding:36px 40px}
.hours-col{background:rgba(20,20,24,.7);border:1px solid var(--chrome-3);padding:32px;border-radius:2px;position:relative}
.hours-col::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--chrome-grad)}
.hours-col h3{font-size:20px;margin-bottom:18px;color:var(--mauve-glow)}
.hours-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid rgba(197,200,203,.12);font-size:14px}
.hours-row:first-of-type{border-top:none}
.hours-row .day{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--chrome-1)}
.hours-row .val{color:rgba(255,255,255,.85);font-size:13px}
.hours-row.is-today{background:rgba(229,232,235,.08);box-shadow:inset 3px 0 0 var(--mauve-glow)}
.hours-row.is-today .day,.hours-row.is-today .val{color:var(--mauve-glow)}

.map-wrap{padding:40px 32px 80px}
.map-frame{max-width:900px;margin:0 auto;aspect-ratio:16/10;border:1px solid var(--chrome-3);border-radius:6px;overflow:hidden;position:relative;background:#000;box-shadow:0 12px 32px rgba(0,0,0,.4)}
.map-frame iframe{width:100%;height:100%;border:0;filter:grayscale(.4) brightness(.92) contrast(1.04)}
@media (max-width:900px){
  .map-wrap{padding:32px 16px 60px}
  .map-frame{aspect-ratio:4/3;max-width:100%}
}
@media (max-width:520px){
  .map-wrap{padding:24px 12px 48px}
  .map-frame{aspect-ratio:1/1;border-radius:4px}
}

/* ====== 404 ====== */
.notfound{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:120px 32px;flex-direction:column;gap:20px}
.notfound-logo{width:140px;height:140px;object-fit:cover;border-radius:50%;background:#000;margin-bottom:16px;filter:drop-shadow(0 8px 32px rgba(229,232,235,.22))}
.notfound-code{font-family:var(--display);font-size:clamp(120px,22vw,260px);line-height:.9;color:var(--mauve-glow);text-shadow:0 0 32px rgba(229,232,235,.22)}
.notfound-msg{font-family:var(--display);font-size:clamp(22px,3vw,32px);letter-spacing:2px;text-transform:uppercase;max-width:600px}

/* ====== ΠΑΡΟΜΟΙΕΣ ΔΟΥΛΕΙΕΣ (work gallery) ====== */
.work{padding:120px 0}
.work-head{padding:0 32px;margin-bottom:48px;max-width:1400px;margin-inline:auto;text-align:center}
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:16px;max-width:1400px;margin:0 auto;padding:0 32px}
.work-card{position:relative;overflow:hidden;border:1px solid var(--chrome-3);background:#000;transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s ease,border-color .55s ease;border-radius:2px;will-change:transform}
.work-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.16,.78,.2,1),filter .6s ease;filter:saturate(.95) brightness(.92)}
.work-card:hover{border-color:var(--mauve);box-shadow:0 24px 70px rgba(0,0,0,.65),0 0 0 1px rgba(229,232,235,.22),0 0 32px rgba(229,232,235,.08)}
.work-card:hover img{transform:scale(1.08);filter:saturate(1.05) brightness(1.02)}
.work-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,12,.05) 30%,rgba(10,10,12,.92) 100%);pointer-events:none;opacity:.85;transition:opacity .5s ease}
.work-card:hover::after{opacity:1}
.work-card--lg{grid-column:span 2;grid-row:span 2}
.work-card--tall{grid-row:span 2}
.work-meta{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;display:flex;flex-direction:column;gap:6px;transform:translateY(8px);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.work-card:hover .work-meta{transform:translateY(0)}
.work-tag{display:inline-block;width:fit-content;font-family:var(--body);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--mauve-glow);padding:3px 10px;border:1px solid rgba(229,232,235,.45);background:rgba(10,10,12,.55);backdrop-filter:blur(4px);border-radius:99px}
.work-meta strong{font-family:var(--display);font-size:20px;letter-spacing:1px;text-transform:uppercase;color:#fff;font-weight:400}
.work-foot{display:flex;justify-content:center;margin-top:48px;padding:0 32px}

@media (max-width:1024px){
  .work-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:240px}
  .work-card--lg{grid-column:span 2;grid-row:span 2}
  .work-card--tall{grid-row:span 1}
}
@media (max-width:640px){
  .work{padding:80px 0}
  .work-grid{grid-template-columns:1fr;grid-auto-rows:280px;gap:12px;padding:0 20px}
  .work-card--lg,.work-card--tall{grid-column:span 1;grid-row:span 1}
  .work-meta strong{font-size:17px}
}

/* ====== SCROLL PROGRESS BAR ====== */
.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:200;pointer-events:none;background:rgba(255,255,255,.04)}
.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--mauve) 0%,var(--mauve-glow) 50%,var(--mauve) 100%);box-shadow:0 0 12px rgba(229,232,235,.5);will-change:width;transition:width .12s linear}

/* ====== ENHANCED MOTION ====== */
/* Hero logo subtle breathing pulse */
.hero.loaded .hero-logo{animation:logoBreath 7s ease-in-out infinite alternate}
@keyframes logoBreath{
  from{transform:scale(1) translateY(0);filter:drop-shadow(0 12px 48px rgba(229,232,235,.22))}
  to  {transform:scale(1.025) translateY(-4px);filter:drop-shadow(0 18px 64px rgba(229,232,235,.4))}
}

/* Hero video subtle parallax effect via JS sets --hp */
.hero-video,.hero-bg{transform:scale(calc(1.08 + var(--hp,0) * .03)) translateY(calc(var(--hp,0) * -1.5%))}

/* Letter-split section title reveal */
.sec-title-split{display:inline-block;perspective:600px}
.sec-title-split .word{display:inline-block;overflow:hidden;line-height:1;padding-bottom:.08em;margin-right:.18em}
.sec-title-split .word:last-child{margin-right:0}
.sec-title-split .ch{display:inline-block;transform:translateY(120%) rotate(8deg);opacity:0;transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .9s ease}
.reveal-split.is-visible .sec-title-split .ch{transform:translateY(0) rotate(0);opacity:1}
.sec-title-split .ch:nth-child(odd){transition-delay:calc(var(--i,0) * 30ms)}
.sec-title-split .ch:nth-child(even){transition-delay:calc(var(--i,0) * 30ms + 15ms)}

/* Tilt cards — JS sets --rx / --ry inline */
.tilt{transform-style:preserve-3d;transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.tilt.is-tilting{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(8px)}

/* Marquee runs at steady 40s linear — no velocity reaction (caused jitter) */
.marquee-item{transition:transform .35s ease}
.marquee:hover .marquee-item{transform:skewX(-2deg)}

/* Stronger stagger for reveal sequences */
.reveal-up{transition-timing-function:cubic-bezier(.18,.85,.25,1)}
.reveal:nth-child(7){transition-delay:.46s}
.reveal:nth-child(8){transition-delay:.52s}

/* Tier card hover lifts higher with chromatic shadow */
.tier:hover{transform:translateY(-8px);transition:all .5s cubic-bezier(.2,.7,.2,1)}

/* ====== REVIEWS CAROUSEL (stack style: center sharp, sides blurred) ======
   Mobile-first: 1 active center, 2 neighbors peeking blurred on both sides.
   3-card stack at all viewports, just scaled for each breakpoint. */
.reviews{padding:100px 20px;position:relative;overflow:hidden;background:linear-gradient(180deg,var(--bg-deep) 0%,var(--bg-mid) 100%)}
.reviews-head{text-align:center;max-width:760px;margin:0 auto 48px}
.reviews-stage{position:relative;max-width:1100px;margin:0 auto;height:380px;perspective:1400px;user-select:none;touch-action:pan-y;overflow:visible}
.reviews-track{position:absolute;inset:0;display:block;width:100%;height:100%}
/* Default (hidden) state — JS toggles is-active / is-prev / is-next */
.review-card{
  position:absolute;
  left:50%; top:50%;
  width:min(440px,82vw);
  min-height:240px;
  background:rgba(20,20,24,.94);
  border:1px solid var(--chrome-3);
  border-radius:8px;
  padding:28px 26px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 18px 50px rgba(0,0,0,.55),0 0 0 1px rgba(229,232,235,.1);
  transition:transform .55s cubic-bezier(.22,.61,.36,1),opacity .45s ease,filter .45s ease;
  display:flex;
  flex-direction:column;
  gap:14px;
  transform:translate(-50%,-50%) scale(.86);
  opacity:0;
  visibility:hidden;
  z-index:1;
  pointer-events:none;
}
.review-card.is-active{
  transform:translate(-50%,-50%) scale(1);
  opacity:1; visibility:visible; z-index:5;
  pointer-events:auto;
  border-color:var(--mauve-glow);
  box-shadow:0 26px 70px rgba(0,0,0,.65),0 0 0 1px rgba(229,232,235,.32),0 0 28px rgba(229,232,235,.1);
}
.review-card.is-prev{
  transform:translate(-50%,-50%) scale(.78) translateX(-58%);
  opacity:.45; visibility:visible; z-index:3;
  filter:blur(3px) saturate(.8);
  pointer-events:auto; cursor:pointer;
}
.review-card.is-next{
  transform:translate(-50%,-50%) scale(.78) translateX(58%);
  opacity:.45; visibility:visible; z-index:3;
  filter:blur(3px) saturate(.8);
  pointer-events:auto; cursor:pointer;
}
.review-card.is-prev:hover,.review-card.is-next:hover{opacity:.7;filter:blur(1.5px)}
.review-stars{display:flex;gap:3px;color:var(--mauve-glow)}
.review-star{font-size:18px;color:rgba(255,255,255,.18);transition:color .3s ease;line-height:1}
.review-star.is-filled{color:var(--mauve-glow);text-shadow:0 0 6px rgba(229,232,235,.45)}
.review-text{font-family:var(--body);font-size:16px;line-height:1.6;color:rgba(255,255,255,.92);margin:0;font-style:italic;font-weight:300;flex:1}
.review-footer{display:flex;flex-direction:column;gap:2px;border-top:1px solid rgba(229,232,235,.15);padding-top:12px;margin-top:auto}
.review-author{font-family:var(--display);font-size:17px;letter-spacing:1.5px;text-transform:uppercase;color:var(--mauve-glow)}
.review-vehicle{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--chrome-1)}
.reviews-arrow{position:absolute;top:50%;width:46px;height:46px;border-radius:50%;background:rgba(20,20,24,.85);border:1px solid var(--chrome-2);color:var(--mauve-glow);font-size:26px;line-height:1;cursor:pointer;z-index:10;transform:translateY(-50%);transition:all .25s ease;backdrop-filter:blur(8px);font-family:var(--body);display:flex;align-items:center;justify-content:center;padding:0}
.reviews-arrow:hover{background:var(--mauve-glow);color:var(--bg-deep);border-color:var(--mauve-glow);box-shadow:0 8px 24px rgba(229,232,235,.4)}
.reviews-arrow-prev{left:6px}
.reviews-arrow-next{right:6px}
.reviews-dots{display:flex;justify-content:center;gap:8px;margin-top:28px}
.reviews-dot{width:32px;height:4px;border-radius:2px;background:rgba(255,255,255,.18);border:none;cursor:pointer;transition:all .3s ease;padding:0}
.reviews-dot:hover{background:rgba(255,255,255,.34)}
.reviews-dot.is-active{background:var(--mauve-glow);box-shadow:0 0 8px rgba(229,232,235,.55);width:42px}

/* Tablet — slightly larger cards */
@media (min-width:740px){
  .reviews{padding:110px 32px}
  .reviews-stage{height:380px}
  .review-card{width:min(500px,75vw);padding:32px 30px;gap:16px}
  .review-text{font-size:17px;line-height:1.65}
  .review-author{font-size:18px}
}

/* Desktop — full stack visible, more breathing room */
@media (min-width:1100px){
  .reviews{padding:120px 32px}
  .reviews-stage{height:400px}
  .review-card{width:520px;padding:36px 36px;gap:18px}
  .review-card.is-prev{transform:translate(-50%,-50%) scale(.82) translateX(-62%);opacity:.42}
  .review-card.is-next{transform:translate(-50%,-50%) scale(.82) translateX(62%);opacity:.42}
  .reviews-arrow{width:52px;height:52px;font-size:30px}
  .reviews-arrow-prev{left:24px}
  .reviews-arrow-next{right:24px}
  .review-text{font-size:18px}
}

/* Small mobile — keep stack but tighter offsets */
@media (max-width:520px){
  .reviews{padding:80px 12px}
  .reviews-stage{height:380px}
  .review-card{width:min(340px,84vw);padding:22px 20px;gap:12px;min-height:230px}
  .review-card.is-prev{transform:translate(-50%,-50%) scale(.72) translateX(-50%);opacity:.32;filter:blur(3.5px) saturate(.75)}
  .review-card.is-next{transform:translate(-50%,-50%) scale(.72) translateX(50%);opacity:.32;filter:blur(3.5px) saturate(.75)}
  .review-text{font-size:14px;line-height:1.55}
  .review-author{font-size:15px}
  .reviews-arrow{width:40px;height:40px;font-size:22px}
  .reviews-arrow-prev{left:2px}
  .reviews-arrow-next{right:2px}
}

/* ====== FERRARI HERO RIBBON ====== */
.ferrari-ribbon{position:relative;padding:80px 32px;background:linear-gradient(180deg,var(--bg-mid) 0%,var(--bg-deep) 100%);border-top:1px solid var(--chrome-3);border-bottom:1px solid var(--chrome-3);overflow:hidden}
.ferrari-ribbon::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(229,232,235,.08) 0%,transparent 55%);pointer-events:none}
.ferrari-ribbon-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;position:relative;z-index:2}
.ferrari-ribbon-image{position:relative;border:1px solid var(--chrome-2);overflow:hidden;border-radius:2px;aspect-ratio:16/10;background:#000;box-shadow:0 24px 60px rgba(0,0,0,.55),0 0 0 1px rgba(229,232,235,.18)}
.ferrari-ribbon-image img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.02);transition:transform 1.4s cubic-bezier(.18,.85,.25,1)}
.ferrari-ribbon-image:hover img{transform:scale(1.04)}
.ferrari-ribbon-image::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 35%,rgba(10,10,12,.45) 100%);pointer-events:none}
.ferrari-ribbon-badge{position:absolute;top:18px;left:18px;z-index:3;display:inline-flex;align-items:center;padding:7px 14px;background:rgba(10,10,12,.78);backdrop-filter:blur(6px);border:1px solid var(--mauve);font-family:var(--display);font-size:12px;letter-spacing:3px;color:var(--mauve-glow);text-transform:uppercase}
.ferrari-ribbon-copy{display:flex;flex-direction:column;gap:18px}
.ferrari-ribbon-title{font-family:var(--display);font-size:clamp(32px,4.5vw,56px);line-height:1;letter-spacing:-.5px;text-transform:uppercase;color:#fff;margin:0}
.ferrari-ribbon-sub{font-size:15px;line-height:1.65;color:rgba(255,255,255,.78);max-width:520px}
.ferrari-ribbon-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.marquee-item--accent{color:var(--mauve-glow) !important;font-size:26px !important;text-shadow:0 0 16px rgba(229,232,235,.45);position:relative}
.marquee-item--accent::before{content:"★ ";color:rgba(229,232,235,.85);margin-right:6px}
@media (max-width:900px){
  .ferrari-ribbon{padding:60px 20px}
  .ferrari-ribbon-inner{grid-template-columns:1fr;gap:28px}
  .ferrari-ribbon-image{aspect-ratio:16/11}
  .ferrari-ribbon-title{font-size:32px}
  .marquee-item--accent{font-size:22px !important}
}

/* ====== PRELOADER (initial paint + page transitions) ====== */
.pd-preloader{position:fixed;inset:0;z-index:9999;background:radial-gradient(circle at center,#141418 0%,#0A0A0C 70%);display:flex;align-items:center;justify-content:center;transition:opacity .5s ease,visibility .5s ease;visibility:visible;opacity:1}
.pd-preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.pd-preloader-ring{position:relative;width:140px;height:140px;display:flex;align-items:center;justify-content:center}
.pd-preloader-svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.pd-preloader-track{fill:none;stroke:rgba(229,232,235,.08);stroke-width:2}
.pd-preloader-progress{fill:none;stroke:url(#__nope__);stroke:var(--mauve-glow);stroke-width:2;stroke-linecap:round;stroke-dasharray:289;stroke-dashoffset:289;animation:preloaderSweep 1.6s cubic-bezier(.6,.02,.4,1) infinite;filter:drop-shadow(0 0 6px rgba(229,232,235,.5))}
@keyframes preloaderSweep{
  0%   { stroke-dashoffset: 289; transform: rotate(0deg); }
  50%  { stroke-dashoffset: 72;  transform: rotate(180deg); }
  100% { stroke-dashoffset: 289; transform: rotate(720deg); }
}
.pd-preloader-svg .pd-preloader-progress{transform-origin:50% 50%}
.pd-preloader-logo{width:88px;height:88px;border-radius:50%;object-fit:cover;background:#000;box-shadow:0 8px 28px rgba(0,0,0,.55);animation:preloaderLogoBreath 2.4s ease-in-out infinite alternate}
@keyframes preloaderLogoBreath{
  from{transform:scale(1);filter:drop-shadow(0 0 0 rgba(229,232,235,0))}
  to  {transform:scale(1.04);filter:drop-shadow(0 0 12px rgba(229,232,235,.35))}
}

/* ====== Main content enter animation ====== */
#main{opacity:0;transform:translateY(8px);transition:opacity .65s ease-out,transform .65s ease-out;transition-delay:.15s}
#main.is-entered{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion:reduce){
  #main{opacity:1 !important;transform:none !important;transition:none}
  .pd-preloader-progress,.pd-preloader-logo{animation:none !important}
}

/* ====== Language switcher in nav ====== */
.nav-lang{display:flex;align-items:center;gap:6px;flex-shrink:0;font-family:var(--body);font-size:11px;letter-spacing:2px;font-weight:600;text-transform:uppercase}
.nav-lang a{padding:6px 9px;border-radius:2px;color:rgba(255,255,255,.55);transition:color .25s ease,background .25s ease}
.nav-lang a:hover{color:#fff}
.nav-lang a.is-active{color:var(--mauve-glow);background:rgba(229,232,235,.08)}
.nav-lang-sep{color:rgba(255,255,255,.2);font-size:10px}
.mobile-nav-lang{display:flex;justify-content:center;align-items:center;gap:8px;margin-bottom:24px;font-family:var(--body);font-size:14px;font-weight:600;letter-spacing:3px;text-transform:uppercase}
.mobile-nav-lang a{padding:8px 16px;border:1px solid var(--chrome-3);border-radius:2px;color:rgba(255,255,255,.7);transition:all .25s ease}
.mobile-nav-lang a:hover{color:#fff;border-color:var(--mauve)}
.mobile-nav-lang a.is-active{color:var(--mauve-glow);border-color:var(--mauve);background:rgba(229,232,235,.06)}

/* ====== HELPERS ====== */
.text-center{text-align:center}
.mt-32{margin-top:32px}
.mb-16{margin-bottom:16px}

/* ====== RESPONSIVE ====== */
@media (max-width:1024px){
  .nav-links{display:none}
  .menu-toggle{display:flex}
  .nav-ticker{display:none}
  .nav-lang{font-size:10px;gap:4px}
  .nav-lang a{padding:5px 7px}
  .nav{padding:14px 20px;gap:14px}
  .hero-ticker-fixed{display:none}
  .tiers-grid{grid-template-columns:1fr;max-width:600px;margin-inline:auto}
  .footer-grid{grid-template-columns:repeat(2,1fr);gap:32px}
  .contact-strip-inner{grid-template-columns:repeat(2,1fr)}
  .contact-cards-grid{grid-template-columns:repeat(2,1fr)}
  .hours-grid{grid-template-columns:1fr}
  .car-hero{grid-template-columns:1fr;padding:100px 20px 40px}
  .bays-grid{grid-template-columns:1fr;max-width:480px;margin-inline:auto}
  .numbers-grid{grid-template-columns:repeat(2,1fr)}
  .fleet-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}
  .fleet-card.span-3,.fleet-card.span-2,.fleet-card.span-2-1,.fleet-card.span-3-1{grid-column:span 1;grid-row:span 1}
  .dj-grid{grid-template-columns:repeat(2,1fr)}
  .filter-bar{top:64px}
  .cinema{background-attachment:scroll}
}
@media (max-width:640px){
  .hero{padding:96px 16px 60px}
  .hero-logo{width:min(54vw,180px)}
  .hero-h1{font-size:clamp(28px,8vw,40px);padding:0 8px}
  .booking-band{padding:80px 20px}
  .booking-form{padding:32px 20px}
  .bf-row{grid-template-columns:1fr}
  .footer{padding:60px 20px 0}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .contact-strip-inner{grid-template-columns:1fr}
  .contact-cards-grid{grid-template-columns:1fr}
  .numbers-grid{grid-template-columns:repeat(2,1fr);gap:24px}
  .section,.tiers,.story,.numbers,.bays,.process,.fleet,.inventory,.booking-form-wrap,.tiers-light,.hours-panel,.highlights{padding:80px 0}
  .tiers-light{padding:80px 16px}
  .booking-form-wrap{padding:80px 16px}
  .container,.section-head,.fleet-head,.tiers-head,.tiers-grid,.fleet-grid,.inv-head,.inv-grid,.process-list,.story,.bays-grid,.numbers-grid,.contact-strip,.dj-grid{padding-left:20px;padding-right:20px}
  .marquee-item{font-size:18px;letter-spacing:3px}
  .marquee-item--accent{font-size:20px !important}
  .filter-bar{padding:12px 16px;top:60px}
  .car-hero{padding:96px 16px 32px}
  .car-card-img{aspect-ratio:16/11}
  .nav-logo img{width:38px;height:38px}
  .nav-logo-text strong{font-size:14px;letter-spacing:2px}
  .nav-logo-text em{font-size:9px;letter-spacing:3px}
  .filter-bar-inner{gap:12px}
  .btn{padding:14px 22px;font-size:12px;letter-spacing:1.5px;min-height:44px}
  .btn-magnet{padding:18px 28px;font-size:13px}
  .btn-magnetic-wrap{padding:24px}
  .booking-title{font-size:clamp(36px,10vw,64px) !important}
  .hero-tagline{font-size:11px;letter-spacing:3px;padding:0 8px}
  .hero-cta-row{gap:10px;width:100%;padding:0 8px}
  .hero-cta-row .btn{flex:1 1 calc(50% - 5px);min-width:0}
  .cinema-quote{font-size:clamp(28px,8vw,42px);padding:0 16px}
  .cinema{min-height:480px;background-attachment:scroll}
  .nav{padding:12px 14px;gap:8px}
  .nav-lang{gap:2px}
  .nav-lang a{padding:6px 8px;font-size:10px}
  .scroll-progress{height:3px}
  .pd-preloader-ring{width:110px;height:110px}
  .pd-preloader-logo{width:70px;height:70px}
  /* Reveals slide less aggressively on small screens for stability */
  .reveal,.reveal-up{transform:translateY(20px)}
  /* Section headings inside .section-head shouldn't break out */
  .sec-tag{font-size:10px;letter-spacing:2px}
  /* Tier cards single col on tiny screens */
  .tier{padding:28px 22px}
}
@media (max-width:380px){
  .nav-logo-text strong{font-size:13px}
  .nav-logo-text em{display:none}
  .hero-cta-row .btn{flex:1 1 100%}
  .btn-magnet{padding:16px 22px;font-size:12px;letter-spacing:2px}
  .hero-h1{font-size:clamp(24px,7.5vw,34px)}
}

/* ====== REDUCED MOTION ====== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .reveal,.reveal-up,.reveal-split{opacity:1 !important;transform:none !important}
  .reveal-split .sec-title-split .ch{transform:none !important;opacity:1 !important}
  .hero-bg{animation:none !important;transform:none !important}
  .hero-video{display:none !important}
  .hero-scanline,.hero-grid,.pulse-dot,.booking-blob,.footer-line,.marquee-track,.car-hero-photo .scanline,.scroll-progress span{animation:none !important;transition:none !important}
  .cinema{background-attachment:scroll}
  .hero-logo{opacity:1 !important;transform:none !important;animation:none !important}
  .tilt.is-tilting{transform:none !important}
}
