/* Cancun Mexican Bar & Grill (Vargas). One site, two brands:
   .np = Newport ("Sunset on the Ohio": Riverboat Row + Monmouth St), .md = Middletown ("Fiesta Folk"), .lp = landing.
   Values follow the Claude Design handoff (design_handoff_cancun_site). */
@font-face{font-family:"Alfa Slab One";src:url(/assets/fonts/alfa-slab-one-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Cinzel;src:url(/assets/fonts/cinzel-500-700.woff2) format("woff2");font-weight:500 700;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url(/assets/fonts/barlow-condensed-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url(/assets/fonts/barlow-condensed-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Barlow;src:url(/assets/fonts/barlow-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Barlow;src:url(/assets/fonts/barlow-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Barlow;src:url(/assets/fonts/barlow-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Bricolage Grotesque";src:url(/assets/fonts/bricolage-grotesque-500-800.woff2) format("woff2");font-weight:500 800;font-display:swap}
@font-face{font-family:Bevan;src:url(/assets/fonts/bevan-400.woff2) format("woff2");font-weight:400;font-display:swap}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;cursor:pointer}
a:hover{opacity:.85}
img,video{display:block;max-width:100%}
input,textarea,button,select{font:inherit}
h1,h2,h3,p{margin:0}
.skip{position:absolute;left:-9999px;top:0;z-index:100;padding:12px 16px;background:#fff;color:#000}
.skip:focus{left:12px;top:12px}
:focus-visible{outline:3px solid #f2c230;outline-offset:3px}
.md :focus-visible{outline-color:#1a74bb}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

/* scroll reveal: below the fold only, gated on JS, off with reduced motion */
.js [data-rv].rv-wait{opacity:0;transform:translateY(28px)}
.js [data-rv].rv-in{opacity:1;transform:none;transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--rvd,0ms),transform .8s cubic-bezier(.2,.7,.2,1) var(--rvd,0ms)}
@media (prefers-reduced-motion:reduce){.js [data-rv].rv-wait{opacity:1;transform:none}}

/* ---------- shared header behaviour ---------- */
.hdr{position:fixed;top:0;left:0;right:0;z-index:20}
.hdr-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.hdr .logo{flex:none;display:block}
.hdr .right{display:flex;align-items:center;min-width:0;flex:0 1 auto}
.hdr nav.main{display:flex;white-space:nowrap}
.burger{display:none;width:52px;height:48px;align-items:center;justify-content:center;background:none;cursor:pointer;padding:0;flex:none}
.burger svg{display:block}
.burger .x{display:none}
.nav-open .burger .x{display:block}
.nav-open .burger .bars{display:none}
.drop{display:none;flex-direction:column}
.nav-open .drop{display:flex}
.order-btn{white-space:nowrap}

/* ============================================================ NEWPORT */
.np{background:#0d0c0b;color:#f2e9dc;font-family:Barlow,sans-serif;min-height:100vh}
.np .hdr{background:#050405;border-bottom:3px solid #8b5e3c}
.np .hdr-row{height:128px;padding:0 clamp(16px,6vw,96px) 0 clamp(16px,8vw,116px)}
.np main{padding-top:131px}
.np .hdr .logo{height:100px;aspect-ratio:476/417}
.np .hdr .right{gap:clamp(14px,3vw,52px)}
.np nav.main{gap:31px;font-family:Cinzel,serif;font-weight:600;font-size:19px;color:#fff}
.np nav.main a[aria-current=page]{color:#f2c230}
.np .burger{border:1px solid #5a4c3d;color:#fff}
.np .order-btn{background:#8b5e3c;color:#fff;border:1px solid #efe2d0;border-radius:3px;font-family:Cinzel,serif;font-weight:500;font-size:clamp(16px,1.4vw,19px);padding:clamp(13px,1.2vw,17px) clamp(18px,2.5vw,36px)}
.np .drop{border-top:1px solid #2a2520;padding:8px clamp(16px,8vw,116px) 20px;font-family:Cinzel,serif;font-weight:600;font-size:20px;color:#fff}
.np .drop a{padding:14px 0;border-bottom:1px solid #1e1a16}
.np .drop a:last-child{border-bottom:0}
@media (max-width:1259px){.np nav.main{display:none}.np .burger{display:flex}}
@media (max-width:640px){.np .hdr-row{height:88px}.np main{padding-top:91px}.np .hdr .logo{height:68px}.np .order-btn{padding:12px 16px;font-size:16px}}

.np .ey{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:16px;letter-spacing:.22em;text-transform:uppercase;color:#d9a77c}
.np .disp{font-family:"Alfa Slab One",serif;font-weight:400;text-transform:uppercase}
.np .btns{display:flex;flex-wrap:wrap;gap:12px;font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:17px;letter-spacing:.14em;text-transform:uppercase}
.np .b-sun{background:#f2c230;color:#0d0c0b;padding:16px 26px}
.np .b-line{border:1px solid #b9845a;color:#e3b48b;padding:16px 26px}
.np .pad{padding-left:clamp(20px,8vw,116px);padding-right:clamp(20px,8vw,116px)}

.np .hero{position:relative;height:min(720px,82vh);min-height:520px;overflow:hidden;background:#0d0c0b}
.np .hero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85}
.np .hero video.bg{opacity:0;transition:opacity .6s ease}
.np .hero video.bg.is-playing{opacity:.85}
.np .hero .shade{position:absolute;inset:0;background:linear-gradient(90deg,#0d0c0b 0%,rgba(13,12,11,.75) 40%,rgba(13,12,11,0) 75%)}
.np .hero .copy{position:absolute;left:clamp(20px,8vw,116px);right:20px;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;gap:26px;max-width:680px}
.np .hero h1{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:16px;letter-spacing:.22em;text-transform:uppercase;color:#d9a77c;line-height:1.4}
.np .hero .big{font-size:clamp(48px,6vw,84px);line-height:.98;text-wrap:balance}
.np .hero .sub{font-size:19px;line-height:1.5;color:#d8ccbb;max-width:500px}
@media (max-width:640px){.np .hero .shade{background:linear-gradient(90deg,rgba(13,12,11,.92) 0%,rgba(13,12,11,.7) 70%,rgba(13,12,11,.35) 100%)}}

.np .strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px}
@media (min-width:900px){.np .strip{grid-template-columns:repeat(4,minmax(0,1fr))}}
.np .strip img{width:100%;height:280px;object-fit:cover}
.np .sec{padding-top:110px;padding-bottom:110px;display:flex;flex-direction:column;gap:44px}
.np .sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.np h2.h2{font-family:"Alfa Slab One",serif;font-weight:400;font-size:52px;line-height:1;text-transform:uppercase}
@media (max-width:640px){.np h2.h2{font-size:40px}}
.np .tlink{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:17px;letter-spacing:.14em;text-transform:uppercase;color:#f2c230}
.np .favs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}
.np .fav{display:flex;flex-direction:column;gap:16px}
.np .fav img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.np .fav span{font-family:Cinzel,serif;font-weight:600;font-size:22px}

.np .page{padding-top:90px;padding-bottom:110px;display:flex;flex-direction:column;gap:40px}
.np .ptitle{display:flex;flex-direction:column;gap:14px}
.np .ptitle .big{font-size:clamp(48px,6vw,76px);line-height:1}
.np .ptitle h1.ey{line-height:1.4}

/* menu */
.np .chips{display:flex;flex-wrap:wrap;gap:8px;font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:15px;letter-spacing:.1em;text-transform:uppercase}
.np .chips a{border:1px solid #4a3a2c;background:transparent;color:#d8ccbb;padding:10px 16px}
.np .chips a[aria-pressed=true]{background:#8b5e3c;color:#fff}
.np .mcat{display:flex;flex-direction:column;gap:30px;scroll-margin-top:150px}
.np .mcat-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;border-bottom:1px solid #3a342d;padding-bottom:18px}
.np .mcat-h h2{font-family:Cinzel,serif;font-weight:700;font-size:32px;color:#fff}
.np .mcat-h a{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:#f2c230}
.np .items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:30px 64px}
.np .it{display:flex;flex-direction:column;gap:6px}
.np .it-top{display:flex;align-items:baseline;gap:12px}
.np .it-n{font-family:Cinzel,serif;font-weight:600;font-size:20px;color:#fff}
.np .it-l{flex:1;border-bottom:1px dotted #5a4c3d;transform:translateY(-4px);min-width:16px}
.np .it-p{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:19px;color:#f2c230}
.np .it-d{font-size:16px;line-height:1.5;color:#b9a891;text-wrap:pretty}
.np .it-t{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#d9a77c}
.np .it-t a{color:#f2c230;font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:14px}
.np .mnote{font-size:15px;color:#8f826f}

/* gallery */
.np .gal{columns:3 300px;column-gap:6px}
.np .gal img{width:100%;height:auto;margin-bottom:6px;break-inside:avoid}

/* locations */
.np .lcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px}
.np .lcard{display:flex;flex-direction:column;background:#050405;border:1px solid #3a2c20}
.np .lcard img{width:100%;height:300px;object-fit:cover}
.np .lcard .in{padding:28px;display:flex;flex-direction:column;gap:12px;font-size:17px;line-height:1.5}
.np .lcard h2{font-family:Cinzel,serif;font-weight:700;font-size:26px;color:#fff}
.np .lcard .ph{font-weight:600;color:#fff}
.np .lcard .btns{margin-top:8px;font-size:16px}
.np .b-cop{background:#8b5e3c;color:#fff;padding:13px 20px}
.np .lcard .b-line{padding:13px 20px}

/* footer */
.np .ftr{background:#050405;border-top:3px solid #8b5e3c;padding-top:80px;padding-bottom:40px;display:flex;flex-direction:column;gap:56px}
.np .fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:48px}
.np .fcol{display:flex;flex-direction:column;gap:12px;font-size:17px;line-height:1.5}
.np .fcol .lbl{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:15px;letter-spacing:.2em;text-transform:uppercase;color:#d9a77c}
.np .fbrand{gap:18px}
.np .fbrand img{width:130px;height:auto}
.np .fbrand div{font-family:Cinzel,serif;font-weight:600;font-size:20px;color:#fff;line-height:1.35}
.np .fcol .ph{color:#fff;font-weight:600}
.np .fcol .dir{color:#f2c230}
.np .hrs{display:grid;grid-template-columns:auto 1fr;gap:6px 22px;font-size:16px}
.np .hrs span:nth-child(odd){color:#b9a891}
.np .hrs .today{color:#f2c230!important}
.np .fbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;border-top:1px solid #2a2520;padding-top:24px;font-size:14px;color:#8f826f}
.np .fbar nav{display:flex;gap:20px;flex-wrap:wrap}

/* VIP (Newport) */
.np .vstrip{background:#8b5e3c;color:#fff;text-align:center;padding:11px 16px;font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:15px;letter-spacing:.16em;text-transform:uppercase}
.np .vhero{position:relative;padding-top:clamp(56px,6vw,96px);padding-bottom:clamp(80px,8vw,120px);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));gap:clamp(40px,5vw,72px);align-items:center}
.np .vhero .l{display:flex;flex-direction:column;gap:24px}
.np .vhero .big{font-size:clamp(52px,6.4vw,96px);line-height:.95}
.np .vhero .big b{font-weight:400;color:#f2c230;text-shadow:5px 5px 0 #8b5e3c}
.np .vhero p{font-size:clamp(17px,1.5vw,20px);line-height:1.5;color:#d8ccbb;max-width:500px}
.np .vhero .b-sun{padding:17px 26px;box-shadow:5px 5px 0 #8b5e3c}
.pc-wrap{padding:clamp(8px,2vw,24px)}
.pc{position:relative;background-image:radial-gradient(rgba(120,80,30,.10) 1px,transparent 1.4px),radial-gradient(ellipse at 90% 100%,rgba(150,100,40,.25),transparent 55%);background-size:6px 6px,100% 100%;padding:12px;rotate:-2.5deg}
.pc-in{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(14px,2vw,24px);padding:clamp(14px,2vw,24px)}
.pc-l{display:flex;flex-direction:column;gap:10px;min-width:0}
.pc-g{font:italic 700 clamp(16px,1.6vw,22px)/1 Georgia,serif}
.pc-frame{border:6px solid #fff;outline:1px solid #d8c499;padding:clamp(10px,1.4vw,18px)}
.pc-frame img{width:100%;height:auto}
.pc-town{font-size:clamp(11px,1vw,13px);letter-spacing:.18em;text-transform:uppercase}
.pc-r{position:relative;padding-left:clamp(12px,1.6vw,20px);display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-width:0}
.pc-stamp-row{display:flex;justify-content:flex-end;position:relative}
.pc-stamp{width:clamp(62px,6vw,84px);aspect-ratio:4/5;background:#fff;padding:6px;rotate:4deg;outline-offset:-2px;box-shadow:2px 2px 0 rgba(120,80,30,.3)}
.pc-stamp div{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center}
.pc-stamp b{font-weight:400;font-size:clamp(14px,1.4vw,19px)}
.pc-stamp span{font-weight:700;font-size:8px;letter-spacing:.1em}
.pc-post{position:absolute;right:clamp(46px,5vw,70px);top:clamp(34px,3.6vw,48px);width:clamp(82px,7.4vw,100px);height:clamp(82px,7.4vw,100px);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;font-weight:700;font-size:clamp(8px,.75vw,10px);line-height:1.25;letter-spacing:.02em;rotate:-14deg}
.pc-wish{display:flex;flex-direction:column;gap:clamp(12px,1.4vw,18px);padding-bottom:6px}
.pc-wish p{font:italic 400 clamp(15px,1.4vw,19px)/1.25 Georgia,serif}
.np .pc{background-color:#efe2cc;border-radius:4px;box-shadow:10px 14px 0 #8b5e3c}
.np .pc-in{border:2px solid #b9845a}
.np .pc-g,.np .pc-town{color:#6b3a1c}
.np .pc-town{font-family:"Barlow Condensed",sans-serif;font-weight:600}
.np .pc-frame{background:#0d0c0b}
.np .pc-r{border-left:2px solid #b9845a}
.np .pc-stamp{outline:3px dotted #efe2cc}
.np .pc-stamp div{background:#0d0c0b}
.np .pc-stamp b{font-family:"Alfa Slab One",serif;color:#f2c230}
.np .pc-stamp span{font-family:"Barlow Condensed",sans-serif;color:#fff}
.np .pc-post{border:2px solid rgba(13,12,11,.65);color:rgba(13,12,11,.7);font-family:"Barlow Condensed",sans-serif}
.np .pc-wish p{color:#2a1a10}
.np .pc-wish i{display:block;border-bottom:1.5px solid #b9845a}
.np .vperks{background:#050405;border-top:3px solid #8b5e3c;padding-top:clamp(72px,8vw,110px);padding-bottom:clamp(72px,8vw,110px);display:flex;flex-direction:column;gap:44px;scroll-margin-top:150px}
.np .vh2{font-family:"Alfa Slab One",serif;font-weight:400;font-size:clamp(44px,5.4vw,76px);line-height:.95;text-transform:uppercase}
.np .vh2 b{font-weight:400;color:#f2c230}
.vgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:32px}
.np .perk{background:#16130f;border:1px solid #3a2c20;padding:30px;box-shadow:8px 8px 0 #8b5e3c;display:flex;flex-direction:column;gap:14px}
.perk:nth-child(1){rotate:-1.5deg}.perk:nth-child(2){rotate:1deg}.perk:nth-child(3){rotate:-.5deg}
.np .perk .n{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Alfa Slab One",serif;font-size:28px}
.np .perk h3{font-family:Cinzel,serif;font-weight:700;font-size:28px;color:#fff}
.np .perk p{font-size:17px;line-height:1.5;color:#cbbda9}
.np .vsteps{background:#8b5e3c;padding-top:clamp(72px,8vw,110px);padding-bottom:clamp(72px,8vw,110px);display:flex;flex-direction:column;gap:44px}
.np .step{padding:30px;box-shadow:8px 8px 0 #050405;display:flex;flex-direction:column;gap:12px}
.np .step .n{font-family:"Alfa Slab One",serif;font-size:64px;line-height:1}
.np .step h3{font-family:Cinzel,serif;font-weight:700;font-size:26px}
.np .step p{font-size:17px;font-weight:500;line-height:1.5}
.vjoin{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:center;scroll-margin-top:150px}
@media (min-width:900px){.vjoin{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.np .vjoin{padding-top:clamp(72px,8vw,110px);padding-bottom:clamp(72px,8vw,110px)}
.vjoin .l{display:flex;flex-direction:column;gap:28px}
.wcard{position:relative;width:100%;max-width:520px;aspect-ratio:1.586/1;overflow:hidden;rotate:-2deg}
.wcard .bar{position:absolute;left:0;right:0;top:0}
.wcard .dot{position:absolute;border-radius:50%}
.wcard .in{position:absolute;padding:clamp(18px,3vw,28px);display:flex;flex-direction:column;justify-content:space-between;left:0;right:0;bottom:0}
.wcard .top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.wcard .who{display:flex;flex-direction:column;gap:8px;position:relative}
.wcard .nm{line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%}
.np .wcard{border-radius:22px;background:#050405;border:1px solid #3a2c20;box-shadow:12px 12px 0 #8b5e3c}
.np .wcard .bar{height:16px;background:repeating-linear-gradient(90deg,#8b5e3c 0 22px,#f2c230 22px 44px,#b9845a 44px 66px,#1e3550 66px 88px)}
.np .wcard .dot{right:-70px;bottom:-110px;width:280px;height:280px;background:#f2c230}
.np .wcard .in{top:16px}
.np .wcard .top img{width:clamp(90px,16vw,124px);height:auto}
.np .wcard .vip{font-family:"Alfa Slab One",serif;font-size:clamp(22px,3vw,30px);background:#8b5e3c;color:#fff;padding:10px 16px;box-shadow:4px 4px 0 #f2c230}
.np .wcard .nm{font-family:"Alfa Slab One",serif;font-size:clamp(24px,3.4vw,36px);color:#fff;text-transform:uppercase}
.np .wcard .loc{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:clamp(14px,1.6vw,17px);letter-spacing:.16em;text-transform:uppercase;color:#d9a77c}
.np .vform{background:#f2e9dc;color:#0d0c0b;padding:clamp(22px,3vw,36px);box-shadow:10px 10px 0 #8b5e3c;display:flex;flex-direction:column;gap:16px}
.vform form{display:flex;flex-direction:column;gap:16px}
.vform label.f{display:flex;flex-direction:column;gap:8px}
.f2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px}
.vform input:not([type=checkbox]),.vform textarea{height:56px;padding:0 16px;width:100%;min-width:0;font-size:17px}
.vform textarea{height:auto;padding:14px 16px;min-height:120px;resize:vertical}
.vform .opt{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;font-size:14px;line-height:1.45;cursor:pointer}
.vform .opt input{width:22px;height:22px;margin:0}
.vform button[type=submit]{height:62px;border:0;cursor:pointer;margin-top:4px}
.vform button[disabled]{opacity:.7;cursor:progress}
.form-err{font-size:15px;color:#b3261e;min-height:0}
.form-err:empty{display:none}
.done{display:flex;flex-direction:column;gap:14px;padding:20px 0;text-align:center;align-items:center}
.done[hidden]{display:none}
.done .row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.np .vform label.f{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.np .vform input:not([type=checkbox]),.np .vform textarea{border:2px solid #0d0c0b;background:#fff;color:#0d0c0b;font-family:Barlow,sans-serif;border-radius:0}
.np .vform .opt input{accent-color:#8b5e3c}
.np .vform button[type=submit]{background:#f2c230;color:#0d0c0b;box-shadow:5px 5px 0 #0d0c0b;font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:20px;letter-spacing:.14em;text-transform:uppercase}
.np .done .t{font-family:"Alfa Slab One",serif;font-size:40px;text-transform:uppercase}
.np .done .d{font-size:18px;line-height:1.5;max-width:420px}
.np .wallet{background:#0d0c0b;color:#fff;padding:14px 20px;font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:16px;letter-spacing:.12em;text-transform:uppercase}

/* events (Newport) */
.np .ev-sec{display:flex;flex-direction:column;gap:28px}
.np .ev-sec[hidden]{display:none}
.np .ev-sec h2{font-family:"Alfa Slab One",serif;font-weight:400;font-size:clamp(34px,4vw,48px);line-height:1;text-transform:uppercase}
.evs{display:flex;flex-direction:column}
.evt{display:grid;grid-template-columns:84px minmax(0,1fr);gap:24px;align-items:center;padding:22px 0}
.evt .dt{display:flex;flex-direction:column;align-items:center;justify-content:center;height:84px}
.evt .ti{display:block}
.np .evt{border-bottom:1px solid #2a2520}
.np .evt .dt{border:1px solid #8b5e3c;color:#f2c230}
.np .evt .m{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:14px;letter-spacing:.16em;text-transform:uppercase}
.np .evt .d{font-family:"Alfa Slab One",serif;font-size:30px;line-height:1}
.np .evt .ti{font-family:Cinzel,serif;font-weight:700;font-size:22px;color:#fff}
.np .evt .tm{color:#b9a891;font-size:16px}
.hols{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:20px}
.hol{display:flex;flex-direction:column}
.hol-pic{position:relative;aspect-ratio:4/3;overflow:hidden}
.hol-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hol-tile{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-style:normal}
.hol-tile i,.hol-tile em{font-style:normal}
.has-img .hol-tile{display:none}
.hol-b{display:flex;flex-direction:column;gap:6px;padding:16px 18px 20px}
.hol-b p[hidden]{display:none}
.np .hol{background:#16130f;border:1px solid #3a2c20}
.np .hol-pic{background:#050405;border-bottom:3px solid #8b5e3c}
.np .hol-tile i{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:16px;letter-spacing:.22em;text-transform:uppercase;color:#d9a77c}
.np .hol-tile b{font-family:"Alfa Slab One",serif;font-weight:400;font-size:64px;line-height:1;color:#f2c230;text-shadow:4px 4px 0 #8b5e3c}
.np .hol-tile em{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:#cbbda9}
.np .hol-when{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:#d9a77c}
.np .hol h3{font-family:Cinzel,serif;font-weight:700;font-size:21px;color:#fff}
.np .hol p{font-size:15px;line-height:1.5;color:#b9a891}
.host{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(32px,5vw,72px);align-items:start;scroll-margin-top:150px}
.host .l{display:flex;flex-direction:column;gap:20px}
.np .host .l p{font-size:18px;line-height:1.5;color:#d8ccbb;max-width:480px}
.np .tel{font-family:"Alfa Slab One",serif;font-size:30px;color:#f2c230}

/* links page */
.links{display:flex;flex-direction:column;gap:12px;max-width:560px;width:100%}
.np .links a{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #8b5e3c;background:#16130f;padding:18px 22px;font-family:Cinzel,serif;font-weight:600;font-size:19px;color:#fff}
.np .links a.pri{background:#f2c230;color:#0d0c0b;border-color:#f2c230}
.np .links a span{font-family:"Alfa Slab One",serif;color:#f2c230}
.np .links a.pri span{color:#0d0c0b}

/* policy pages */
.prose{max-width:760px;display:flex;flex-direction:column;gap:18px;font-size:17px;line-height:1.6}
.prose h2{font-size:24px;margin-top:12px}
.np .prose h2{font-family:Cinzel,serif;font-weight:700;color:#fff}

/* ============================================================ MIDDLETOWN */
.md{background:#fff8ec;color:#1a1a1a;font-family:"Bricolage Grotesque",sans-serif;min-height:100vh}
.md .hdr{background:#fff;border-bottom:5px solid #f05a24}
.md .hdr-row{height:70px;padding:0 clamp(12px,2.5vw,32px) 0 clamp(16px,4vw,52px)}
.md main{padding-top:75px}
.md .hdr .logo{height:36px;aspect-ratio:1912/654}
.md .hdr .right{gap:clamp(12px,3vw,48px);align-self:stretch}
.md nav.main{align-items:center;gap:26px;font-family:Bevan,serif;font-size:16px;letter-spacing:.09em;color:#000}
.md nav.main a[aria-current=page]{color:#e31774}
.md .burger{border:2px solid #000;color:#000;align-self:center}
.md .order-btn{align-self:center;height:48px;display:flex;align-items:center;gap:12px;background:#f05a24;color:#fff;font-family:Bevan,serif;font-size:16px;letter-spacing:.1em;text-transform:uppercase;text-shadow:2px 2px 0 #c0202e;padding:0 clamp(16px,1.6vw,22px);box-shadow:5px 5px 0 #c0202e;transition:transform .15s ease,box-shadow .15s ease}
.md .order-btn:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 #c0202e;opacity:1}
.md .order-btn:active{transform:translate(5px,5px);box-shadow:0 0 0 #c0202e}
.md .order-btn i{display:flex;gap:3px}
.md .order-btn i b{width:6px;height:6px}
.md .drop{border-top:1px solid #eee;padding:6px clamp(16px,4vw,52px) 18px;font-family:Bevan,serif;font-size:17px;letter-spacing:.09em;color:#000}
.md .drop a{padding:14px 0;border-bottom:1px solid #f1e8da}
.md .drop a:last-child{border-bottom:0}
@media (max-width:1179px){.md nav.main{display:none}.md .burger{display:flex}}
@media (max-width:420px){.md .order-btn{font-size:14px;padding:0 12px}.md .order-btn i{display:none}.md .hdr .logo{height:30px}}

.md .pad{padding-left:clamp(20px,4vw,52px);padding-right:clamp(20px,4vw,52px)}
.md .ey{font-weight:700;font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:#c0202e}
.md .disp{font-weight:800;letter-spacing:-.02em;color:#1a74bb}
.md .btns{display:flex;flex-wrap:wrap;gap:12px;font-weight:700;font-size:17px}
.md .pill{padding:15px 24px;border-radius:999px;color:#fff}
.md .hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr))}
.md .hero .copy{display:flex;flex-direction:column;justify-content:center;gap:26px;padding:72px clamp(20px,4vw,56px) 72px clamp(20px,4vw,52px)}
.md .hero h1{line-height:1.4}
.md .hero .big{font-size:clamp(52px,6vw,84px);line-height:.96;text-wrap:balance}
.md .hero .sub{font-weight:500;font-size:19px;line-height:1.5;color:#4a4036;max-width:480px}
.md .hero .vid{background:#5fc6c9;padding:28px 0 0 28px;min-height:520px;display:flex}
.md .hero .frame{position:relative;flex:1;min-height:492px;overflow:hidden;background:#0b3a3c}
.md .hero .frame .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.md .hero .frame video.bg{opacity:0;transition:opacity .6s ease}
.md .hero .frame video.bg.is-playing{opacity:1}
.md .cstrip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:900px){.md .cstrip{grid-template-columns:repeat(4,minmax(0,1fr))}}
.md .cstrip div{padding:12px 12px 0}
.md .cstrip img{width:100%;height:240px;object-fit:cover;border-radius:8px 8px 0 0}
.md .team{background:#1a74bb;color:#fff;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:center}
.md .team img{width:100%;height:100%;min-height:380px;object-fit:cover}
.md .team .t{padding:72px clamp(20px,5vw,72px);display:flex;flex-direction:column;gap:22px}
.md .team h2{font-weight:800;font-size:clamp(40px,4.5vw,60px);line-height:1;letter-spacing:-.02em}
.md .team p{font-weight:500;font-size:19px;line-height:1.5;color:#dceaf7;max-width:460px}
.md .team a{align-self:flex-start;background:#f4e400;color:#1a1a1a;font-weight:700;font-size:17px;padding:15px 24px;border-radius:999px}

.md .page{padding-top:80px;padding-bottom:100px;display:flex;flex-direction:column;gap:36px}
.md .ptitle{display:flex;flex-direction:column;gap:12px}
.md .ptitle .big{font-size:clamp(52px,6vw,80px);line-height:1}
.md .ptitle h1.ey{line-height:1.4}
.md .chips{display:flex;flex-wrap:wrap;gap:8px;font-weight:700;font-size:15px}
.md .chips a{border:2px solid #1a1a1a;background:#fff;color:#1a1a1a;padding:9px 16px;border-radius:999px}
.md .chips a[aria-pressed=true]{background:var(--c,#1a74bb);color:var(--k,#fff)}
.md .mcat{background:var(--c);color:var(--k);border-radius:18px;padding:clamp(24px,4vw,48px);display:flex;flex-direction:column;gap:28px;scroll-margin-top:100px}
.md .mcat-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px}
.md .mcat-h h2{font-weight:800;font-size:40px;letter-spacing:-.01em}
.md .mcat-h a{background:#fff;color:#1a1a1a;font-weight:700;font-size:16px;padding:12px 20px;border-radius:999px}
.md .items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:14px}
.md .it{background:#fff;color:#1a1a1a;border-radius:12px;padding:20px 22px;display:flex;flex-direction:column;gap:6px}
.md .it-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.md .it-n{font-weight:800;font-size:19px}
.md .it-l{display:none}
.md .it-p{font-weight:800;font-size:18px;color:#c0202e;white-space:nowrap}
.md .it-d{font-weight:500;font-size:15px;line-height:1.5;color:#5a4f43;text-wrap:pretty}
.md .it-t{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-weight:700;font-size:13px;color:#e31774}
.md .it-t a{color:#1a74bb;font-size:14px}
.md .mcats{display:flex;flex-direction:column;gap:24px}
.md .mnote{font-size:15px;color:#7a6c58}
.np .mcats{display:flex;flex-direction:column;gap:64px}
.mcat[hidden]{display:none}
.md .gal{columns:3 300px;column-gap:12px}
.md .gal img{width:100%;height:auto;margin-bottom:12px;border-radius:12px;break-inside:avoid}

.md .ftr{background:#fff;border-top:5px solid #f05a24;padding-top:72px;padding-bottom:36px;display:flex;flex-direction:column;gap:48px}
.md .fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:44px}
.md .fcol{display:flex;flex-direction:column;gap:10px;font-weight:500;font-size:17px;line-height:1.5}
.md .fcol .lbl{font-family:Bevan,serif;font-size:15px;letter-spacing:.09em;color:#c0202e}
.md .fbrand{gap:16px}
.md .fbrand img{width:220px;height:auto}
.md .fbrand div{font-weight:700;font-size:18px}
.md .fcol .ph{font-weight:800}
.md .fcol .dir{font-weight:700;color:#1a74bb}
.md .ford{font-weight:600}
.md .hrs{display:grid;grid-template-columns:auto 1fr;gap:6px 22px;font-weight:500;font-size:16px}
.md .hrs span:nth-child(odd){color:#7a6c58}
.md .hrs .today{color:#e31774!important;font-weight:700}
.md .fbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;border-top:1px solid #eadfcd;padding-top:22px;font-weight:500;font-size:14px;color:#7a6c58}
.md .fbar nav{display:flex;gap:20px;flex-wrap:wrap}

/* VIP (Middletown) */
.md .vstrip{background:#145c96;color:#f4e400;text-align:center;padding:11px 16px;font-weight:800;font-size:14px;letter-spacing:.1em;text-transform:uppercase}
.md .vhero{position:relative;background:#f4e400;padding-top:clamp(48px,6vw,88px);padding-bottom:clamp(96px,9vw,120px);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));gap:clamp(36px,5vw,72px);align-items:center}
.md .vhero .l{display:flex;flex-direction:column;gap:24px}
.md .vhero .ey{font-weight:800;font-size:15px;letter-spacing:.12em}
.md .vhero .big{font-size:clamp(56px,6.8vw,104px);line-height:.92;color:#1a1a1a}
.md .vhero .big b{color:#e31774;text-shadow:5px 5px 0 #c0202e;font-weight:800}
.md .vhero p{font-weight:600;font-size:clamp(17px,1.5vw,21px);line-height:1.5;color:#2a2410;max-width:520px}
.md .vhero .btns{gap:14px;font-weight:800;font-size:18px}
.md .vhero .btns a{height:58px;display:inline-flex;align-items:center;padding:0 28px;border-radius:999px}
.md .pc{background-color:#f4e7c8;border-radius:6px;box-shadow:0 2px 0 #d8c499,10px 14px 0 #1a74bb}
.md .pc-in{border:2px solid #b9893f;border-radius:3px}
.md .pc-g,.md .pc-town{color:#8a3b12}
.md .pc-town{font-weight:700}
.md .pc-frame{background:#fff8e6;box-shadow:3px 3px 0 rgba(120,80,30,.25)}
.md .pc-r{border-left:2px solid #b9893f}
.md .pc-stamp{outline:3px dotted #f4e7c8}
.md .pc-stamp div{background:#e31774;color:#fff}
.md .pc-stamp b{font-family:Bevan,serif}
.md .pc-stamp span{font-weight:800}
.md .pc-post{border:2px solid rgba(26,116,187,.75);color:rgba(26,116,187,.85);font-weight:800}
.md .pc-wish p{color:#1a1a1a}
.md .pc-wish i{display:block;border-bottom:1.5px solid #b9893f}
.md .vperks{position:relative;background:#e31774;padding-top:clamp(64px,7vw,96px);padding-bottom:clamp(88px,9vw,112px);display:flex;flex-direction:column;gap:44px;scroll-margin-top:100px}
.md .vperks::after{content:"";position:absolute;left:0;right:0;bottom:0;height:24px;background:repeating-linear-gradient(90deg,#f4e400 0 24px,#b8d433 24px 48px,#5fc6c9 48px 72px,#f26a21 72px 96px)}
.md .vey{font-weight:800;font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.md .vh2{font-weight:800;font-size:clamp(48px,6vw,84px);line-height:.92;letter-spacing:-.02em}
.md .perk{background:#fff;border-radius:26px;padding:30px;box-shadow:8px 8px 0 #1a74bb;display:flex;flex-direction:column;gap:14px}
.md .perk .n{width:64px;height:64px;border-radius:50%;box-shadow:4px 4px 0 #c0202e;display:flex;align-items:center;justify-content:center;font-family:Bevan,serif;font-size:26px}
.md .perk h3{font-weight:800;font-size:28px;line-height:1}
.md .perk p{font-weight:500;font-size:17px;line-height:1.5}
.md .vsteps{background:#5fc6c9;padding-top:clamp(64px,7vw,96px);padding-bottom:clamp(64px,7vw,96px);display:flex;flex-direction:column;gap:44px}
.md .step{border-radius:26px;padding:30px;box-shadow:8px 8px 0 #1a74bb;display:flex;flex-direction:column;gap:12px}
.md .step .n{font-family:Bevan,serif;font-size:60px;line-height:1}
.md .step h3{font-weight:800;font-size:26px}
.md .step p{font-weight:600;font-size:17px;line-height:1.5}
.md .vjoin{background:#f4e400;padding-top:clamp(64px,7vw,96px);padding-bottom:clamp(88px,9vw,112px)}
.md .wcard{border-radius:28px;background:#5fc6c9;box-shadow:12px 12px 0 #1a74bb}
.md .wcard .bar{height:18px;background:repeating-linear-gradient(90deg,#f4e400 0 22px,#b8d433 22px 44px,#e31774 44px 66px,#f26a21 66px 88px)}
.md .wcard .dot{right:-60px;bottom:-60px;width:260px;height:260px;background:#1a74bb}
.md .wcard .in{top:18px}
.md .wcard .lg{background:#fff;border-radius:14px;padding:8px 12px;width:clamp(130px,24vw,190px)}
.md .wcard .lg img{width:100%;height:auto}
.md .wcard .vip{font-family:Bevan,serif;font-size:clamp(20px,2.8vw,28px);background:#e31774;color:#fff;padding:10px 16px;border-radius:12px;box-shadow:4px 4px 0 #c0202e}
.md .wcard .nm{font-weight:800;font-size:clamp(26px,3.6vw,38px);color:#1a1a1a}
.md .wcard .loc{font-weight:800;font-size:clamp(14px,1.6vw,17px);letter-spacing:.14em;text-transform:uppercase;color:#0b3a3c}
.md .vform{background:#fff;border-radius:30px;padding:clamp(22px,3vw,36px);box-shadow:10px 10px 0 #c0202e;display:flex;flex-direction:column;gap:16px}
.md .vform label.f{font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.md .vform input:not([type=checkbox]),.md .vform textarea{border:3px solid #1a1a1a;border-radius:16px;background:#fff;color:#1a1a1a;font-family:"Bricolage Grotesque",sans-serif;font-weight:500}
.md .vform .opt{font-weight:500}
.md .vform .opt input{width:24px;height:24px;accent-color:#e31774}
.md .vform button[type=submit]{border-radius:999px;background:#e31774;color:#fff;box-shadow:5px 5px 0 #c0202e;font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:21px}
.md .done .t{font-weight:800;font-size:44px;letter-spacing:-.02em;color:#e31774;text-shadow:4px 4px 0 #c0202e}
.md .done .d{font-weight:600;font-size:18px;line-height:1.5;max-width:420px}
.md .wallet{background:#1a74bb;color:#fff;padding:14px 20px;border-radius:999px;font-weight:700;font-size:16px}

/* events (Middletown) */
.md .ev-sec{display:flex;flex-direction:column;gap:24px}
.md .ev-sec[hidden]{display:none}
.md .ev-sec h2{font-weight:800;font-size:clamp(36px,4vw,52px);letter-spacing:-.02em;color:#1a74bb}
.md .evt{background:#fff;border-radius:14px;padding:18px 22px;margin-bottom:12px}
.md .evt .dt{background:#e31774;color:#fff;border-radius:12px}
.md .evt .m{font-family:Bevan,serif;font-size:13px;letter-spacing:.09em}
.md .evt .d{font-weight:800;font-size:32px;line-height:1}
.md .evt .ti{font-weight:800;font-size:21px}
.md .evt .tm{font-weight:500;color:#5a4f43}
.md .hol{background:#fff;border-radius:18px;overflow:hidden;box-shadow:6px 6px 0 var(--c,#1a74bb)}
.md .hol:nth-child(6n+1){--c:#5fc6c9}.md .hol:nth-child(6n+2){--c:#f4e400}.md .hol:nth-child(6n+3){--c:#e31774}
.md .hol:nth-child(6n+4){--c:#f26a21}.md .hol:nth-child(6n+5){--c:#b8d433}.md .hol:nth-child(6n+6){--c:#1a74bb}
.md .hol-pic{background:var(--c)}
.md .hol-tile{color:#1a1a1a}
.md .hol:nth-child(6n+3) .hol-tile,.md .hol:nth-child(6n+4) .hol-tile,.md .hol:nth-child(6n+6) .hol-tile{color:#fff}
.md .hol-tile i{font-family:Bevan,serif;font-size:16px;letter-spacing:.09em}
.md .hol-tile b{font-weight:800;font-size:68px;line-height:1;letter-spacing:-.03em}
.md .hol-tile em{font-weight:700;font-size:14px;letter-spacing:.1em;text-transform:uppercase}
.md .hol-when{font-family:Bevan,serif;font-size:13px;letter-spacing:.09em;color:#c0202e}
.md .hol h3{font-weight:800;font-size:21px}
.md .hol p{font-weight:500;font-size:15px;line-height:1.5;color:#5a4f43}
.md .host .l p{font-weight:500;font-size:18px;line-height:1.5;color:#4a4036;max-width:480px}
.md .tel{font-weight:800;font-size:32px;color:#1a74bb}
.md .links a{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:2px solid #1a1a1a;border-radius:999px;padding:16px 24px;font-weight:800;font-size:19px}
.md .links a.pri{background:#f05a24;color:#fff;border-color:#f05a24}
.md .prose h2{font-weight:800;color:#1a74bb}

/* ============================================================ LANDING */
.lp{background:#0d0c0b}
.lp-h1{margin:0;background:#050405;color:#cbbda9;text-align:center;padding:12px 16px;font:600 14px/1.4 "Barlow Condensed",sans-serif;letter-spacing:.2em;text-transform:uppercase}
.lp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));min-height:calc(100vh - 44px)}
.lp-np{position:relative;background:#0d0c0b;color:#f2e9dc;font-family:Barlow,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:36px;padding:80px 32px;overflow:hidden;min-height:560px}
.lp-np video,.lp-np .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3}
.lp-np video{opacity:0;transition:opacity .6s}
.lp-np video.is-playing{opacity:.3}
.lp-np .vig{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(13,12,11,.2),rgba(13,12,11,.85) 75%)}
.lp-np .logo{position:relative;width:min(260px,60%)}
.lp-np .ey{position:relative;font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:16px;letter-spacing:.26em;text-transform:uppercase;color:#d9a77c}
.lp-np .locs{position:relative;display:flex;flex-direction:column;gap:12px;width:min(380px,100%)}
.lp-np .locs a{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #8b5e3c;background:rgba(13,12,11,.6);padding:20px 24px}
.lp-np .locs .n{font-family:Cinzel,serif;font-weight:600;font-size:21px;color:#fff;display:block}
.lp-np .locs .a{font-size:15px;color:#cbbda9;display:block;margin-top:4px}
.lp-np .locs .go{font-family:"Alfa Slab One",serif;font-size:20px;color:#f2c230}
.lp-md{position:relative;background:#fff8ec;color:#1a1a1a;font-family:"Bricolage Grotesque",sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:36px;padding:80px 32px;min-height:560px}
.lp-md .logo{width:min(380px,80%)}
.lp-md .ey{font-weight:700;font-size:16px;letter-spacing:.2em;text-transform:uppercase;color:#c0202e}
.lp-md .go-md{display:flex;justify-content:space-between;align-items:center;gap:16px;width:min(380px,100%);background:#d5430f;color:#fff;padding:20px 26px;border-radius:999px}
.lp-md .go-md .n{font-weight:800;font-size:21px;display:block}
.lp-md .go-md .a{font-weight:500;font-size:15px;color:#fff;display:block;margin-top:2px}
.lp-md .go-md .go{font-weight:800;font-size:22px}
.chips6{display:flex;gap:6px}
.chips6 b{width:22px;height:8px}
.c-tq{background:#5fc6c9}.c-ye{background:#f4e400}.c-mg{background:#e31774}.c-or{background:#f26a21}.c-li{background:#b8d433}.c-bl{background:#1a74bb}
@media (max-width:480px){.np .hero .big{font-size:40px}.np .ptitle .big,.np .vhero .big{font-size:44px}.md .hero .big{font-size:46px}}

/* VIP location picker (Newport: two stores) */
.vfields{display:flex;flex-direction:column;gap:16px}
.vfields[hidden],.vpick[hidden]{display:none}
.vpick{display:flex;flex-direction:column;gap:12px}
.np .vp-q{font-family:"Alfa Slab One",serif;font-size:clamp(26px,3vw,34px);line-height:1;text-transform:uppercase;color:#0d0c0b}
.np .vp-s{font-size:16px;line-height:1.5;color:#3d3328;margin-bottom:6px}
.np .vp-btn{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;text-align:left;cursor:pointer;background:#0d0c0b;color:#fff;border:2px solid #0d0c0b;padding:18px 22px;box-shadow:5px 5px 0 #8b5e3c;transition:transform .15s ease,box-shadow .15s ease}
.np .vp-btn:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 #8b5e3c}
.np .vp-btn .n{display:block;font-family:Cinzel,serif;font-weight:700;font-size:21px}
.np .vp-btn .a{display:block;margin-top:4px;font-size:15px;color:#cbbda9}
.np .vp-btn .go{font-family:"Alfa Slab One",serif;font-size:22px;color:#f2c230}
.np .vp-chosen{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:#6b3a1c}
.np .vp-chosen b{color:#0d0c0b}
.vp-change{background:none;border:0;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:#8b5e3c;text-decoration:underline;cursor:pointer}
/* wallet card on phones: keep the name and location off the big circle */
@media (max-width:520px){.wcard .dot{width:150px!important;height:150px!important;right:-50px!important;bottom:-60px!important}.wcard .nm{max-width:100%}}

/* ============================================================ MENU (Casa Del Rio flow, branded) */
:root{--hdr:131px}
.m-hero{padding-top:clamp(56px,6vw,90px);padding-bottom:40px}
.m-hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:clamp(24px,4vw,56px);align-items:end}
.m-hero-t{display:flex;flex-direction:column;gap:18px}
.m-hero .lede{font-size:18px;line-height:1.5;max-width:560px}
.m-tools{display:flex;flex-direction:column;gap:14px}
.search{position:relative;display:block}
.search .ring{position:absolute;left:20px;top:50%;width:18px;height:18px;margin-top:-11px;border:3px solid currentColor;border-radius:50%}
.search .tail{position:absolute;left:35px;top:50%;width:10px;height:3px;margin-top:6px;background:currentColor;border-radius:2px;transform:rotate(45deg)}
.search input{width:100%;height:60px;padding:0 20px 0 56px;font-size:18px;outline:none;-webkit-appearance:none;appearance:none}
.fchips{display:flex;flex-wrap:wrap;gap:10px}
.chip{height:44px;padding:0 18px;cursor:pointer}
.rail{position:sticky;top:var(--hdr);z-index:15}
.rail-in{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding:12px clamp(16px,4vw,52px)}
.rail-in::-webkit-scrollbar{display:none}
.rail button{flex:none;display:flex;align-items:center;gap:8px;height:44px;padding:0 16px;cursor:pointer;white-space:nowrap}
.rail button i{width:12px;height:12px;border-radius:50%;background:var(--c)}
.rail button[data-hide]{display:none}
.courses{padding-top:32px;padding-bottom:100px}
.courses-in{display:flex;flex-direction:column;gap:32px}
.m-back{align-self:flex-start;cursor:pointer}
.m-back[hidden],.m-empty[hidden],.course[data-hide],.item[data-hide]{display:none}
.m-empty{padding:48px 28px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.m-clear{cursor:pointer}
.course{overflow:hidden;scroll-margin-top:calc(var(--hdr) + 84px)}
.course-hd{padding:22px clamp(20px,3vw,32px);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.course-hd h2{margin:0;line-height:1}
.course-hd .cnt{font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:8px 12px;white-space:nowrap}
.items{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:0 clamp(20px,3vw,40px);padding:8px clamp(16px,3vw,32px) 16px}
.item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;text-align:left;width:100%;padding:16px 4px;background:none;border:0;cursor:pointer;font:inherit;color:inherit}
.item.ph{grid-template-columns:72px minmax(0,1fr) auto}
.item>img{width:72px;height:72px;object-fit:cover}
.item .tx{display:flex;flex-direction:column;gap:5px;min-width:0}
.item .top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.item .ds{font-size:15px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.item .pr{white-space:nowrap}
.ttag{font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 7px}
.sheet-bg{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}
.sheet-bg[hidden]{display:none}
.sheet{position:relative;width:100%;max-width:560px;max-height:92vh;overflow:auto}
.sheet .x{position:absolute;right:14px;top:14px;z-index:2;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}
.sheet .ph{width:100%;height:auto;aspect-ratio:4/3;max-height:min(38vh,420px);object-fit:cover;display:block}
.sheet .ph[hidden],.sheet .band[hidden],.sheet .pr[hidden],.sheet .ds[hidden],.sheet .tg[hidden]{display:none}
.sheet .band{height:18px}
.sheet .bd{padding:26px clamp(20px,4vw,32px) 16px;display:flex;flex-direction:column;gap:14px}
.sheet .cs{padding-right:60px}
.sheet .nm{padding-right:44px}
.sheet .act{position:sticky;bottom:0;padding:4px clamp(20px,4vw,32px) 22px}
.sheet .order{display:inline-flex;align-items:center;justify-content:center;height:58px;padding:0 28px}
@media (max-width:699px){.sheet-bg{align-items:flex-end;padding:0}.sheet .order{width:100%}}

/* Newport skin */
.np .m-hero .lede{color:#d8ccbb}
.np .search{color:#f2c230}
.np .search input{background:#16130f;color:#f2e9dc;border:1px solid #8b5e3c;box-shadow:5px 5px 0 #8b5e3c;font-family:Barlow,sans-serif}
.np .search input::placeholder{color:#8f826f}
.np .search input:focus{border-color:#f2c230}
.np .chip{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:15px;letter-spacing:.12em;text-transform:uppercase;background:transparent;color:#d8ccbb;border:1px solid #5a4c3d}
.np .chip[aria-pressed=true]{background:#f2c230;color:#0d0c0b;border-color:#f2c230}
.np .rail{background:#050405;border-top:1px solid #2a2520;border-bottom:3px solid #8b5e3c}
.np .rail button{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:15px;letter-spacing:.1em;text-transform:uppercase;background:#16130f;color:#f2e9dc;border:1px solid #3a2c20}
.np .rail button i{box-shadow:0 0 0 2px #050405}
.np .rail button span{font-size:13px;color:#8f826f;letter-spacing:.04em}
.np .rail button[aria-pressed=true]{background:#8b5e3c;color:#fff;border-color:#8b5e3c}
.np .rail button[aria-pressed=true] span{color:#f2e9dc}
.np .m-back,.np .m-clear{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:16px;letter-spacing:.14em;text-transform:uppercase;background:transparent;color:#e3b48b;border:1px solid #b9845a;padding:12px 18px}
.np .m-empty{background:#16130f;border:1px solid #3a2c20;box-shadow:8px 8px 0 #8b5e3c}
.np .m-empty .t{font-family:"Alfa Slab One",serif;font-size:32px;text-transform:uppercase}
.np .course{background:#16130f;border:1px solid #3a2c20;box-shadow:8px 8px 0 #8b5e3c}
.np .course-hd{background:#050405;border-bottom:3px solid var(--c)}
.np .course-hd h2{font-family:Cinzel,serif;font-weight:700;font-size:clamp(26px,3vw,34px);color:#fff}
.np .course-hd .cnt{font-family:"Barlow Condensed",sans-serif;font-weight:600;color:#0d0c0b;background:#f2c230}
.np .item{border-bottom:1px dotted #5a4c3d}
.np .item:hover .nm{color:#f2c230}
.np .item>img{border:1px solid #8b5e3c;box-shadow:3px 3px 0 #8b5e3c}
.np .item .nm{font-family:Cinzel,serif;font-weight:600;font-size:19px;color:#fff;line-height:1.2}
.np .item .ds{color:#b9a891}
.np .item .pr{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:19px;color:#f2c230}
.np .ttag{font-family:"Barlow Condensed",sans-serif;font-weight:700;color:#d9a77c;border:1px solid #8b5e3c}
.np .sheet-bg{background:rgba(5,4,5,.78)}
.np .sheet{background:#f2e9dc;color:#0d0c0b;box-shadow:10px 10px 0 #8b5e3c}
.np .sheet .x{background:#0d0c0b;color:#f2c230;border:3px solid #f2e9dc;box-shadow:0 0 0 2px #0d0c0b}
.np .sheet .band{background:repeating-linear-gradient(90deg,#8b5e3c 0 22px,#f2c230 22px 44px,#b9845a 44px 66px,#1e3550 66px 88px)}
.np .sheet .cs{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:15px;letter-spacing:.18em;text-transform:uppercase;color:#8b5e3c}
.np .sheet .nm{font-family:"Alfa Slab One",serif;font-size:clamp(28px,4vw,40px);line-height:1;text-transform:uppercase}
.np .sheet .pr{font-family:"Alfa Slab One",serif;font-size:28px;line-height:1;color:#8b5e3c}
.np .sheet .ds{font-size:18px;line-height:1.55;color:#2a1a10}
.np .sheet .tg{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#6b3a1c}
.np .sheet .act{background:#f2e9dc;box-shadow:0 -14px 14px -10px rgba(13,12,11,.12)}
.np .sheet .order{background:#f2c230;color:#0d0c0b;box-shadow:5px 5px 0 #0d0c0b;font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:20px;letter-spacing:.14em;text-transform:uppercase}
@media (max-width:699px){.np .sheet{box-shadow:0 -6px 0 #8b5e3c}}

/* Middletown skin */
.md .m-hero .lede{color:#4a4036;font-weight:500}
.md .search{color:#1a1a1a}
.md .search input{background:#fff;color:#1a1a1a;border:3px solid #1a1a1a;border-radius:999px;box-shadow:5px 5px 0 #c0202e;font-family:"Bricolage Grotesque",sans-serif;font-weight:600}
.md .search input::placeholder{color:#7a6c58}
.md .search input:focus{box-shadow:5px 5px 0 #1a74bb}
.md .chip{font-weight:800;font-size:15px;background:#fff;color:#1a1a1a;border:3px solid #1a1a1a;border-radius:999px}
.md .chip[aria-pressed=true]{background:#1a74bb;color:#fff}
.md .rail{background:#fff;border-bottom:5px solid #f05a24}
.md .rail button{font-weight:800;font-size:15px;background:#fff8ec;color:#1a1a1a;border:2px solid #1a1a1a;border-radius:999px;box-shadow:3px 3px 0 #c0202e}
.md .rail button i{box-shadow:0 0 0 2px #1a1a1a}
.md .rail button span{font-weight:700;font-size:13px;color:#7a6c58}
.md .rail button[aria-pressed=true]{background:#145c96;color:#fff;box-shadow:3px 3px 0 #f4e400}
.md .rail button[aria-pressed=true] span{color:#f4e400}
.md .m-back,.md .m-clear{font-weight:800;font-size:16px;background:#fff;color:#1a1a1a;border:3px solid #1a1a1a;border-radius:999px;padding:12px 20px;box-shadow:4px 4px 0 #1a74bb}
.md .m-empty{background:#fff;border-radius:28px;box-shadow:8px 8px 0 #1a74bb}
.md .m-empty .t{font-weight:800;font-size:34px;letter-spacing:-.02em;color:#1a74bb}
.md .course{background:#fff;border-radius:28px;box-shadow:8px 8px 0 #1a74bb}
.md .course-hd{background:var(--c);color:var(--ink)}
.md .course-hd h2{font-weight:800;font-size:clamp(30px,3.6vw,44px);letter-spacing:-.02em;color:inherit}
.md .course-hd .cnt{font-weight:800;background:#fff;color:#1a1a1a;border-radius:999px}
.md .item{border-bottom:3px dotted #eadfcd}
.md .item:hover .nm{color:#c0202e}
.md .item>img{border-radius:14px;border:3px solid #fff;box-shadow:3px 3px 0 #c0202e}
.md .item .nm{font-weight:800;font-size:18px;line-height:1.2}
.md .item .ds{color:#5a4f43;font-weight:500}
.md .item .pr{font-weight:800;font-size:18px;color:#c0202e}
.md .ttag{font-weight:800;color:#fff;background:#e31774;border-radius:6px}
.md .sheet-bg{background:rgba(26,26,26,.55)}
.md .sheet{background:#fff;color:#1a1a1a;border-radius:28px;box-shadow:10px 10px 0 #c0202e}
.md .sheet .x{background:#1a74bb;color:#f4e400;border:3px solid #fff;box-shadow:0 0 0 3px #1a74bb}
.md .sheet .band{background:repeating-linear-gradient(90deg,#f4e400 0 24px,#b8d433 24px 48px,#5fc6c9 48px 72px,#e31774 72px 96px,#f26a21 96px 120px)}
.md .sheet .cs{font-family:Bevan,serif;font-size:14px;letter-spacing:.09em;color:#e31774}
.md .sheet .nm{font-weight:800;font-size:clamp(30px,4.4vw,42px);line-height:1;letter-spacing:-.02em;color:#1a74bb}
.md .sheet .pr{font-weight:800;font-size:28px;line-height:1;color:#c0202e}
.md .sheet .ds{font-weight:500;font-size:18px;line-height:1.55}
.md .sheet .tg{font-weight:800;font-size:14px;color:#e31774}
.md .sheet .act{background:#fff;box-shadow:0 -14px 14px -10px rgba(26,26,26,.1)}
.md .sheet .order{background:#d5430f;color:#fff;border-radius:999px;box-shadow:5px 5px 0 #c0202e;font-family:Bevan,serif;font-size:18px;letter-spacing:.08em;text-transform:uppercase;text-shadow:2px 2px 0 #c0202e}
@media (max-width:699px){.md .sheet{border-radius:28px 28px 0 0;box-shadow:0 -6px 0 #c0202e}}
