:root{--accent:#7a2e5c;--accent2:#f3c94c;--dark:#271a27;--paper:#fff6dc;--white:#fff;--line:color-mix(in srgb,var(--dark) 22%,transparent);--shadow:0 16px 44px color-mix(in srgb,var(--dark) 14%,transparent)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--dark);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}a{color:inherit}button,input,textarea{font:inherit}.skip{position:fixed;left:1rem;top:-5rem;background:var(--dark);color:#fff;padding:.8rem 1rem;z-index:99}.skip:focus{top:1rem}.site-head{max-width:1180px;margin:1rem auto 0;display:grid;align-items:center;gap:1rem;padding:1rem 1.2rem}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-weight:800;font-size:1.15rem}.brand b{display:grid;place-items:center;width:3.1rem;height:3.1rem;background:var(--accent);color:var(--paper);font-size:1rem}.brand span{display:flex;flex-direction:column}.brand small{font-weight:500;font-size:.72rem;opacity:.72}.site-head nav{display:flex;gap:.35rem;flex-wrap:wrap}.site-head nav a{text-decoration:none;padding:.65rem .8rem;border:1px solid transparent;font-weight:700;font-size:.88rem}.site-head nav a:hover,.site-head nav a:focus-visible,.site-head nav a[aria-current]{border-color:var(--dark);background:var(--white)}.menu{display:none}.status,.edition,.ticket-no,.floor-key{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.bento-head{grid-template-columns:1fr auto;grid-template-areas:"brand status" "nav nav"}.bento-head .brand{grid-area:brand}.bento-head .status{grid-area:status}.bento-head nav{grid-area:nav;background:var(--dark);padding:.4rem}.bento-head nav a{color:var(--paper)}.bento-head nav a:hover,.bento-head nav a:focus-visible,.bento-head nav a[aria-current]{color:var(--dark);background:var(--accent2)}.journal-head{grid-template-columns:1fr auto;grid-template-areas:"brand edition" "nav nav";border-bottom:2px solid var(--dark)}.journal-head .brand{grid-area:brand}.journal-head nav{grid-area:nav}.journal-head .edition{grid-area:edition}.journal-head .brand b{border-radius:50%}.floor-head{grid-template-columns:auto 1fr;grid-template-areas:"key key" "brand nav";border:1px solid var(--dark);background:linear-gradient(90deg,transparent 49.7%,color-mix(in srgb,var(--accent) 20%,transparent) 50%)}.floor-head .floor-key{grid-area:key;border-bottom:1px solid var(--dark)}.floor-head .brand{grid-area:brand}.floor-head nav{grid-area:nav;justify-content:flex-end}.ticket-head{grid-template-columns:1fr auto;grid-template-areas:"brand no" "nav nav";background:var(--white);border:2px solid var(--dark);border-radius:14px;position:relative}.ticket-head:after{content:"";position:absolute;left:72%;top:-10px;bottom:-10px;border-left:3px dotted var(--dark)}.ticket-head .brand{grid-area:brand}.ticket-head .ticket-no{grid-area:no}.ticket-head nav{grid-area:nav}.ticket-head .brand b{clip-path:polygon(12% 0,88% 0,100% 12%,100% 88%,88% 100%,12% 100%,0 88%,0 12%)}main{max-width:1180px;margin:auto;padding:2.5rem 1.2rem 5rem}.hero{min-height:520px;padding:clamp(2rem,8vw,6rem);display:flex;flex-direction:column;justify-content:center;background:var(--dark);color:var(--paper);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:280px;height:280px;border:50px solid var(--accent);right:-70px;bottom:-80px;border-radius:50%;opacity:.7}.hero h1,.page-intro h1,.review-head h1{font-size:clamp(2.6rem,7vw,6.4rem);line-height:.94;letter-spacing:-.055em;margin:.25rem 0 1.2rem;max-width:940px}.hero .lead{max-width:760px;position:relative;z-index:1}.lead{font-size:1.2rem}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-weight:850;font-size:.75rem}.hero-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:1rem;position:relative;z-index:1}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--accent);color:var(--dark);border:2px solid var(--dark);padding:.82rem 1.1rem;text-decoration:none;font-weight:850;box-shadow:4px 4px 0 var(--dark);cursor:pointer}.hero .button{border-color:var(--paper);box-shadow:4px 4px 0 var(--paper)}.button:hover,.button:focus-visible{transform:translate(2px,2px);box-shadow:2px 2px 0 currentColor}.button.secondary{background:var(--accent2)}.textlink{font-weight:850;text-underline-offset:.25rem}.notice,.panel,.responsible,.org-card,.warning{margin:1.4rem 0;padding:1.5rem;background:var(--white);border:1px solid var(--line)}.notice{border-left:8px solid var(--accent)}.venue-grid,.card-grid,.budget,.columns,.pros-cons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:1.4rem 0}.venue-card,.card-grid article,.budget>div{position:relative;padding:1.7rem;background:var(--white);border:1px solid var(--line)}.venue-card .number{font-size:4rem;font-weight:900;color:var(--accent);line-height:1}.venue-card h2,.panel h2,.review h2{font-size:clamp(1.35rem,3vw,2.2rem);line-height:1.1;margin:.45rem 0}.pills{display:flex;gap:.45rem;flex-wrap:wrap;margin:1rem 0}.pills span{padding:.3rem .55rem;background:color-mix(in srgb,var(--accent2) 30%,var(--white));border:1px solid var(--dark);font-size:.75rem;font-weight:800}.split{display:grid;grid-template-columns:1.4fr .8fr;gap:1.2rem;margin:1.4rem 0}.split>div{padding:2rem;background:var(--white);border:1px solid var(--line)}.scorebox{padding:1.5rem;background:var(--dark)!important;color:var(--paper);display:flex;flex-direction:column;gap:.7rem}.scorebox span{text-transform:uppercase;letter-spacing:.15em;font-weight:800}.scorebox strong{font-size:1.7rem;color:var(--accent2)}.page-intro{padding:3rem 0 2rem;border-bottom:2px solid var(--dark);margin-bottom:1.5rem}.page-intro p{max-width:780px;font-size:1.12rem}.review{max-width:940px;margin:auto}.review-head{padding:2rem 0;border-bottom:2px solid var(--dark)}.review section{padding:1.6rem 0;border-bottom:1px solid var(--line)}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);margin:1.5rem 0;border:1px solid var(--line)}.facts div{background:var(--white);padding:1rem}.facts dt{font-weight:850;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.facts dd{margin:.35rem 0 0}.pros-cons ul,.warning ul{padding-left:1.2rem}.next{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;font-weight:850}.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.filter{padding:.7rem 1rem;border:1px solid var(--dark);background:var(--white);font-weight:800;cursor:pointer}.filter.active{background:var(--dark);color:var(--paper)}.compare{overflow:auto;border:1px solid var(--dark);background:var(--white)}table{width:100%;border-collapse:collapse;min-width:700px}th,td{text-align:left;vertical-align:top;padding:1rem;border-bottom:1px solid var(--line)}thead th{background:var(--dark);color:var(--paper)}tbody th{width:20%}.steps{list-style:none;counter-reset:step;margin:2rem 0;padding:0}.steps li{display:grid;grid-template-columns:minmax(180px,.7fr) 1.5fr;gap:1.3rem;padding:1.4rem;border-top:1px solid var(--dark)}.steps li:before{counter-increment:step;content:"0" counter(step);font-weight:900;color:var(--accent);grid-row:1/span 2;font-size:2rem}.steps b{font-size:1.15rem}.steps span{grid-column:3}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.budget{grid-template-columns:repeat(3,1fr)}.budget span{font-size:3rem;color:var(--accent);font-weight:900}.accordion details{padding:1.2rem 0;border-bottom:1px solid var(--dark)}.accordion summary{font-weight:850;font-size:1.2rem;cursor:pointer}.legal{max-width:820px}.legal h2{margin-top:2rem}.org-card address{font-style:normal;font-weight:750}.contact{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:840px}.contact label{display:flex;flex-direction:column;font-weight:750}.contact input,.contact textarea{border:1px solid var(--dark);background:var(--white);padding:.8rem}.contact label:nth-of-type(4),.contact .check{grid-column:1/-1}.contact .check{flex-direction:row;gap:.6rem}.missing{text-align:center;padding:8rem 1rem}.missing span{font-size:8rem;font-weight:950;color:var(--accent)}footer{background:var(--dark);color:var(--paper);display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:2rem;padding:3rem max(1.2rem,calc((100vw - 1140px)/2));font-size:.88rem}footer address{font-style:normal}.footlinks{display:flex;gap:.7rem;flex-wrap:wrap;grid-column:1/-1}.fine{grid-column:1/-1;border-top:1px solid color-mix(in srgb,var(--paper) 30%,transparent);padding-top:1rem}.agebar{position:fixed;left:1rem;right:1rem;bottom:1rem;max-width:700px;margin:auto;background:var(--white);border:2px solid var(--dark);box-shadow:var(--shadow);padding:.7rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;z-index:50}.agebar button{border:0;background:var(--dark);color:var(--paper);padding:.55rem .8rem;cursor:pointer}.agebar.hide{display:none}body[data-layout="journal"] .hero{background:transparent;color:var(--dark);border-left:4px solid var(--accent);padding-left:clamp(2rem,8vw,7rem)}body[data-layout="journal"] .hero:after{border-style:dashed}body[data-layout="journal"] .hero .button{border-color:var(--dark);box-shadow:4px 4px var(--dark)}body[data-layout="journal"] .venue-card{border-radius:0 40px 0 0}body[data-layout="journal"] .page-intro{border-left:4px solid var(--accent);padding-left:2rem}body[data-layout="floor"]{background-image:linear-gradient(color-mix(in srgb,var(--accent) 15%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 15%,transparent) 1px,transparent 1px);background-size:26px 26px}body[data-layout="floor"] .hero{border:1px solid var(--accent);clip-path:polygon(0 0,92% 0,100% 15%,100% 100%,0 100%)}body[data-layout="floor"] .venue-card:before{content:"ROOM";position:absolute;right:1rem;top:1rem;font-size:.7rem;letter-spacing:.16em}body[data-layout="ticket"] .hero{background:var(--white);color:var(--dark);border:2px solid var(--dark);border-radius:18px}body[data-layout="ticket"] .hero:before{content:"ADMIT ONE · 18+ · OFFLINE";position:absolute;right:1.2rem;top:1rem;writing-mode:vertical-rl;letter-spacing:.18em;font-size:.7rem;font-weight:900}body[data-layout="ticket"] .hero .button{border-color:var(--dark);box-shadow:4px 4px var(--dark)}body[data-layout="ticket"] .venue-card,body[data-layout="ticket"] .panel,body[data-layout="ticket"] .notice{border:2px solid var(--dark);border-radius:14px}body[data-layout="ticket"] .venue-card:after{content:"";position:absolute;left:72%;top:0;bottom:0;border-left:2px dashed var(--line)}@media(max-width:780px){.site-head{margin:0}.site-head,.bento-head,.journal-head,.floor-head,.ticket-head{grid-template-columns:1fr auto;grid-template-areas:"brand menu" "nav nav"}.status,.edition,.ticket-no,.floor-key{display:none}.brand{grid-area:brand}.menu{grid-area:menu;display:block;border:1px solid var(--dark);background:var(--white);padding:.65rem}.site-head nav{grid-area:nav;display:none;flex-direction:column}.site-head nav.open{display:flex}.ticket-head:after{display:none}main{padding-top:1.2rem}.hero{min-height:470px;padding:2rem}.hero h1,.page-intro h1,.review-head h1{font-size:2.6rem}.venue-grid,.card-grid,.budget,.columns,.pros-cons,.split,.facts{grid-template-columns:1fr}.steps li{grid-template-columns:55px 1fr}.steps li:before{grid-row:1/span 2}.steps span{grid-column:2}.contact{grid-template-columns:1fr}.contact label{grid-column:1/-1}footer{grid-template-columns:1fr}.footlinks,.fine{grid-column:1}.agebar{left:.5rem;right:.5rem}.journal-head .brand b{border-radius:0}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}