:root{--red:#eb1c24;--orange:#ff8615;--yellow:#ffc905;--green:#9bbd44;--blue:#47a4ac;--ink:#080808;--paper:#f7f4ed;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
main{min-height:100vh;overflow:hidden;background:radial-gradient(circle at 8% 20%,rgba(255,201,5,.12),transparent 25%),var(--paper)}
.top-colors{height:13px;display:grid;grid-template-columns:repeat(5,1fr)}
.top-colors i:nth-child(1){background:var(--red)}.top-colors i:nth-child(2){background:var(--orange)}.top-colors i:nth-child(3){background:var(--yellow)}.top-colors i:nth-child(4){background:var(--green)}.top-colors i:nth-child(5){background:var(--blue)}
.hero{max-width:1080px;margin:auto;padding:54px 28px 42px;display:grid;grid-template-columns:310px 1fr;gap:48px;align-items:center;position:relative}
.hero:after{content:"";position:absolute;right:-240px;top:80px;width:420px;height:20px;background:var(--yellow)}
.logo-box{position:relative}.logo-box:before{content:"";position:absolute;inset:10% -8%;background:var(--ink);border-radius:45% 55% 48% 52%;transform:rotate(-3deg);z-index:0}
.logo-box img{display:block;position:relative;z-index:1;width:100%;border-radius:26px;mix-blend-mode:screen}
.eyebrow,.section-label{margin:0 0 11px;color:var(--orange);font-size:13px;font-weight:900;letter-spacing:.2em}
h1{margin:0;font-size:clamp(54px,8vw,96px);line-height:.9;letter-spacing:-.065em;font-weight:1000}
.subtitle{max-width:540px;margin:23px 0 0;color:#3e3e3e;font-size:19px;line-height:1.55}
.event-date{background:var(--ink);color:var(--white);text-align:center;padding:42px 20px 46px;position:relative}
.event-date:before{content:"";position:absolute;left:0;top:0;width:32%;height:10px;background:var(--blue)}
.event-date:after{content:"";position:absolute;right:0;bottom:0;width:28%;height:10px;background:var(--green)}
.event-date>p{margin:0 0 6px;color:var(--yellow);font-size:12px;font-weight:900;letter-spacing:.22em}
.event-date-main{display:flex;justify-content:center;align-items:center;gap:18px;line-height:.82}
.event-date-main strong{font-size:clamp(92px,16vw,165px);letter-spacing:-.085em;color:var(--red)}
.event-date-main span{font-size:28px;font-weight:900;color:var(--yellow)}
.event-date h2{margin:12px 0 0;font-size:clamp(29px,5vw,48px);letter-spacing:.03em}.event-date h2 b{color:var(--orange)}
.dates,.actions,.locations{max-width:1080px;margin:auto;padding:70px 28px}
.dates>h2,.actions>h2,.locations>h2{margin:0 0 34px;font-size:clamp(40px,6vw,65px);letter-spacing:-.055em;line-height:.95}
.date-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.date-card{min-height:220px;padding:26px;display:grid;grid-template-columns:115px 1fr;align-items:center;gap:22px;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}
.date-card.opens{background:var(--blue)}.date-card.closes{background:var(--yellow)}
.number{font-size:84px;font-weight:1000;line-height:1;letter-spacing:-.09em}
.date-card p{margin:0 0 7px;font-size:12px;font-weight:900;letter-spacing:.14em}.date-card h3{margin:0 0 9px;font-size:26px;letter-spacing:-.035em}.date-card small{font-size:15px;line-height:1.4}
.limited{margin-top:30px;display:grid;grid-template-columns:54px auto 1fr;gap:17px;align-items:center;background:var(--red);color:white;padding:18px 22px}
.limited span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:white;color:var(--red);font-size:27px;font-weight:1000}.limited strong{font-size:21px}.limited small{font-size:14px}
.locations{max-width:none;background:var(--ink);color:white;padding-left:max(28px,calc((100vw - 1024px)/2));padding-right:max(28px,calc((100vw - 1024px)/2));position:relative}
.locations:after{content:"";position:absolute;right:0;bottom:0;width:34%;height:10px;background:var(--blue)}
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.location-card{min-height:250px;padding:28px;display:grid;grid-template-columns:58px 1fr;gap:19px;color:var(--ink)}
.location-card.city{background:var(--blue)}.location-card.venue{background:var(--green)}
.location-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:white}
.location-card small{display:block;margin:5px 0 9px;font-size:10px;font-weight:900;letter-spacing:.16em}
.location-card h3{margin:0 0 7px;font-size:31px;letter-spacing:-.04em}.location-card p{margin:0;font-size:15px}
.location-card a{grid-column:1/-1;align-self:end;display:flex;justify-content:space-between;padding-top:19px;border-top:2px solid rgba(0,0,0,.22);color:var(--ink);font-size:12px;font-weight:900;letter-spacing:.09em;text-decoration:none}
.location-card a b{font-size:22px;line-height:.5}
.actions{padding-top:40px}.action{min-height:132px;margin-bottom:17px;display:grid;grid-template-columns:68px 1fr 36px;align-items:center;gap:22px;padding:24px 28px;border:3px solid var(--ink);color:var(--ink);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}
.action:hover,.action:focus-visible{transform:translateY(-3px);box-shadow:9px 9px 0 var(--ink);outline:none}.action.primary{background:var(--green)}.action.regulation{background:var(--yellow)}.action.contact{background:white}
.icon{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:white;font-size:29px;font-weight:900}.action-copy small,.action-copy strong,.action-copy em{display:block}.action-copy small{font-size:10px;font-weight:900;letter-spacing:.15em;margin-bottom:5px}.action-copy strong{font-size:30px;letter-spacing:-.035em}.action-copy em{font-style:normal;margin-top:4px;font-size:14px;overflow-wrap:anywhere}.action>b{font-size:31px}
footer{padding:35px max(28px,calc((100vw - 1024px)/2));background:var(--red);color:white;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}footer strong{font-size:20px}footer span{font-size:12px;letter-spacing:.14em}footer p{margin:0;font-size:12px;font-weight:900;letter-spacing:.08em}
@media(max-width:720px){
 .hero{padding:35px 21px 39px;grid-template-columns:1fr;gap:25px;text-align:center}.logo-box{width:min(76vw,310px);margin:auto}.hero:after{right:-320px}.subtitle{font-size:16px;margin:17px auto 0}h1{font-size:52px}
 .event-date{padding:36px 15px 40px}.event-date-main{gap:12px}.event-date-main strong{font-size:105px}.event-date-main span{font-size:22px}.event-date h2{font-size:28px}
 .dates,.actions,.locations{padding:55px 20px}.dates>h2,.actions>h2,.locations>h2{font-size:43px}.date-grid{grid-template-columns:1fr}.date-card{min-height:185px;grid-template-columns:90px 1fr;padding:21px 18px;gap:16px;box-shadow:6px 6px 0 var(--ink)}.number{font-size:68px}.date-card h3{font-size:22px}.date-card small{font-size:14px}
 .location-grid{grid-template-columns:1fr}.location-card{min-height:225px;padding:23px 20px;grid-template-columns:52px 1fr;gap:15px}.location-icon{width:50px;height:50px}.location-card h3{font-size:27px}
 .limited{grid-template-columns:44px 1fr;padding:16px}.limited span{width:38px;height:38px}.limited strong{font-size:18px}.limited small{grid-column:1/-1}
 .actions{padding-top:32px}.action{min-height:122px;grid-template-columns:52px 1fr 18px;gap:14px;padding:20px 15px}.icon{width:50px;height:50px;font-size:23px}.action-copy strong{font-size:22px}.action-copy em{font-size:13px}.action>b{font-size:23px}
 footer{grid-template-columns:1fr;gap:7px;padding:28px 22px}footer p{margin-top:7px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
