:root{--blue:#25a3ed;--deep:#0d537c;--navy:#011c39;--cta:#2260ff;--cyan:#00b6f0;--gold:#ffb34b;--ink:#31383e;--muted:#68727c;--mist:#f3f7fa;--white:#fff;--body:"Open Sans",sans-serif;--heading:"Nunito Sans",sans-serif;--shadow:0 18px 60px rgba(1,28,57,.1);--radius:28px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:#fff;color:var(--ink);font-family:var(--body);line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none}.shell{width:min(1160px,92vw);margin:auto}.eyebrow{margin-bottom:12px;color:var(--blue);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:13px 26px;border:1px solid transparent;border-radius:999px;font-weight:700;transition:.18s}.button:hover,.button:focus-visible{transform:translateY(-2px);outline:none}.button--primary{background:linear-gradient(135deg,var(--cta),var(--cyan));color:#fff;box-shadow:0 12px 26px rgba(34,96,255,.3)}.button--outline{border-color:rgba(13,83,124,.28);color:var(--deep)}.button--outline-light{border-color:rgba(255,255,255,.5);color:#fff}
.pricing-hero{position:relative;min-height:570px;display:grid;place-items:center;overflow:hidden;background:var(--navy);color:#fff}.pricing-hero__image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,28,57,.94),rgba(1,28,57,.62)),var(--pricing-hero-photo) center 57%/cover no-repeat;transform:scale(1.02)}.pricing-hero__content{position:relative;width:min(1160px,92vw);padding:170px 0 90px}.pricing-hero h1{max-width:760px;margin-bottom:18px;font:900 clamp(2.8rem,6vw,5.6rem)/.98 var(--heading);letter-spacing:-.045em}.pricing-hero__content>p:not(.eyebrow){max-width:630px;margin-bottom:30px;color:rgba(255,255,255,.82);font-size:clamp(1rem,2vw,1.2rem)}
.vehicle-picker{position:relative;z-index:2;margin-top:-48px}.vehicle-picker__inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;padding:30px 34px;border:1px solid rgba(13,83,124,.1);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.vehicle-picker h2,.section-heading h2,.specialty h2,.final-cta h2{font-family:var(--heading);font-weight:900;letter-spacing:-.025em;line-height:1.1}.vehicle-picker h2{margin-bottom:6px;font-size:clamp(1.75rem,3vw,2.35rem)}.vehicle-picker__inner>div:first-child>p:last-child{color:var(--muted)}.vehicle-options{display:inline-flex;padding:6px;border-radius:999px;background:var(--mist)}.vehicle-options label{cursor:pointer}.vehicle-options input{position:absolute;opacity:0}.vehicle-options span{display:flex;min-height:48px;align-items:center;justify-content:center;padding:10px 22px;border-radius:999px;color:var(--muted);font-weight:700;transition:.18s}.vehicle-options input:checked+span{background:var(--cta);color:#fff;box-shadow:0 8px 22px rgba(34,96,255,.28)}.vehicle-options input:focus-visible+span{outline:3px solid rgba(37,163,237,.38)}
.packages{padding:110px 0 100px;background:linear-gradient(#fff,#f7fafc)}.section-heading{max-width:760px;margin:0 auto 46px;text-align:center}.section-heading h2{margin-bottom:14px;font-size:clamp(2.25rem,4vw,3.5rem)}.section-heading>p:last-child{color:var(--muted);font-size:1.05rem}.package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:26px}.package-card{overflow:hidden;border:1px solid rgba(13,83,124,.11);border-radius:var(--radius);background:#fff;box-shadow:0 14px 45px rgba(1,28,57,.07)}.package-card.featured{border:2px solid rgba(37,163,237,.65);box-shadow:0 22px 65px rgba(13,83,124,.15)}.package-media{position:relative;height:270px;display:flex;align-items:flex-end;padding:28px;overflow:hidden;background:linear-gradient(180deg,transparent 24%,rgba(1,18,34,.9)),var(--image) center/cover no-repeat;color:#fff}.package-media>div{position:relative;z-index:1}.package-media p{color:rgba(255,255,255,.72);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.package-media h3{font:900 clamp(1.9rem,3vw,2.6rem)/1 var(--heading)}.badge{position:absolute;z-index:1;top:22px;right:22px;padding:8px 15px;border-radius:999px;background:var(--gold);color:var(--navy);font-size:.76rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.package-body{padding:28px}.package-summary{display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px;padding-bottom:22px;border-bottom:1px solid #dce6ec}.package-summary span{display:block;margin-bottom:4px;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.package-summary strong{font-family:var(--heading)}.price{text-align:right}.price strong{display:flex;justify-content:flex-end;align-items:flex-start;color:var(--deep);font-size:2.65rem;line-height:.9}.price small{margin:2px 2px 0 0;font-size:1rem}.description{margin:22px 0;color:var(--muted)}.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.features.one{grid-template-columns:1fr}.features h4{margin-bottom:10px;font:800 1.15rem var(--heading)}.features ul{display:grid;gap:8px}.features li{position:relative;padding-left:24px;font-size:.92rem}.features li:before{content:"✓";position:absolute;left:0;top:1px;display:grid;width:17px;height:17px;place-items:center;border-radius:50%;background:rgba(37,163,237,.14);color:var(--deep);font-size:.7rem;font-weight:900}.package-meta{display:flex;justify-content:space-between;margin:24px 0 18px;padding-top:18px;border-top:1px solid #e4ecf1;color:var(--muted);font-size:.9rem}.package-meta strong{color:var(--ink)}.package-button{width:100%}.pricing-note{max-width:760px;margin:34px auto 0;color:var(--muted);font-size:.88rem;text-align:center}
.addons{padding:100px 0;background:var(--navy);color:#fff}.section-heading.light>p:last-child{color:rgba(255,255,255,.67)}.addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.addon-card{position:relative;overflow:hidden;padding:34px;border:1px solid rgba(255,255,255,.13);border-radius:var(--radius);background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035))}.addon-card>span{position:absolute;top:10px;right:20px;color:rgba(255,255,255,.06);font:900 6rem/1 var(--heading)}.addon-card h3{position:relative;margin-bottom:22px;font:800 1.6rem var(--heading)}.addon-card ul{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.addon-card li{padding-bottom:9px;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.78)}
.specialty{padding:105px 0}.specialty-layout{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px}.specialty h2{margin-bottom:18px;font-size:clamp(2.25rem,4vw,3.5rem)}.specialty-layout>div:first-child>p:not(.eyebrow){margin-bottom:28px;color:var(--muted)}.specialty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.specialty-grid div{display:grid;min-height:145px;place-items:center;align-content:center;gap:12px;padding:20px 12px;border:1px solid #e1e9ee;border-radius:18px;background:var(--mist);color:var(--deep);font-weight:800;text-align:center}.specialty-grid img{width:58px;height:58px;object-fit:contain}.final-cta{padding:68px 0;background:linear-gradient(130deg,var(--deep),#087ab4);color:#fff}.final-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.final-cta h2{max-width:670px;font-size:clamp(2rem,4vw,3.25rem)}.final-actions{display:flex;gap:12px;flex-shrink:0}
footer{padding:58px 0 20px;background:#071b2f;color:rgba(255,255,255,.72)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:50px}.footer-grid img{width:220px;margin-bottom:18px}.footer-grid h3{margin-bottom:12px;color:#fff;font-family:var(--heading)}.footer-grid a{display:block;width:fit-content;margin-bottom:8px}.footer-bottom{width:min(1160px,92vw);margin:42px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:.82rem;text-align:center}
@media(max-width:900px){.vehicle-picker__inner{grid-template-columns:1fr}.vehicle-options{width:100%}.vehicle-options label{flex:1}.package-grid{grid-template-columns:1fr}.specialty-layout{grid-template-columns:1fr}.final-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.pricing-hero{min-height:540px}.pricing-hero__image{background-position:63% center}.pricing-hero__content{padding:130px 0 72px}.pricing-hero h1{font-size:clamp(2.7rem,14vw,4rem)}.vehicle-picker{margin-top:-30px}.vehicle-picker__inner{gap:24px;padding:25px 20px;border-radius:22px}.vehicle-options{display:grid;grid-template-columns:1fr;border-radius:18px}.vehicle-options span{min-height:46px}.packages{padding:82px 0 76px}.section-heading{margin-bottom:32px}.package-media{height:225px;padding:22px}.package-body{padding:22px}.price strong{font-size:2.25rem}.features{grid-template-columns:1fr;gap:20px}.addons,.specialty{padding:78px 0}.addon-grid{grid-template-columns:1fr}.addon-card{padding:28px 22px}.addon-card ul{grid-template-columns:1fr}.specialty-grid{grid-template-columns:repeat(2,1fr)}.final-actions{width:100%;flex-direction:column}.final-actions .button{width:100%}.footer-grid{grid-template-columns:1fr;gap:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}

/* Static package pricing keeps every vehicle price visible at a glance. */
.packages{padding-top:100px}
.package-pricing{padding-bottom:20px;border-bottom:1px solid #dce6ec}
.package-pricing>span{display:block;margin-bottom:10px;color:var(--deep);font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.package-pricing dl{margin:0}
.package-pricing dl>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 0;border-top:1px solid #e8eef2}
.package-pricing dt{color:var(--muted);font-size:.9rem;font-weight:700;text-transform:uppercase}
.package-pricing dd{margin:0;color:var(--ink);font:900 1.05rem var(--heading)}

@media(max-width:720px){.packages{padding-top:76px}.package-pricing dl>div{padding:9px 0}.package-pricing dt{font-size:.82rem}}

.addon-list{position:relative;margin:0}
.addon-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.addon-list>div:last-child{border-bottom:0}
.addon-list dt{color:#fff;font-size:.95rem;font-weight:700}
.addon-list small{display:block;margin-top:3px;color:rgba(255,255,255,.5);font-size:.78rem;font-weight:600}
.addon-list dd{margin:0;color:var(--gold);font:900 1.08rem var(--heading)}

@media(max-width:720px){.addon-list>div{padding:13px 0}.addon-list dt{font-size:.9rem}}

/* A denser mobile rhythm keeps the package menu easy to scan. */
@media(max-width:720px){
  .pricing-hero{min-height:420px}
  .pricing-hero__content{padding:100px 0 38px}
  .pricing-hero__content .eyebrow{margin-bottom:8px;font-size:.66rem;letter-spacing:.15em}
  .pricing-hero h1{max-width:340px;margin-bottom:12px;font-size:clamp(2.35rem,11.5vw,3.05rem);line-height:.96}
  .pricing-hero__content>p:not(.eyebrow){max-width:350px;margin-bottom:18px;font-size:.9rem;line-height:1.45}
  .pricing-hero .button{min-height:44px;padding:10px 20px;font-size:.9rem}
  .packages{padding:54px 0 66px}
  .section-heading{margin-bottom:24px}
  .section-heading h2{margin-bottom:9px;font-size:2rem}
  .section-heading>p:last-child{font-size:.92rem;line-height:1.5}
  .package-grid{gap:30px}
  .package-card{border-radius:21px}
  .package-media{height:165px;padding:18px}
  .package-media p{font-size:.66rem}
  .package-media h3{font-size:1.65rem}
  .badge{top:14px;right:14px;padding:6px 11px;font-size:.65rem}
  .package-body{padding:18px}
  .package-pricing{padding-bottom:13px}
  .package-pricing>span{margin-bottom:6px;font-size:.67rem}
  .package-pricing dl>div{padding:6px 0}
  .package-pricing dt{font-size:.76rem}
  .package-pricing dd{font-size:.95rem}
  .description{margin:14px 0;font-size:.84rem;line-height:1.5}
  .features{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .features.one>div ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px}
  .features h4{margin-bottom:7px;font-size:1rem}
  .features ul{gap:6px}
  .features li{padding-left:20px;font-size:.76rem;line-height:1.35}
  .features li:before{width:15px;height:15px;font-size:.62rem}
  .package-meta{margin:16px 0 13px;padding-top:13px;font-size:.8rem}
  .package-button{min-height:44px;padding:10px 18px;font-size:.88rem}
}

/* Responsive photo derivatives; originals retained in images/. */
:root {
  --pricing-hero-photo: url("../images/optimized/pricing-hero-1536.webp");
  --wash-photo: url("../images/optimized/wash-detail-1600.webp");
  --full-photo: url("../images/optimized/full-detail-1200.webp");
}
@media (max-width: 720px) {
  :root {
    --pricing-hero-photo: url("../images/optimized/pricing-hero-960.webp");
    --wash-photo: url("../images/optimized/wash-detail-960.webp");
    --full-photo: url("../images/optimized/full-detail-800.webp");
  }
}

/* Core accessibility and unenhanced navigation. */
/* Preserve aspect ratio while intrinsic dimensions reserve loading space. */
img { height: auto; }
.site-nav-fallback[hidden] { display: none !important; }
.site-nav-fallback {
  position: relative;
  z-index: 1001;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 22px;
  padding: 18px;
  background: #fff;
  color: #0d537c;
  font: 700 1rem/1.5 "Open Sans", sans-serif;
}
.site-nav-fallback a { padding: 8px; text-decoration: underline; }
.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 2000;
  padding: 12px 18px;
  background: #fff;
  color: #011c39;
  transform: translateY(-160%);
}
.skip-link:focus { transform: none; }
a:focus-visible, button:focus-visible, summary:focus-visible,
input:focus-visible, textarea:focus-visible {
  outline: 3px solid #0d537c !important;
  outline-offset: 4px;
  box-shadow: 0 0 0 6px #fff !important;
}
#main-content { scroll-margin-top: 140px; }
@media (max-width: 720px) {
  #main-content { scroll-margin-top: 70px; }
}
