/* The Roundup — site-specific styles. Loaded after base.css. */

/* Fonts: latin subsets declared here (display=optional, preloaded in <head>) to keep LCP and CLS low */
@font-face{font-family:'Rye';font-style:normal;font-weight:400;font-display:optional;src:url(https://fonts.gstatic.com/s/rye/v17/r05XGLJT86YzEZ7t.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:optional;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7E_DMs5.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:optional;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E30-8s51os.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:optional;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3t-4s51os.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Headings: Barlow everywhere except the H1 and the poster (Rye) */
h2,h3,h4{font-family:var(--font-body);letter-spacing:-.01em}
h2{font-weight:700;font-size:clamp(1.9rem,1.4rem + 2vw,2.8rem)}
h3{font-weight:600}

/* ---- Header: dark, so the white logo reads ---- */
.site-header{background:var(--night);border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:none}
.site-header .brand img{height:60px;width:auto;margin-block:-6px}
.site-header .nav a{color:#e9e5df;font-size:var(--fs-md)}
.site-header .nav a:hover{color:#fff;text-decoration:underline}
.site-header .nav a.btn-primary{color:#fff}
.nav-toggle{color:#fff;min-width:44px;min-height:44px}
@media(max-width:860px){
  .site-header .nav{background:var(--night);border-bottom-color:rgba(255,255,255,.12)}
  .site-header .nav a{border-bottom-color:rgba(255,255,255,.12)}
}
.btn{min-height:44px}

/* ---- Hero ---- */
.hero-night{background:var(--night);color:#f3efe9;padding-block:clamp(2.5rem,7vw,5rem) clamp(2rem,4vw,3rem)}
.hero-night h1{font-family:var(--font-display);font-weight:400;letter-spacing:0;margin:0 0 var(--s-5);line-height:.95}
.hero-night h1 .name{display:block;font-size:clamp(3.4rem,11vw,9rem);color:#fff}
.hero-night h1 .what{display:block;font-family:var(--font-body);font-weight:700;font-size:clamp(1.15rem,1rem + 1vw,1.7rem);line-height:1.2;color:var(--accent);margin-top:var(--s-4);letter-spacing:0}
.hero-night .lede{color:#d9d3cb;max-width:52ch}
.hero-night .actions{margin-top:var(--s-6)}
.btn-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.btn-light:hover{background:#fff;color:var(--night)}

.stage-photo{margin:0;background:var(--night)}
.stage-photo img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:center 30%;animation:settle 1.6s var(--ease) both}
.stage-photo figcaption{color:#b9b2a8;font-size:var(--fs-sm);padding:var(--s-3) 0 var(--s-5)}
@media(max-width:640px){.stage-photo img{aspect-ratio:4/3;object-position:45% 35%}}
@keyframes settle{from{transform:scale(1.04)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.stage-photo img{animation:none}}

/* ---- Two doors ---- */
.doors{display:grid;gap:var(--s-8) var(--s-7);grid-template-columns:1fr}
@media(min-width:900px){.doors{grid-template-columns:1fr 1fr}}
.doors h2{margin-bottom:var(--s-4)}
.doors .facts{list-style:none;padding:0;margin:var(--s-5) 0;border-top:1px solid var(--line)}
.doors .facts li{padding:var(--s-3) 0;border-bottom:1px solid var(--line)}
.doors .facts strong{display:block;font-weight:600}
.doors .facts span{color:var(--ink-2);font-size:var(--fs-sm)}
.inline-links{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-5);margin-top:var(--s-4)}
.inline-links a{font-weight:600;padding-block:.6em}

/* ---- Poster wall ---- */
.poster{background:var(--night);color:#f3efe9;padding-block:var(--section)}
.poster h2{color:#fff}
.poster .intro{color:#cfc8bf}
.lineup{list-style:none;padding:0;margin:var(--s-7) 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.15em .5em;font-family:var(--font-display);line-height:1.05;color:#f3efe9}
.lineup li{font-size:clamp(1.3rem,1rem + 1.4vw,2.1rem)}
.lineup li::after{content:"\2605";font-size:.45em;color:var(--ember);margin-left:.5em;vertical-align:.35em}
.lineup li:last-child::after{content:none}
.lineup .xl{font-size:clamp(2rem,1.3rem + 3.6vw,4.2rem);color:#fff}
.lineup .lg{font-size:clamp(1.6rem,1.1rem + 2.4vw,3rem);color:var(--accent)}
.poster .source{margin-top:var(--s-7);color:#a59d93;font-size:var(--fs-sm)}

/* ---- Visit ---- */
.visit{display:grid;gap:var(--s-7);grid-template-columns:1fr}
@media(min-width:900px){.visit{grid-template-columns:1.1fr 1fr}}
.visit h3{font-size:var(--fs-lg);margin:var(--s-6) 0 var(--s-2)}
.visit ol{margin:0;padding-left:1.2em;color:var(--ink-2)}
.visit ol li+li{margin-top:.3em}
.addr{font-size:var(--fs-lg);font-style:normal;line-height:1.4}
.addr strong{font-weight:700}
.hours{font-size:var(--fs-md);max-width:22rem}
.map{aspect-ratio:1/1;border-radius:var(--radius)}
.stays{margin-top:var(--s-6)}

/* ---- Good to know ---- */
.faq details{border-radius:var(--radius)}
.faq summary{min-height:44px}

/* ---- Footer ---- */
.site-footer{background:var(--night)}
.site-footer .brand img{height:56px;width:auto}
.site-footer address{font-style:normal}
