:root { --ink:#101010; --paper:#f4f1eb; --cobalt:#2747e7; --line:rgba(16,16,16,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Manrope,Arial,sans-serif; }
button, input, select, textarea { font:inherit; }
button { cursor:pointer; }
.grain { position:fixed; inset:0; opacity:.1; pointer-events:none; z-index:20; mix-blend-mode:multiply; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E"); }
.site-header { height:79px; width:100%; position:absolute; z-index:10; top:0; display:flex; align-items:center; justify-content:space-between; padding:0 4.2vw; color:#fff; border-bottom:1px solid rgba(255,255,255,.25); }
.brand { color:inherit; text-decoration:none; font-family:'DM Mono',monospace; font-size:14px; letter-spacing:-.08em; font-weight:500; }
.brand span { color:var(--cobalt); margin:0 1px; }
nav { display:flex; gap:30px; align-items:center; font-size:11px; text-transform:uppercase; letter-spacing:.09em; }
nav a { color:inherit; text-decoration:none; }
.nav-rsvp, .menu-toggle { border:0; background:none; color:inherit; font:inherit; text-transform:uppercase; letter-spacing:.09em; font-size:11px; padding:0; }
.nav-rsvp span { color:#90a1ff; font-size:16px; margin-left:3px; }
.menu-toggle { display:none; }
.hero { min-height:730px; height:100svh; color:white; position:relative; overflow:hidden; }
.hero-image { position:absolute; inset:0; background:url('streetwear-hero.png') 65% center/cover no-repeat; transform:scale(1.01); animation:hero-in 1.4s cubic-bezier(.2,.7,.2,1) both; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.32) 47%,rgba(0,0,0,.05) 75%),linear-gradient(0deg,rgba(0,0,0,.32),transparent 35%); }
.hero-content { height:100%; padding:154px 8.4vw 50px; position:relative; display:flex; flex-direction:column; justify-content:space-between; }
.eyebrow { margin:0; display:flex; align-items:center; gap:10px; font:500 10px/1 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }
.eyebrow span { width:22px; height:1px; display:inline-block; background:currentColor; }.light { color:#fff; }
h1,h2,h3,p { margin-top:0; } h1,h2 { font-weight:500; letter-spacing:-.075em; }
h1 { margin:44px 0 0; font-size:clamp(79px,10.9vw,175px); line-height:.78; max-width:760px; }
h1 em,h1 i,h2 em,h2 i { font-family:'Playfair Display',serif; font-weight:500; letter-spacing:-.095em; } h1 em,h2 em { color:#d0d7ff; } h1 i,h2 i { font-style:italic; }
.hero-bottom { display:flex; justify-content:space-between; align-items:end; gap:40px; }.hero-bottom p { width:285px; font-size:13px; line-height:1.55; margin:0; }.text-link { color:#fff; background:none; border:0; border-bottom:1px solid rgba(255,255,255,.6); padding:0 0 8px; text-transform:uppercase; letter-spacing:.09em; font-size:10px; }.text-link b { color:#aab8ff; font-size:16px; margin-left:20px; }
.hero-index { position:absolute; right:4.2vw; bottom:47px; font:10px 'DM Mono',monospace; letter-spacing:.08em; }.hero-index span { display:inline-block; height:1px; width:43px; vertical-align:middle; background:#fff; margin:0 7px; }.scroll-cue { color:white; text-decoration:none; position:absolute; left:4.2vw; bottom:48px; writing-mode:vertical-rl; font:10px 'DM Mono',monospace; letter-spacing:.11em; }.scroll-cue span { margin-top:12px; color:#aab8ff; font-size:17px; }
.manifesto { padding:155px 8.4vw 165px; display:grid; grid-template-columns:28% 1fr; }.manifesto-copy { max-width:820px; }.lede { font:500 17px/1.22 'DM Mono',monospace; letter-spacing:-.08em; margin:0 0 48px; }.manifesto h2 { font-size:clamp(52px,7vw,112px); line-height:.89; margin:0 0 42px; }.manifesto h2 em { color:var(--cobalt); }.body-copy { width:min(435px,100%); margin-left:auto; font-size:14px; line-height:1.65; }
.program { background:var(--ink); color:#fff; padding:42px 4.2vw 0; }.program-heading { display:flex; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.25); padding-bottom:42px; }.program-heading > p:last-child { margin:0; font-size:12px; }.program-grid { display:grid; grid-template-columns:repeat(3,1fr); }.program article { min-height:364px; padding:27px 26px 32px; display:flex; flex-direction:column; border-right:1px solid rgba(255,255,255,.25); }.program article:last-child { border-right:0; }.program article span { font:11px 'DM Mono',monospace; color:#aab8ff; }.program h3 { font-size:clamp(27px,3.2vw,46px); letter-spacing:-.07em; margin:auto 0 17px; }.program article p { max-width:300px; color:#c8c8c8; font-size:12px; line-height:1.65; margin:0; }
.vendors { padding:136px 0 0; overflow:hidden; }.vendors-top { padding:0 8.4vw 72px; display:flex; justify-content:space-between; }.vendor-note { width:310px; font-size:13px; line-height:1.5; margin:0; }.marquee { background:var(--cobalt); color:#fff; overflow:hidden; padding:17px 0 21px; white-space:nowrap; transform:rotate(-2deg) scale(1.04); }.marquee-track { display:inline-flex; align-items:center; gap:25px; animation:roll 24s linear infinite; }.marquee span { font-size:clamp(45px,6vw,92px); font-weight:700; letter-spacing:-.1em; }.marquee i { color:#cdd4ff; font-size:26px; font-style:normal; }.vendor-callout { padding:145px 8.4vw 154px; }.vendor-kicker { margin:0 0 17px; font:10px 'DM Mono',monospace; letter-spacing:.1em; }.vendor-callout h2 { font-size:clamp(59px,8.5vw,135px); line-height:.83; margin:0 0 52px; }.button-dark,.button-light { border:0; padding:17px 21px; display:inline-flex; gap:37px; align-items:center; text-transform:uppercase; letter-spacing:.08em; font:10px 'DM Mono',monospace; text-decoration:none; }.button-dark { background:var(--ink); color:#fff; }.button-light { background:#fff; color:var(--ink); }.button-dark span,.button-light span { font-size:17px; color:#9caaff; }
.studio { min-height:680px; position:relative; overflow:hidden; background:#d8d4ca; display:flex; justify-content:center; align-items:center; }.studio:before { content:''; position:absolute; inset:0; background:linear-gradient(125deg,transparent 25%,rgba(255,255,255,.45) 25.2%,transparent 25.4%),linear-gradient(250deg,transparent 65%,rgba(255,255,255,.36) 65.2%,transparent 65.4%); background-size:280px 280px; opacity:.8; }.studio-number { position:absolute; right:-.07em; bottom:-.23em; z-index:1; font-size:clamp(275px,45vw,690px); font-weight:800; letter-spacing:-.16em; color:#c6c2b9; line-height:.8; }.studio-content { width:min(590px,80vw); z-index:2; text-align:center; }.studio .eyebrow { justify-content:center; }.studio h2 { font-size:clamp(83px,13vw,200px); line-height:.8; margin:39px 0 37px; }.studio h2 span { font-family:'Playfair Display',serif; font-weight:500; color:var(--cobalt); }.studio-content > p { max-width:380px; margin:0 auto 38px; font-size:13px; line-height:1.7; }.studio-meta { display:flex; gap:15px; justify-content:center; font:10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.04em; }.studio-meta span+span:before { content:'/'; margin-right:15px; color:var(--cobalt); }
.closing { padding:139px 8.4vw 150px; background:var(--cobalt); color:white; text-align:center; }.closing .eyebrow { justify-content:center; }.closing h2 { font-size:clamp(72px,12vw,190px); line-height:.77; margin:52px 0 57px; }.closing h2 em { color:#121212; }.closing h2 i { color:#d6dcff; }footer { background:#101010; color:#fff; padding:31px 4.2vw; display:flex; justify-content:space-between; align-items:center; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }footer p { margin:0; } footer > a:last-child { color:#aab8ff; text-decoration:none; }
.rsvp-dialog { width:min(530px,calc(100% - 32px)); max-height:calc(100dvh - 24px); overflow-y:auto; padding:48px; border:0; background:var(--paper); color:var(--ink); box-shadow:0 20px 80px rgba(0,0,0,.35); }.rsvp-dialog::backdrop { background:rgba(0,0,0,.7); backdrop-filter:blur(4px); }.dialog-close { position:absolute; top:18px; right:20px; font-size:28px; line-height:1; border:0; background:none; }.rsvp-dialog h2 { font-size:59px; line-height:.84; margin:27px 0; }.rsvp-dialog > p:not(.eyebrow,.form-message) { font-size:13px; line-height:1.6; max-width:340px; }.rsvp-dialog form { display:grid; gap:18px; margin-top:34px; }.rsvp-dialog label { font-size:10px; text-transform:uppercase; letter-spacing:.08em; }.rsvp-dialog input,.rsvp-dialog select,.rsvp-dialog textarea { display:block; border:0; border-bottom:1px solid var(--ink); border-radius:0; width:100%; color:inherit; background:transparent; padding:10px 0; outline:0; }.rsvp-dialog textarea { resize:vertical; line-height:1.5; }.rsvp-dialog .button-dark { margin-top:8px; justify-content:space-between; }.form-message { min-height:20px; margin:20px 0 0; font-size:12px; }
.rsvp-dialog.dialog-fallback-open { position:fixed; inset:12px; z-index:50; margin:auto; }.dialog-open { overflow:hidden; }.dialog-open:before { content:''; position:fixed; inset:0; z-index:40; background:rgba(0,0,0,.7); backdrop-filter:blur(4px); }
@keyframes roll { to { transform:translateX(-50%); } } @keyframes hero-in { from { opacity:0; transform:scale(1.08); } to { opacity:1; transform:scale(1.01); } }
@media (max-width:700px) { .site-header { height:65px; padding:0 20px; }.site-header nav { display:none; position:absolute; top:65px; left:0; right:0; background:var(--ink); padding:22px 20px 25px; flex-direction:column; align-items:flex-start; gap:20px; }.site-header nav.open { display:flex; }.menu-toggle { display:block; }.menu-toggle span { display:inline-block; width:7px; height:7px; border-radius:50%; background:#aab8ff; margin-left:5px; }.hero { min-height:650px; }.hero-content { padding:113px 32px 37px; }.hero-image { background-position:59% center; }.hero-bottom p { width:210px; font-size:11px; }.hero-bottom { align-items:flex-end; gap:12px; }.text-link { font-size:8px; white-space:nowrap; }.text-link b { margin-left:8px; }.hero-index { display:none; }.scroll-cue { left:auto; right:21px; bottom:28px; }.manifesto { display:block; padding:95px 32px 105px; }.manifesto .eyebrow { margin-bottom:65px; }.lede { font-size:14px; margin-bottom:36px; }.manifesto h2 { font-size:54px; }.body-copy { margin:0; }.program { padding:31px 20px 0; }.program-heading { display:block; padding-bottom:24px; }.program-heading > p:last-child { margin-top:27px; }.program-grid { display:block; }.program article { min-height:220px; padding:23px 0 28px; border-right:0; border-bottom:1px solid rgba(255,255,255,.25); }.program h3 { margin:auto 0 13px; }.vendors { padding-top:94px; }.vendors-top { display:block; padding:0 32px 55px; }.vendor-note { margin-top:30px; }.vendor-callout { padding:102px 32px 106px; }.vendor-callout h2 { font-size:64px; }.studio { min-height:575px; }.studio-number { font-size:360px; }.studio h2 { font-size:102px; }.studio-meta { display:block; line-height:2; }.studio-meta span { display:block; }.studio-meta span+span:before { display:none; }.closing { padding:95px 20px 102px; }.closing h2 { font-size:79px; }.rsvp-dialog { padding:40px 27px 32px; }.rsvp-dialog h2 { font-size:49px; } footer { display:grid; gap:18px; padding:27px 20px; } }

/* Streetwear / nightlife direction */
:root { --paper:#e5e3dc; --acid:#c9ff00; --signal:#ff3b1f; --cobalt:var(--acid); }
.brand span, .nav-rsvp span, .scroll-cue span, .text-link b { color:var(--acid); }
.hero-image { background-image:url('assets/streetwear-hero.png'); background-position:65% center; }
.hero-image { filter:contrast(1.14) saturate(1.16); }
.hero-overlay { background:linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.58) 44%,rgba(0,0,0,.28) 100%),linear-gradient(0deg,rgba(0,0,0,.64),transparent 42%); }
h1 { text-transform:uppercase; }
h1 em { color:var(--acid); }.manifesto h2 em { color:var(--signal); }
.program { background:#181818; }.program article span { color:var(--acid); }.program h3 { text-transform:uppercase; }
.vendors { background:var(--acid); }.marquee { background:#101010; color:var(--acid); }.marquee i { color:var(--signal); }.vendor-callout h2 { text-transform:uppercase; }
.button-dark span,.button-light span { color:var(--acid); }
.studio { background:#9e9e98; }.studio:before { background-size:140px 140px; }.studio-number { color:#83837e; }.studio h2 span,.studio-meta span+span:before { color:var(--signal); }
.closing { background:var(--signal); }.closing h2 i { color:var(--acid); } footer > a:last-child { color:var(--acid); }
@media (max-width:700px) { .menu-toggle span { background:var(--acid); }.hero-image { background-position:58% center; } }

.vendor-application-note { max-width:330px; margin:18px 0 0; font-size:11px; line-height:1.55; }
.vendor-dialog { width:min(720px,calc(100% - 32px)); }
.vendor-dialog h2 { font-size:clamp(48px,7vw,76px); margin-bottom:22px; }
.vendor-dialog > p:not(.eyebrow,.form-message) { max-width:520px; }
.vendor-application-perks { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:29px 0 8px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.vendor-application-perks p { min-height:64px; margin:0; padding:13px 14px; border-right:1px solid var(--line); font:10px/1.45 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.03em; }
.vendor-application-perks p:last-child { border-right:0; }
.vendor-application-perks span,.vendor-step span { display:block; margin-bottom:6px; color:var(--signal); font:10px 'DM Mono',monospace; letter-spacing:.08em; }
.vendor-form-section { display:grid; gap:18px; padding-top:21px; border-top:1px solid var(--line); }
.vendor-step { margin:0; font:10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.vendor-step span { display:inline; margin:0 12px 0 0; }
.vendor-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 22px; }
.vendor-form-grid--compact { gap:18px 22px; }
.vendor-passes { align-self:end; margin:0; font-size:12px; line-height:1.45; }
.vendor-passes span { display:block; margin-bottom:7px; font:10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.display-needs { margin:2px 0 0; padding:16px 0 0; border:0; border-top:1px solid var(--line); }
.display-needs legend { padding:0; font:10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.choice-grid { display:flex; flex-wrap:wrap; gap:10px 16px; margin-top:13px; }
.choice-grid label, .consent { display:flex !important; align-items:flex-start; gap:8px; font:10px/1.45 'DM Mono',monospace !important; text-transform:none !important; letter-spacing:0 !important; }
.choice-grid input, .consent input { display:inline-block !important; width:16px !important; height:16px; flex:0 0 auto; margin:0; padding:0 !important; border:0 !important; accent-color:var(--signal); }
.consent { padding-top:3px; }
.honeypot { position:absolute !important; left:-9999px; opacity:0; pointer-events:none; }
.rsvp-dialog input:focus-visible,.rsvp-dialog select:focus-visible,.rsvp-dialog textarea:focus-visible,.button-dark:focus-visible,.button-light:focus-visible,.dialog-close:focus-visible { outline:2px solid var(--signal); outline-offset:4px; }
.button-dark[disabled] { cursor:wait; opacity:.7; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.marquee-track,.hero-image { animation:none; } }
@media (max-width:700px) { .vendor-dialog { width:calc(100% - 20px); padding:38px 24px 28px; }.vendor-dialog h2 { font-size:49px; }.vendor-application-perks { grid-template-columns:1fr; }.vendor-application-perks p { min-height:0; border-right:0; border-bottom:1px solid var(--line); }.vendor-application-perks p:last-child { border-bottom:0; }.vendor-form-grid { grid-template-columns:1fr; gap:18px; }.choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; } }

/* Round 1 conversion, ticketing, vendor-floor, and logistics completion */
.nav-ticket { border:0; background:none; color:inherit; font:inherit; text-transform:uppercase; letter-spacing:.09em; font-size:11px; padding:0; }.nav-ticket span { color:var(--acid); font-size:16px; margin-left:3px; }
.hero-content--round1 { justify-content:flex-start; gap:25px; padding-top:121px; }.hero-content--round1 h1 { margin:0; }.hero-event-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 32px; max-width:760px; padding-top:6px; }.hero-event-details p { display:grid; gap:5px; margin:0; font:10px/1.35 'DM Mono',monospace; letter-spacing:.04em; text-transform:uppercase; }.hero-event-details strong { color:var(--acid); font-weight:500; }.hero-event-details span { color:#fff; }.hero-actions,.closing-actions { display:flex; flex-wrap:wrap; gap:9px; align-items:center; }.hero-actions { margin-top:7px; }.button-ghost { display:inline-flex; align-items:center; gap:12px; min-height:46px; padding:13px 15px; border:1px solid rgba(255,255,255,.55); color:#fff; background:rgba(16,16,16,.12); font:10px 'DM Mono',monospace; text-decoration:none; letter-spacing:.07em; }.button-ghost span { color:var(--acid); font-size:16px; }.hero-date-mark { position:absolute; right:4.2vw; bottom:48px; color:rgba(255,255,255,.78); font:11px/1.15 'DM Mono',monospace; letter-spacing:.08em; text-align:right; }
.ticket-section { display:grid; grid-template-columns:1.05fr .95fr; gap:58px; padding:126px 8.4vw; background:var(--paper); }.ticket-intro h2,.floor-heading h2,.info-intro h2 { margin:25px 0 29px; font-size:clamp(53px,7.2vw,112px); line-height:.82; }.ticket-intro > p:last-child { max-width:390px; font-size:13px; line-height:1.65; }.ticket-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; align-self:start; }.ticket-card { min-height:275px; padding:25px; border:1px solid var(--ink); display:flex; flex-direction:column; align-items:flex-start; }.ticket-card--primary { background:var(--ink); color:#fff; }.ticket-card p { margin:0; font:10px 'DM Mono',monospace; letter-spacing:.08em; }.ticket-card strong { margin:auto 0 27px; font-size:clamp(56px,7vw,103px); letter-spacing:-.12em; line-height:.75; }.ticket-card > span { font:10px/1.45 'DM Mono',monospace; letter-spacing:.04em; }.ticket-card .button-light { justify-content:space-between; width:100%; }.ticket-note { grid-column:1/-1; margin:0; color:rgba(16,16,16,.7); font:11px/1.55 'DM Mono',monospace; }
.floor-section { padding:128px 8.4vw 138px; background:#d3d1c8; }.floor-heading { display:flex; align-items:end; justify-content:space-between; gap:35px; margin-bottom:53px; }.floor-heading h2 { margin-bottom:0; }.floor-heading > p:last-child { margin:0 0 7px; font:11px 'DM Mono',monospace; letter-spacing:.08em; }.vendor-slot-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--ink); border-left:1px solid var(--ink); }.vendor-slot-grid p { min-height:116px; display:flex; align-items:flex-end; margin:0; padding:16px; border-right:1px solid var(--ink); border-bottom:1px solid var(--ink); color:rgba(16,16,16,.67); font:10px/1.35 'DM Mono',monospace; letter-spacing:.06em; }
.info-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; padding:131px 8.4vw; }.info-intro > p:last-child { font-size:13px; line-height:1.7; }.info-intro > p:last-child strong { font-weight:700; }.logistics-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; border-top:1px solid var(--ink); border-left:1px solid var(--ink); }.logistics-grid > div { min-height:104px; padding:16px; border-right:1px solid var(--ink); border-bottom:1px solid var(--ink); }.logistics-grid dt { margin-bottom:16px; font:10px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }.logistics-grid dd { margin:0; font-size:12px; line-height:1.45; color:rgba(16,16,16,.7); }.studio-number { font-size:clamp(170px,31vw,530px); }.closing-actions { justify-content:center; max-width:780px; margin:auto; }.button-ghost--light { border-color:rgba(255,255,255,.65); background:transparent; }.ticket-dialog { width:min(480px,calc(100% - 32px)); }
@media (max-width:700px) { .nav-ticket { font-size:10px; }.hero-content--round1 { gap:20px; padding-top:96px; }.hero-event-details { grid-template-columns:1fr; gap:10px; }.hero-event-details p { font-size:9px; }.hero-actions { gap:7px; }.hero-actions .button-light { width:100%; justify-content:space-between; }.button-ghost { min-height:42px; padding:11px 12px; font-size:9px; }.hero-date-mark { display:none; }.ticket-section,.info-section { display:block; padding:88px 32px; }.ticket-grid { margin-top:42px; grid-template-columns:1fr; }.ticket-card { min-height:205px; }.ticket-card strong { font-size:80px; }.ticket-note { margin-top:14px; }.floor-section { padding:91px 32px; }.floor-heading { display:block; margin-bottom:35px; }.floor-heading > p:last-child { margin-top:23px; }.vendor-slot-grid { grid-template-columns:repeat(2,1fr); }.vendor-slot-grid p { min-height:90px; padding:12px; font-size:9px; }.info-intro { margin-bottom:45px; }.logistics-grid { grid-template-columns:1fr; }.logistics-grid > div { min-height:86px; }.closing-actions { justify-content:center; }.closing-actions .button-light { width:100%; justify-content:space-between; } }

/* Pass 2: ticket-forward editorial polish */
.ticket-dock { position:fixed; right:22px; bottom:22px; z-index:25; display:flex; align-items:center; overflow:hidden; border:1px solid rgba(255,255,255,.52); background:#111; color:#fff; box-shadow:0 14px 36px rgba(0,0,0,.28); }.ticket-dock > span { padding:0 15px; font:9px 'DM Mono',monospace; letter-spacing:.08em; }.ticket-dock button { min-height:48px; border:0; padding:0 16px; background:var(--acid); color:#111; font:10px 'DM Mono',monospace; letter-spacing:.07em; }.ticket-dock b { margin-left:8px; font-weight:500; }.ticket-dock i { margin-left:10px; font-size:16px; font-style:normal; }.hero-stamp { margin:0; color:rgba(255,255,255,.76); font:9px 'DM Mono',monospace; letter-spacing:.16em; }.hero-content--round1 h1 { text-shadow:0 6px 32px rgba(0,0,0,.18); }.hero-event-details { border-left:1px solid var(--acid); padding-left:15px; }.ticket-section { position:relative; overflow:hidden; background:linear-gradient(120deg,#e5e3dc 0%,#e5e3dc 78%,#d0ff00 78%,#d0ff00 100%); }.ticket-ribbon { grid-column:1/-1; margin:-126px -8.4vw 60px; padding:12px 0; overflow:hidden; white-space:nowrap; background:#111; color:var(--acid); font:10px 'DM Mono',monospace; letter-spacing:.12em; text-align:center; }.ticket-card { position:relative; overflow:hidden; }.ticket-card:after { content:'08.28.26'; position:absolute; right:-7px; bottom:-18px; color:rgba(16,16,16,.08); font-size:78px; font-weight:800; letter-spacing:-.12em; pointer-events:none; }.ticket-card--primary:after { color:rgba(201,255,0,.18); }.ticket-card--primary .button-light { position:relative; z-index:1; }.program article { position:relative; overflow:hidden; }.program article:after { content:'08.28'; position:absolute; right:-8px; bottom:-21px; color:rgba(255,255,255,.05); font-size:72px; font-weight:800; letter-spacing:-.14em; pointer-events:none; }.vendor-slot-grid { counter-reset:vendor-slot; }.vendor-slot-grid p { position:relative; counter-increment:vendor-slot; padding-top:37px; }.vendor-slot-grid p:before { content:'SLOT ' counter(vendor-slot, decimal-leading-zero); position:absolute; top:14px; left:16px; color:var(--signal); font:9px 'DM Mono',monospace; letter-spacing:.08em; }.floor-section { background:linear-gradient(135deg,#d3d1c8 0%,#d3d1c8 68%,#c9ff00 68%,#c9ff00 100%); }.info-section { background:#f0ede6; }.info-intro h2 em { color:var(--signal); }
@media (max-width:700px) { .ticket-dock { right:0; bottom:0; left:0; z-index:30; justify-content:space-between; border-width:1px 0 0; }.ticket-dock > span { padding:0 13px; font-size:8px; }.ticket-dock button { min-height:52px; padding:0 14px; font-size:9px; }.hero-stamp { font-size:8px; }.ticket-ribbon { margin:-88px -32px 42px; font-size:8px; }.ticket-section { background:linear-gradient(160deg,#e5e3dc 0%,#e5e3dc 86%,#d0ff00 86%,#d0ff00 100%); }.floor-section { background:linear-gradient(160deg,#d3d1c8 0%,#d3d1c8 88%,#c9ff00 88%,#c9ff00 100%); }.vendor-slot-grid p:before { left:12px; top:11px; font-size:8px; } }

/* Pass 2.5: projected editorial design system */
:root {
  --ink:#0b0b0a;
  --ink-soft:#151513;
  --paper:#e8e5dc;
  --paper-bright:#f5f2eb;
  --warm:#b7b2a8;
  --acid:#c9ff00;
  --signal:#ff4937;
  --line:rgba(11,11,10,.42);
  --light-line:rgba(245,242,235,.35);
  --utility:'DM Mono',monospace;
}

body { background:var(--ink); color:var(--ink); }
.site-header { background:rgba(11,11,10,.92); border-bottom:1px solid rgba(245,242,235,.14); }
.site-header nav a,.nav-ticket { color:var(--paper-bright); }
.brand { letter-spacing:-.075em; }
.brand span,.nav-ticket span { color:var(--acid); }
.grain { opacity:.12; mix-blend-mode:soft-light; }

.hero { min-height:100svh; background:var(--ink); }
.hero-image {
  background-image:url('streetwear-hero.png');
  background-position:68% center;
  filter:contrast(1.1) saturate(.91) brightness(.82);
  animation:none;
}
.hero-overlay {
  background:linear-gradient(90deg,rgba(5,5,5,.94) 0%,rgba(5,5,5,.72) 39%,rgba(5,5,5,.19) 73%,rgba(5,5,5,.3) 100%),linear-gradient(0deg,rgba(5,5,5,.72) 0%,transparent 48%);
}
.hero-content--round1 { max-width:1040px; gap:19px; padding:calc(92px + 5.3vw) 8.4vw 80px; }
.hero-content--round1 .eyebrow { margin:0; }
.hero-stamp { color:rgba(245,242,235,.63); letter-spacing:.14em; }
.hero-content--round1 h1 {
  max-width:680px;
  margin:6px 0 0;
  color:var(--paper-bright);
  font-size:clamp(78px,10.3vw,184px);
  letter-spacing:-.115em;
  line-height:.74;
  text-shadow:none;
}
.hero-content--round1 h1 em { color:var(--acid); }
.hero-content--round1 h1 i { color:var(--paper-bright); font-family:'Playfair Display',serif; font-weight:500; letter-spacing:-.09em; }
.hero-event-details { max-width:640px; gap:10px 30px; padding:8px 0 0 14px; border-left:1px solid var(--acid); }
.hero-event-details p { color:var(--paper-bright); font-size:9px; line-height:1.48; }
.hero-event-details strong { color:var(--acid); }
.hero-actions { margin-top:8px; }
.button-light,.button-dark,.button-ghost { border-radius:0; transition:background-color .2s ease,color .2s ease,border-color .2s ease; }
.button-light { background:var(--paper-bright); color:var(--ink); }
.button-light span,.button-dark span,.button-ghost span { color:var(--signal); }
.button-ghost { border-color:rgba(245,242,235,.48); color:var(--paper-bright); background:transparent; }
.button-light:hover { background:var(--acid); }
.button-ghost:hover { border-color:var(--acid); color:var(--acid); }
.hero-date-mark {
  right:4.2vw;
  bottom:42px;
  padding:12px 0 0 14px;
  border-top:1px solid rgba(245,242,235,.52);
  color:var(--paper-bright);
  font-size:14px;
  line-height:1.04;
  letter-spacing:.02em;
}
.scroll-cue { color:var(--paper-bright); }
.scroll-cue span { color:var(--acid); }

.ticket-section {
  grid-template-columns:5fr 7fr;
  gap:7.4vw;
  padding:0 8.4vw 142px;
  background:var(--paper);
}
.ticket-ribbon {
  grid-column:1 / -1;
  margin:0 -8.4vw 90px;
  padding:14px 8.4vw;
  background:var(--ink);
  color:var(--paper-bright);
  font:9px var(--utility);
  letter-spacing:.15em;
  text-align:left;
  transform:none;
}
.ticket-intro { align-self:start; }
.ticket-intro .eyebrow { margin:0; }
.ticket-intro h2,.floor-heading h2,.info-intro h2 { font-size:clamp(55px,7.5vw,124px); line-height:.77; letter-spacing:-.1em; }
.ticket-intro h2 { margin:27px 0 32px; }
.ticket-intro h2 em,.floor-heading h2 em,.info-intro h2 em { color:var(--signal); }
.ticket-grid { gap:0; border:1px solid var(--ink); }
.ticket-card { min-height:310px; padding:24px; border:0; border-right:1px solid var(--ink); }
.ticket-card:last-child { border-right:0; }
.ticket-card:after { display:none; }
.ticket-card--primary { background:var(--ink); color:var(--paper-bright); }
.ticket-card p,.ticket-card > span { font-size:9px; letter-spacing:.1em; }
.ticket-card strong { font-size:clamp(70px,8vw,132px); letter-spacing:-.13em; }
.ticket-card .button-light { min-width:100%; }
.ticket-note { grid-column:1 / -1; margin:17px 0 0; color:rgba(11,11,10,.66); font-size:10px; }

.manifesto {
  grid-template-columns:3fr 8fr;
  gap:8.333%;
  padding:152px 8.4vw 166px;
  background:var(--ink);
  color:var(--paper-bright);
}
.manifesto .eyebrow { align-self:start; color:rgba(245,242,235,.74); }
.manifesto-copy { max-width:850px; }
.lede { margin:0 0 44px; color:var(--acid); font:10px/1.5 var(--utility); letter-spacing:.1em; }
.manifesto h2 { margin:0 0 38px; color:var(--paper-bright); font-size:clamp(62px,8.2vw,140px); line-height:.77; letter-spacing:-.105em; }
.manifesto h2 em { color:var(--acid); }
.manifesto h2 i { font-family:'Playfair Display',serif; }
.body-copy { margin-left:33.333%; color:rgba(245,242,235,.7); }

.date-pause {
  position:relative;
  min-height:62vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  overflow:hidden;
  padding:72px 8.4vw;
  background:var(--ink-soft);
  color:var(--paper-bright);
}
.date-pause:before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,transparent 0 58%,rgba(201,255,0,.17) 58% calc(58% + 1px),transparent calc(58% + 1px)); pointer-events:none; }
.date-pause p { position:relative; z-index:1; margin:0; font:9px var(--utility); letter-spacing:.12em; }
.date-pause p:last-child { align-self:flex-end; color:var(--acid); }
.date-pause strong { position:relative; z-index:1; margin:-.08em 0 -.11em; color:var(--paper-bright); font-size:clamp(86px,19.6vw,332px); font-weight:800; line-height:.76; letter-spacing:-.145em; }

.program { padding:38px 4.2vw 4.2vw; background:var(--ink); color:var(--paper-bright); }
.program-heading { align-items:flex-start; padding:0 4.2vw 38px; border-color:var(--light-line); }
.program-heading > p:last-child { max-width:240px; color:rgba(245,242,235,.62); font:9px/1.5 var(--utility); letter-spacing:.05em; }
.program-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:8px; }
.program article { min-height:400px; padding:26px; border:0; }
.program article:after { display:none; }
.program-card--fit { grid-column:span 7; position:relative; overflow:hidden; background:var(--paper); color:var(--ink); }
.program-card--fit:before { content:''; position:absolute; inset:0 0 0 46%; background:linear-gradient(90deg,var(--paper) 0%,rgba(232,229,220,.15) 30%,rgba(232,229,220,.04) 100%),url('streetwear-hero.png') 63% center / cover no-repeat; filter:grayscale(.22) contrast(1.08); }
.program-card--drop { grid-column:span 5; background:var(--acid); color:var(--ink); }
.program-card--night { grid-column:1 / -1; min-height:310px; background:var(--ink-soft); border-top:1px solid var(--light-line); }
.program-card--night:before { content:'AFTER DARK / AFTER DARK / AFTER DARK'; position:absolute; right:-.04em; bottom:-.14em; color:rgba(245,242,235,.06); font-size:clamp(52px,8vw,130px); font-weight:800; line-height:.78; letter-spacing:-.12em; white-space:nowrap; }
.program article span,.program article h3,.program article p { position:relative; z-index:1; }
.program article span { color:var(--signal); font:9px var(--utility); letter-spacing:.1em; }
.program-card--fit span { color:var(--signal); }
.program-card--drop span { color:var(--ink); }
.program h3 { max-width:5ch; margin:auto 0 19px; color:inherit; font-size:clamp(37px,5vw,84px); line-height:.78; letter-spacing:-.105em; }
.program-card--night h3 { max-width:none; color:var(--acid); }
.program article p { max-width:260px; color:inherit; opacity:.7; font-size:11px; }

.floor-section { position:relative; padding:139px 8.4vw 148px; background:var(--paper-bright); }
.floor-heading { display:grid; grid-template-columns:3fr 6fr 3fr; align-items:end; gap:20px; margin-bottom:76px; }
.floor-heading h2 { margin:0; }
.floor-heading > p:last-child { justify-self:end; margin:0 0 7px; font:9px var(--utility); letter-spacing:.1em; text-align:right; }
.vendor-slot-grid { grid-template-columns:repeat(4,minmax(0,1fr)); border:0; border-top:1px solid var(--ink); border-left:0; counter-reset:vendor-slot; }
.vendor-slot-grid p { position:relative; min-height:176px; display:flex; align-items:flex-end; padding:20px 0 18px; border:0; border-right:0; border-bottom:1px solid var(--ink); color:var(--ink); font:11px/1.3 var(--utility); letter-spacing:.04em; }
.vendor-slot-grid p:before { content:'VENDOR / ' counter(vendor-slot,decimal-leading-zero); position:absolute; top:17px; left:0; color:var(--signal); font:9px var(--utility); letter-spacing:.1em; }
.vendor-slot-grid p:after { content:'STATUS / ANNOUNCING'; position:absolute; right:0; bottom:20px; color:rgba(11,11,10,.5); font:8px var(--utility); letter-spacing:.08em; transform:rotate(-90deg) translateX(100%); transform-origin:bottom right; }
.vendor-slot-grid p { counter-increment:vendor-slot; }
.vendor-slot-grid p:nth-child(4n+1) { padding-right:34px; }

.vendors { padding:0; background:var(--ink); color:var(--paper-bright); }
.vendors-top { padding:70px 8.4vw 42px; align-items:end; }
.vendors .eyebrow { color:var(--paper-bright); }
.vendor-note { color:rgba(245,242,235,.68); font-size:11px; }
.marquee { padding:17px 8.4vw; background:var(--warm); color:var(--ink); transform:none; }
.marquee-track { display:flex; gap:14px; align-items:center; animation:none; }
.marquee span { font-size:clamp(18px,2.2vw,32px); font-weight:700; letter-spacing:-.075em; }
.marquee i { color:var(--signal); font-size:20px; font-style:normal; }
.vendor-callout { display:grid; grid-template-columns:7fr 5fr; gap:8.333%; padding:125px 8.4vw 138px; }
.vendor-kicker { grid-column:1; margin:0; color:var(--acid); font:9px var(--utility); letter-spacing:.11em; }
.vendor-callout h2 { grid-column:1; margin:-2px 0 0; color:var(--paper-bright); font-size:clamp(58px,8.4vw,138px); line-height:.76; letter-spacing:-.105em; }
.vendor-callout h2 em { color:var(--acid); }
.vendor-callout .button-dark { grid-column:2; grid-row:2; align-self:end; justify-content:space-between; background:var(--paper-bright); color:var(--ink); }
.vendor-application-note { grid-column:2; grid-row:1; align-self:start; margin:0; color:rgba(245,242,235,.68); font:10px/1.6 var(--utility); }

.info-section { grid-template-columns:4fr 8fr; gap:8.333%; padding:145px 8.4vw; background:var(--paper); }
.info-intro h2 { margin:27px 0 31px; }
.info-intro > p:last-child { color:rgba(11,11,10,.73); }
.logistics-grid { border-color:var(--line); }
.logistics-grid > div { min-height:112px; padding:16px 0 15px 17px; border-color:var(--line); }
.logistics-grid dt { color:var(--signal); font-size:9px; }
.logistics-grid dd { color:rgba(11,11,10,.68); font-size:11px; }

.studio { min-height:720px; justify-content:flex-start; padding:0 8.4vw; background:var(--warm); color:var(--ink); }
.studio:before { background:linear-gradient(90deg,transparent 0 18%,rgba(11,11,10,.36) 18% calc(18% + 1px),transparent calc(18% + 1px) 62%,rgba(245,242,235,.55) 62% calc(62% + 1px),transparent calc(62% + 1px)),linear-gradient(0deg,transparent 0 31%,rgba(245,242,235,.5) 31% calc(31% + 1px),transparent calc(31% + 1px)); background-size:100% 100%; opacity:.9; }
.studio:after { content:'NIKITA / NIKITA / NIKITA'; position:absolute; right:-.08em; top:50%; color:rgba(11,11,10,.08); font-size:clamp(78px,13vw,210px); font-weight:800; letter-spacing:-.12em; white-space:nowrap; transform:rotate(-90deg) translateY(-100%); transform-origin:top right; }
.studio-number { right:4.2vw; bottom:-.09em; color:rgba(11,11,10,.12); font-size:clamp(180px,28vw,480px); }
.studio-content { width:min(700px,75vw); text-align:left; }
.studio .eyebrow { justify-content:flex-start; }
.studio h2 { margin:31px 0 35px; color:var(--ink); font-size:clamp(76px,12vw,185px); letter-spacing:-.115em; }
.studio h2 span { color:var(--signal); }
.studio-content > p { max-width:330px; margin:0 0 35px; color:rgba(11,11,10,.74); }
.studio-meta { justify-content:flex-start; }
.studio-meta span+span:before { color:var(--signal); }

.closing { position:relative; overflow:hidden; padding:136px 8.4vw 150px; background:var(--ink); color:var(--paper-bright); text-align:left; }
.closing .eyebrow { justify-content:flex-start; color:rgba(245,242,235,.64); }
.closing h2 { margin:48px 0 20px; color:var(--paper-bright); font-size:clamp(132px,25vw,400px); line-height:.67; letter-spacing:-.16em; }
.closing h2 em { color:var(--acid); }
.closing-brand { margin:0 0 49px; color:var(--paper-bright); font-size:clamp(25px,3vw,46px); font-weight:700; letter-spacing:-.09em; }
.closing-actions { justify-content:flex-start; }
.closing .button-ghost--light { border-color:rgba(245,242,235,.48); }
footer { padding:28px 4.2vw 92px; background:var(--ink-soft); color:rgba(245,242,235,.62); border-top:1px solid rgba(245,242,235,.15); }
footer > a:last-child { color:var(--acid); }

.ticket-dock { right:18px; bottom:18px; border-color:rgba(245,242,235,.48); box-shadow:none; }
.ticket-dock button { background:var(--acid); }

@media (max-width:700px) {
  .hero { min-height:760px; }
  .hero-image { background-position:60% center; }
  .hero-content--round1 { gap:17px; padding:112px 25px 74px; }
  .hero-content--round1 h1 { max-width:340px; font-size:clamp(76px,24vw,126px); line-height:.72; }
  .hero-event-details { max-width:290px; padding-left:11px; }
  .hero-event-details p { font-size:8px; }
  .hero-date-mark { display:block; right:24px; bottom:54px; font-size:10px; }
  .hero-actions .button-light { width:100%; }
  .hero-actions .button-ghost { min-height:39px; padding:10px 10px; font-size:8px; }
  .ticket-section { display:block; padding:0 25px 92px; }
  .ticket-ribbon { margin:0 -25px 66px; padding:13px 25px; font-size:8px; }
  .ticket-intro h2,.floor-heading h2,.info-intro h2 { font-size:clamp(60px,20vw,88px); }
  .ticket-grid { margin-top:42px; grid-template-columns:1fr; }
  .ticket-card { min-height:190px; padding:19px; border-right:0; border-bottom:1px solid var(--ink); }
  .ticket-card:last-child { border-bottom:0; }
  .ticket-card strong { font-size:91px; }
  .manifesto { display:block; padding:104px 25px 112px; }
  .manifesto .eyebrow { margin:0 0 72px; }
  .lede { margin-bottom:33px; font-size:8px; }
  .manifesto h2 { font-size:clamp(72px,22vw,110px); }
  .body-copy { margin:0; }
  .date-pause { min-height:49svh; padding:55px 25px; }
  .date-pause:before { background:linear-gradient(90deg,transparent 0 70%,rgba(201,255,0,.25) 70% calc(70% + 1px),transparent calc(70% + 1px)); }
  .date-pause strong { font-size:clamp(68px,20vw,116px); }
  .date-pause p { font-size:8px; }
  .program { padding:28px 12px 12px; }
  .program-heading { display:block; padding:0 13px 31px; }
  .program-heading > p:last-child { margin-top:23px; }
  .program-grid { display:grid; grid-template-columns:1fr; gap:6px; }
  .program article { min-height:300px; padding:21px; }
  .program-card--fit,.program-card--drop,.program-card--night { grid-column:auto; }
  .program-card--fit { min-height:367px; }
  .program-card--fit:before { inset:42% 0 0; background:linear-gradient(0deg,var(--paper) 0%,rgba(232,229,220,.2) 55%,transparent 100%),url('streetwear-hero.png') 60% center / cover no-repeat; }
  .program-card--night { min-height:245px; }
  .program h3 { font-size:61px; }
  .floor-section { padding:101px 25px; }
  .floor-heading { display:block; margin-bottom:54px; }
  .floor-heading h2 { margin:26px 0; }
  .floor-heading > p:last-child { justify-self:auto; text-align:left; }
  .vendor-slot-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vendor-slot-grid p { min-height:128px; padding:16px 18px 16px 0; font-size:9px; }
  .vendor-slot-grid p:before { top:14px; font-size:8px; }
  .vendor-slot-grid p:after { display:none; }
  .vendors-top { display:block; padding:52px 25px 31px; }
  .vendor-note { width:auto; margin:23px 0 0; }
  .marquee { padding:14px 25px; overflow:auto; }
  .marquee-track { width:max-content; }
  .marquee span { font-size:18px; }
  .vendor-callout { display:grid; grid-template-columns:1fr; gap:22px; padding:87px 25px 96px; }
  .vendor-kicker,.vendor-callout h2,.vendor-callout .button-dark,.vendor-application-note { grid-column:auto; grid-row:auto; }
  .vendor-callout h2 { font-size:clamp(60px,19vw,92px); }
  .vendor-callout .button-dark { width:100%; }
  .info-section { display:block; padding:103px 25px; }
  .info-intro { margin-bottom:55px; }
  .logistics-grid > div { min-height:83px; padding:14px 0 13px 13px; }
  .studio { min-height:620px; padding:0 25px; }
  .studio-content { width:100%; }
  .studio h2 { font-size:clamp(80px,23vw,128px); }
  .studio-number { right:15px; font-size:270px; }
  .studio:after { display:none; }
  .closing { padding:100px 25px 106px; }
  .closing h2 { margin:47px 0 17px; font-size:clamp(124px,35vw,180px); }
  .closing-brand { margin-bottom:35px; font-size:31px; }
  .closing-actions { display:grid; grid-template-columns:1fr; }
  .closing-actions .button-light,.closing-actions .button-ghost { width:100%; justify-content:space-between; }
  footer { padding:26px 20px 91px; }
  .ticket-dock { right:0; bottom:0; left:0; }
}

/* Show application panel */
.show-dialog { width:min(620px,calc(100% - 32px)); }
.show-dialog h2 { margin-bottom:24px; font-size:clamp(51px,7vw,78px); }
.show-dialog > p:not(.eyebrow,.form-message) { max-width:460px; }
.show-application-list { display:grid; gap:0; margin:31px 0 27px; padding:0; list-style:none; border-top:1px solid var(--line); }
.show-application-list li { display:grid; grid-template-columns:45px 1fr; gap:12px; padding:14px 0; border-bottom:1px solid var(--line); font-size:12px; line-height:1.45; }
.show-application-list span { color:var(--signal); font:10px var(--utility); letter-spacing:.08em; }
.show-application-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:stretch; }
.show-application-actions .button-dark { justify-content:space-between; }
.button-copy-email { min-height:48px; padding:0 15px; border:1px solid var(--ink); color:var(--ink); background:transparent; font:9px var(--utility); letter-spacing:.07em; cursor:pointer; }
.button-copy-email:hover { color:var(--signal); border-color:var(--signal); }
.show-application-message { max-width:420px; }
@media (max-width:700px) { .show-dialog { width:calc(100% - 20px); padding:38px 24px 28px; }.show-dialog h2 { font-size:52px; }.show-application-actions { display:grid; grid-template-columns:1fr; }.show-application-actions .button-dark,.button-copy-email { width:100%; } }

@media (prefers-reduced-motion:reduce) {
  .button-light,.button-dark,.button-ghost { transition:none; }
}

/* Expanded demonstration content and temporary visual study */
.site-header nav { gap:clamp(13px,1.6vw,25px); }
.visual-edit { padding:148px 8.4vw 112px; background:var(--paper-bright); }
.visual-edit-intro { display:grid; grid-template-columns:4fr 6fr 2fr; gap:2.1vw; align-items:end; margin-bottom:74px; }
.visual-edit-intro .eyebrow { grid-column:1; align-self:start; }
.visual-edit-intro h2 { grid-column:2 / span 2; max-width:700px; margin:0; color:var(--ink); font-size:clamp(60px,8.2vw,137px); line-height:.77; letter-spacing:-.11em; }
.visual-edit-intro h2 em { color:var(--signal); }
.visual-edit-intro > p:last-child { grid-column:2; max-width:360px; margin:31px 0 0; color:rgba(11,11,10,.68); font-size:13px; line-height:1.65; }
.visual-edit-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-template-rows:248px 138px 246px; gap:8px; }
.visual-frame { position:relative; min-height:0; overflow:hidden; margin:0; background:var(--ink); }
.visual-frame img { width:100%; height:100%; object-fit:cover; filter:saturate(.82) contrast(1.06); transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .4s ease; }
.visual-frame:after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.64),transparent 46%); pointer-events:none; }
.visual-frame:hover img { transform:scale(1.035); filter:saturate(1) contrast(1.08); }
.visual-frame figcaption { position:absolute; z-index:1; right:17px; bottom:15px; left:17px; display:flex; justify-content:space-between; gap:12px; color:var(--paper-bright); font:8px/1.4 var(--utility); letter-spacing:.08em; }
.visual-frame figcaption a { color:rgba(245,242,235,.75); text-decoration:none; text-align:right; }
.visual-frame figcaption a:hover { color:var(--acid); }
.visual-frame--club { grid-column:1 / span 7; grid-row:1 / span 2; }
.visual-frame--rack { grid-column:8 / span 5; grid-row:1; }
.visual-frame--backstage { grid-column:8 / span 5; grid-row:2 / span 2; }
.visual-frame--bar { grid-column:1 / span 7; grid-row:3; }
.visual-edit-note { display:grid; grid-template-columns:4fr 6fr 2fr; gap:2.1vw; margin-top:19px; padding-top:17px; border-top:1px solid var(--line); }
.visual-edit-note p { margin:0; font:9px/1.55 var(--utility); letter-spacing:.045em; }
.visual-edit-note p:first-child { color:var(--signal); }
.visual-edit-note p:last-child { grid-column:2 / span 2; max-width:660px; color:rgba(11,11,10,.58); }

.night-guide { display:grid; grid-template-columns:4fr 8fr; gap:8.333%; padding:141px 8.4vw 0; background:var(--ink); color:var(--paper-bright); }
.night-guide-title { align-self:start; padding-bottom:98px; }
.night-guide-title h2 { margin:26px 0 0; font-size:clamp(58px,7.6vw,125px); line-height:.77; letter-spacing:-.11em; }
.night-guide-title h2 em { color:var(--acid); }
.night-guide-list { border-top:1px solid var(--light-line); }
.night-guide-list article { display:grid; grid-template-columns:1.4fr 2.2fr 3.8fr; gap:20px; min-height:171px; align-items:center; padding:26px 0; border-bottom:1px solid var(--light-line); }
.night-guide-list span { align-self:start; color:var(--acid); font:9px var(--utility); letter-spacing:.08em; }
.night-guide-list h3 { margin:0; font-size:clamp(31px,3.6vw,60px); line-height:.84; letter-spacing:-.09em; }
.night-guide-list p { max-width:270px; margin:0; color:rgba(245,242,235,.66); font-size:12px; line-height:1.6; }

.participation { display:grid; grid-template-columns:4fr 8fr; gap:8.333%; padding:145px 8.4vw; background:var(--warm); color:var(--ink); }
.participation-intro { align-self:start; }
.participation-intro h2 { margin:25px 0 30px; font-size:clamp(60px,7.7vw,127px); line-height:.76; letter-spacing:-.11em; }
.participation-intro h2 em { color:var(--signal); }
.participation-intro > p:last-child { max-width:310px; margin:0; color:rgba(11,11,10,.7); font-size:13px; line-height:1.6; }
.participation-list { border-top:1px solid var(--line); }
.participation-list article { display:grid; grid-template-columns:1.2fr 2.2fr 3.4fr 2.1fr; gap:13px; align-items:center; min-height:132px; border-bottom:1px solid var(--line); }
.participation-list article > p { margin:0; color:var(--signal); font:9px var(--utility); letter-spacing:.09em; }
.participation-list h3 { margin:0; font-size:clamp(24px,2.5vw,40px); line-height:.88; letter-spacing:-.08em; }
.participation-list article > span { max-width:210px; color:rgba(11,11,10,.67); font-size:10px; line-height:1.45; }
.text-action { display:inline-flex; justify-content:flex-end; align-items:center; gap:8px; padding:0; border:0; color:var(--ink); background:transparent; font:9px var(--utility); letter-spacing:.07em; text-decoration:none; text-align:right; cursor:pointer; }
.text-action b { color:var(--signal); font-size:15px; font-weight:400; }
.text-action:hover { color:var(--signal); }

@media (max-width:700px) {
  .site-header nav { gap:20px; }
  .visual-edit { padding:101px 25px 80px; }
  .visual-edit-intro { display:block; margin-bottom:49px; }
  .visual-edit-intro .eyebrow { margin:0 0 63px; }
  .visual-edit-intro h2 { max-width:350px; font-size:clamp(62px,19vw,92px); }
  .visual-edit-intro > p:last-child { margin-top:28px; }
  .visual-edit-grid { display:grid; grid-template-columns:1fr 1fr; grid-template-rows:290px 168px 252px; gap:6px; }
  .visual-frame--club { grid-column:1 / -1; grid-row:1; }
  .visual-frame--rack { grid-column:1; grid-row:2; }
  .visual-frame--backstage { grid-column:2; grid-row:2; }
  .visual-frame--bar { grid-column:1 / -1; grid-row:3; }
  .visual-frame figcaption { right:11px; bottom:10px; left:11px; display:block; font-size:7px; }
  .visual-frame figcaption a { display:block; margin-top:3px; text-align:left; }
  .visual-edit-note { display:block; margin-top:13px; padding-top:13px; }
  .visual-edit-note p { font-size:8px; }
  .visual-edit-note p:last-child { margin-top:10px; }
  .night-guide { display:block; padding:102px 25px 0; }
  .night-guide-title { padding-bottom:61px; }
  .night-guide-title h2 { font-size:clamp(62px,19vw,94px); }
  .night-guide-list article { grid-template-columns:1fr; gap:15px; min-height:0; padding:23px 0 27px; }
  .night-guide-list span { align-self:auto; font-size:8px; }
  .night-guide-list h3 { font-size:48px; }
  .night-guide-list p { max-width:320px; }
  .participation { display:block; padding:105px 25px; }
  .participation-intro { margin-bottom:58px; }
  .participation-intro h2 { font-size:clamp(63px,19vw,96px); }
  .participation-list article { grid-template-columns:1fr; gap:12px; min-height:0; padding:21px 0 24px; }
  .participation-list h3 { font-size:37px; }
  .participation-list article > span { max-width:310px; }
  .text-action { justify-content:flex-start; margin-top:4px; text-align:left; }
}
