
:root{
  --night:#0b0d12; --asphalt:#14171f; --asphalt2:#1b1f2a; --line:#2a2f3c;
  --yellow:#ffd400; --yellow-d:#e6bf00; --white:#ffffff; --muted:#aab1c0;
  --red:#ff1f2d; --blue:#1f6bff; --navy:#16215c; --green:#1f5e45;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--night);color:var(--white);font-family:Inter,system-ui,sans-serif;line-height:1.5;overflow-x:hidden}
a{color:inherit}
img,svg{display:block;max-width:100%}
.wrap{width:min(1160px,100% - 32px);margin-inline:auto}
.display{font-family:Anton,Impact,sans-serif;letter-spacing:.5px;text-transform:uppercase;line-height:1}
.brush{font-family:"Permanent Marker",cursive}
.y{color:var(--yellow)}

/* ---------- header ---------- */
header{position:sticky;top:0;z-index:50;background:rgba(11,13,18,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;height:76px}
.brand{display:flex;align-items:center;text-decoration:none}
.brand img{height:58px;width:auto}
.nav-links{display:flex;gap:26px;font-weight:600;font-size:.95rem}
.nav-links a{text-decoration:none;color:var(--muted)}
.nav-links a:hover{color:var(--white)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:900;text-decoration:none;border-radius:12px;padding:14px 22px;border:0;cursor:pointer;font-size:1rem;font-family:inherit;transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-2px)}
.btn-y{background:var(--yellow);color:#111}
.btn-y:hover{background:#ffe04a}
.btn-o{background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.35)}
.btn-o:hover{border-color:var(--white)}
.btn-sm{padding:10px 16px;font-size:.95rem}
.btn svg{width:20px;height:20px}
@media (max-width:860px){.nav-links{display:none}}

/* ---------- serving strip ---------- */
.serving{background:var(--yellow);color:#111;font-weight:800;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}
.serving .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 16px;padding:9px 0;text-align:center}
.serving .towns{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px}
.serving .towns span::after{content:"›";margin-left:12px;opacity:.6}
.serving .towns span:last-child::after{content:""}
.serving .pill{background:#111;color:var(--yellow);padding:3px 10px;border-radius:99px}

/* ---------- HERO ---------- */
.hero{position:relative;overflow:hidden;isolation:isolate;padding:56px 0 0;background:radial-gradient(90% 60% at 50% 0%,#1d2130 0%,#07080c 70%)}
.wash{position:absolute;inset:0;z-index:-1;pointer-events:none;mix-blend-mode:screen}
.wash.r{background:radial-gradient(60% 70% at 0% 100%,rgba(255,31,45,.55),transparent 70%);animation:washR 1.6s infinite}
.wash.b{background:radial-gradient(60% 70% at 100% 100%,rgba(31,107,255,.6),transparent 70%);animation:washB 1.6s infinite}
@keyframes washR{0%,6%,13%,19%{opacity:1}3%,10%,16%,100%{opacity:.25}}
@keyframes washB{0%,49%{opacity:.25}50%,56%,63%,69%{opacity:1}53%,60%,66%,100%{opacity:.25}}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-bottom:48px}
.hero-logo img{width:100%;max-width:560px;filter:drop-shadow(0 12px 30px rgba(0,0,0,.6))}
.hero-logo .towns{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:10px;font-weight:800;font-size:.95rem;letter-spacing:.5px;text-transform:uppercase;color:#e9ecf2;max-width:560px;justify-content:center}
.hero-logo .towns span::after{content:"›";color:var(--yellow);margin-left:12px}
.hero-logo .towns span:last-child::after{content:""}
.hero h1{font-size:clamp(3.6rem,9vw,7rem);line-height:.9;margin:6px 0 4px;text-shadow:0 6px 30px rgba(0,0,0,.8);transform:rotate(-3deg);transform-origin:left}
.hero h2{font-size:clamp(1.9rem,4.4vw,3.2rem);color:var(--yellow);transform:rotate(-3deg);transform-origin:left;margin-bottom:22px}
.hero p.lead{font-size:1.12rem;color:#dfe3ec;max-width:540px;margin-bottom:24px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.cta-row .btn-y{font-size:1.2rem;padding:17px 24px}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.badge{display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 12px;font-weight:700;font-size:.9rem}
.badge svg{width:18px;height:18px;color:var(--yellow)}
/* DWI band with real light bars */
.dwi-band{position:relative;height:clamp(300px,34vw,420px);display:grid;place-items:center;overflow:hidden;border-top:3px solid var(--yellow);border-bottom:3px solid var(--yellow);background:#000}
.dwi-band .siren{position:absolute;top:0;bottom:0;width:52%;object-fit:cover;height:100%}
.dwi-band .siren.l{left:0;object-position:right center;-webkit-mask:linear-gradient(90deg,#000 55%,transparent);mask:linear-gradient(90deg,#000 55%,transparent);animation:flashR 1.6s infinite}
.dwi-band .siren.rt{right:0;object-position:left center;-webkit-mask:linear-gradient(270deg,#000 55%,transparent);mask:linear-gradient(270deg,#000 55%,transparent);animation:flashB 1.6s infinite}
@keyframes flashR{0%,6%,13%,19%{filter:brightness(1.35) saturate(1.2)}3%,10%,16%,100%{filter:brightness(.55)}}
@keyframes flashB{0%,49%{filter:brightness(.55)}50%,56%,63%,69%{filter:brightness(1.35) saturate(1.2)}53%,60%,66%,100%{filter:brightness(.55)}}
.dwi-band .shade{position:absolute;inset:0;background:radial-gradient(38% 80% at 50% 50%,rgba(0,0,0,.82),transparent 75%)}
.dwi-text{position:relative;text-align:center;padding:0 16px}
.dwi-text .dwi{font-size:clamp(5rem,13vw,9.5rem);color:var(--red);line-height:.85;text-shadow:0 0 40px rgba(255,31,45,.55),0 6px 0 #000}
.dwi-text .cost{font-family:Anton,Impact,sans-serif;font-size:clamp(1.8rem,4.5vw,3.2rem);text-transform:uppercase;text-shadow:0 4px 16px #000}
.dwi-text .cost b{color:var(--red);font-weight:400}
.dwi-text .extra{font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:clamp(1.05rem,2.4vw,1.7rem);letter-spacing:.5px;color:#fff;text-shadow:0 3px 12px #000;margin:2px 0 6px}
.dwi-text .extra .nb>span{color:var(--red);padding:0 2px}
.dwi-text .decide{font-size:clamp(1.8rem,4.2vw,3rem);text-shadow:0 4px 16px #000;border-bottom:5px solid var(--red);display:inline-block;padding:0 10px;transform:rotate(-2deg)}
.dwi-text .vs{margin-top:14px;font-weight:800;color:#e9ecf2;text-shadow:0 2px 10px #000}
.dwi-text .vs b{color:var(--yellow)}
@media (max-width:700px){.dwi-band .shade{background:radial-gradient(90% 75% at 50% 50%,rgba(0,0,0,.82),rgba(0,0,0,.35) 80%)}}
@media (prefers-reduced-motion:reduce){.wash,.dwi-band .siren{animation:none!important}}
@media (max-width:900px){.hero-inner{grid-template-columns:1fr;text-align:left}.hero-logo{display:flex;flex-direction:column;align-items:center}}

/* ---------- sections ---------- */
section{padding:90px 0}
.eyebrow{font-weight:800;text-transform:uppercase;letter-spacing:2px;color:var(--yellow);font-size:.85rem;margin-bottom:10px}
.sec-title{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:14px}
.sec-sub{color:var(--muted);font-size:1.1rem;max-width:680px}

/* ---------- story ---------- */
.story{background:linear-gradient(180deg,#fff6df 0%,#ffffff 40%);color:#14171f}
.story .eyebrow{color:#b8860b}
.story-top{display:grid;grid-template-columns:1.4fr .8fr;gap:48px;align-items:center}
.story-p{font-size:1.12rem;color:#3a3f4c;margin-bottom:14px;max-width:640px}
.story-p b{color:#14171f}
.tower{margin:0;background:#fff;padding:12px 12px 16px;border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.18);transform:rotate(2deg);max-width:300px;justify-self:center}
.tower img{width:100%;border-radius:8px}
.tower figcaption{font-family:"Permanent Marker",cursive;font-size:1rem;margin-top:10px;text-align:center;color:#14171f}
.three8{margin-top:70px;text-align:center}
.three8 h3{font-size:clamp(2rem,4.5vw,3.2rem);font-weight:400}
.three8 h3 span{color:#b8860b}
.three8-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
.e8{background:#14171f;color:#fff;border-radius:20px;padding:26px 22px;border-bottom:6px solid var(--yellow)}
.e8-vis{height:120px;display:grid;place-items:center;margin-bottom:14px}
.e8-vis img{max-height:118px;width:auto}
.shield-mini{width:96px;height:106px;background:#fff;color:#000;font-family:Anton,Impact,sans-serif;font-size:4.2rem;display:grid;place-items:center;clip-path:path("M8 10 Q48 -4 88 10 L92 34 Q96 74 48 106 Q0 74 4 34 Z");padding-top:6px;box-shadow:inset 0 0 0 6px #000}
.num{font-family:Anton,Impact,sans-serif;font-size:clamp(1.9rem,3vw,2.5rem);letter-spacing:1px;color:#fff}
.num span{color:var(--yellow);font-size:1.35em}
.e8-label{font-family:Anton,Impact,sans-serif;font-size:1.6rem;text-transform:uppercase;color:var(--yellow);margin-bottom:6px}
.e8 p{color:#c7ccd8}
.sticky-line{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:34px;flex-wrap:wrap}
.sticky-line p{font-size:clamp(2rem,5vw,3.4rem)}
.sticky-line .y{color:#d4a500}
.sticky-line img{height:130px;width:auto}
.route{margin-top:70px}
.route-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px}
.route-note{color:#5a6070;font-weight:600}
.road-strip{position:relative;display:grid;grid-template-columns:repeat(4,1fr);background:#1b1e26;border-radius:16px;padding:64px 20px 26px;overflow:hidden}
.road-strip::before{content:"";position:absolute;left:0;right:0;top:36px;height:6px;background:repeating-linear-gradient(90deg,var(--yellow) 0 38px,transparent 38px 64px)}
.stop{display:flex;justify-content:center;position:relative}
.stop::before{content:"";position:absolute;top:-36px;width:22px;height:22px;border-radius:50%;background:#fff;border:5px solid var(--yellow)}
.sign{background:var(--green);color:#fff;border:3px solid #fff;border-radius:8px;padding:6px 12px;font-family:Anton,Impact,sans-serif;font-size:clamp(.95rem,1.8vw,1.35rem);letter-spacing:1px;text-transform:uppercase;text-align:center}
.venues{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;justify-content:center}
.venues span{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid #14171f;border-radius:99px;padding:8px 14px;font-weight:800;font-size:.92rem}
.venues svg{width:18px;height:18px}
@media (max-width:860px){.story-top{grid-template-columns:1fr}.three8-grid{grid-template-columns:1fr}}
@media (max-width:560px){.road-strip{grid-template-columns:1fr 1fr;row-gap:44px}.road-strip::before{display:none}.stop::before{display:none}.road-strip{padding:24px 12px}}


/* quick rates in hero */
.quick-rates{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;max-width:540px}
.qr{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;background:#fff;color:var(--navy);text-decoration:none;border-radius:14px;padding:12px 14px;border-bottom:5px solid var(--yellow)}
.qr svg{width:30px;height:30px;padding:6px;border-radius:50%;background:#111;color:#fff;box-sizing:content-box}
.qr-t{font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:1.05rem;line-height:1.05}
.qr-t small{display:block;font-family:Inter,sans-serif;font-weight:700;text-transform:none;font-size:.75rem;color:#4a5170;margin-top:2px}
.qr b{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:1.9rem;background:var(--yellow);color:#111;border-radius:8px;padding:2px 8px}
.qr-more{display:inline-block;margin-top:10px;color:var(--yellow);font-weight:700;font-size:.9rem;text-decoration:none}
@media (max-width:420px){.quick-rates{grid-template-columns:1fr}}
/* story expander */
.story-teaser{font-size:1.25rem;font-weight:700;color:#14171f;margin-bottom:18px}
.story-more summary{list-style:none;cursor:pointer}
.story-more summary::-webkit-details-marker{display:none}
@media (min-width:861px){.story-more summary{display:none}}
@media (max-width:860px){
  .tower{display:none}
  .story-more summary{display:flex;align-items:center;gap:14px;background:#14171f;color:#fff;border-radius:16px;padding:10px;border-bottom:5px solid var(--yellow);margin-bottom:14px}
  .story-more summary img{width:84px;height:110px;object-fit:cover;border-radius:10px;flex:none}
  .story-more summary b{display:block;font-family:Anton,Impact,sans-serif;font-weight:400;font-size:1.5rem;text-transform:uppercase}
  .story-more summary em{font-style:normal;color:var(--yellow);font-weight:700}
  .story-more[open] summary em{visibility:hidden}
  .three8{margin-top:40px}
  .e8{display:grid;grid-template-columns:110px 1fr;gap:4px 14px;text-align:left;align-items:center;padding:16px}
  .e8-vis{grid-row:span 2;height:auto;margin:0}
  .e8-vis img{max-height:70px}
  .shield-mini{transform:scale(.7)}
  .e8{grid-template-columns:128px 1fr}
  .venues span{font-size:.8rem;padding:6px 10px}
  .venues svg{width:15px;height:15px}
  .e8-label{font-size:1.3rem;margin:0}
  .e8 p{font-size:.92rem}
  .sticky-line img{height:90px}
  .route{margin-top:40px}
}
.story-more{background:none;border:0;padding:0;margin:0;border-radius:0}
.story-more > summary::after{display:none;content:none}
.story-more[open] .story-p:first-of-type{margin-top:4px}
/* license plate */
.plate{position:relative;background:linear-gradient(180deg,#1c1c1e,#050505 55%,#111);border:3px solid #9a9ea8;border-radius:12px;padding:8px 22px 10px;box-shadow:0 10px 24px rgba(0,0,0,.6),inset 0 0 0 3px #000,inset 0 0 0 4px #3a3a3e;text-align:center;min-width:260px;color:#fff}
.plate small{display:block;font-family:Inter,Arial,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:3px;font-size:.78rem;color:#fff}
.plate .num{color:#fff;font-family:Anton,Impact,sans-serif;font-size:2.4rem;line-height:1.1;letter-spacing:2px;white-space:nowrap;text-shadow:0 1px 0 #555}
.plate .bolt{position:absolute;top:10px;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#d7d9de,#6d7078)}
.plate .bolt.l{left:12px}.plate .bolt.r{right:12px}
@media (max-width:860px){
  .e8.e8-num{grid-template-columns:1fr;text-align:center}
  .e8.e8-num .e8-vis{grid-row:auto;margin-bottom:10px}
  .plate{min-width:0;width:100%;max-width:300px;margin:0 auto}
  .plate .num{font-size:clamp(1.8rem,8vw,2.3rem)}
}

/* ---------- tonight / rates ---------- */
.tonight{background:linear-gradient(180deg,#07080c,var(--asphalt))}
.tonight-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}
.bigcall{display:block;text-decoration:none;background:#000;border:3px solid var(--yellow);border-radius:18px;padding:18px 26px;text-align:center}
.bigcall small{display:block;font-weight:800;text-transform:uppercase;letter-spacing:2px;color:var(--muted);font-size:.8rem}
.bigcall span{font-family:Anton,sans-serif;font-size:clamp(2rem,4.5vw,3rem);color:var(--yellow);letter-spacing:1px}
.rate-groups{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.group{background:#000;border:3px solid var(--yellow);border-radius:20px;overflow:hidden}
.group-h{padding:14px 20px;font-size:2rem;display:flex;align-items:center;gap:10px}
.group-h .plus{width:34px;height:34px;border-radius:50%;background:var(--yellow);color:#000;display:grid;place-items:center;font-size:1.6rem}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 10px 10px}
.rate{background:#fff;color:var(--navy);border-radius:14px;padding:22px 14px 14px;text-align:center;display:flex;flex-direction:column;align-items:center}
.rate .ic{width:64px;height:64px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;margin-bottom:12px}
.rate .ic svg{width:34px;height:34px}
.rate h3{font-family:Anton,sans-serif;font-weight:400;font-size:1.45rem;line-height:1.05;text-transform:uppercase}
.rate .note{font-weight:700;font-size:.9rem;margin-top:4px;min-height:2.6em}
.price{margin-top:auto;width:100%;background:var(--yellow);color:#111;border-radius:10px;padding:10px 6px}
.price b{display:block;font-family:Anton,sans-serif;font-weight:400;font-size:2.8rem;line-height:1}
.price span{font-weight:900;font-size:.85rem;text-transform:uppercase}
.fine{color:var(--muted);font-size:.9rem;margin-top:18px}
@media (max-width:900px){.rate-groups{grid-template-columns:1fr}}
@media (max-width:420px){.cards{grid-template-columns:1fr}}

/* ---------- how ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.step{background:var(--asphalt2);border:1px solid var(--line);border-radius:18px;padding:28px}
.step .n{font-family:Anton,sans-serif;font-size:3rem;color:var(--yellow);line-height:1}
.step h3{font-size:1.25rem;margin:10px 0 6px}
.step p{color:var(--muted)}
@media (max-width:800px){.steps{grid-template-columns:1fr}}

/* ---------- DWI facts ---------- */
.facts{background:radial-gradient(80% 100% at 0% 0%,rgba(255,31,45,.14),transparent 60%),radial-gradient(80% 100% at 100% 100%,rgba(31,107,255,.14),transparent 60%),var(--night)}
.facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.cost-list{list-style:none;display:grid;gap:10px}
.cost-list li{display:flex;align-items:center;gap:14px;background:var(--asphalt);border:1px solid var(--line);border-left:4px solid var(--red);border-radius:12px;padding:14px 18px;font-weight:700}
.dwi-plus{font-size:clamp(1.2rem,2.6vw,1.7rem);margin:-4px 0 14px}
.dwi-plus .nb>span{color:var(--red);padding:0 2px}
.nb{white-space:nowrap;display:inline-block;margin-right:.35em}
.dwi-plus{font-size:clamp(1.2rem,2.3vw,1.6rem)!important}
.cost-list li:nth-child(even){border-left-color:var(--blue)}
.cost-list svg{width:22px;height:22px;flex:none;color:var(--muted)}
.total{margin-top:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#000;border:2px solid var(--red);border-radius:12px;padding:16px 20px}
.total b{font-family:Anton,sans-serif;font-weight:400;font-size:2rem;color:var(--red)}
.pledges{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.pledge{text-align:center;font-weight:700;font-size:.9rem;color:var(--muted)}
.pledge svg{width:34px;height:34px;margin:0 auto 6px;color:var(--white)}
@media (max-width:860px){.facts-grid{grid-template-columns:1fr}}

/* ---------- BOOK AHEAD (separate service) ---------- */
.ahead{background:var(--yellow);color:#111;position:relative;overflow:hidden}
.ahead::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,rgba(0,0,0,.04) 0 18px,transparent 18px 36px)}
.ahead .wrap{position:relative}
.ahead .eyebrow{color:#111}
.ahead .sec-sub{color:#332c00}
.ahead-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start;margin-top:10px}
.ribbon{display:inline-block;background:#111;color:var(--yellow);font-weight:900;text-transform:uppercase;letter-spacing:1.5px;padding:6px 14px;border-radius:8px;font-size:.85rem;margin-bottom:14px}
.events{display:grid;gap:12px;margin:26px 0}
.event{display:flex;align-items:center;gap:14px;background:#111;color:#fff;border-radius:14px;padding:14px 16px}
.event .ic{width:48px;height:48px;border-radius:12px;background:var(--yellow);color:#111;display:grid;place-items:center;flex:none}
.event .ic svg{width:26px;height:26px}
.event b{display:block;font-size:1.1rem}
.event span{color:#bdbdbd;font-size:.9rem}
.notice{display:flex;gap:14px;align-items:center;background:#fff;border:3px solid #111;border-radius:14px;padding:16px}
.notice .hrs{font-family:Anton,sans-serif;font-size:3rem;line-height:1}
.notice p{font-weight:700;line-height:1.3}
form.book{background:#111;color:#fff;border-radius:22px;padding:28px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
form.book h3{font-family:Anton,sans-serif;font-weight:400;font-size:2rem;text-transform:uppercase;margin-bottom:4px}
form.book .sub{color:var(--muted);margin-bottom:20px;font-size:.95rem}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.field label{font-weight:700;font-size:.85rem;color:#d7dae2}
.field input,.field select,.field textarea{background:#1c1f28;border:1px solid #333948;color:#fff;border-radius:10px;padding:12px;font:inherit;font-size:1rem;width:100%}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--yellow);border-color:transparent}
.field textarea{min-height:80px;resize:vertical}
.tsel{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
.tsel select{padding:12px 6px}
.qr-card{display:flex;align-items:center;gap:16px;margin-top:14px;background:#fff;border:3px solid #111;border-radius:14px;padding:12px}
.qr-card img{width:120px;height:120px;flex:none}
.qr-card p{font-weight:600;line-height:1.35}
.qr-card b{display:block;font-size:1.05rem}
.check{display:flex;gap:10px;align-items:flex-start;margin-bottom:16px;font-size:.95rem}
.check input{width:20px;height:20px;accent-color:var(--yellow);margin-top:2px;flex:none}
.form-msg{margin-top:14px;padding:12px 14px;border-radius:10px;font-weight:700;display:none}
.form-msg.ok{display:block;background:#12351f;color:#9ff0b8}
.form-msg.err{display:block;background:#3a0f12;color:#ffb3b8}
form.book .btn-y{width:100%;font-size:1.15rem;padding:16px}
@media (max-width:900px){.ahead-grid{grid-template-columns:1fr}}
@media (max-width:480px){.row{grid-template-columns:1fr}}

/* ---------- area ---------- */
.area-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.hwy{background:var(--green);border:4px solid #fff;border-radius:14px;padding:22px 26px;box-shadow:0 20px 40px rgba(0,0,0,.5);max-width:420px;margin-inline:auto}
.hwy .t{font-family:Anton,sans-serif;font-size:2.4rem;border-bottom:2px solid rgba(255,255,255,.5);padding-bottom:8px;margin-bottom:8px}
.hwy li{list-style:none;display:flex;justify-content:space-between;align-items:center;font-family:Anton,sans-serif;font-size:1.7rem;letter-spacing:1px;padding:4px 0}
.hwy li svg{width:26px;height:26px}
.why{display:grid;gap:14px;margin-top:26px}
.why div{display:flex;gap:12px;align-items:flex-start}
.why svg{width:24px;height:24px;color:var(--yellow);flex:none;margin-top:2px}
.why b{display:block}
.why span{color:var(--muted)}
@media (max-width:860px){.area-grid{grid-template-columns:1fr}}

/* ---------- pay + faq ---------- */
.pay{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.pay span{display:flex;align-items:center;gap:8px;font-weight:800;border-radius:10px;padding:10px 16px}
.venmo{background:#008cff}.cashapp{background:#00c244}.cash{background:#2a2f3c}
details{background:var(--asphalt);border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-bottom:10px}
summary{font-weight:800;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}
summary::after{content:"+";color:var(--yellow);font-size:1.4rem;line-height:1}
details[open] summary::after{content:"–"}
details p{color:var(--muted);margin-top:10px}
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}
@media (max-width:860px){.faq-grid{grid-template-columns:1fr}}


.nocash{margin-top:8px;color:var(--muted);font-weight:700;font-size:.9rem}
details a{color:var(--yellow)}
.facts-q{border-color:var(--red);border-left:5px solid var(--red)}
.facts-q summary{font-size:1.1rem}
.dwi-facts{margin-top:12px}
.dwi-facts .asof{color:#fff;font-weight:600;margin:0 0 12px}
.dwi-facts .asof b{color:var(--yellow)}
.dwi-facts h4{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-size:1.25rem;color:#fff;margin:16px 0 8px}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.stat{background:#0b0d12;border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.stat b{display:block;font-family:Anton,Impact,sans-serif;font-weight:400;font-size:2.1rem;line-height:1;color:var(--red)}
.stat span{display:block;color:#e6e9f0;font-weight:700;font-size:.92rem;margin-top:4px;line-height:1.3}
.stat small{display:block;color:var(--muted);font-size:.78rem;margin-top:4px}
.town-list{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.town-list li{background:var(--green);border:2px solid #fff;border-radius:8px;padding:6px 8px;text-align:center}
.town-list span{display:block;font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px;color:#fff}
.town-list b{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:1.5rem;color:#fff}
.dwi-facts .small{font-size:.88rem;margin-top:10px}
.dwi-facts .src{font-size:.78rem;margin-top:14px;color:#8b93a6}
.dwi-facts .src a{color:#b9c2d6}
@media (max-width:520px){.stat-grid{grid-template-columns:1fr 1fr}.town-list{grid-template-columns:1fr 1fr}.stat b{font-size:1.8rem}}


/* ---------- footer LLC + owner ---------- */
.owner-link{color:#6d7485;text-decoration:none}
.owner-link:hover{color:var(--yellow)}
/* ---------- owner app ---------- */
#owner{position:fixed;inset:0;z-index:100;background:#07080c;color:#fff;overflow-y:auto;display:none}
#owner.on{display:block}
body.owner-open{overflow:hidden}
.ow-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:#0b0d12;border-bottom:1px solid var(--line)}
.ow-top img{height:42px;width:auto}
.ow-top .ttl{font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:1.2rem;letter-spacing:.5px;flex:1}
.ow-btn{background:#1c1f28;border:1px solid #333948;color:#fff;border-radius:10px;padding:9px 12px;font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.ow-btn.y{background:var(--yellow);color:#111;border-color:var(--yellow)}
.ow-wrap{max-width:760px;margin:0 auto;padding:18px 16px 60px}
.ow-login{max-width:340px;margin:8vh auto 0;text-align:center}
.ow-login img{width:150px;margin:0 auto 14px;border-radius:30px}
.ow-login h2{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:2rem}
.ow-login p{color:var(--muted);margin:4px 0 18px}
.pin{width:100%;text-align:center;font-size:2rem;letter-spacing:.6em;padding:14px 0 14px .6em;border-radius:14px;border:2px solid #333948;background:#14171f;color:#fff;font-family:inherit}
.pin:focus{outline:none;border-color:var(--yellow)}
.ow-login .ow-btn.y{width:100%;justify-content:center;font-size:1.1rem;padding:14px;margin-top:12px}
.ow-err{color:#ff8a92;font-weight:700;min-height:1.4em;margin-top:10px}
.ow-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:14px}
.ow-tabs button{background:#14171f;border:1px solid #2a2f3c;color:#c7ccd8;border-radius:10px;padding:10px 4px;font:inherit;font-weight:800;font-size:.9rem;cursor:pointer}
.ow-tabs button.on{background:var(--yellow);color:#111;border-color:var(--yellow)}
.ow-tabs b{display:block;font-family:Anton,Impact,sans-serif;font-weight:400;font-size:1.4rem;line-height:1.1}
.ow-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.bk{background:#14171f;border:1px solid #2a2f3c;border-left:5px solid var(--yellow);border-radius:14px;padding:14px;margin-bottom:12px}
.bk.Confirmed{border-left-color:#2ecc71}.bk.Completed{border-left-color:#6d7485;opacity:.8}.bk.Cancelled{border-left-color:var(--red);opacity:.7}
.bk-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.bk-when{font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:1.25rem;line-height:1.1}
.bk-when small{display:block;font-family:Inter,sans-serif;font-weight:700;text-transform:none;font-size:.85rem;color:var(--yellow);margin-top:2px}
.st-tag{font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;border-radius:99px;background:#3a3200;color:var(--yellow);white-space:nowrap}
.st-tag.Confirmed{background:#0f3a22;color:#7cf0a8}.st-tag.Completed{background:#2a2f3c;color:#c7ccd8}.st-tag.Cancelled{background:#3a0f12;color:#ffb3b8}
.bk-name{font-weight:900;font-size:1.1rem;margin-top:8px}
.bk dl{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin-top:6px;font-size:.92rem}
.bk dt{color:var(--muted);font-weight:700}
.bk dd{margin:0;color:#e6e9f0;word-break:break-word}
.bk-act{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}
.bk-act a,.bk-act button{justify-content:center;font-size:.85rem;padding:10px 4px}
.bk-st{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px}
.bk-st button{background:#1c1f28;border:1px solid #333948;color:#c7ccd8;border-radius:10px;padding:8px 4px;font:inherit;font-weight:800;font-size:.82rem;cursor:pointer}
.bk-st button.c{border-color:#2ecc71;color:#7cf0a8}.bk-st button.x{border-color:#6b2a30;color:#ffb3b8}
.ow-empty{text-align:center;color:var(--muted);padding:40px 0}
@media (max-width:420px){.bk-act{grid-template-columns:repeat(2,1fr)}}

/* ---------- final cta + footer ---------- */
.final{text-align:center;background:linear-gradient(180deg,var(--night),#000)}
.final h2{font-size:clamp(2.4rem,6vw,4.4rem)}
.final .brush{font-size:clamp(1.6rem,4vw,2.4rem);color:var(--yellow);margin:8px 0 26px}
footer{background:#000;border-top:1px solid var(--line);padding:40px 0 110px;color:var(--muted);font-size:.9rem}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;align-items:center}
.foot img.logo{height:90px;width:auto}
.foot .tag{font-family:"Permanent Marker",cursive;color:var(--white);font-size:1.2rem}
footer small{display:block;margin-top:18px;font-size:.8rem;color:#6d7485}
footer small.llc{margin-top:6px;color:#8b93a6;font-weight:600}
@media (max-width:700px){.foot>div:last-child{text-align:left!important}}

/* ---------- mobile sticky call ---------- */
.stickycall{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:none;gap:8px}
.stickycall a{flex:1;box-shadow:0 10px 30px rgba(0,0,0,.6)}
@media (max-width:760px){.stickycall{display:flex}.nav .btn-sm{display:none}}

/* =====================================================================
   V2 — simple, phone-first layout
   ===================================================================== */
@media (max-width:700px){ section{padding:52px 0} }
.nav-links a.on{color:var(--white)}
/* rider screen */
.rider{padding:26px 0 34px;background:radial-gradient(90% 60% at 50% 0%,#1d2130 0%,#07080c 70%)}
.rider-grid{display:grid;grid-template-columns:1fr;gap:28px;align-items:center}
.rider-main{max-width:540px}
.rider h1{font-family:"Permanent Marker",cursive;font-weight:400;font-size:clamp(3.4rem,15vw,6.4rem);line-height:.95;transform:rotate(-3deg);transform-origin:left;margin-top:6px}
.rider h2{font-family:"Permanent Marker",cursive;font-weight:400;font-size:clamp(1.9rem,8.4vw,3.2rem);color:var(--yellow);transform:rotate(-3deg);transform-origin:left;margin:4px 0 26px}
.call-big{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:80px;border-radius:18px;background:var(--yellow);color:#111;font-weight:900;font-size:clamp(1.35rem,6.2vw,1.8rem);text-decoration:none;box-shadow:0 10px 30px rgba(255,212,0,.25)}
.call-big svg{width:32px;height:32px}
.text-big{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:66px;margin-top:12px;border-radius:18px;border:2px solid rgba(255,255,255,.6);color:#fff;font-weight:900;font-size:1.3rem;text-decoration:none}
.text-big svg{width:26px;height:26px}
.price-line{margin-top:24px;font-size:clamp(1.2rem,5.4vw,1.45rem);font-weight:900;line-height:1.3}
.price-line b{color:var(--yellow)}
.price-sub{color:#c7ccd8;font-weight:700;margin-top:4px}
.wait{display:flex;align-items:center;gap:10px;margin-top:16px;font-weight:800;font-size:1.05rem}
.wait svg{width:24px;height:24px;color:var(--yellow);flex:none}
.towns-line{margin-top:18px;font-weight:800;letter-spacing:1px;text-transform:uppercase;font-size:.85rem;color:#aab1c0}
.towns-line span{color:var(--yellow);padding:0 4px}
.rider-art{display:none}
@media (min-width:900px){
  .rider{padding:64px 0 72px}
  .rider-grid{grid-template-columns:1.05fr .95fr}
  .rider-art{display:block;text-align:center}
  .rider-art img{width:100%;max-width:520px;filter:drop-shadow(0 12px 30px rgba(0,0,0,.6))}
  .rider-art .plate{margin:22px auto 0;width:max-content}
}
/* prices */
.prices{background:var(--asphalt)}
.sec-head{margin-bottom:22px}
.sec-head .sec-title{margin-bottom:6px}
.pr-label{font-weight:900;text-transform:uppercase;letter-spacing:2px;color:var(--yellow);font-size:.85rem;margin:18px 0 10px}
.price-list{display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width:760px){.price-list{grid-template-columns:1fr 1fr}}
.pr{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:14px;background:#fff;color:var(--navy);border-radius:16px;padding:14px 16px;border-bottom:5px solid var(--yellow)}
.pr .ic{width:52px;height:52px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center}
.pr .ic svg{width:28px;height:28px}
.pr h3{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:1.25rem;line-height:1.05}
.pr p{font-weight:700;font-size:.88rem;color:#4a5170;margin-top:2px}
.amt{font-family:Anton,Impact,sans-serif;font-size:2.1rem;line-height:1;background:var(--yellow);color:#111;border-radius:10px;padding:6px 10px 4px;text-align:center}
.amt small{display:block;font-family:Inter,sans-serif;font-weight:900;font-size:.6rem;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}
.pay-line{margin-top:18px;font-weight:800;color:#e6e9f0}
.pay-line span{display:inline-block;border-radius:8px;padding:4px 10px;margin-right:6px}
/* DWI band (still on phones, flashing on computers) */
.dwi-link{display:inline-block;margin-top:14px;color:var(--yellow);font-weight:900;text-decoration:none;text-shadow:0 2px 8px #000}
@media (max-width:760px){
  .dwi-band .siren{animation:none!important;filter:brightness(.7)!important}
  .dwi-band{height:auto!important;padding:34px 0}
}
/* book ahead teaser */
.ahead2{background:var(--yellow);color:#111;position:relative}
.ahead2 .wrap{display:grid;grid-template-columns:1fr;gap:26px;align-items:center}
.ahead2 .sec-title{margin-bottom:8px}
.ahead2 p.lead{font-size:1.15rem;font-weight:700;color:#332c00;max-width:560px}
.uses{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 20px}
.uses span{background:#111;color:#fff;font-weight:800;border-radius:99px;padding:8px 14px;font-size:.92rem}
.book-big{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;max-width:520px;min-height:76px;border-radius:18px;background:#111;color:var(--yellow);font-weight:900;font-size:1.45rem;text-decoration:none}
.book-big svg{width:28px;height:28px}
.ahead2 .qr-card{display:none}
@media (min-width:900px){.ahead2 .wrap{grid-template-columns:1.3fr .7fr}.ahead2 .qr-card{display:flex;margin:0}}
/* FAQ extras */
.cost-box{background:#0b0d12;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:12px;padding:12px 14px;margin-bottom:6px}
.cost-box b{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:1.6rem;color:var(--red);line-height:1.1;display:block}
.cost-box .plus{font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:1.05rem;color:#fff}
.cost-box .plus i{color:var(--red);font-style:normal;padding:0 3px}
.cost-box ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.cost-box li{background:#1b1f2a;border-radius:99px;padding:4px 10px;font-size:.8rem;font-weight:700;color:#c7ccd8}
.about-link{display:inline-block;margin-top:14px;color:var(--yellow);font-weight:800;text-decoration:none}
/* sticky bar: only after the big call button scrolls away (home) */
@media (max-width:760px){.stickycall{display:none}body.show-sticky .stickycall{display:flex}}
.stickycall a{min-height:58px;font-size:1.1rem}
/* sub pages */
.backlink{display:inline-flex;align-items:center;gap:6px;font-weight:800;text-decoration:none;color:#111;margin-bottom:14px}
.page-ahead{padding-top:34px}
.page-ahead .ahead-grid{margin-top:16px}
.notice-short{display:flex;align-items:center;gap:10px;background:#111;color:#fff;border-radius:12px;padding:12px 14px;font-weight:800;margin:4px 0 16px}
.notice-short b{color:var(--yellow);font-family:Anton,Impact,sans-serif;font-weight:400;font-size:1.5rem}
@media (max-width:899px){.page-ahead .side{display:none}}
.about-page .story-more summary{display:none}
.about-page .tower{display:block!important}
.about-cta{text-align:center}
.about-cta .cta-row{justify-content:center}
.towns-line i{font-style:normal;white-space:nowrap}
.notice-short{font-size:1.05rem;line-height:1.35}
.notice-short b{font-family:inherit;font-size:inherit;font-weight:900}
form.book .btn-y{gap:10px}
.rider-grid>*{min-width:0}
.towns-line{display:flex;flex-wrap:wrap;row-gap:2px}
.notice-short a{white-space:nowrap}

/* plate in header */
.plate-link{display:block;flex:none;line-height:0;border-radius:8px;transition:transform .15s}
.plate-link:hover{transform:translateY(-2px)}
.plate-link img{height:64px;width:auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}
@media (max-width:760px){.plate-link img{height:56px}}
@media (max-width:360px){.plate-link img{height:48px}}
.brand img{height:56px}
/* hero additions */
.price-line.second{margin-top:4px}
.pop{margin-top:10px;font-weight:700;color:#e6e9f0}
.pop b{color:var(--yellow);font-weight:900}
.towns-line{margin-top:6px}
@media (min-width:760px){.price-list.three{grid-template-columns:repeat(2,1fr)}}

/* ride type switch */
.rtype{border:0;margin:0 0 16px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rtype legend{font-weight:800;font-size:.85rem;color:#d7dae2;margin-bottom:8px;padding:0}
.rtype label{cursor:pointer}
.rtype input{position:absolute;opacity:0;pointer-events:none}
.rtype span{display:block;height:100%;background:#1c1f28;border:2px solid #333948;border-radius:12px;padding:12px}
.rtype b{display:block;font-size:1.05rem}
.rtype small{display:block;color:var(--muted);font-weight:600;font-size:.8rem;margin-top:2px;line-height:1.3}
.rtype input:checked+span{border-color:var(--yellow);background:#2a2600}
.rtype input:checked+span b{color:var(--yellow)}
.rtype input:focus-visible+span{outline:2px solid #fff}
.ev-box{background:#2a2600;border:1px solid var(--yellow);color:#fff;border-radius:12px;padding:12px 14px;margin-bottom:14px;font-size:.95rem;line-height:1.4}
.ev-box b{color:var(--yellow)}
form.book .ev-only, form.book .ev-only-i{display:none}
form.book.is-event .ev-only{display:grid}
form.book.is-event div.ev-box{display:block}
form.book.is-event .ev-only-i{display:inline}
form.book.is-event .bar-only, form.book.is-event .bar-only-i{display:none}
/* special events card + callout */
.pr.quote .amt{font-size:1.15rem;padding:8px 10px;line-height:1.1}
.pr.quote{text-decoration:none}
.ev-callout{margin-top:22px;background:#111;color:#fff;border-radius:16px;padding:18px;border:2px solid var(--yellow)}
.ev-callout h3{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:1.6rem;color:var(--yellow)}
.ev-callout p{margin-top:4px;font-weight:600;color:#e6e9f0}
.ev-teams{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.ev-teams span{background:var(--yellow);color:#111;font-weight:900;border-radius:99px;padding:6px 12px;font-size:.88rem}
.ev-need{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 14px}
.ev-need li{border:1px solid #444b5c;border-radius:8px;padding:5px 10px;font-weight:800;font-size:.85rem}
.ev-need li::before{content:"✓ ";color:var(--yellow)}
.ev-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:62px;border-radius:14px;background:var(--yellow);color:#111;font-weight:900;font-size:1.2rem;text-decoration:none}
@media (min-width:900px){.ahead2 .wrap{grid-template-columns:1fr 1fr;align-items:start}}
.ev-btn svg{flex:none}
.ev-flag{display:inline-block;margin-top:8px;background:var(--yellow);color:#111;font-weight:900;font-size:.78rem;text-transform:uppercase;letter-spacing:.5px;border-radius:6px;padding:3px 8px}

.alt-call{display:block;text-align:center;margin-top:12px;color:#e6e9f0;font-weight:700;font-size:1.05rem;text-decoration:none;padding:6px}
.alt-call b{color:var(--yellow);font-weight:900;white-space:nowrap}

/* ===== hero v8: need-now, two call columns, side-by-side prices, install box ===== */
.need-now{font-weight:900;font-size:1.35rem;text-transform:uppercase;letter-spacing:1px;color:#fff;margin:-6px 0 14px}
.call-grid{display:grid;grid-template-columns:1fr;gap:12px}
.call-col .text-big{margin-top:10px}
.price-row{margin-top:22px}
.pchip{font-size:clamp(1.2rem,5.4vw,1.45rem);font-weight:900;line-height:1.3}
.pchip b{color:var(--yellow)}
.price-row+.price-sub{margin-top:4px}
.rider-art .install{margin-top:22px;text-align:left}
.install{background:#14171f;border:2px solid var(--yellow);border-radius:16px;padding:16px 18px;color:#fff}
.install h3{display:flex;align-items:center;gap:10px;font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:1.45rem;color:var(--yellow);margin-bottom:8px}
.install h3 svg{width:24px;height:24px;flex:none}
.install p{font-weight:800;font-size:1rem;line-height:1.45;margin-top:6px}
.install .os{color:var(--yellow)}
.install .key{display:inline-flex;align-items:center;gap:4px;background:#2a2f3c;border-radius:6px;padding:1px 7px;white-space:nowrap}
.install .key svg{width:15px;height:15px}
.install-btn{margin-top:12px;width:100%;min-height:52px;border:0;border-radius:12px;background:var(--yellow);color:#111;font:inherit;font-weight:900;font-size:1.05rem;cursor:pointer}
.install-sec{display:none;background:var(--night);padding:28px 0 8px}
/* phones */
@media (max-width:899px){
  .need-now{display:none}
  .call-col.secondary{display:grid;grid-template-columns:1.7fr 1fr;gap:8px}
  .call-col.secondary .call-big.alt,.call-col.secondary .text-big.alt{min-height:54px;margin:0;font-size:1.02rem;border-radius:14px;box-shadow:none}
  .call-col.secondary .call-big.alt{background:#2a2600;color:var(--yellow);border:2px solid var(--yellow)}
  .call-col.secondary svg{width:20px;height:20px}
  .install-sec{display:block}
}
/* computers */
@media (min-width:900px){
  .rider-grid{align-items:start}
  .rider-main{max-width:640px}
  .call-grid{grid-template-columns:1fr 1fr;gap:14px}
  .call-big{font-size:1.3rem;min-height:72px}
  .text-big{min-height:58px;font-size:1.15rem}
  .price-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .pchip{background:#14171f;border:3px solid var(--yellow);border-radius:14px;padding:12px 16px;font-size:1.15rem;box-shadow:0 0 0 1px rgba(255,212,0,.15),0 8px 24px rgba(255,212,0,.08)}
  .pchip b{display:block;font-family:Anton,Impact,sans-serif;font-weight:400;font-size:2rem;line-height:1.05}
  .rider-art{margin-top:-18px}
  .rider-art img{max-width:440px}
}

.install .lead-in{font-weight:700;color:#e6e9f0;margin-top:0}
.install .tip{font-weight:700;color:#c7ccd8;font-size:.92rem;border-top:1px dashed #3a3f4c;padding-top:8px;margin-top:10px}
.install .done{color:var(--yellow);font-size:.95rem}
/* keep Call/Text bar clear of Netlify's corner badge on phones */
@media (max-width:760px){.stickycall{bottom:calc(66px + env(safe-area-inset-bottom))}body{padding-bottom:150px}}

.install .os{display:inline-flex;align-items:center;gap:6px;vertical-align:middle}.install .os .dev{width:22px;height:22px;flex:none}
.install .os .appic{width:34px;height:34px;flex:none;border:1px solid #3a3f4c}.install .os .appic.ios{border-radius:8px}.install .os .appic.and{border-radius:50%}
.social{margin-top:26px}.soc-h{color:#fff;font-weight:900;font-size:1.05rem;margin-bottom:10px}
.soc-row{display:flex;flex-wrap:wrap;gap:10px}
.soc{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 18px 8px 10px;border:2px solid #2a2f3c;border-radius:14px;background:#11141b;color:#fff;text-decoration:none}
.soc:hover,.soc:focus-visible{border-color:var(--yellow)}.soc.sh{border-color:var(--yellow)}
.soc b{display:block;font-weight:900;font-size:1rem;line-height:1.2}.soc i{display:block;font-style:normal;color:#9aa0ad;font-size:.85rem}
.soc-ic{width:38px;height:38px;flex:none;border-radius:10px;display:flex;align-items:center;justify-content:center}
.soc-ic img{width:38px;height:38px;display:block}
.soc.fb .soc-ic{background:#0866ff}.soc.ig .soc-ic{background:linear-gradient(45deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5)}
.sh-ic{background:var(--yellow);color:#111}.sh-ic svg{width:22px;height:22px}
@media (max-width:700px){.soc{flex:1 1 100%}}
.soc-ic svg{width:22px;height:22px;fill:#fff}.sh-ic svg{fill:none}

/* ===== v16 pricing: Get Home Safe + Only on 8 ===== */
.pr-head{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:clamp(1.5rem,4.2vw,2.1rem);letter-spacing:.5px;line-height:1.05;border-left:6px solid var(--yellow);padding-left:12px;margin:26px 0 12px}
.pr-head span{color:var(--yellow)}
.sec-head+.pr-head{margin-top:6px}
.price-list.ghs{grid-template-columns:1fr}
@media (min-width:760px){.price-list.ghs{grid-template-columns:1fr 1fr}}
.pr.addon{margin-top:10px;background:#14171f;color:#fff;border:2px dashed var(--yellow);border-bottom-width:2px;grid-template-columns:auto 1fr auto}
.pr.addon h3{color:#fff}
.pr.addon p{color:var(--muted)}
.addon-tag{font-weight:900;text-transform:uppercase;letter-spacing:1.5px;font-size:.72rem;color:#111;background:var(--yellow);border-radius:6px;padding:4px 8px}
@media (max-width:420px){.pr.addon{grid-template-columns:1fr auto}.pr.addon .addon-tag{grid-column:1/-1;justify-self:start}}
.spot-list{display:grid;grid-template-columns:1fr;gap:12px}
@media (min-width:760px){.spot-list{grid-template-columns:1fr 1fr}}
.spot{display:flex;align-items:center;gap:16px;background:var(--yellow);color:#111;border:3px solid #fff;border-radius:18px;padding:14px 18px;box-shadow:0 8px 24px rgba(255,212,0,.15)}
.hw8{width:74px;height:82px;flex:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))}
.spot h3{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;font-size:1.55rem;line-height:1}
.spot-amt{font-family:Anton,Impact,sans-serif;font-size:2.6rem;line-height:1.05;margin-top:2px}
.spot-amt small{font-family:Inter,sans-serif;font-weight:900;font-size:.72rem;text-transform:uppercase;letter-spacing:1px;margin-left:8px;vertical-align:middle}
.spot p{font-weight:800;font-size:.92rem;color:#332c00}
.pr.ev-quote{margin-top:22px;border:2px dashed var(--yellow);border-bottom:5px solid var(--yellow)}
.pr.ev-quote .ev-48{color:#16215c;font-weight:800;margin-top:4px}
/* book page: show only the relevant notice */
.notice-short .ev-note{display:inline}
#event{scroll-margin-top:96px}

/* v17 quick pick-up form */
form.book .ev-only-b{display:none}
form.book.is-event .ev-only-b{display:block}
form.book.is-now:not(.is-event) .later-only{display:none}
form.book .bar-only-i{display:inline}
form.book.is-event .later-only{display:grid}

/* SMS consent + business info (toll-free verification) */
.sms-consent{background:#14171f;border:1px solid #333948;border-radius:10px;padding:12px;margin-bottom:6px}
.sms-consent span{font-size:.8rem;line-height:1.5;color:#c3c8d4;font-weight:400}
.sms-note{font-size:.78rem;color:#8b93a6;margin:0 0 16px}
.sms-note a{color:var(--yellow)}
.biz-info{margin-top:22px;font-size:.85rem;line-height:1.7;color:#a9b0c0}
.biz-info b{color:var(--white)}
.biz-info a{color:var(--yellow)}
.privacy{max-width:760px}
.privacy h1{font-size:clamp(1.6rem,5vw,2.4rem);line-height:1.2;margin:0 0 6px}
.privacy .eff{color:var(--muted);font-size:.9rem;margin:0 0 24px}
.privacy h2{color:var(--yellow);font-size:1.1rem;margin:28px 0 6px;font-family:Inter,system-ui,sans-serif}
.privacy p{margin:0 0 12px;line-height:1.65}
.privacy-sec{background:#0b0d12;color:#e6e8ee;padding:28px 0 48px}
.privacy-sec .backlink{color:var(--yellow)}
.privacy h1{color:#fff}

/* Required-field highlighting */
.field.missing input,.field.missing select,.field.missing textarea{border-color:#ff5a64;box-shadow:0 0 0 2px rgba(255,90,100,.35)}
.field.missing>label::after{content:" — Required";color:#ff8a92;font-weight:800}
.form-msg{margin:4px 0 14px}

/* Backup number line */
.backup-line{margin:10px 0 0;font-size:.9rem;color:#c7ccd8;text-align:center}
.backup-line a{color:var(--yellow);font-weight:800;white-space:nowrap}

/* Hero Book a Ride button */
.hero-book{margin:16px 0 6px;max-width:560px}
.hero-book{background:#2a2600;border:2px solid var(--yellow);min-height:64px;font-size:1.3rem}
.hero-book:hover{background:var(--yellow);color:#111}

/* ===== Holiday spotlight + Holidays page ===== */
.spot-hw{--acc:#ff8a1f;--acc2:#b06cff;background:radial-gradient(120% 140% at 85% 0%,rgba(255,138,31,.35),transparent 55%),radial-gradient(90% 120% at 0% 100%,rgba(176,108,255,.35),transparent 60%),linear-gradient(135deg,#160a24,#24103a)}
.spot-tg{--acc:#ffb347;--acc2:#d9622b;background:radial-gradient(120% 140% at 85% 0%,rgba(255,179,71,.32),transparent 55%),radial-gradient(90% 120% at 0% 100%,rgba(217,98,43,.35),transparent 60%),linear-gradient(135deg,#1d0f05,#311807)}
.spot-ny{--acc:#ffd27a;--acc2:#c9d3e6;background:radial-gradient(2px 2px at 12% 30%,#ffd27a 60%,transparent),radial-gradient(2px 2px at 28% 70%,#c9d3e6 60%,transparent),radial-gradient(2px 2px at 46% 20%,#ffd27a 60%,transparent),radial-gradient(2px 2px at 64% 80%,#c9d3e6 60%,transparent),radial-gradient(2px 2px at 82% 35%,#ffd27a 60%,transparent),radial-gradient(2px 2px at 92% 75%,#c9d3e6 60%,transparent),radial-gradient(120% 140% at 85% 0%,rgba(255,210,122,.28),transparent 55%),linear-gradient(135deg,#0a0d1c,#151b36)}
.hspot{display:block;color:#fff;border:0;border-bottom:2px solid var(--acc);border-radius:0;box-shadow:none;padding:18px 0}
.spot-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.spot-kicker{font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:var(--acc)}
.spot-head{font-family:Anton,Impact,sans-serif;font-size:clamp(1.6rem,5.5vw,2.3rem);line-height:1.1;margin:4px 0 6px;text-transform:uppercase}
.spot-sub{font-size:.95rem;color:#e7e2ef;font-weight:600}
.spot-actions{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:220px}
.spot-btn,.hol-btn{display:flex;align-items:center;justify-content:center;min-height:56px;padding:0 26px;border-radius:14px;background:var(--acc);color:#111;font-weight:900;font-size:1.1rem;text-decoration:none;box-shadow:0 8px 26px rgba(0,0,0,.35)}
.spot-btn:hover,.hol-btn:hover{filter:brightness(1.08)}
.spot-more{color:#fff;font-weight:700;font-size:.9rem;opacity:.85}
@media (max-width:700px){.spot-actions{width:100%}.spot-btn{width:100%}}
.hol-page{background:var(--night);padding:28px 0 64px}
.hol-page .backlink{color:var(--yellow)}
.hol-title{font-size:clamp(2.4rem,9vw,4rem);margin:6px 0 10px}
.hol-title .y{color:var(--yellow)}
.hol-lead{font-size:1.1rem;color:#d7dae2;max-width:640px;margin:0 0 20px}
.hol-prices{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:640px;margin-bottom:28px}
.hol-prices>div{display:flex;gap:14px;align-items:center;background:var(--asphalt);border:2px solid var(--yellow);border-radius:16px;padding:14px 16px}
.hol-prices b{font-family:Anton,Impact,sans-serif;font-size:2.4rem;color:var(--yellow);line-height:1}
.hol-prices span{font-weight:700;line-height:1.3}
.hol-prices small{color:var(--muted);font-weight:600}
@media (max-width:560px){.hol-prices{grid-template-columns:1fr}}
.hol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width:900px){.hol-grid{grid-template-columns:1fr}}
.hol-card{border:2px solid var(--acc);border-radius:20px;padding:22px;color:#fff;display:flex;flex-direction:column}
.hol-kicker{font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--acc);font-size:.9rem}
.hol-day{font-weight:800;margin-top:2px}
.hol-head{font-family:Anton,Impact,sans-serif;text-transform:uppercase;font-size:1.8rem;line-height:1.1;margin:12px 0 4px}
.hol-aka{font-size:.85rem;color:var(--acc2);font-weight:700}
.hol-card p{color:#e7e2ef;margin:10px 0 18px;flex:1}
.hol-past{opacity:.45}
.hol-past .hol-btn{background:#333;color:#aaa;box-shadow:none;cursor:default}
.hol-how{margin-top:30px;background:var(--asphalt);border:1px solid var(--line);border-radius:16px;padding:20px 22px;max-width:760px}
.hol-how h3{margin:0 0 8px;color:var(--yellow)}
.hol-how ol{margin:0 0 12px;padding-left:20px;line-height:1.7}
.hol-how a{color:var(--yellow);font-weight:800}
/* booking form holiday notice */
.hol-note{display:none;border-radius:12px;padding:12px 14px;margin:0 0 14px;color:#fff;font-weight:700;border:2px solid var(--acc)}
.hol-note.show{display:block}
.hol-note b{color:var(--acc)}

.hol-date-fixed{background:#1c1f28;border:2px solid var(--yellow);color:#fff;border-radius:10px;padding:12px;font-weight:800;font-size:1rem}
.hol-exit{font-size:.85rem;color:#a9b0c0;margin:-6px 0 14px}
.hol-exit a{color:var(--yellow);font-weight:700}

.hol-allin{background:var(--asphalt);border:2px solid var(--yellow);border-radius:18px;padding:18px 20px;max-width:760px;margin-bottom:28px}
.hol-allin-price{display:flex;gap:14px;align-items:center}
.hol-allin-price b{font-family:Anton,Impact,sans-serif;font-size:3.4rem;color:var(--yellow);line-height:1}
.hol-allin-price span{font-weight:900;font-size:1.25rem;line-height:1.2}
.hol-allin-price small{color:var(--muted);font-weight:700;font-size:.9rem}
.hol-incl{list-style:none;padding:0;margin:14px 0 10px;line-height:1.8;font-weight:600}
.hol-incl b{color:var(--yellow)}
.hol-car{margin:8px 0 0;padding-top:10px;border-top:1px solid var(--line);color:#d7dae2}
.hol-dwi{margin-top:16px;padding:10px 12px;border-radius:12px;background:#000;border:1px solid #5a1016;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-weight:800}
.hol-dwi .d{font-family:Anton,Impact,sans-serif;color:#ff1f2d;font-size:1.5rem;line-height:1}
.hol-dwi b{color:#ff1f2d}
.hol-dwi .y{font-family:"Permanent Marker",cursive;color:var(--yellow);font-weight:400}

.spot-link{text-decoration:none;cursor:pointer}
.spot-link:hover{transform:translateY(-2px)}
.spot-go{display:inline-block;margin-top:6px;font-weight:900;font-size:.9rem;color:#111;text-decoration:underline}
.hol-car{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.car-btn{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border-radius:12px;background:var(--yellow);color:#111;font-weight:900;text-decoration:none;white-space:nowrap}

.unl{font-weight:900;letter-spacing:.03em}

.only8{display:inline-block;background:var(--yellow);color:#111;font-weight:900;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:6px;margin-right:6px;vertical-align:middle}
.car-link{margin:0 0 16px;font-size:.95rem;color:#d7dae2;line-height:1.6}
.car-link a{color:var(--yellow);font-weight:800}

/* holiday blocks: service area + next day car pickup */
.hol-serve{margin:0 0 10px;font-weight:800;font-size:.92rem;color:#e7e2ef}
.hol-car-line{display:block;margin-top:10px;text-align:center;font-weight:800;font-size:.95rem;color:var(--yellow);text-decoration:none}
.hol-car-line:hover{text-decoration:underline}
.spot-extra{margin-top:4px;font-size:.88rem;color:#e7e2ef;font-weight:700}
.hol-note-extra{display:block;margin-top:6px;font-weight:700;font-size:.92rem}
.hol-note-extra a{color:var(--acc)}
.hol-pass{margin:10px 0 14px;padding:8px 12px;border-radius:12px;background:rgba(0,0,0,.45);border:1px solid var(--acc);font-weight:900;font-size:1.05rem;line-height:1.25}
.hol-pass b{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:1.6rem;color:var(--acc);margin-right:4px;vertical-align:-2px}
.hol-pass small{white-space:nowrap;font-weight:700;font-size:.8rem;color:#e7e2ef}
.hol-pass span{display:block;font-weight:700;font-size:.9rem;color:#e7e2ef;margin-top:2px}

/* holiday cards: same sections line up across all three boxes */
.hol-head{text-wrap:balance}
.hol-card p{margin:10px 0 16px}
.hol-card .hol-btn{text-align:center}
@media (min-width:901px){
  @supports (grid-template-rows:subgrid){
    .hol-card{display:grid;grid-row:span 10;grid-template-rows:subgrid;row-gap:0;align-content:start}
    .hol-card p{align-self:start}
    .hol-serve{align-self:end}
  }
}
.hol-pass span i{font-style:normal;white-space:nowrap}
@media (max-width:900px){.hol-aka[aria-hidden="true"]{display:none}}

/* payment handle */
.pay-handle{color:var(--yellow);font-weight:900;white-space:nowrap}
.pay-line a{text-decoration:none;color:#fff}
.pay-note{margin-top:6px;font-size:.85rem;color:#a9b0c0;font-weight:600}
.pay-sub{margin:-4px 0 14px;font-size:.92rem;color:#c7ccd8;font-weight:600}
details a[href*="venmo"],details a[href*="cash.app"]{color:var(--yellow);font-weight:800}

/* holiday pricing note + rider terms */
.hol-pricenote{display:flex;gap:12px;align-items:center;margin-top:12px;padding:12px 16px;border:2px dashed var(--yellow);border-radius:14px;color:#e9ecf2;text-decoration:none;font-weight:600;line-height:1.4}
.hol-pricenote b{color:var(--yellow)}
.hol-pricenote>span:first-child{font-size:1.3rem;flex:none}
.terms-check a{color:var(--yellow);font-weight:800}
.terms-check.missing{outline:2px solid var(--red);outline-offset:6px;border-radius:6px}
small.llc a{color:inherit}

/* v23: team schedule links + single-column booking page */
.ev-teams a{background:var(--yellow);color:#111;font-weight:900;border-radius:99px;padding:6px 12px;font-size:.88rem;text-decoration:none}
.ev-teams a::after{content:" \203A"}
.ev-teams a:focus-visible{outline:3px solid #fff;outline-offset:2px}
.ev-sched{font-size:.85rem;opacity:.8;margin-top:-4px}
.ev-sched-row{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.ev-sched-row span{font-weight:700}
.ev-sched-row .ev-teams{margin:0}
.page-ahead .ahead-grid{grid-template-columns:minmax(0,720px);justify-content:center}
