/* ===== Grown Up Bar Crawl — brand stylesheet (burgundy/tan/black, editorial) ===== */
:root{
  --burgundy:#6f1f2d; --tan:#d8c4a5; --ink:#1a1a1a;
  --serif:"Hoefler Text","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,system-ui,sans-serif;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  background:var(--tan); color:var(--ink); font-family:var(--sans);
  line-height:1.55; -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; }
.wrap{ max-width:940px; margin:0 auto; padding:0 clamp(1.4rem,5vw,3rem); }

.tcaps{ font-family:var(--serif); text-transform:uppercase; letter-spacing:0.42em; font-size:0.72rem; color:var(--burgundy); }

/* ---------- Header ---------- */
header{ padding:1.5rem 0; }
.nav{ display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.nav .home{ font-family:var(--sans); font-size:0.68rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--burgundy); text-decoration:none; opacity:0.75; }
.nav .home:hover{ opacity:1; }

/* ---------- Hero ---------- */
.hero{ padding:clamp(1.5rem,4vw,3rem) 0 clamp(2.5rem,6vw,4rem); text-align:center; }
.mono-mark{ width:104px; height:104px; margin:0 auto 1.8rem; }
.hero .wordmark{ font-family:var(--serif); color:var(--burgundy); font-weight:600; letter-spacing:-0.01em; line-height:0.98; font-size:clamp(2.6rem,8vw,4.8rem); }
.hero .lede{ font-family:var(--serif); font-size:clamp(1.35rem,3.4vw,2.1rem); color:var(--ink); margin-top:1.5rem; line-height:1.28; }
.hero .sub{ font-family:var(--sans); font-size:clamp(1rem,2vw,1.15rem); color:#333; margin:1.2rem auto 0; max-width:42ch; }
.hero .season{ margin-top:1.8rem; }

/* ---------- Sections ---------- */
section{ padding:clamp(2.6rem,6vw,4.5rem) 0; }
hr.rule{ height:1px; background:var(--burgundy); opacity:0.4; border:0; max-width:940px; margin:0 auto; }
.sec-label{ text-align:center; margin-bottom:2.6rem; }

.threes{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(1.6rem,4vw,3rem); }
@media(max-width:680px){ .threes{ grid-template-columns:1fr; text-align:center; } }
.three h3{ font-family:var(--serif); color:var(--burgundy); font-size:1.7rem; font-weight:600; }
.three p{ font-family:var(--sans); margin-top:0.7rem; color:#333; font-size:0.98rem; line-height:1.6; }

/* ---------- Tickets = burgundy anchor block ---------- */
.tickets{ background:var(--burgundy); color:var(--tan); text-align:center; }
.tickets .onsale{ font-family:var(--serif); text-transform:uppercase; letter-spacing:0.42em; font-size:0.72rem; color:var(--tan); }
.tickets h2{ font-family:var(--serif); color:var(--tan); font-size:clamp(1.9rem,5vw,2.9rem); margin-top:1.1rem; font-weight:600; }
.tickets p{ font-family:var(--sans); color:rgba(216,196,165,0.82); margin:1.1rem auto 0; max-width:42ch; }

.tk-row{ margin-top:2rem; display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
.btn{ font-family:var(--sans); text-transform:uppercase; letter-spacing:0.14em; font-size:0.72rem; padding:0.85rem 1.5rem; text-decoration:none; border:1.5px solid var(--tan); color:var(--tan); background:transparent; display:inline-block; transition:background .18s ease, color .18s ease; }
.btn:hover{ background:var(--tan); color:var(--burgundy); }
.btn.solid{ background:var(--tan); color:var(--burgundy); }
.btn.solid:hover{ background:transparent; color:var(--tan); }
.btn.disabled{ opacity:0.5; pointer-events:none; }
.btn.burg{ border-color:var(--burgundy); color:var(--burgundy); }
.btn.burg:hover{ background:var(--burgundy); color:var(--tan); }
.btn.burg.solid{ background:var(--burgundy); color:var(--tan); }
.btn.burg.solid:hover{ background:transparent; color:var(--burgundy); }

/* ---------- Follow ---------- */
.follow{ text-align:center; }
.follow h2{ font-family:var(--serif); color:var(--burgundy); font-size:clamp(1.7rem,4.5vw,2.5rem); font-weight:600; }
.follow p{ margin:1.1rem auto 0; max-width:40ch; color:#333; }

/* ---------- Footer ---------- */
footer{ border-top:1px solid rgba(26,26,26,0.2); padding:2.4rem 0 2.8rem; text-align:center; }
footer .fmark{ font-family:var(--serif); text-transform:uppercase; letter-spacing:0.4em; font-size:0.72rem; color:var(--burgundy); }
footer .fmeta{ font-family:var(--sans); font-size:0.66rem; letter-spacing:0.1em; text-transform:uppercase; color:rgba(26,26,26,0.55); margin-top:0.9rem; }
footer .fmeta a{ color:var(--burgundy); text-decoration:none; }
footer .fmeta a:hover{ text-decoration:underline; }
