body.event-page .perk-tags{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0}
body.event-page .perk-tags>span{font-size:14px;line-height:1.4;padding:7px 11px;font-weight:700;border:1px solid #7d3f19;border-bottom:3px solid var(--ink)}
body.event-page .event-hero{padding-top:35px;background:linear-gradient(125deg,#111313 65%,#182b3a 160%);position:relative}
body.event-page .back-link{font-size:14px;margin-bottom:32px}
body.event-page .event-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:90px}
body.event-page .event-hero h1{font:italic 400 clamp(5rem,9vw,8.8rem)/1.06 var(--display);margin:16px 0 25px}
body.event-page .event-tagline{font:400 27px/1.3 var(--display);color:var(--paper);margin-bottom:18px}
body.event-page .event-hero-grid>div>p:not(.event-tagline){max-width:560px}
body.event-page .race-ticket{position:relative;border:1px solid #79837d;background:var(--paper);color:var(--ink);padding:32px 34px;box-shadow:8px 8px 0 var(--teal);transform:rotate(2deg)}
body.event-page .race-ticket:before{content:'';height:8px;position:absolute;top:0;inset-inline:0;background:linear-gradient(110deg,var(--teal) 0 70%,var(--orange) 70%)}
body.event-page .race-ticket>.status{background:var(--ink);color:var(--paper);border-color:var(--ink);border-bottom-color:var(--orange);margin-bottom:30px}
body.event-page .ticket-month{display:block;font-size:15px;font-weight:700;letter-spacing:.07em}
body.event-page .ticket-day{display:flex;align-items:end;gap:15px;font:400 145px/1.1 var(--display);padding-bottom:18px;border-bottom:1px dashed #7c827e}
body.event-page .ticket-day>span{font-size:35px;line-height:1.5;margin-bottom:6px;color:#3a4641}
body.event-page .race-ticket h2{font-size:29px;margin-top:24px}
body.event-page .race-ticket p{color:#3c4842;font-size:18px;margin-top:12px}
body.event-page .calendar-button{margin-top:24px;border-color:var(--ink)}
body.event-page .static-band{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:25px;background:var(--teal);color:var(--ink);padding:21px 24px;font:italic 400 24px/1.3 var(--display)}
body.event-page .static-band b{font-size:20px;color:#12678a}
body.event-page .event-story{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:74px;align-items:center}
body.event-page .story-photo{width:100%;max-width:460px;padding:7px 7px 0;background:var(--paper);box-shadow:7px 7px 0 var(--teal);transform:rotate(-1.5deg);margin:7px}
body.event-page .story-photo img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center 29%}
body.event-page .story-photo.landscape img{aspect-ratio:4/3;object-position:center}
body.event-page .story-photo figcaption{font:400 21px/1.3 var(--display);color:var(--ink);padding:12px 10px}
body.event-page .event-story h2{font-size:clamp(2.5rem,4vw,3.8rem);margin-bottom:24px}
body.event-page .event-story p{max-width:580px}
body.event-page .event-story .perk-tags>span{border-color:var(--line);border-bottom-color:var(--teal)}
body.event-page .details-section,body.event-page .schedule-section{background:#191e1c;border-block:1px solid var(--line)}
body.event-page .details-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:85px;align-items:start}
body.event-page .details-grid h2{font-size:clamp(2.7rem,4vw,3.7rem)}
body.event-page .details-grid>div>p{margin-top:25px}
body.event-page .event-facts{margin:0}
body.event-page .event-facts>div{display:grid;grid-template-columns:128px 1fr;gap:24px;padding:23px 0;border-bottom:1px solid var(--line)}
body.event-page .event-facts>div:first-child{padding-top:5px}
body.event-page .event-facts dt{font-size:13px;font-weight:700;line-height:1.5;color:var(--teal);padding-top:5px}
body.event-page .event-facts dd{font-size:23px;font-weight:700;margin:0;line-height:1.4}
body.event-page .event-facts dd span{display:block;margin-top:6px;color:var(--muted);font-size:17px;font-weight:400}
body.event-page .event-facts dd a{font-size:16px;display:inline-block;margin-top:10px;font-weight:700}
body.event-page .inclusions{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
body.event-page .inclusions article{padding:29px;border:1px solid var(--line);border-bottom:4px solid var(--teal)}
body.event-page .inclusions article>span{font:400 22px/1.3 var(--display);color:var(--orange)}
body.event-page .inclusions h3{margin:26px 0 12px}
body.event-page .inclusions p{font-size:17px}
body.event-page .coffee-feature{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:40px 48px 0;margin-top:27px;background:var(--teal);color:var(--ink);overflow:hidden}
body.event-page .coffee-feature h3{font-size:clamp(2.5rem,4vw,3.7rem)}
body.event-page .coffee-feature h3 span{color:#084d70}
body.event-page .coffee-feature p{color:var(--ink);margin-top:21px}
body.event-page .coffee-feature strong{display:block;font-size:14px;letter-spacing:.03em;margin:23px 0 40px}
body.event-page .coffee-feature>img{width:220px;height:330px;object-fit:contain;align-self:end;transform:rotate(6deg)}
body.event-page .schedule-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:90px}
body.event-page .schedule-grid h2{font-size:clamp(3rem,5vw,4.5rem)}
body.event-page .schedule-grid p{margin:24px 0}
body.event-page .timeline{padding:0;margin:0;list-style:none}
body.event-page .timeline li{display:grid;grid-template-columns:138px 1fr;gap:25px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line)}
body.event-page .timeline li:first-child{padding-top:0}
body.event-page .timeline time{font:400 44px/1 var(--display)}
body.event-page .timeline small{font:700 14px/1 var(--body);display:inline-block;margin-left:7px;color:var(--muted)}
body.event-page .timeline h3{font:700 17px/1.45 var(--body);text-transform:uppercase}
body.event-page .timeline .race-start{color:var(--teal);border-bottom:2px solid var(--teal)}
body.event-page .awards-section{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}
body.event-page .award-categories article{display:flex;gap:26px;padding:25px 0;border-bottom:1px solid var(--line)}
body.event-page .award-categories article>span{color:var(--orange);font-size:14px;line-height:2}
body.event-page .award-categories h3{font-size:27px;margin-bottom:11px}
body.event-page .award-categories p{font-size:18px}
body.event-page dialog{width:min(530px,calc(100% - 32px));max-height:calc(100vh - 40px);overflow:auto;padding:42px;border:1px solid var(--teal);background:var(--ink);color:var(--paper);box-shadow:7px 7px 0 var(--teal)}
body.event-page dialog::backdrop{background:#000c}
body.event-page dialog h2{font-size:52px;margin:20px 0}
body.event-page dialog p{margin-top:18px;font-size:17px}
body.event-page dialog .button{margin-top:26px}
body.event-page .dialog-close{position:absolute;right:14px;top:12px;width:36px;height:36px;background:none;color:var(--paper);border:0;font-size:28px}
body.event-page .dialog-date{font:400 26px/1.3 var(--display);color:var(--paper)}
body.event-page dialog .dialog-note{font-size:14px}
body.event-page .upcoming-hero{padding-top:36px;background:linear-gradient(135deg,var(--ink) 65%,#182e40 160%)}
body.event-page .upcoming-grid{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:55px}
body.event-page .upcoming-grid h1{font:italic 400 clamp(3.75rem,8.2vw,8.1rem)/1.13 var(--display);margin:18px 0 25px}
body.event-page .upcoming-grid h2{font-size:clamp(2.1rem,3.7vw,3.5rem);margin:32px 0 22px}
body.event-page .upcoming-grid p{max-width:570px;margin-bottom:28px}
body.event-page .upcoming-art{position:relative;min-height:500px}
body.event-page .upcoming-art img{position:relative;z-index:1;width:min(290px,80%);height:auto;transform:rotate(8deg);margin-left:auto}
body.event-page .upcoming-art>span{position:absolute;bottom:0;left:-15px;font:italic 400 clamp(3.5rem,6vw,5.5rem)/1.05 var(--display);color:#293b37;z-index:0}
body.event-page .upcoming-art b{color:var(--orange);font-weight:400}
body.event-page .coming-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--line);padding-top:32px;margin:52px 0 0}
body.event-page .coming-facts dt{font-size:14px;font-weight:700;color:var(--teal);letter-spacing:.05em}
body.event-page .coming-facts dd{font:400 28px/1.4 var(--display);margin:9px 0 0;text-transform:uppercase}
body.event-page .up-next{background:#1c2421;padding:46px 0;border-block:1px solid var(--line)}
body.event-page .up-next>.wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}
body.event-page .up-next .eyebrow{margin-bottom:14px}
body.event-page .up-next h2{font-size:39px}
body.event-page .up-next p{margin-top:14px}
@media(max-width:1100px){body.event-page .event-hero-grid{gap:45px}
body.event-page .event-hero h1{font-size:7rem}
body.event-page .race-ticket{padding:29px}
body.event-page .ticket-day{font-size:120px}
body.event-page .event-story{gap:45px}
body.event-page .details-grid{gap:45px}
body.event-page .schedule-grid{gap:45px}
body.event-page .timeline li{grid-template-columns:113px 1fr;gap:19px}
body.event-page .timeline time{font-size:39px}
body.event-page .upcoming-art{min-height:400px}
body.event-page .upcoming-art img{width:240px}}
@media(max-width:800px){body.event-page .event-hero-grid{grid-template-columns:1.1fr .9fr;gap:30px}
body.event-page .event-hero h1{font-size:5.5rem}
body.event-page .race-ticket{padding:24px 20px}
body.event-page .ticket-day{font-size:95px}
body.event-page .ticket-day>span{font-size:28px}
body.event-page .ticket-month{font-size:13px}
body.event-page .race-ticket h2{font-size:25px}
body.event-page .race-ticket p{font-size:16px}
body.event-page .event-hero-grid .actions{gap:22px}
body.event-page .event-story{gap:40px;grid-template-columns:1fr 1.1fr}
body.event-page .event-story h2{font-size:2.7rem}
body.event-page .story-photo{margin:5px 0}
body.event-page .details-grid{grid-template-columns:1fr;gap:30px}
body.event-page .details-grid h2{font-size:3.2rem}
body.event-page .event-facts>div{grid-template-columns:150px 1fr}
body.event-page .inclusions{gap:15px}
body.event-page .inclusions article{padding:22px 18px}
body.event-page .inclusions h3{font-size:24px}
body.event-page .coffee-feature{padding:32px 30px 0}
body.event-page .coffee-feature h3{font-size:2.7rem}
body.event-page .coffee-feature>img{width:185px;height:285px}
body.event-page .schedule-grid{grid-template-columns:1fr;gap:35px}
body.event-page .schedule-grid h2 br:first-child{display:none}
body.event-page .timeline li{grid-template-columns:130px 1fr;padding:24px 0}
body.event-page .awards-section{grid-template-columns:1fr;gap:28px}
body.event-page .upcoming-grid{gap:24px;grid-template-columns:1.1fr .9fr}
body.event-page .upcoming-grid h1{font-size:4.5rem}
body.event-page .upcoming-art{min-height:350px}
body.event-page .upcoming-art img{width:220px}
body.event-page .upcoming-art>span{left:0;font-size:3.6rem}
body.event-page .static-band{font-size:19px;gap:18px}
body.event-page .static-band b{font-size:16px}}
@media(max-width:600px){body.event-page .event-hero{padding-top:27px}
body.event-page .back-link{margin-bottom:26px}
body.event-page .event-hero-grid{grid-template-columns:1fr;gap:42px}
body.event-page .event-hero h1{font-size:clamp(5.5rem,23vw,8rem);line-height:1.05}
body.event-page .event-tagline{font-size:26px}
body.event-page .event-hero-grid .actions{gap:25px}
body.event-page .race-ticket{max-width:440px;width:calc(100% - 18px);margin:0 auto 6px;padding:29px}
body.event-page .race-ticket>.status{margin-bottom:23px}
body.event-page .ticket-month{font-size:14px}
body.event-page .ticket-day{font-size:120px}
body.event-page .ticket-day>span{font-size:33px}
body.event-page .race-ticket h2{font-size:28px}
body.event-page .race-ticket p{font-size:17px}
body.event-page .static-band{gap:10px 13px;font-size:16px;padding:17px 15px}
body.event-page .static-band b{font-size:13px}
body.event-page .event-story{grid-template-columns:1fr;gap:35px}
body.event-page .story-photo{max-width:390px;width:calc(100% - 15px);margin:7px auto}
body.event-page .story-photo img{aspect-ratio:6/5;object-position:center 30%}
body.event-page .story-photo.landscape img{aspect-ratio:4/3}
body.event-page .story-photo figcaption{font-size:19px}
body.event-page .event-story h2{font-size:clamp(2.6rem,10vw,3.5rem);line-height:1.15}
body.event-page .details-grid h2{font-size:clamp(2.4rem,9.7vw,3.2rem)}
body.event-page .event-facts>div{grid-template-columns:1fr;gap:9px;padding:24px 0}
body.event-page .event-facts dd{font-size:23px}
body.event-page .event-facts dt{font-size:13px}
body.event-page .event-facts dd span{font-size:17px}
body.event-page .inclusions{grid-template-columns:1fr;gap:16px}
body.event-page .inclusions article{display:grid;grid-template-columns:31px 1fr;gap:8px 15px;padding:24px}
body.event-page .inclusions article>span{grid-row:1/3}
body.event-page .inclusions h3{margin:0;font-size:26px}
body.event-page .inclusions p{font-size:17px}
body.event-page .coffee-feature{position:relative;display:block;padding:30px 24px 0}
body.event-page .coffee-feature h3{font-size:clamp(2.2rem,8.5vw,3.1rem)}
body.event-page .coffee-feature .eyebrow{font-size:13px}
body.event-page .coffee-feature strong{font-size:13px;margin-bottom:10px}
body.event-page .coffee-feature>img{width:165px;height:247px;margin-left:auto;margin-right:8px;transform:rotate(6deg)}
body.event-page .schedule-grid{gap:33px}
body.event-page .schedule-grid h2{font-size:3.7rem}
body.event-page .timeline li{grid-template-columns:102px 1fr;gap:15px;padding:24px 0}
body.event-page .timeline time{font-size:35px}
body.event-page .timeline small{font-size:12px;margin-left:5px}
body.event-page .timeline h3{font-size:15px}
body.event-page .awards-section h2{font-size:3rem}
body.event-page .award-categories article{gap:20px}
body.event-page .award-categories h3{font-size:25px}
body.event-page .award-categories p{font-size:17px}
body.event-page .upcoming-grid{grid-template-columns:1fr;gap:25px}
body.event-page .upcoming-grid h1{font-size:clamp(3.8rem,15vw,5.6rem);line-height:1.15}
body.event-page .upcoming-grid h2{font-size:2.5rem;line-height:1.15;margin-top:25px}
body.event-page .upcoming-art{min-height:310px;max-width:340px;width:100%;margin:auto}
body.event-page .upcoming-art img{height:305px;width:auto;max-width:65%;object-fit:contain;margin-right:10px}
body.event-page .upcoming-art>span{font-size:3.8rem;bottom:14px;left:7px}
body.event-page .coming-facts{grid-template-columns:1fr;margin-top:25px;padding-top:25px;gap:21px}
body.event-page .coming-facts>div{display:flex;justify-content:space-between;align-items:center;gap:20px}
body.event-page .coming-facts dd{font-size:22px;margin:0}
body.event-page .coming-facts dt{font-size:12px}
body.event-page .up-next>.wrap{display:block}
body.event-page .up-next h2{font-size:34px}
body.event-page .up-next .button{margin-top:25px}
body.event-page dialog{padding:38px 25px 30px}
body.event-page dialog h2{font-size:46px}}
@media(max-width:360px){body.event-page .timeline li{grid-template-columns:89px 1fr}
body.event-page .timeline time{font-size:31px}}