/* Prestige v35 refinement layer
   Purpose: tighten type, spacing, hierarchy and conversion behavior without changing URLs or brand identity. */
:root{
  --v35-r-sm:6px;
  --v35-r-md:12px;
  --v35-r-lg:18px;
  --v35-section:88px;
  --v35-section-mobile:58px;
  --v35-copy:#aeb8c7;
  --v35-muted:#8995a6;
}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;line-height:1.62;letter-spacing:0}
h1,h2,h3,h4,.disp{font-family:'Saira Condensed','Arial Narrow',sans-serif;font-weight:800;letter-spacing:-.015em}
p,li,a,button,input,textarea,select,label,summary{font-family:'Inter',system-ui,sans-serif}
.mono,.eyebrow,.note,.disclaim,.lane-addr,.foot-bot,.stat .lbl,.svc .n,.pcard .n,.qcard .k{font-family:'Inter',system-ui,sans-serif!important}
.eyebrow{font-size:.74rem!important;font-weight:700;letter-spacing:.18em!important;line-height:1.35}
.note,.disclaim{font-size:.82rem!important;line-height:1.5}
.btn{font-family:'Inter',system-ui,sans-serif!important;font-size:.84rem;font-weight:700;letter-spacing:.035em;border-radius:var(--v35-r-sm);min-height:44px}
.blk{padding-top:var(--v35-section);padding-bottom:var(--v35-section)}
.sec-head{max-width:780px}
.sec-head h2{line-height:1.02;margin-top:10px}
.sec-head p{color:var(--v35-copy);max-width:68ch}

/* Navigation: fewer choices, readable type, free wash stays dominant. */
.nav-in{min-height:76px}
.nav-links{margin-left:30px!important;gap:7px!important}
.nav-links>li>a{font-family:'Inter',system-ui,sans-serif!important;font-size:.79rem!important;font-weight:700;letter-spacing:.035em!important;padding:10px 11px!important}
.nav-links .menu a{font-family:'Inter',system-ui,sans-serif!important;font-size:.83rem!important;line-height:1.35}
.menu.mega .mg-h{font-family:'Inter',system-ui,sans-serif!important;font-size:.65rem!important;font-weight:700;letter-spacing:.12em!important}
.nav-cta{gap:9px}
.nav-cta .btn{font-size:.76rem!important;padding:10px 13px!important}
.nav-cta .btn-free-xl{padding:11px 17px!important;box-shadow:0 0 0 1px rgba(231,178,76,.2),0 10px 30px -12px rgba(231,178,76,.8)}
.nav-search-btn{margin-left:8px}
@media(min-width:1450px){.nav-links>li>a{font-size:.83rem!important}.nav-cta .btn{font-size:.79rem!important}}

/* Hero hierarchy */
body[data-route="home"] .hero{min-height:78vh}
body[data-route="home"] .hero-in{max-width:900px}
body[data-route="home"] .hero h1{font-size:clamp(2.75rem,5.1vw,5rem);max-width:16ch;line-height:.98;margin-top:15px}
body[data-route="home"] .hero p.sub{font-size:clamp(1rem,1.35vw,1.14rem);line-height:1.62;max-width:68ch;color:#c1cad6}
body[data-route="home"] .hero .spec{gap:8px 18px}
body[data-route="home"] .hero .spec span{font-family:'Inter',system-ui,sans-serif!important;font-size:.72rem!important;font-weight:600;letter-spacing:.08em!important}
body[data-route="home"] .hero-cta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px}
body[data-route="home"] .hero-free{font-size:.98rem!important;padding:17px 30px!important;min-height:56px;box-shadow:0 12px 40px -15px rgba(231,178,76,.9),0 0 0 1px rgba(255,255,255,.12) inset}
body[data-route="home"] .hero-price{padding:16px 26px!important;min-height:54px}
.hero-links{display:flex;align-items:center;gap:18px;margin-left:4px}
.hero-links a{color:#c4ccd8;font-size:.82rem;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:2px}
.hero-links a:hover{color:var(--gold);border-color:var(--gold)}

/* Trust strip is proof, not another wall of content. */
.trust2{padding:16px 0!important}
.trust2-in{gap:10px 24px!important;justify-content:center}
.trust2 .ti{font-family:'Inter',system-ui,sans-serif!important;font-size:.72rem!important;font-weight:650;letter-spacing:.025em!important}
.trustbar{padding:42px 0!important}
.trustbar-h{font-family:'Inter',system-ui,sans-serif!important;font-size:.75rem!important;font-weight:700!important;letter-spacing:.15em!important;margin-bottom:24px!important}
.trust-grid{gap:18px!important}
.trust-item{border-radius:var(--v35-r-md)!important}
.trust-txt b{font-family:'Inter',system-ui,sans-serif!important;font-size:.92rem!important}
.trust-txt span{font-size:.79rem!important;line-height:1.45!important;color:var(--v35-muted)!important}

/* New consolidated service discovery */
.v35-service-hub{padding-top:72px}
.v35-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:34px}
.v35-service-card{position:relative;display:block;aspect-ratio:1.27/1;overflow:hidden;border:1px solid var(--line);border-radius:var(--v35-r-md);text-decoration:none;background:var(--ink2);isolation:isolate}
.v35-service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .35s ease;z-index:-2}
.v35-service-card:nth-child(3) img{object-position:center 62%}
.v35-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,12,.06) 18%,rgba(5,8,12,.88) 88%);z-index:-1;transition:background .25s ease}
.v35-card-copy{position:absolute;left:0;right:0;bottom:0;padding:24px 24px 22px;display:flex;flex-direction:column;align-items:flex-start}
.v35-card-copy small{font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.v35-card-copy strong{font-family:'Saira Condensed',sans-serif;font-size:1.65rem;line-height:1;text-transform:uppercase;color:#fff}
.v35-card-copy em{font-style:normal;color:#b6c0cd;font-size:.82rem;line-height:1.4;margin-top:7px}
.v35-card-copy b{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--gold);margin-top:15px}
.v35-service-card:hover{border-color:rgba(231,178,76,.8);box-shadow:0 24px 50px -28px rgba(0,0,0,.9)}
.v35-service-card:hover img{transform:scale(1.035);filter:saturate(1.06) contrast(1.02)}
.v35-service-card:hover .v35-scrim{background:linear-gradient(180deg,rgba(5,8,12,0) 10%,rgba(5,8,12,.92) 88%)}
.v35-more{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:20px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--v35-r-md);background:rgba(255,255,255,.018)}
.v35-more>span{font-size:.69rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--steel);margin-right:6px}
.v35-more a{font-size:.76rem;font-weight:650;color:#c8d0dc;text-decoration:none;padding:7px 10px;border-radius:6px;background:rgba(255,255,255,.035)}
.v35-more a:hover{color:var(--gold);background:rgba(231,178,76,.08)}

/* Locations */
.loc-grid.two{max-width:1080px!important;gap:18px}
.loc-card{border-radius:var(--v35-r-md)!important;overflow:hidden}
.loc-card .body{padding:28px!important}
.loc-card .flagband{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}
.loc-card .flagband span{font-family:'Inter',system-ui,sans-serif!important;font-size:.69rem!important;font-weight:650!important;letter-spacing:.025em!important;padding:7px 10px!important;border-radius:6px!important}
.lane-addr{font-size:.76rem!important;letter-spacing:.01em!important}

/* Recent builds get priority as visual proof. */
.flagship,.build{border-radius:var(--v35-r-md)!important;overflow:hidden}
.builds{gap:15px!important}
.b-body{padding:22px!important}
.b-svc span{font-family:'Inter',system-ui,sans-serif!important;font-size:.68rem!important;letter-spacing:.02em!important;border-radius:5px!important}

/* Wash/membership: free wash remains the visual winner. */
.hpk,.memcard,.wpack{border-radius:var(--v35-r-md)!important}
.hpk{padding:28px 24px!important}
.hpk-sub,.hpk .bf{font-size:.78rem!important}
.v35-free-card{position:relative;border-color:rgba(231,178,76,.65)!important;background:radial-gradient(circle at 90% 10%,rgba(231,178,76,.14),transparent 38%),var(--ink2)!important;box-shadow:0 24px 55px -35px rgba(231,178,76,.9)}
.v35-free-card .btn{font-size:.9rem!important;padding:15px 22px!important}

/* App should support the wash program, not dominate the site. */
.v35-app-compact{padding-top:58px!important;padding-bottom:58px!important}
.v35-app-compact .appshow{max-width:980px;margin:auto;min-height:0!important}
.v35-app-compact .phone-wrap{max-width:270px!important}
.v35-app-compact .appbody h2{font-size:2.25rem!important}
.v35-app-compact .appfeats{display:grid!important;grid-template-columns:1fr 1fr;gap:8px 20px!important;margin-top:18px!important}
.v35-app-compact .appfeats li{font-size:.82rem!important}
.v35-app-compact .appnote{font-size:.78rem!important}
.v35-experience{padding-top:58px!important;padding-bottom:58px!important}

/* Popup becomes a delayed non-blocking lead card instead of a 1.4s takeover. */
.fw-pop{align-items:flex-end!important;justify-content:flex-end!important;padding:24px!important;background:transparent!important;pointer-events:none!important}
.fw-pop-card{pointer-events:auto!important;width:min(390px,calc(100vw - 32px))!important;border-radius:16px!important;box-shadow:0 30px 80px -20px rgba(0,0,0,.95),0 0 0 1px rgba(231,178,76,.16)!important}
.fw-pop-h{font-size:2.25rem!important}
.fw-pop-sub{font-size:.9rem!important}

/* Normalize card geometry and micro typography that had drifted page-to-page. */
.feat,.price,.steps .s,.faq details,.qcard,.pcard,.cho,.callout,.cshow,.appshow,.social-grid>div{border-radius:var(--v35-r-md)!important}
.faq summary{font-family:'Inter',system-ui,sans-serif!important;font-size:.98rem!important}
.chips span{font-family:'Inter',system-ui,sans-serif!important;font-size:.8rem!important;letter-spacing:.02em!important;border-radius:6px!important;padding:9px 12px!important}
.svc .go,.pcard .go,.cho .go{font-family:'Inter',system-ui,sans-serif!important;font-size:.74rem!important}

/* Service hero copy: a little more editorial, less compressed. */
.shero h1{line-height:.98!important}
.shero p{line-height:1.6!important}
.subnav a{font-family:'Inter',system-ui,sans-serif!important;font-size:.75rem!important;font-weight:650!important;border-radius:6px!important}

/* Mobile is intentionally redesigned rather than just stacked. */
@media(max-width:1240px){
  .nav-in{min-height:68px}
  .nav-links>li>a{font-size:.92rem!important;padding:10px 0!important}
  .nav-links .menu a{font-size:.87rem!important}
}
@media(max-width:900px){
  :root{--v35-section:var(--v35-section-mobile)}
  .blk{padding-top:var(--v35-section-mobile)!important;padding-bottom:var(--v35-section-mobile)!important}
  .sec-head{margin-bottom:0!important}
  .eyebrow{font-size:.7rem!important;letter-spacing:.15em!important}
  body[data-route="home"] .hero{min-height:auto;padding-top:0}
  body[data-route="home"] .hero-in{padding:48px 0 42px!important}
  body[data-route="home"] .hero h1{font-size:clamp(2.55rem,12vw,3.75rem);max-width:12ch}
  body[data-route="home"] .hero p.sub{font-size:.98rem;line-height:1.55}
  body[data-route="home"] .hero .spec{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
  body[data-route="home"] .hero .spec span{font-size:.66rem!important}
  body[data-route="home"] .hero-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
  body[data-route="home"] .hero-cta .btn{width:auto!important}
  body[data-route="home"] .hero-free{grid-column:1/-1;font-size:.95rem!important;min-height:56px}
  .hero-links{grid-column:1/-1;justify-content:center;margin:2px 0 0;gap:20px}
  .hero-links a{font-size:.78rem}
  .trust2-in{justify-content:flex-start!important;overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:2px;scrollbar-width:none}
  .trust2-in::-webkit-scrollbar{display:none}
  .trust2 .ti{flex:0 0 auto}
  .v35-service-hub{padding-top:52px!important}
  .v35-service-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}
  .v35-service-card{aspect-ratio:.93/1}
  .v35-card-copy{padding:17px 15px 15px}
  .v35-card-copy strong{font-size:1.28rem}
  .v35-card-copy em{font-size:.72rem;line-height:1.35}
  .v35-card-copy b{font-size:.67rem;margin-top:10px}
  .v35-more{justify-content:flex-start;padding:14px;gap:6px}
  .v35-more>span{width:100%;margin:0 0 4px}
  .v35-more a{font-size:.7rem;padding:6px 8px}
  .loc-card .body{padding:22px!important}
  .loc-card .flagband span:nth-child(n+5){display:none}
  .hpk{padding:24px 20px!important}
  .v35-app-compact .appshow{grid-template-columns:1fr!important;text-align:left}
  .v35-app-compact .phone-wrap{display:none!important}
  .v35-app-compact .appfeats{grid-template-columns:1fr 1fr!important}
  .v35-app-compact .qrset{display:none!important}
  .v35-app-compact .appnote{display:none!important}
  .v35-app-compact .applinks{width:100%;display:grid!important;grid-template-columns:1fr 1fr!important}
  .sticky-cta{grid-template-columns:.78fr .78fr 1.35fr .78fr!important;padding:7px 7px calc(7px + env(safe-area-inset-bottom))!important}
  .sticky-cta a,.sticky-cta button{font-family:'Inter',system-ui,sans-serif!important;font-size:.66rem!important;font-weight:700!important;min-height:50px}
  .sticky-cta .gold{box-shadow:0 6px 22px -8px rgba(231,178,76,.95)}
  .fw-pop{padding:12px 12px calc(82px + env(safe-area-inset-bottom))!important;justify-content:center!important}
  .fw-pop-card{width:100%!important;max-width:430px!important}
  .trust-grid{grid-template-columns:1fr!important}
  .trust-item{padding:16px!important}
}
@media(max-width:560px){
  .v35-service-grid{grid-template-columns:1fr 1fr}
  .v35-service-card{min-height:238px}
  .v35-card-copy em{display:none}
  .v35-app-compact .appfeats{grid-template-columns:1fr!important}
  .v35-app-compact .applinks{grid-template-columns:1fr!important}
}
@media(max-width:390px){
  .v35-service-grid{grid-template-columns:1fr}
  .v35-service-card{aspect-ratio:1.25/1;min-height:0}
  .v35-card-copy em{display:block}
}
