:root{
  --black:#0a0a0a; --ink:#111; --panel:#151413; --line:#2a2723;
  --gold:#c9a04e; --gold-hi:#e2bf72; --tan:#c2b49a; --tan-dim:#9c917d;
  --white:#f6f3ee; --muted:#b7afa2;
  --display:"Unbounded",system-ui,sans-serif;
  --logo:"Audiowide","Unbounded",system-ui,sans-serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --r:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--black);color:var(--white);font:400 16px/1.65 var(--sans);
  padding-bottom:calc(76px + env(safe-area-inset-bottom))}
img{max-width:100%;display:block}
a{color:var(--gold)}
h1,h2,h3{margin:0}
.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;
  min-height:52px;padding:0 26px;border-radius:999px;font:700 15px/1 var(--sans);
  letter-spacing:.02em;text-decoration:none;transition:transform .15s,box-shadow .2s,background .2s,color .2s;white-space:nowrap}
.btn svg{width:19px;height:19px}
.btn--gold{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:#140f05;
  box-shadow:0 8px 24px -10px rgba(201,160,78,.8)}
.btn--gold:hover{transform:translateY(-1px);box-shadow:0 12px 30px -10px rgba(201,160,78,.95)}
.btn--outline{border:1.5px solid var(--tan);color:var(--tan)}
.btn--outline:hover{background:var(--tan);color:var(--black)}
.btn--sm{min-height:40px;padding:0 18px;font-size:13.5px}
.btn:focus-visible,a:focus-visible{outline:2px solid var(--gold-hi);outline-offset:3px}

/* Nav */
.nav{position:sticky;top:0;z-index:40;background:rgba(10,10,10,.82);backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(194,180,154,.12)}
.nav__inner{display:flex;align-items:center;gap:24px;height:62px}
.nav__brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--white);
  font:400 14px/1 var(--logo);letter-spacing:.06em;text-transform:uppercase}
.nav__brand img{width:54px;height:auto}
.nav__cta{margin-left:auto}

/* Hero */
.hero{position:relative;overflow:hidden;padding:44px 0 70px;text-align:center;
  background:radial-gradient(120% 70% at 50% 0%,#1b1814 0%,var(--black) 60%)}
.hero__glow{position:absolute;inset:-20% -10% auto;height:70%;
  background:radial-gradient(40% 50% at 50% 50%,rgba(201,160,78,.16),transparent 70%);pointer-events:none}
.hero__inner{position:relative;z-index:2}
.emblem{display:flex;flex-direction:column;align-items:center;margin:0 auto;max-width:620px;color:var(--tan)}
.emblem__chev{width:62%;height:auto;display:block}
.emblem__chev--top{margin-bottom:2px;width:54%}
.emblem__chev--bottom{margin-top:6px;width:54%}
.emblem__car{width:78%;height:auto;position:relative;z-index:1;
  filter:drop-shadow(0 6px 20px rgba(201,160,78,.25));animation:drive 1.1s cubic-bezier(.2,.8,.2,1) both}
.emblem__bar{display:block;width:84%;height:4px;background:var(--tan);margin:10px 0 14px;border-radius:2px}
.emblem__bar--short{width:62%;margin:12px 0 0}
.emblem__name{font:400 clamp(19px,5.5vw,42px)/1.05 var(--logo);white-space:nowrap;letter-spacing:.04em;text-transform:uppercase;color:var(--white)}
.emblem__tag{margin:10px 0 0;font:600 clamp(11px,3.1vw,15px)/1 var(--sans);letter-spacing:.42em;
  text-transform:uppercase;color:var(--tan);padding-left:.42em}
@keyframes drive{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}
.hero__lead{max-width:520px;margin:30px auto 24px;font-size:18px;color:var(--muted)}
.hero__lead strong{color:var(--white);font-weight:600}
.hero__ctas{display:flex;flex-direction:column;gap:12px;max-width:340px;margin:0 auto}
.hero__ctas--center{margin-top:40px}
.hero__phone{margin:22px 0 0;font:600 15px/1 var(--sans);color:var(--tan);letter-spacing:.04em}
.hero__phone a{color:var(--white);text-decoration:none}
.hero__stripes{position:absolute;left:0;right:0;bottom:0;height:22px;z-index:1}
.hero__stripes span{position:absolute;left:-5%;right:-5%;transform:skewX(-35deg)}
.hero__stripes span:first-child{bottom:10px;height:8px;background:var(--gold);right:30%}
.hero__stripes span:last-child{bottom:0;height:6px;background:var(--tan);left:25%}

/* Sections */
.section{padding:72px 0}
.section--alt{background:linear-gradient(180deg,#121110,#0d0c0b)}
.eyebrow{margin:0 0 10px;font:700 12px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
.eyebrow::before{content:"";display:inline-block;width:26px;height:2px;background:var(--gold);vertical-align:middle;margin-right:10px;transform:translateY(-2px)}
.h2{font:700 clamp(28px,7vw,44px)/1.1 var(--display);letter-spacing:-.01em;text-transform:uppercase}
.section__intro{max-width:620px;color:var(--muted);margin:16px 0 0;font-size:17px}

/* Services blurb */
.section--tight{padding:48px 0}
.blurb{border:1px solid rgba(201,160,78,.35);background:rgba(201,160,78,.06);border-radius:var(--r);padding:24px 22px;position:relative;overflow:hidden}
.blurb::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--tan))}
.blurb__h{font:700 clamp(20px,5.2vw,28px)/1.15 var(--display);text-transform:uppercase}
.blurb__cols{display:grid;gap:10px;margin-top:14px}
.blurb__cols p{margin:0;color:var(--muted)}
.blurb__cols strong{display:block;color:var(--gold);font-size:13px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:2px}

/* Before & after pairs */
.pairs{display:grid;gap:30px;margin-top:28px}
.pair{margin:0}
.pair__photos{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.pair__shot{position:relative;aspect-ratio:3/4;border-radius:10px;overflow:hidden;background:#1a1816;border:1px solid var(--line)}
.pair__shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:8px;top:8px;font:800 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  padding:8px 11px;border-radius:7px;box-shadow:0 4px 14px rgba(0,0,0,.55)}
.badge--before{background:#0a0a0a;color:#fff;border:1.5px solid #fff}
.badge--after{background:var(--gold);color:#140f05;border:1.5px solid var(--gold-hi)}
.pair figcaption{margin-top:10px;font-weight:600;color:var(--tan);font-size:15px;text-align:center}

/* One-line about/booking */
.book{text-align:center}
.book p{margin:0 auto;max-width:620px;font-size:17px;color:var(--white)}
.book__ctas{display:flex;flex-direction:column;gap:12px;max-width:340px;margin:22px auto 0}

/* Footer */
.footer{position:relative;background:#070707;padding:44px 0 24px;border-top:1px solid var(--line);text-align:center}
.footer__stripe{position:absolute;top:-1px;left:0;width:55%;height:4px;background:linear-gradient(90deg,var(--gold),var(--tan))}
.footer__inner img{width:120px;height:auto;margin:0 auto}
.footer__name{margin:12px 0 0;font:400 20px/1.1 var(--logo);text-transform:uppercase;letter-spacing:.04em}
.footer__tag{margin:8px 0 16px;color:var(--tan);font-size:12px;font-weight:600;letter-spacing:.38em;text-transform:uppercase}
.footer__line{margin:0 0 6px;color:var(--muted)}
.footer__phone{font:700 20px/1.3 var(--display);color:var(--white)!important;text-decoration:none}
.footer__copy{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:#7d766b;text-align:center}

/* Sticky mobile CTA */
.mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:1.25fr 1fr;gap:10px;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(10,10,10,.92);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid rgba(201,160,78,.3)}
.mobile-cta__btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:12px;
  font:700 15px/1 var(--sans);text-decoration:none;color:var(--tan);border:1.5px solid var(--tan)}
.mobile-cta__btn svg{width:18px;height:18px}
.mobile-cta__btn--gold{background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:#140f05;border-color:transparent}

@media (min-width:640px){
  .hero__ctas,.book__ctas{flex-direction:row;max-width:none;justify-content:center}
  .blurb{padding:28px 30px}
  .blurb__cols{grid-template-columns:1fr 1fr;gap:28px}
  .pair__photos{gap:10px}
  .badge{font-size:15px;padding:9px 13px;left:12px;top:12px}
}
@media (min-width:860px){
  body{padding-bottom:0}
  .mobile-cta{display:none}
  .nav__cta{display:flex;margin-left:auto}
  .hero{padding:64px 0 96px}
  .section{padding:80px 0}
  .section--tight{padding:56px 0}
  .pairs{grid-template-columns:1fr 1fr;gap:40px 32px;margin-top:36px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
