:root{color-scheme:dark;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--ink: #160914;--ink-soft: #241020;--panel: #2f1028;--burgundy: #76163d;--magenta: #c02370;--purple: #5f2a84;--purple-bright: #9c54d4;--gold: #f6c85f;--gold-deep: #cf8c2a;--parchment: #f4ead1;--paper: #fff8e7;--muted: #cfbfd0;--border: rgba(246, 200, 95, .22);--display: "Cinzel", Georgia, serif;--shadow: 0 26px 80px rgba(9, 2, 11, .34)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;min-width:320px;background:var(--ink);color:#fff;line-height:1.6;overflow-x:hidden}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,input{font:inherit}a{color:inherit}button,a{touch-action:manipulation}svg{flex:0 0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;top:1rem;left:1rem;transform:translateY(-180%);padding:.75rem 1rem;border-radius:.5rem;background:var(--paper);color:var(--ink);font-weight:800}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.hero{position:relative;min-height:94vh;min-height:760px;display:grid;place-items:center;isolation:isolate;overflow:hidden;border-bottom:1px solid rgba(246,200,95,.26)}.hero-image,.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.hero-image{z-index:-3;object-fit:cover;object-position:center;filter:saturate(.92) contrast(1.04) brightness(.8);animation:hero-breathe 18s ease-in-out infinite alternate}.hero-shade{z-index:-2;background:linear-gradient(90deg,#0d0310f5,#120412d1 31%,#11041440 66%,#11041461),linear-gradient(0deg,var(--ink) 0%,transparent 29%)}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background-image:repeating-linear-gradient(110deg,rgba(255,255,255,.022) 0 1px,transparent 1px 12px);pointer-events:none}.topbar{position:absolute;z-index:4;top:0;left:50%;width:min(1200px,calc(100% - 3rem));transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;padding:1.3rem 0;border-bottom:1px solid rgba(255,255,255,.16)}.wordmark{display:inline-flex;align-items:center;gap:.65rem;color:#fff;text-decoration:none;font-family:var(--display);font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.wordmark-crown{display:grid;place-items:center;width:2rem;height:2rem;color:var(--gold);border:1px solid rgba(246,200,95,.5);border-radius:50%}.nav-links{display:flex;gap:1.7rem}.nav-links a{color:#ffffffc7;text-decoration:none;font-size:.84rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nav-links a:hover{color:var(--gold)}.hero-content{width:min(1200px,calc(100% - 3rem));padding:8rem 0 5rem}.hero-content>*{max-width:730px}.royal-mark{display:flex;align-items:center;gap:.9rem;margin-bottom:1.2rem;color:var(--gold);font-size:.76rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase}.royal-mark span{width:2.4rem;height:1px;background:var(--gold);box-shadow:0 0 12px #f6c85fb3}.hero h1,.section h2,.day-heading h3,.tournament-section h2,.birthday-section h2{margin:0;font-family:var(--display);line-height:1.05;text-wrap:balance}.hero h1{max-width:820px;font-size:clamp(3.4rem,7vw,7.4rem);letter-spacing:-.035em;text-shadow:0 4px 38px rgba(0,0,0,.55),0 0 44px rgba(192,35,112,.18)}.hero-date{margin:1.25rem 0 0;color:var(--gold);font-family:var(--display);font-size:clamp(1.05rem,2vw,1.35rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-tagline{margin:.55rem 0 1.6rem;color:#ffffffdb;font-size:clamp(1.05rem,2vw,1.35rem);font-weight:600;letter-spacing:.02em}.countdown{width:fit-content;min-width:340px;padding:1rem 1.25rem 1.15rem;border:1px solid rgba(246,200,95,.34);border-radius:.8rem;background:#150514ad;box-shadow:inset 0 0 28px #c0237017,0 16px 40px #00000042;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.countdown>p{margin:0 0 .55rem;color:#ffffffa6;font-size:.72rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.countdown-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}.countdown-unit{display:grid}.countdown-unit+.countdown-unit{padding-left:1.1rem;border-left:1px solid rgba(246,200,95,.18)}.countdown-unit strong{font-family:var(--display);font-size:1.75rem;line-height:1}.countdown-unit span{margin-top:.25rem;color:var(--muted);font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.countdown-begun{display:flex;align-items:center;gap:.8rem;min-width:0;color:var(--gold);font-family:var(--display);font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:48px;padding:.78rem 1.05rem;border:1px solid transparent;border-radius:.45rem;font-size:.86rem;font-weight:800;letter-spacing:.045em;line-height:1.15;text-align:center;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:#28110f;box-shadow:0 8px 26px #f6c85f33}.button-gold:hover{background:#ffda7d;box-shadow:0 12px 30px #f6c85f4d}.button-outline{border-color:#f6c85f61;background:transparent;color:var(--gold)}.button-outline:hover{background:#f6c85f14}.hero-cta{margin-top:1.25rem}.hero-emblems{position:absolute;right:max(1.5rem,calc((100% - 1200px)/2));bottom:3.5rem;display:flex;gap:.7rem;z-index:3}.crest-button,.crown-button{position:relative;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(246,200,95,.4);color:var(--gold);background:#1004119e;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);cursor:pointer;transition:transform .16s ease,background-color .16s ease}.crest-button{border-radius:50% 50% 46% 46%/35% 35% 65% 65%}.crest-button:hover,.crown-button:hover{transform:translateY(-3px) rotate(-2deg);background:#5f2a8480}.crest-button svg{width:36px;height:36px}.crest-button span{position:absolute;color:#fff;font-family:var(--display);font-size:.8rem;font-weight:800}.crown-button{border-radius:50%}.sparkle-burst{position:absolute;top:50%;right:50%;bottom:50%;left:50%;pointer-events:none}.sparkle-burst i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--gold);animation:crown-spark .7s ease-out forwards}.sparkle-burst i:nth-child(1){--x: 42px;--y: 0px}.sparkle-burst i:nth-child(2){--x: 31px;--y: 31px}.sparkle-burst i:nth-child(3){--x: 0px;--y: 42px}.sparkle-burst i:nth-child(4){--x: -31px;--y: 31px}.sparkle-burst i:nth-child(5){--x: -42px;--y: 0px}.sparkle-burst i:nth-child(6){--x: -31px;--y: -31px}.sparkle-burst i:nth-child(7){--x: 0px;--y: -42px}.sparkle-burst i:nth-child(8){--x: 31px;--y: -31px}.scroll-cue{position:absolute;bottom:2rem;left:50%;display:flex;align-items:center;gap:.35rem;transform:translate(-50%);color:#ffffff94;font-size:.7rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;animation:cue-bob 2s ease-in-out infinite}.hero-stars i{position:absolute;z-index:1;width:4px;height:4px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold);animation:twinkle 3s ease-in-out infinite}.hero-stars i:nth-child(1){top:21%;left:58%}.hero-stars i:nth-child(2){top:31%;left:76%;animation-delay:.7s}.hero-stars i:nth-child(3){top:18%;left:88%;animation-delay:1.5s}.hero-stars i:nth-child(4){top:48%;left:71%;animation-delay:2.2s}.hero-stars i:nth-child(5){top:34%;left:48%;animation-delay:1s}main{position:relative;background:radial-gradient(circle at 84% 18%,rgba(95,42,132,.15),transparent 24rem),var(--ink)}.section{width:min(1200px,calc(100% - 3rem));margin:0 auto;padding:clamp(5.5rem,9vw,9rem) 0}.section-heading{max-width:720px;margin-bottom:3rem}.section-heading.centered{margin-inline:auto;text-align:center}.eyebrow{margin:0 0 .85rem;color:var(--gold);font-size:.74rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.section h2,.tournament-section h2,.birthday-section h2{font-size:clamp(2.4rem,5vw,5rem);letter-spacing:-.025em}.section-heading>p:last-child{margin:1rem 0 0;color:var(--muted);font-size:1rem}[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .65s ease var(--delay, 0ms),transform .65s ease var(--delay, 0ms)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.glance-section{padding-bottom:4rem}.glance-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}.glance-card{position:relative;min-height:180px;padding:1.4rem;border:1px solid rgba(246,200,95,.17);background:#ffffff09;overflow:hidden}.glance-card:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.glance-card:hover:after{transform:scaleX(1)}.glance-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:1.35rem;color:var(--gold);border:1px solid rgba(246,200,95,.3);border-radius:50%;background:#76163d52}.glance-icon svg{width:23px}.glance-card h3{margin:0 0 .25rem;font-family:var(--display);font-size:1rem;line-height:1.25}.glance-card p{margin:0;color:var(--muted);font-size:.86rem}.itinerary-section{padding-top:6rem}.itinerary-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}.day-panel{min-width:0}.day-heading{padding-bottom:1.7rem;border-bottom:1px solid var(--border)}.day-heading h3{font-size:clamp(2rem,4vw,3.15rem)}.day-heading>p:last-child{margin:.75rem 0 0;color:var(--muted)}.day-sunday{padding:2rem;border:1px solid rgba(246,200,95,.14);background:#f4ead10b}.timeline{position:relative;list-style:none;margin:0;padding:1.7rem 0 0 1.6rem}.timeline:before{content:"";position:absolute;top:1.7rem;bottom:1rem;left:.3rem;width:1px;background:linear-gradient(var(--gold),rgba(246,200,95,.06))}.timeline-item{position:relative;padding:0 0 1rem}.timeline-pin{position:absolute;top:1.4rem;left:-1.57rem;width:11px;height:11px;border:2px solid var(--gold);border-radius:50%;background:var(--ink);box-shadow:0 0 0 4px #f6c85f14,0 0 14px #f6c85f47}.timeline-card{padding:1.15rem 1.25rem;border:1px solid rgba(255,255,255,.085);background:#ffffff07;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.timeline-card:hover{border-color:#f6c85f4d;background:#76163d1f;transform:translate(3px)}.timeline-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.4rem}.timeline-topline time{color:var(--gold);font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.mini-badge{padding:.2rem .45rem;border:1px solid rgba(156,84,212,.4);border-radius:2rem;color:#dcb6ff;font-size:.65rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.timeline-card h4{margin:0;font-family:var(--display);font-size:1.05rem;line-height:1.3}.timeline-card p{margin:.45rem 0 0;color:var(--muted);font-size:.88rem}.timeline-callout{display:block;margin-top:.7rem;color:var(--gold);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase}.timeline-card .button{margin-top:.9rem}.timeline-main .timeline-card{position:relative;padding:1.5rem;border-color:#f6c85f7a;background:linear-gradient(135deg,#76163d80,#5f2a8440);box-shadow:0 14px 45px #30031c4d}.timeline-main .timeline-card:before{content:"Main event";position:absolute;top:-.65rem;right:1rem;padding:.22rem .55rem;background:var(--gold);color:#2b0c19;font-size:.6rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.timeline-main .timeline-card h4{font-size:1.35rem}.timeline-final .timeline-card{border-color:#f6c85f5c;background:#f6c85f11}.mini-icon-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}.mini-icon-row span{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .55rem;border:1px solid rgba(255,255,255,.12);border-radius:2rem;color:#ffffffd1;font-size:.66rem;font-weight:700}.timeline-side-icon{position:absolute;top:1.15rem;right:1rem;width:24px;color:#f6c85f3d}.tournament-section{position:relative;display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);min-height:640px;overflow:hidden;border-block:1px solid rgba(246,200,95,.18);background:#280c21}.tournament-section:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(90deg,transparent 49.8%,rgba(246,200,95,.045) 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,rgba(246,200,95,.035) 50%,transparent 50.2%);background-size:72px 72px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 70%);mask-image:linear-gradient(90deg,#000,transparent 70%)}.tournament-art{position:relative;display:grid;place-items:center;min-height:480px;overflow:hidden;border-right:1px solid rgba(246,200,95,.18);background:radial-gradient(circle,rgba(246,200,95,.18),transparent 4px),radial-gradient(circle at 50% 45%,rgba(192,35,112,.33),transparent 38%),#1a081a;background-size:34px 34px,auto,auto}.crossed-blades{position:relative;z-index:2;display:grid;place-items:center;width:180px;height:180px;border:1px solid rgba(246,200,95,.5);border-radius:50%;background:#160914c7;box-shadow:0 0 0 18px #f6c85f0b,0 0 70px #c0237047}.crossed-blades svg{width:88px;height:88px;color:var(--gold);filter:drop-shadow(0 0 16px rgba(246,200,95,.32))}.ring{position:absolute;border:1px solid rgba(246,200,95,.16);border-radius:50%}.ring-one{width:300px;height:300px;animation:ring-spin 22s linear infinite}.ring-two{width:430px;height:430px;border-style:dashed;animation:ring-spin 35s linear infinite reverse}.tournament-copy{position:relative;z-index:2;align-self:center;max-width:720px;padding:clamp(4rem,8vw,8rem)}.tournament-copy h2{font-size:clamp(3rem,6vw,6rem)}.tournament-lede{max-width:640px;margin:1.4rem 0 0;color:#f9e9ef;font-size:clamp(1.2rem,2.3vw,1.7rem);font-weight:700;line-height:1.45}.tournament-punchline{margin:.55rem 0 2rem;color:var(--gold);font-family:var(--display);font-weight:700}.tournament-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:1.2rem;border:1px solid rgba(246,200,95,.2);background:#f6c85f24}.tournament-facts>div{display:flex;align-items:center;gap:.7rem;padding:1rem;background:#280c21}.tournament-facts svg{color:var(--gold)}.tournament-facts span{display:grid}.tournament-facts small{color:var(--muted);font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.tournament-facts strong{font-size:.86rem}.badge-cloud{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.badge-cloud span{padding:.42rem .65rem;border:1px solid rgba(255,255,255,.13);border-radius:2rem;color:#fffc;font-size:.72rem;font-weight:700}.rail-section{width:min(1100px,calc(100% - 3rem))}.ticket-grid{display:grid;gap:1.2rem}.rail-ticket{display:grid;grid-template-columns:155px 1fr;min-height:210px;overflow:hidden;color:#2d1b22;background:var(--parchment);box-shadow:var(--shadow);transform:rotate(-.35deg)}.rail-ticket:nth-child(2){transform:rotate(.35deg)}.ticket-stub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.25rem;border-right:2px dashed rgba(45,27,34,.28);background:#e6d0a5}.ticket-stub:before,.ticket-stub:after{content:"";position:absolute;right:-12px;width:22px;height:22px;border-radius:50%;background:var(--ink)}.ticket-stub:before{top:-11px}.ticket-stub:after{bottom:-11px}.ticket-stub>span{color:var(--burgundy);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.ticket-stub svg{margin:1rem 0 .6rem;width:34px;height:34px}.ticket-stub strong{font-family:var(--display);font-size:2rem;line-height:1}.ticket-stub small{font-size:.64rem;font-weight:800;text-transform:uppercase}.ticket-main{position:relative;padding:1.5rem 1.8rem;background-image:repeating-linear-gradient(105deg,transparent 0 12px,rgba(45,27,34,.025) 12px 13px)}.ticket-heading{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(45,27,34,.2)}.ticket-heading>div{display:grid}.ticket-heading span{color:#72545d;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.ticket-heading strong{font-family:var(--display);font-size:1.15rem}.ticket-code{padding:.45rem;border:1px solid rgba(45,27,34,.22)}.ticket-route{display:grid;grid-template-columns:1fr minmax(90px,.55fr) 1fr;align-items:center;gap:1rem;padding-top:1.25rem}.ticket-route>div:not(.ticket-track){display:grid}.ticket-route>div:last-child{text-align:right}.ticket-route small{color:#765c65;font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.ticket-route strong{font-family:var(--display);font-size:1.2rem;line-height:1.25}.ticket-route time{color:var(--burgundy);font-size:1rem;font-weight:900}.ticket-track{position:relative;height:32px}.ticket-track:before{content:"";position:absolute;top:50%;left:0;right:0;border-top:2px dotted rgba(45,27,34,.4)}.ticket-track span{position:absolute;top:calc(50% - 4px);left:-2px;width:9px;height:9px;border-radius:50%;background:var(--burgundy)}.ticket-track:after{content:"";position:absolute;top:calc(50% - 4px);right:-2px;width:9px;height:9px;border-radius:50%;background:var(--burgundy)}.ticket-track svg{position:absolute;z-index:1;top:2px;left:calc(50% - 14px);width:28px;height:28px;padding:3px;background:var(--parchment)}.stay-section{padding-top:3rem}.stay-card{position:relative;display:grid;grid-template-columns:1.2fr .7fr 1fr auto;align-items:center;gap:2rem;padding:2.2rem;border:1px solid rgba(246,200,95,.25);background:#241020;box-shadow:var(--shadow);overflow:hidden}.stay-card:after{content:"";position:absolute;top:-70px;right:10%;width:170px;height:170px;border:32px solid rgba(192,35,112,.08);border-radius:50%}.stay-title,.stay-times,.stay-features,.stay-card .button{position:relative;z-index:1}.stay-title h2{font-size:clamp(2rem,4vw,3.5rem)}.stay-title>p:last-child{display:flex;align-items:center;gap:.4rem;margin:.65rem 0 0;color:var(--muted)}.stay-times{display:grid;gap:1rem;padding-left:2rem;border-left:1px solid var(--border)}.stay-times>div{display:grid}.stay-times small{color:var(--gold);font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.stay-features{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}.stay-features li{display:flex;align-items:center;gap:.55rem;color:var(--muted);font-size:.8rem}.stay-features svg{width:16px;color:var(--gold)}.route-section{width:min(1000px,calc(100% - 3rem))}.route-map{position:relative;display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;padding:2.6rem 0 1.5rem}.route-line{position:absolute;top:4rem;left:7%;right:7%;height:2px;background:linear-gradient(90deg,var(--gold),var(--magenta),var(--purple-bright),var(--gold));box-shadow:0 0 14px #c0237059}.moving-train{position:absolute;top:-22px;left:0;font-size:1.2rem;filter:drop-shadow(0 0 6px var(--gold));animation:route-train 12s ease-in-out infinite}.route-stop{position:relative;z-index:1;display:grid;justify-items:center;gap:.8rem;text-align:center}.route-icon{display:grid;place-items:center;width:46px;height:46px;border:2px solid var(--gold);border-radius:50%;background:var(--ink);box-shadow:0 0 0 5px var(--ink),0 0 0 6px #f6c85f29}.route-icon svg{width:19px;color:var(--gold)}.route-stop>div:last-child{display:grid}.route-stop strong{font-family:var(--display);font-size:.77rem;line-height:1.3}.route-stop span{margin-top:.25rem;color:var(--muted);font-size:.68rem;line-height:1.35}.map-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem;margin-top:2rem}.checklist-section{width:min(1100px,calc(100% - 3rem))}.checklist-shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);padding:clamp(2rem,5vw,4.5rem);border:1px solid rgba(246,200,95,.22);background:#241020;box-shadow:var(--shadow)}.checklist-intro h2{font-size:clamp(2.5rem,5vw,4rem)}.checklist-intro>p:nth-of-type(2){color:var(--muted)}.checklist-progress{margin:1.8rem 0 .8rem}.checklist-progress>span{display:block;height:7px;margin-bottom:.55rem;overflow:hidden;border-radius:2rem;background:#ffffff17}.checklist-progress i{display:block;height:100%;border-radius:inherit;background:var(--gold);box-shadow:0 0 14px #f6c85f61;transition:width .22s ease}.checklist-progress strong{color:var(--gold);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}.text-button{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem 0;border:0;color:var(--muted);background:transparent;font-size:.76rem;font-weight:700;cursor:pointer}.text-button:hover{color:#fff}.checklist-groups{display:grid;gap:.8rem}.checklist-groups details{border:1px solid rgba(255,255,255,.1);background:#ffffff06}.checklist-groups summary{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:.8rem 1rem;cursor:pointer;list-style:none}.checklist-groups summary::-webkit-details-marker{display:none}.checklist-groups summary>span{display:flex;align-items:center;gap:.7rem;font-family:var(--display);font-size:.95rem;font-weight:700}.checklist-groups summary svg{width:19px;color:var(--gold);transition:transform .18s ease}.checklist-groups details[open] summary>svg{transform:rotate(180deg)}.check-items{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem;padding:0 1rem 1rem}.check-items label{display:flex;align-items:center;min-height:46px;gap:.65rem;padding:.55rem .7rem;border:1px solid rgba(255,255,255,.07);color:#ffffffd1;font-size:.82rem;cursor:pointer;transition:opacity .18s ease,background-color .18s ease}.check-items label:hover{background:#ffffff09}.check-items label.is-checked{color:var(--muted);opacity:.7;text-decoration:line-through}.check-items input{position:absolute;opacity:0;pointer-events:none}.fake-check{display:grid;place-items:center;width:22px;height:22px;border:1px solid rgba(246,200,95,.42)}.fake-check svg{width:14px;color:var(--ink);opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .15s ease}.check-items input:checked+.fake-check{background:var(--gold)}.check-items input:checked+.fake-check svg{opacity:1;transform:scale(1)}.check-items input:focus-visible+.fake-check{outline:3px solid var(--gold);outline-offset:3px}.birthday-section{position:relative;display:grid;justify-items:center;min-height:690px;padding:clamp(6rem,12vw,10rem) 1.5rem;text-align:center;overflow:hidden;border-top:1px solid rgba(246,200,95,.2);background:radial-gradient(circle at 50% 40%,rgba(192,35,112,.32),transparent 24rem),#190816}.birthday-section:before,.birthday-section:after{content:"";position:absolute;top:0;width:24vw;height:100%;opacity:.33;background:repeating-linear-gradient(112deg,transparent 0 22px,rgba(246,200,95,.12) 22px 23px)}.birthday-section:before{left:0}.birthday-section:after{right:0;transform:scaleX(-1)}.birthday-section>*{position:relative;z-index:1}.birthday-crown{display:grid;place-items:center;width:88px;height:88px;margin-bottom:1.5rem;color:var(--gold);border:1px solid rgba(246,200,95,.38);border-radius:50%;box-shadow:0 0 0 12px #f6c85f0a,0 0 60px #f6c85f2e}.birthday-crown svg{width:45px;height:45px}.birthday-section h2{font-size:clamp(3rem,8vw,7rem)}.birthday-poem{display:grid;margin:2rem 0;color:var(--muted);font-size:clamp(1rem,2vw,1.25rem)}.birthday-poem strong{margin-top:.4rem;color:var(--gold);font-family:var(--display);font-size:1.25em}.birthday-wish{margin:0 0 1.6rem;color:#fff;font-family:var(--display);font-size:clamp(1.3rem,3vw,2rem);font-weight:700}footer{position:relative;display:grid;justify-items:center;gap:.35rem;padding:3rem 1.5rem;border-top:1px solid rgba(246,200,95,.2);background:#0e050e;color:var(--muted);text-align:center;overflow:hidden}footer>div{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.55rem}footer svg{color:var(--gold)}footer strong{color:#fff;font-family:var(--display)}footer p,footer span{margin:0;font-size:.76rem}.footer-knight{position:absolute;bottom:.2rem;left:-3rem;color:var(--gold);font-size:1.6rem;animation:knight-ride 26s linear infinite}.fanfare{position:fixed;z-index:999;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;overflow:hidden;animation:fanfare-fade 2.4s ease forwards}.fanfare span{padding:1rem 1.8rem;border:1px solid var(--gold);background:#160914e6;color:var(--gold);font-family:var(--display);font-size:clamp(2.4rem,9vw,6rem);font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 70px #f6c85f47}.fanfare i{position:absolute;top:-12%;left:calc(var(--i) * 8%);width:9px;height:70px;background:var(--gold);animation:confetti-fall 2s ease-in forwards}.fanfare i:nth-of-type(3n){background:var(--magenta)}.fanfare i:nth-of-type(3n+1){background:var(--purple-bright)}.fanfare i:nth-of-type(1){--i: 1;transform:rotate(12deg)}.fanfare i:nth-of-type(2){--i: 2;transform:rotate(-14deg)}.fanfare i:nth-of-type(3){--i: 3;transform:rotate(18deg)}.fanfare i:nth-of-type(4){--i: 4;transform:rotate(-8deg)}.fanfare i:nth-of-type(5){--i: 5;transform:rotate(15deg)}.fanfare i:nth-of-type(6){--i: 6;transform:rotate(-18deg)}.fanfare i:nth-of-type(7){--i: 7;transform:rotate(9deg)}.fanfare i:nth-of-type(8){--i: 8;transform:rotate(-11deg)}.fanfare i:nth-of-type(9){--i: 9;transform:rotate(16deg)}.fanfare i:nth-of-type(10){--i: 10;transform:rotate(-6deg)}.fanfare i:nth-of-type(11){--i: 11;transform:rotate(13deg)}.fanfare i:nth-of-type(12){--i: 12;transform:rotate(-15deg)}@keyframes hero-breathe{0%{transform:scale(1)}to{transform:scale(1.035)}}@keyframes twinkle{0%,to{opacity:.22;transform:scale(.65)}50%{opacity:1;transform:scale(1.5)}}@keyframes cue-bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,6px)}}@keyframes crown-spark{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--x),var(--y)) scale(0)}}@keyframes ring-spin{to{transform:rotate(360deg)}}@keyframes route-train{0%,8%{left:0;transform:scaleX(1)}44%,56%{left:calc(100% - 26px);transform:scaleX(1)}57%{transform:scaleX(-1)}92%,to{left:0;transform:scaleX(-1)}}@keyframes knight-ride{0%,12%{left:-3rem;transform:scaleX(1)}75%,to{left:calc(100% + 3rem);transform:scaleX(1)}}@keyframes fanfare-fade{0%{opacity:0}12%,70%{opacity:1}to{opacity:0}}@keyframes confetti-fall{to{top:115%;transform:rotate(720deg)}}@media(max-width:1050px){.glance-grid{grid-template-columns:repeat(3,1fr)}.itinerary-grid{grid-template-columns:1fr}.day-sunday{padding:2rem}.stay-card{grid-template-columns:1.1fr .8fr}.stay-features{grid-column:1 / 2}.stay-card .button{justify-self:start}.route-map{grid-template-columns:1fr;gap:0;padding-left:0}.route-line{top:2rem;bottom:2rem;left:22px;right:auto;width:2px;height:auto;background:linear-gradient(var(--gold),var(--magenta),var(--purple-bright),var(--gold))}.moving-train{display:none}.route-stop{grid-template-columns:46px 1fr;justify-items:start;gap:1.15rem;min-height:92px;text-align:left}.route-stop>div:last-child{align-self:start;padding-top:.3rem}}@media(max-width:760px){.hero{min-height:800px;place-items:end center}.hero-image{object-position:67% center}.hero-shade{background:linear-gradient(0deg,var(--ink) 0%,rgba(16,4,18,.88) 49%,rgba(16,4,18,.26) 100%),linear-gradient(90deg,rgba(16,4,18,.56),transparent)}.topbar{width:calc(100% - 2rem)}.nav-links{gap:1rem}.nav-links a:first-child{display:none}.hero-content{width:calc(100% - 2rem);padding:8.5rem 0 6.5rem}.hero h1{font-size:clamp(3.1rem,15vw,5rem)}.countdown{width:100%;min-width:0}.hero-cta{width:100%}.hero-emblems{right:1rem;bottom:1rem}.scroll-cue{display:none}.section{width:calc(100% - 2rem)}.glance-grid{grid-template-columns:repeat(2,1fr)}.glance-card{min-height:160px;padding:1.1rem}.glance-card:last-child{grid-column:1 / -1;min-height:0;display:grid;grid-template-columns:auto 1fr;column-gap:1rem;align-items:center}.glance-card:last-child .glance-icon{grid-row:1 / 3;margin:0}.day-sunday{padding:1.25rem}.tournament-section{grid-template-columns:1fr}.tournament-art{min-height:300px;border-right:0;border-bottom:1px solid rgba(246,200,95,.18)}.crossed-blades{width:140px;height:140px}.crossed-blades svg{width:70px;height:70px}.ring-one{width:230px;height:230px}.ring-two{width:340px;height:340px}.tournament-copy{padding:4rem 1rem 5rem}.tournament-facts{grid-template-columns:1fr}.rail-section,.checklist-section{width:calc(100% - 2rem)}.rail-ticket{grid-template-columns:1fr;transform:none}.rail-ticket:nth-child(2){transform:none}.ticket-stub{display:grid;grid-template-columns:auto auto 1fr auto;justify-items:start;gap:.7rem;border-right:0;border-bottom:2px dashed rgba(45,27,34,.28)}.ticket-stub:before,.ticket-stub:after{top:auto;bottom:-12px}.ticket-stub:before{left:-11px;right:auto}.ticket-stub:after{right:-11px}.ticket-stub svg{margin:0;width:26px;height:26px}.ticket-stub strong{justify-self:end;font-size:1.5rem}.ticket-stub small{align-self:center}.ticket-main{padding:1.25rem}.ticket-route{grid-template-columns:1fr auto 1fr;gap:.55rem}.ticket-track{width:48px}.ticket-route strong{font-size:.9rem}.ticket-route time{font-size:.82rem}.stay-card{grid-template-columns:1fr;padding:1.5rem}.stay-times{grid-template-columns:1fr 1fr;padding:0;border:0}.stay-features{grid-column:auto}.stay-card .button{width:100%}.checklist-shell{grid-template-columns:1fr;padding:1.5rem}.check-items{grid-template-columns:1fr}.birthday-section{min-height:620px}}@media(max-width:430px){.wordmark{font-size:.68rem;letter-spacing:.08em}.wordmark-crown{width:1.8rem;height:1.8rem}.nav-links a{font-size:.72rem}.hero-content{padding-bottom:7.8rem}.hero-date{font-size:.95rem}.countdown-grid{gap:.6rem}.countdown-unit+.countdown-unit{padding-left:.6rem}.countdown-unit strong{font-size:1.45rem}.hero-emblems{left:1rem;right:auto}.section-heading{margin-bottom:2rem}.section h2,.tournament-section h2,.birthday-section h2{font-size:2.55rem}.glance-card h3{font-size:.9rem}.glance-card p{font-size:.76rem}.timeline{padding-left:1.3rem}.timeline-pin{left:-1.28rem}.timeline-card{padding:1rem}.timeline-side-icon{display:none}.mini-icon-row{display:grid}.ticket-code{display:none}.ticket-route strong{font-size:.78rem}.ticket-route time{font-size:.72rem}.stay-times{grid-template-columns:1fr}.map-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}
