*{box-sizing:border-box}html{scroll-padding-top:20px}body{--ink:var(--xmas-ink,#19201d);--paper:#fff1d4;--coral:#ff644e;--lime:#dfff73;--purple:#ae9bdd;margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',sans-serif;font-size:var(--fs-15,15px);line-height:1.65}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--coral);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Anton',Impact,sans-serif;font-weight:400;line-height:1;letter-spacing:-.025em}p+p{margin-top:20px}svg{display:block;width:100%;max-width:100%;overflow:visible}button:disabled{opacity:.35;cursor:default}.skip{position:fixed;top:-100px;left:20px;z-index:3000;background:var(--lime);color:var(--ink);padding:15px}.skip:focus{top:10px}.eyebrow{font-size:var(--fs-11,11px);letter-spacing:.11em;font-weight:800;line-height:1.6}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:23px 5%;border-bottom:1px solid #fff1d42b;background:var(--ink)}.wordmark{display:flex;align-items:center;gap:12px;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-24,24px);font-weight:800;line-height:.9;letter-spacing:.025em}.wordmark small{display:block;font-size:var(--fs-12,12px);letter-spacing:.16em;margin-top:8px}.wordmark-icon{font-family:Arial,sans-serif;font-size:var(--fs-48,48px);color:var(--coral);line-height:1}.header nav{display:flex;align-items:center;font-weight:600}.header nav button:not(.btn){padding:0}.header nav button span{margin-left:8px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:57px;border:2px solid var(--ink);padding:15px 23px;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-20,20px);font-weight:800;letter-spacing:.045em;line-height:1.2}.btn span{font-family:'DM Sans',sans-serif;font-size:var(--fs-26,26px);font-weight:400}.btn.lime{color:var(--ink);background:var(--lime)}.btn.coral{color:var(--ink);background:var(--coral)}.btn.dark{background:var(--ink);color:var(--paper);box-shadow:4px 4px 0 #78836d}.btn.small{min-height:43px;padding:10px 16px;font-size:var(--fs-16,16px);gap:15px}.btn.small span{font-size:var(--fs-20,20px)}.hero{position:relative;min-height:715px;display:grid;grid-template-columns:1.1fr 1fr;padding:64px 4% 86px 5.5%;align-items:center;isolation:isolate;overflow:hidden;background:#202923}.hero-noise{position:absolute;inset:0;opacity:.045;z-index:-1;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='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.6' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.hero:before{content:'';position:absolute;left:46%;top:13%;font-size:90px;color:#ff644e;rotate:15deg;z-index:-1}.hero-copy{z-index:2;position:relative}.hero-copy>.eyebrow{font-size:var(--fs-10,10px);color:#d3d2b9;display:flex;align-items:center;gap:10px}.live-spark{font-size:var(--fs-22,22px);color:var(--coral)}h1{font-size:clamp(63px,6.9vw,114px);line-height:1.05;letter-spacing:-.035em;margin:20px -20px 24px 0;max-width:900px}h1>span{color:var(--coral)}.hero-deck{font-size:var(--fs-17,17px);line-height:1.7;color:#dfdece;max-width:500px}.hero-facts{display:flex;gap:17px;align-items:center;margin:23px 0}.hero-facts>b{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-40,40px);line-height:1;font-weight:800;letter-spacing:-.03em}.hero-facts>span{font-size:var(--fs-10,10px);letter-spacing:.1em;padding-left:18px;border-left:1px solid #fff1d450;font-weight:700;line-height:1.7}.hero-facts small{font-size:var(--fs-14,14px);display:block;letter-spacing:.03em}.hero-ctas{display:flex;gap:25px;align-items:center}.hero-ctas>a{font-size:var(--fs-12,12px);border-bottom:1px solid #fff1d460;padding:9px 0}.hero-ctas>a span{margin-left:12px}.hero-prices{font-size:var(--fs-10,10px);color:#c4c8b8;margin-top:20px}.hero-prices i{padding:0 8px;font-style:normal;color:var(--lime)}.hero-art{position:relative;min-width:0;margin:32px -5% 0 -18%;align-self:center;rotate:1deg}.party-gang{max-width:none;position:relative;z-index:1}.orbit-type{position:absolute;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-15,15px);font-weight:800;letter-spacing:.24em;rotate:9deg;right:10%;top:-15px;color:var(--lime)}.sticker{position:absolute;color:var(--ink);font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-16,16px);font-weight:700;letter-spacing:.02em;line-height:1.05;text-align:center;z-index:2;box-shadow:4px 4px 0 var(--ink);padding:13px 17px;border:2px solid var(--ink)}.sticker b{font-weight:800}.sticker-top{background:var(--purple);rotate:12deg;right:-3%;top:17%;clip-path:polygon(0 0,97% 3%,100% 96%,3% 100%)}.sticker-bottom{background:var(--paper);rotate:-8deg;left:14%;bottom:5%}.hero-bottom{position:absolute;bottom:21px;left:5.5%;right:5%;display:flex;justify-content:space-between;gap:20px;font-size:var(--fs-9,9px);font-weight:700;letter-spacing:.1em}.hero-bottom>a{color:var(--lime)}.hero-bottom>a span{margin-left:20px}.ticker{overflow:hidden;background:var(--coral);color:var(--ink);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);rotate:-1deg;margin:-8px -1% 0;width:102%;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:var(--fs-24,24px);letter-spacing:.035em;line-height:1.1}.ticker>div{display:flex;align-items:center;width:max-content;padding:19px 0;animation:marquee 48s linear infinite}.ticker b{font-size:var(--fs-36,36px)}.lineup-intro{padding:100px 6% 70px;background:var(--paper);color:var(--ink);text-align:center}.lineup-intro .eyebrow{color:#856045}.lineup-intro h2{font-size:clamp(50px,6.4vw,92px);line-height:1.08;margin:20px 0 27px}.lineup-intro h2 span{color:#bf4837}.lineup-intro>p:not(.eyebrow){font-size:var(--fs-15,15px);color:#64705d}.lineup-list{display:grid;grid-template-columns:repeat(5,1fr);margin-top:48px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.lineup-list a{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-26,26px);font-weight:800;text-align:left;padding:21px 15px 23px;border-left:1px solid #19201d40;line-height:1.2}.lineup-list a:first-child{border:0}.lineup-list a>span{display:block;font-family:'DM Sans',sans-serif;color:#b64733;font-size:var(--fs-10,10px);letter-spacing:.1em;margin-bottom:10px}.lineup-list b{font-family:'DM Sans',sans-serif;font-size:var(--fs-8,8px);display:block;letter-spacing:.08em;margin-top:11px}.lineup-list a:hover{background:#e8e1c9}.venue-chapter{--accent:var(--lime);position:relative;padding:72px 5.5%;border-bottom:1px solid #ffffff1a;background:#202d29;overflow:hidden}.chapter-top{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.chapter-top .eyebrow{color:var(--accent);display:flex;align-items:center;gap:17px}.chapter-number{font-family:'Anton',sans-serif;font-size:var(--fs-32,32px);letter-spacing:-.03em}.chapter-top .pickup{font-size:var(--fs-9,9px);letter-spacing:.1em;border:1px solid #ffffff35;padding:7px 13px;white-space:nowrap}.chapter-top .pickup.no-pickup{color:var(--ink);background:var(--accent);border-color:var(--accent);font-weight:800}.chapter-body{display:grid;grid-template-columns:.8fr 1.4fr;gap:50px;align-items:center}.chapter-copy h2{font-size:clamp(47px,5.1vw,74px);line-height:1.04;max-width:700px;margin-bottom:22px}.chapter-copy h2>span{display:block;color:var(--accent)}.chapter-copy .venue-fullname{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-24,24px);font-weight:700;letter-spacing:.02em;margin-bottom:13px}.chapter-copy>p:not(.venue-fullname){font-size:var(--fs-14,14px);line-height:1.85;color:#d0d4c3;max-width:390px}.chapter-copy .venue-address{font-size:var(--fs-12,12px);line-height:1.8;margin:25px 0 9px;color:var(--paper)}.chapter-copy .venue-address small{font-size:var(--fs-11,11px);display:block;opacity:.65}.chapter-actions{display:flex;align-items:center;gap:27px;margin-top:19px;font-size:var(--fs-10,10px);font-weight:800;letter-spacing:.06em}.chapter-actions a,.chapter-actions button{padding:10px 0;border-bottom:1px solid #ffffff50;min-height:42px}.chapter-actions span{margin-left:12px;font-size:var(--fs-17,17px)}.chapter-copy .venue-exception{border-left:3px solid var(--accent);padding:10px 13px;background:#ffffff0b;margin-top:20px}.venue-theatre{position:relative;min-width:0;width:100%;aspect-ratio:1.25;isolation:isolate;overflow:hidden;border-radius:50% 50% 5px 5px;background:#182723;box-shadow:0 0 100px #060e0833}.venue-theatre:after{content:'';position:absolute;bottom:0;left:0;right:0;height:7%;background:linear-gradient(transparent,#111e18);z-index:7;pointer-events:none}.architecture{position:absolute;inset:auto 0 0;width:100%;z-index:2}.architecture .town-art>ellipse:first-of-type{opacity:.3}.architecture .town-art>.snowfall{opacity:.3}.venue-tagline{position:absolute;left:20px;bottom:21px;background:var(--accent);color:var(--ink);font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-16,16px);font-weight:800;padding:7px 13px;rotate:-3deg;z-index:8;box-shadow:3px 3px 0 var(--ink)}.stage-label{position:absolute;left:8%;top:9%;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-20,20px);font-weight:800;color:var(--accent);rotate:-7deg;z-index:5}.venue-chapter.featured{background:#152927;padding-top:70px;padding-bottom:65px}.featured .chapter-body{grid-template-columns:1fr;gap:25px}.featured .chapter-copy{display:grid;grid-template-columns:1.25fr 1fr;column-gap:6%;align-items:start}.featured .chapter-copy h2{font-size:clamp(64px,7.5vw,108px);grid-column:1;grid-row:1/5;max-width:900px;margin:0}.featured .chapter-copy .venue-fullname,.featured .chapter-copy>p,.featured .chapter-copy .chapter-actions{grid-column:2}.featured .chapter-copy>p{max-width:100%;font-size:var(--fs-15,15px)}.featured .chapter-copy .venue-address{margin-top:12px}.featured .chapter-actions{margin-top:8px}.featured .venue-theatre{aspect-ratio:2.1;border-radius:var(--r-md,8px);background:#142724;max-height:650px;border:1px solid #66735850}.featured .architecture{width:72%;left:14%;bottom:-20%}.featured .venue-tagline{font-size:var(--fs-20,20px);bottom:26px;left:26px;rotate:-3deg}.featured .stage-label{left:5%;top:7%;font-size:clamp(22px,3vw,45px);line-height:1.1;max-width:280px}.featured .stage-label span{display:block;color:var(--paper);font-size:var(--fs-12,12px);letter-spacing:.13em;margin-top:8px}.venue-chapter.sugar-hill{--accent:#ffb261;background:#352927}.sugar-hill .venue-theatre{background:#241e22}.sugar-hill .architecture{bottom:5%;width:104%;left:-2%}.venue-chapter.mill-street{--accent:#f3ca78;background:#293a2b}.mill-street .chapter-body{grid-template-columns:1.4fr .8fr}.mill-street .chapter-copy{order:2}.mill-street .venue-theatre{background:#182a1f}.venue-chapter.watering-hole{--accent:#d8a2fd;background:#241d2e}.watering-hole .venue-theatre{background:#17111e}.watering-hole .architecture{filter:saturate(.75)}.venue-chapter.merrills{--accent:#ff8f91;background:#2f252e}.merrills .chapter-body{grid-template-columns:1.4fr .8fr}.merrills .chapter-copy{order:2}.merrills .venue-theatre{background:#1d1827}.sweaters{position:relative;padding:90px 5.5% 85px;background:var(--coral);color:var(--ink);overflow:hidden;isolation:isolate}.sweaters:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.08;background-image:repeating-linear-gradient(45deg,transparent,transparent 11px,#19201d 11px,#19201d 13px),repeating-linear-gradient(-45deg,transparent,transparent 11px,#19201d 11px,#19201d 13px)}.sweater-heading{position:relative;display:grid;grid-template-columns:1.4fr 1fr;gap:0 50px;margin-bottom:65px}.sweater-heading .eyebrow{grid-column:1/-1;margin-bottom:22px}.sweater-heading h2{font-size:clamp(58px,6.7vw,96px);line-height:1.05}.sweater-heading h2 span{color:var(--paper);text-shadow:3px 3px 0 var(--ink)}.sweater-heading>p{padding-top:15px;font-size:var(--fs-17,17px);line-height:1.8}.sweater-heading>p strong{font-size:var(--fs-22,22px)}.tape{position:absolute;right:1%;bottom:-22px;padding:10px 20px;background:var(--lime);rotate:5deg;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-20,20px);font-weight:800;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.runway-name{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-22,22px);font-weight:800;letter-spacing:.06em;display:flex;justify-content:space-between;align-items:center;border-top:2px solid var(--ink);padding-top:20px}.runway-name span{font-size:var(--fs-36,36px)}.runway-cast{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.runway-cast article{position:relative;min-width:0;text-align:center}.runway-cast article>div{max-width:330px;margin:0 auto -8px}.runway-cast article>span{font-size:var(--fs-9,9px);font-weight:800;letter-spacing:.07em}.runway-cast h3{font-size:var(--fs-40,40px);margin:13px 0 14px}.runway-cast p{font-size:var(--fs-13,13px)}.runway-foot{font-size:var(--fs-13,13px);text-align:center;margin-top:48px;border-top:1px solid #19201d50;padding-top:26px}.plan{background:var(--paper);color:var(--ink);padding:88px 5.5%;display:grid;grid-template-columns:1fr 1.1fr;gap:48px}.plan-heading .eyebrow{font-size:var(--fs-10,10px)}.plan-heading h2{font-size:clamp(52px,5.7vw,82px);line-height:1.06;margin:20px 0 26px}.plan-heading h2 span{color:#6c785b}.plan-heading>p{font-size:var(--fs-14,14px);line-height:1.9}.plan-heading .btn{margin-top:24px}.small-note{font-size:var(--fs-10,10px);line-height:1.8!important;opacity:.65;margin-top:20px!important}.plan-heading .small-note{max-width:370px}.map-wrap{position:relative;border:2px solid var(--ink);background:#dae2c9;min-height:490px;display:flex;flex-direction:column;box-shadow:7px 7px 0 #d1c6a8}#real-map{height:440px;flex:1}.map-key{padding:12px 16px;display:flex;align-items:center;gap:15px;font-size:var(--fs-9,9px);border-top:2px solid var(--ink);background:#f0e3c7}.map-key span{display:flex;align-items:center;gap:5px}.map-key i{width:7px;height:7px;background:var(--ink);border-radius:var(--r-round,50%)}.map-key span:nth-child(2) i{background:#d46c48}.map-fallback{position:absolute;inset:30% 20px auto;padding:20px;background:var(--paper);z-index:500}.leaflet-container{font-family:'DM Sans',sans-serif}.leaflet-marker-icon.venue-marker{background:var(--ink);color:var(--paper);border:2px solid var(--paper);border-radius:var(--r-round,50%);box-shadow:2px 2px 0 #19201d60;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:var(--fs-16,16px)}.leaflet-marker-icon.venue-marker.no-pickup{background:#d46c48}.leaflet-popup-content{font-size:var(--fs-11,11px);line-height:1.7}.leaflet-popup-content strong{font-size:var(--fs-15,15px)}.leaflet-control-zoom a{font-family:Arial,sans-serif!important}.good{position:relative;display:grid;padding:95px 6%}.good h2{font-size:clamp(55px,5.8vw,87px);margin:20px 0 30px}.good-copy>p:not(.eyebrow){font-size:var(--fs-14,14px);line-height:1.9}.underline{display:inline-flex;align-items:center;gap:18px;border-bottom:2px solid;padding:12px 0 7px;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-18,18px);font-weight:700;line-height:1.4}.good-art{position:relative;align-self:center}.good-art>div[data-portrait]{width:87%;margin:50px auto -20px;rotate:8deg}.good-circle{position:absolute;top:1%;left:-5%;border-radius:var(--r-round,50%);width:190px;height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--lime);font-family:'Anton',sans-serif;font-size:var(--fs-30,30px);line-height:1.2;border:2px solid var(--ink);rotate:-13deg;z-index:3}.good-circle b{font-weight:400;color:#c64736}.good-stamp{position:absolute;right:-6%;bottom:20%;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-24,24px);font-weight:800;line-height:1.15;rotate:9deg;background:var(--coral);border:2px solid var(--ink);padding:15px 20px;box-shadow:4px 4px 0 var(--ink)}.faq{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:85px 6%;color:var(--ink)}.faq h2{font-size:clamp(40px,4.5vw,65px);line-height:1.1;margin-top:20px}.faq h2 span{color:#81856a}.faq details{border-bottom:1px solid #19201d40;padding:18px 0}.faq details:first-child{border-top:1px solid #19201d40}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:var(--fs-14,14px)}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:var(--fs-24,24px);font-weight:400}.faq details[open] summary span{rotate:45deg}.faq details p{font-size:var(--fs-13,13px);line-height:1.9;color:#565f4d;margin-top:17px;padding-right:10px}.closing{position:relative;overflow:hidden;text-align:center;padding:95px 5.5% 85px}.closing h2{font-size:clamp(46px,6.3vw,90px);line-height:1.1;margin:25px auto 40px;position:relative;z-index:2}.closing h2 span{color:var(--coral)}.closing>.eyebrow{color:var(--lime);font-size:var(--fs-11,11px)}.closing>p:last-of-type{font-size:var(--fs-12,12px);color:#bdc6ac;margin-top:22px}.closing-doodle{position:absolute;font-size:200px;left:1%;bottom:-70px;color:#536648;rotate:20deg}footer{display:flex;justify-content:space-between;align-items:center;padding:45px 5.5% 70px;gap:40px;border-top:1px solid #fff1d420}footer p{font-size:var(--fs-11,11px);color:#b1b9a6;line-height:1.9}footer>div{font-size:var(--fs-11,11px);display:flex;flex-direction:column;gap:9px;align-items:start}footer button{padding:0;font-size:var(--fs-10,10px);color:#b1b9a6}.concept-note{position:fixed;right:15px;bottom:13px;background:var(--paper);color:var(--ink);font-size:var(--fs-8,8px);font-weight:700;letter-spacing:.05em;padding:9px 12px;border:1px solid var(--ink);box-shadow:3px 3px 0 var(--ink);z-index:900;pointer-events:none}.concept-note span{padding:0 7px;color:#b24435}.toast{position:fixed;bottom:62px;left:50%;translate:-50% 15px;opacity:0;pointer-events:none;background:var(--lime);color:var(--ink);padding:13px 20px;border:2px solid var(--ink);font-size:var(--fs-12,12px);font-weight:700;z-index:1000;box-shadow:4px 4px 0 var(--ink);transition:.2s;max-width:90vw;text-align:center}.toast.show{translate:-50% 0;opacity:1}dialog{width:min(640px,calc(100% - 30px));max-height:90vh;border:2px solid var(--ink);background:var(--paper);color:var(--ink);padding:45px;box-shadow:10px 10px 0 var(--coral)}dialog::backdrop{background:#0b1512d9;backdrop-filter:blur(6px)}dialog h2{font-size:var(--fs-44,44px);margin:16px 0 19px}dialog>.eyebrow{font-size:var(--fs-9,9px);color:#a14635;max-width:90%}dialog>p:not(.eyebrow){font-size:var(--fs-12,12px);color:#69705c}.close{position:absolute;right:16px;top:12px;font-size:var(--fs-30,30px);width:38px;height:38px}.quantity{grid-column:1/-1;display:flex;align-items:center;justify-self:end;border:1px solid #a5aa8f}.quantity button{height:36px;width:38px;font-size:var(--fs-18,18px)}.quantity output{min-width:28px;text-align:center;font-size:var(--fs-13,13px)}dialog>.btn{width:100%;font-size:var(--fs-18,18px);gap:15px}
/* Automatic motion: everyone is already at the party. No animation trigger buttons. */
.nick-groove{animation:nick-groove var(--party-beat,2.4s) ease-in-out infinite;transform-origin:150px 345px}.nick-head{animation:head-bob var(--party-beat,2.4s) ease-in-out infinite;transform-origin:145px 163px}.nick-toast{animation:toast var(--toast-cycle,4.8s) ease-in-out infinite;transform-origin:231px 190px}.nick-leg{animation:foot-tap var(--party-beat,2.4s) ease-in-out infinite;transform-origin:120px 341px}.nick-leg.second{animation-delay:-.775s}.rudy-dance{animation:rudy-dance var(--party-beat,2.4s) ease-in-out infinite;transform-origin:144px 342px}.rudy-head{animation:head-bob var(--party-beat,2.4s) ease-in-out infinite;transform-origin:144px 177px;animation-delay:-.3s}.rudy-arm.left{animation:party-arm var(--party-beat,2.4s) ease-in-out infinite;transform-origin:77px 184px}.rudy-arm.right{animation:party-arm var(--party-beat,2.4s) ease-in-out infinite reverse;transform-origin:216px 185px}.rudy-leg{animation:deer-step var(--party-beat,2.4s) ease-in-out infinite;transform-origin:117px 343px}.rudy-leg.second{animation-delay:-.9s}.pip-bounce{animation:pip-bounce var(--party-beat,2.4s) ease-in-out infinite;transform-origin:140px 391px}.pip-gift{animation:gift-groove var(--toast-cycle,4.8s) ease-in-out infinite;transform-origin:170px 345px}.sweater-bulb{animation:bulbs 3.3s ease-in-out infinite}.sweater-bulb:nth-child(even){animation-delay:-1.65s}.floating-star{animation:star-turn 12s ease-in-out infinite;transform-origin:648px 494px}.antler-bauble{animation:bulbs 4s ease-in-out infinite}.fairy-light{animation:bulbs 4.7s ease-in-out infinite;animation-delay:var(--delay,0s)}.snowflake{animation:snow 10s linear infinite;animation-delay:var(--delay,0s)}.beat-bar{animation:equalize 1.2s ease-in-out infinite alternate;transform-origin:center bottom;transform-box:fill-box}.beat-bar:nth-child(even){animation-delay:-.6s}.party-sparks{animation:bulbs 6s infinite}.paused *,.out-of-view *{animation-play-state:paused!important}.venue-theatre{translate:0;transition:none}
@keyframes nick-groove{0%,100%{transform:rotate(-2deg)translateY(0)}50%{transform:rotate(2deg)translateY(-5px)}}@keyframes head-bob{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(5deg)translateY(2px)}}@keyframes toast{0%,100%{transform:rotate(0)}50%{transform:rotate(-12deg)}}@keyframes foot-tap{0%,55%,100%{transform:rotate(0)}30%{transform:rotate(6deg)}}@keyframes rudy-dance{0%,100%{transform:rotate(5deg)translateY(0)}50%{transform:rotate(-4deg)translateY(-6px)}}@keyframes party-arm{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(14deg)}}@keyframes deer-step{0%,100%{transform:rotate(6deg)}50%{transform:rotate(-8deg)}}@keyframes pip-bounce{0%,100%{transform:rotate(-3deg)translateY(0)}50%{transform:rotate(3deg)translateY(-5px)}}@keyframes gift-groove{0%,100%{transform:rotate(0)}50%{transform:rotate(-10deg)}}@keyframes bulbs{0%,100%{opacity:.55}50%{opacity:1}}@keyframes star-turn{0%,100%{rotate:-8deg}50%{rotate:20deg}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes snow{from{transform:translate(0,-12px);opacity:0}20%{opacity:.5}to{transform:translate(15px,40px);opacity:0}}@keyframes beam-sweep{from{transform:rotate(-15deg);opacity:.12}to{transform:rotate(14deg);opacity:.27}}@keyframes disco{0%,100%{opacity:.85;transform:rotate(-4deg)}50%{opacity:1;transform:rotate(4deg)}}@keyframes music-rise{0%{translate:0 15px;opacity:0}25%{opacity:.9}100%{translate:10px -25px;opacity:0}}@keyframes flame{from{transform:scale(.9,1)skewX(-4deg)}to{transform:scale(1.07,.88)skewX(4deg)}}@keyframes mic{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes karaoke{0%,100%{fill:#fff1d4}50%{fill:#dfff73}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes equalize{from{transform:scaleY(.3)}to{transform:scaleY(1)}}
@media(min-width:1600px){.hero{padding-left:max(6%,calc((100vw - 1500px)/2));padding-right:max(4%,calc((100vw - 1500px)/2));min-height:820px}.hero-art{max-width:820px}.venue-chapter,.lineup-intro,.sweaters,.good,.plan,.faq,.closing{padding-left:max(6%,calc((100vw - 1450px)/2));padding-right:max(6%,calc((100vw - 1450px)/2))}}
@media(max-width:1100px){.hero{padding-top:45px;min-height:650px;grid-template-columns:1.2fr 1fr}.hero-deck{font-size:var(--fs-15,15px)}.hero-art{margin-left:-24%;margin-right:-9%;margin-top:70px}.hero-ctas{gap:19px}.hero-ctas>a{font-size:var(--fs-10,10px)}.sticker{font-size:var(--fs-13,13px);padding:10px 12px}.sticker-top{right:0}.orbit-type{font-size:var(--fs-11,11px)}.hero-facts>b{font-size:var(--fs-36,36px)}.hero-prices{font-size:var(--fs-9,9px)}.chapter-body{gap:30px;grid-template-columns:.9fr 1.2fr}.chapter-copy h2{font-size:50px}.chapter-copy>p:not(.venue-fullname){font-size:var(--fs-12,12px)}.mill-street .chapter-body,.merrills .chapter-body{grid-template-columns:1.2fr .9fr}.featured .chapter-copy h2{font-size:78px}.featured .chapter-copy>p{font-size:var(--fs-13,13px)}.sweater-heading h2{font-size:65px}.sweater-heading>p{font-size:var(--fs-14,14px)}.tape{font-size:var(--fs-16,16px)}.runway-cast h3{font-size:var(--fs-32,32px)}.runway-cast p{font-size:var(--fs-11,11px)}.plan{gap:35px}.map-wrap{min-height:430px}#real-map{height:385px}.map-key{font-size:var(--fs-8,8px);gap:9px}.good{gap:5%}.good-circle{width:145px;height:145px;font-size:var(--fs-24,24px)}.good-stamp{font-size:var(--fs-20,20px);right:0}.lineup-list a{font-size:var(--fs-22,22px)}.lineup-list b{font-size:var(--fs-7,7px)}footer .wordmark{font-size:var(--fs-22,22px)}footer .wordmark small{font-size:var(--fs-10,10px)}.hero-copy>.eyebrow{font-size:var(--fs-8,8px)}.featured .venue-theatre{aspect-ratio:1.9}}
@media(max-width:760px){.header{padding:19px 5%;gap:18px}.wordmark{font-size:var(--fs-20,20px);gap:9px}.wordmark-icon{font-size:var(--fs-36,36px)}.wordmark small{font-size:var(--fs-9,9px);letter-spacing:.11em;margin-top:6px}.header nav>a,.header nav>button:not(.btn){display:none}.header nav{gap:0}.btn.small{min-height:41px;font-size:var(--fs-14,14px);padding:9px 12px;gap:7px}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:35px 5% 65px;overflow:hidden}.hero:before{font-size:var(--fs-64,64px);left:auto;right:6%;top:11%;opacity:.5}.hero-copy>.eyebrow{font-size:var(--fs-8,8px);gap:7px;letter-spacing:.05em}.live-spark{font-size:var(--fs-17,17px)}.hero h1{margin:18px 0 20px;line-height:1.07;letter-spacing:-.025em;max-width:100%}.hero h1>span{white-space:nowrap}.hero-deck{font-size:var(--fs-14,14px);line-height:1.75}.hero-facts{margin:21px 0}.hero-facts>b{font-size:var(--fs-36,36px)}.hero-facts>span{font-size:var(--fs-9,9px)}.hero-facts small{font-size:var(--fs-12,12px)}.hero-ctas .btn{min-height:53px}.hero-prices{font-size:var(--fs-9,9px);margin-top:19px}.hero-prices i{padding:0 4px}.hero-art{margin:42px -5% 0;width:104%;align-self:center;rotate:0deg}.party-gang{max-width:100%;margin-bottom:0}.orbit-type{right:14%;top:-8px;font-size:var(--fs-10,10px);letter-spacing:.15em;rotate:6deg}.sticker{font-size:var(--fs-12,12px);padding:10px 11px;box-shadow:3px 3px 0 var(--ink)}.sticker-top{top:14%;right:1%;rotate:10deg}.sticker-bottom{left:17%;bottom:4%;font-size:var(--fs-10,10px);padding:8px 10px}.hero-bottom{left:5%;right:5%;bottom:25px;gap:10px}.hero-bottom>span{max-width:120px;line-height:1.5}.hero-bottom>a{display:none}.ticker{font-size:var(--fs-18,18px)}.ticker>div{padding:15px 0;gap:25px}.ticker b{font-size:var(--fs-26,26px)}.lineup-intro{padding:65px 5% 45px;text-align:left}.lineup-intro h2{font-size:clamp(45px,10.5vw,75px);line-height:1.1;margin:19px 0 23px}.lineup-intro .eyebrow{font-size:var(--fs-8,8px)}.lineup-intro>p:not(.eyebrow){font-size:var(--fs-13,13px)}.lineup-intro>p br{display:none}.lineup-list{grid-template-columns:1fr;margin-top:30px}.lineup-list a{display:grid;grid-template-columns:25px 1fr 1fr;gap:7px;font-size:var(--fs-24,24px);align-items:center;padding:16px 0;border-left:0;border-top:1px solid #19201d30}.lineup-list a>span{margin:0;font-size:var(--fs-9,9px)}.lineup-list b{margin:0;font-size:var(--fs-8,8px);text-align:right;line-height:1.6}.venue-chapter{padding:40px 5% 45px}.chapter-top{margin-bottom:28px;gap:10px}.chapter-top .eyebrow{font-size:var(--fs-8,8px);gap:10px}.chapter-number{font-size:var(--fs-28,28px)}.chapter-top .pickup{font-size:var(--fs-7,7px);padding:6px 8px;letter-spacing:.05em}.chapter-body,.mill-street .chapter-body,.merrills .chapter-body{display:flex;flex-direction:column;gap:29px;align-items:stretch}.chapter-copy,.mill-street .chapter-copy,.merrills .chapter-copy{order:0}.chapter-copy h2{font-size:clamp(47px,11.5vw,69px);line-height:1.05;margin-bottom:21px}.chapter-copy .venue-fullname{font-size:var(--fs-24,24px);margin-bottom:11px}.chapter-copy>p:not(.venue-fullname){font-size:var(--fs-13,13px);max-width:100%}.chapter-copy .venue-address{font-size:var(--fs-12,12px)!important;margin-top:21px}.chapter-copy .venue-address small{font-size:var(--fs-10,10px)}.chapter-actions{font-size:var(--fs-10,10px);gap:28px;margin-top:14px}.venue-theatre{aspect-ratio:1.1;border-radius:45% 45% 4px 4px}.stage-label{font-size:var(--fs-17,17px);top:11%;left:8%}.venue-tagline{font-size:var(--fs-12,12px);padding:6px 9px;left:10px;bottom:15px}.featured.venue-chapter{padding:44px 5% 42px}.featured .chapter-copy{display:block}.featured .chapter-copy h2{font-size:clamp(55px,14vw,85px);margin-bottom:25px}.featured .chapter-copy>p{font-size:var(--fs-13,13px)}.featured .chapter-copy .venue-address{margin-top:19px}.featured .venue-theatre{aspect-ratio:1.05;border-radius:6px;min-height:0;max-height:none;overflow:hidden}.featured .architecture{width:142%;left:-21%;bottom:2%}.featured .venue-tagline{font-size:var(--fs-12,12px);bottom:13px;left:11px}.featured .stage-label{font-size:var(--fs-20,20px);left:6%;top:7%;max-width:170px}.featured .stage-label span{font-size:var(--fs-8,8px);max-width:130px}.sweaters{padding:60px 5%}.sweater-heading{display:block;margin-bottom:65px}.sweater-heading .eyebrow{font-size:var(--fs-9,9px);margin-bottom:20px}.sweater-heading h2{font-size:clamp(47px,11.7vw,73px);line-height:1.08}.sweater-heading>p{font-size:var(--fs-14,14px);padding-top:23px;line-height:1.9}.sweater-heading>p strong{font-size:var(--fs-20,20px)}.tape{bottom:-46px;font-size:var(--fs-14,14px);padding:9px 12px;right:0}.runway-name{font-size:var(--fs-17,17px);padding-top:17px}.runway-name span{font-size:var(--fs-26,26px)}.runway-cast{display:flex;flex-direction:column;gap:35px;margin-top:20px}.runway-cast article{display:grid;grid-template-columns:1.05fr 1fr;gap:0 13px;text-align:left;align-items:center;border-bottom:1px solid #19201d30;padding-bottom:25px}.runway-cast article>div{grid-column:1;grid-row:1/4;width:118%;margin:0 -9%;max-width:none}.runway-cast article>span{font-size:var(--fs-8,8px);align-self:end;margin-bottom:8px;line-height:1.6}.runway-cast h3{font-size:var(--fs-30,30px);line-height:1.15;margin:0 0 12px}.runway-cast p{font-size:var(--fs-12,12px);align-self:start}.runway-foot{font-size:var(--fs-11,11px);border:0;margin-top:25px;padding:0}.plan{padding:60px 5%;display:block}.plan-heading .eyebrow{font-size:var(--fs-8,8px)}.plan-heading h2{font-size:58px;margin:19px 0 24px}.plan-heading>p{font-size:var(--fs-13,13px)}.plan-heading .btn{margin-top:20px;font-size:var(--fs-18,18px)}.plan-heading .small-note{font-size:var(--fs-10,10px)}.map-wrap{margin:35px 0 30px;min-height:370px;box-shadow:5px 5px 0 #d1c6a8}#real-map{height:340px}.map-key{font-size:var(--fs-8,8px);padding:10px;gap:8px}.good{display:flex;flex-direction:column;padding:60px 5%}.good h2{font-size:clamp(49px,12vw,70px);margin:19px 0 28px}.good-copy>p:not(.eyebrow){font-size:var(--fs-13,13px)}.good-copy .small-note{font-size:var(--fs-10,10px)}.good .underline{margin-top:20px}.good-circle{width:135px;height:135px;font-size:var(--fs-22,22px);left:-10%}.good-stamp{font-size:var(--fs-17,17px);right:-10%;bottom:20%;padding:12px}.good-art>div[data-portrait]{width:95%;margin-top:35px}.faq{display:block;padding:60px 5%}.faq h2{font-size:var(--fs-44,44px);margin:19px 0 34px}.faq .eyebrow{font-size:var(--fs-9,9px)}.faq summary{font-size:var(--fs-13,13px)}.faq details{padding:16px 0}.faq details p{font-size:var(--fs-12,12px)}.closing{padding:60px 5% 65px;text-align:left}.closing h2{font-size:clamp(40px,10.1vw,63px);margin:23px 0 32px;line-height:1.12}.closing .eyebrow{font-size:var(--fs-8,8px)}.closing .btn{font-size:var(--fs-18,18px);position:relative;z-index:2}.closing>p:last-of-type{font-size:var(--fs-11,11px)}.closing-doodle{left:auto;right:-35px;bottom:-66px;font-size:170px}footer{display:flex;flex-direction:column;align-items:start;gap:28px;padding:39px 5% 80px}footer .wordmark{font-size:var(--fs-24,24px)}footer .wordmark small{font-size:var(--fs-11,11px)}footer p{font-size:var(--fs-12,12px)}footer>div{font-size:var(--fs-12,12px)}.toast{font-size:var(--fs-11,11px)}dialog{padding:35px 23px;max-height:91vh}dialog h2{font-size:38px}dialog>.btn{font-size:var(--fs-16,16px);padding:15px 17px;gap:10px}dialog>.btn span{font-size:var(--fs-22,22px)}}
@media(max-width:370px){.wordmark{font-size:var(--fs-17,17px)}.wordmark small{font-size:var(--fs-8,8px)}.wordmark-icon{font-size:var(--fs-32,32px)}.header{gap:10px}.btn.small{font-size:var(--fs-12,12px);padding:9px 10px}.hero-copy>.eyebrow{font-size:var(--fs-7,7px)}.hero-ctas>a{font-size:var(--fs-10,10px)}.hero-prices{font-size:var(--fs-8,8px)}.hero-deck{font-size:var(--fs-13,13px)}.hero-facts>b{font-size:var(--fs-32,32px)}.sticker{font-size:var(--fs-10,10px)}.orbit-type{font-size:var(--fs-8,8px)}.hero-art{margin-top:35px}.chapter-top .eyebrow{font-size:var(--fs-7,7px)}.chapter-top .pickup{font-size:var(--fs-7,7px)}.chapter-copy h2{font-size:var(--fs-44,44px)}.featured .chapter-copy h2{font-size:51px}.plan-heading h2{font-size:51px}.good h2{font-size:var(--fs-44,44px)}.runway-cast h3{font-size:var(--fs-24,24px)}.runway-cast article>span{font-size:var(--fs-7,7px)}.lineup-list a{font-size:var(--fs-22,22px)}.lineup-list b{font-size:var(--fs-7,7px)}.sweater-heading h2{font-size:var(--fs-44,44px)}.faq h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.venue-theatre:not(.in-view){translate:0 0}.ticker>div{transform:none}}
body{overflow-x:clip}.hero-art{margin-right:0}.party-gang{width:102%}

@media(min-width:761px){.hero-art{margin-right:0}.party-gang{width:102%}}
.venue-chapter:not(.featured) .stage-label{top:9%;left:50%;translate:-50% 0;rotate:-5deg;white-space:nowrap;font-size:var(--fs-15,15px)}
@media(max-width:760px){.party-gang{width:100%}.venue-chapter:not(.featured) .stage-label{font-size:var(--fs-11,11px);top:10%}.hero-art{margin-right:-5%}}

@media(max-width:760px){.hero-ctas{display:grid;grid-template-columns:1fr auto;gap:16px}.hero-ctas>a{white-space:nowrap;font-size:var(--fs-10,10px)}}
@media(max-width:370px){.hero-ctas{gap:13px}.hero-ctas>a{justify-self:start}}@keyframes acoustic-strum{0%,100%{transform:rotate(176deg)}50%{transform:rotate(185deg)}}

/* Event-page composition. The information flow follows the original crawl page. */
.event-page{--gutter:5.5%}.section-pad{padding:72px var(--gutter)}.section-heading{max-width:1100px}.section-heading h2,.event-intro h2,.passport-copy h2,.updates-section h2{font-size:clamp(48px,5.5vw,79px);line-height:1.08;margin:18px 0 24px}.event-page em{font-style:normal;color:#b84332}.section-heading>p:not(.eyebrow){font-size:var(--fs-14,14px);max-width:610px;color:#5f6657}.utility{padding:9px 5%;display:flex;justify-content:space-between;gap:20px;font-size:var(--fs-8,8px);letter-spacing:.07em;background:#eee5c9;color:var(--ink);font-weight:700}.utility b{font-weight:500;margin-left:9px}.header{padding-top:20px;padding-bottom:20px}.header nav{gap:22px;font-size:var(--fs-11,11px)}.header .wordmark{font-size:var(--fs-22,22px)}.header .wordmark small{font-size:var(--fs-10,10px)}.event-page .hero{min-height:650px;padding-top:43px;padding-bottom:65px}.hero .event-name{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-24,24px);color:var(--lime);font-weight:800;letter-spacing:.14em;margin-top:20px;line-height:1}.event-page .hero h1{line-height:1;margin:14px 0 20px}.event-page .hero-deck{font-size:var(--fs-14,14px);max-width:465px;line-height:1.8}.hero-deck strong{font-size:var(--fs-17,17px);font-weight:700;display:inline-block;margin-bottom:8px;color:var(--paper)}.hero-sponsor{font-size:var(--fs-9,9px);display:inline-block;border-bottom:1px solid #ffffff40;margin-top:16px;color:#c6cbb9}.hero-art{margin-top:0}.hero-ctas>.btn{padding:15px 23px;border:2px solid var(--ink);font-size:var(--fs-20,20px)}.hero-ctas>.btn span{margin:0}.quick-facts{display:grid;grid-template-columns:repeat(4,1fr) 1.35fr;padding:23px 5% 32px;background:var(--ink)}.quick-facts>div{border-left:1px solid #ffffff30;padding-left:25px}.quick-facts>div:first-child{padding-left:0;border-left:0}.quick-facts span{font-size:var(--fs-8,8px);letter-spacing:.1em;color:#b9c0ac;display:block;margin-bottom:8px}.quick-facts strong{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-24,24px);line-height:1.1;font-weight:800}.event-intro{color:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.event-intro .eyebrow{color:#976446}.event-intro p:not(.eyebrow){font-size:var(--fs-14,14px);max-width:480px;color:#58614f;line-height:1.9}.event-intro .underline{display:inline-block;margin-top:25px}.intro-photo{margin:0;position:relative;rotate:3deg;background:var(--paper);border:2px solid var(--ink);padding:12px;box-shadow:10px 10px 0 #dfc9a3}.intro-photo img{width:100%;height:auto;aspect-ratio:1.03;object-fit:cover;display:block;filter:saturate(.87)}.intro-photo figcaption{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-13,13px);font-weight:700;padding:15px 3px 5px;line-height:1.3}.photo-sticker{position:absolute;right:-23px;bottom:40px;rotate:-13deg;background:var(--coral);padding:18px 22px;border:2px solid var(--ink);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:var(--fs-22,22px);line-height:1.1;box-shadow:4px 4px var(--ink)}.ticket-section{color:var(--ink)}.ticket-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;margin-top:40px;align-items:center}.souvenir-ticket{background:var(--coral);border:2px solid var(--ink);box-shadow:10px 10px 0 #cbb690;rotate:-2deg;position:relative}.ticket-art-header{display:flex;justify-content:space-between;padding:18px 25px;border-bottom:1px solid #19201d60;font-size:var(--fs-9,9px);font-weight:800;letter-spacing:.09em}.ticket-big{font-family:'Anton',sans-serif;font-size:clamp(47px,5.3vw,76px);line-height:1.04;padding:28px 30px 10px;letter-spacing:-.03em}.ticket-big em{color:var(--paper)}.ticket-perks{padding:22px 30px 28px}.ticket-perks p{font-size:var(--fs-12,12px);margin:0 0 9px}.ticket-perks span{margin-right:10px;font-weight:800}.ticket-stub{border-top:2px dashed #19201d70;display:flex;justify-content:space-between;align-items:center;padding:22px 28px;gap:20px;background:#eb5948;font-size:var(--fs-11,11px);line-height:1.6}.ticket-stub>span:last-child{font-size:var(--fs-40,40px);line-height:1}.barcode{width:75px;height:35px;background:repeating-linear-gradient(90deg,#19201d 0 2px,transparent 2px 4px,#19201d 4px 5px,transparent 5px 7px,#19201d 7px 11px,transparent 11px 14px)}.ticket-shop{background:var(--paper);padding:30px 33px}.ticket-shop .quantity{margin-top:0}.ticket-shop .btn{width:100%;font-size:var(--fs-17,17px);padding:16px 18px;gap:12px}.ticket-shop .checkout-detail{font-size:var(--fs-9,9px);color:#5c6352;margin-top:22px}.checkout-detail a{text-decoration:underline}.ticket-shop .small-note{font-size:var(--fs-10,10px);line-height:1.65;margin-top:10px}.sponsor-strip{border-top:1px solid #19201d35;border-bottom:1px solid #19201d35;margin-top:60px;padding:21px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:var(--fs-11,11px)}.sponsor-strip b{font-weight:800}.sponsor-strip a{white-space:nowrap;font-size:var(--fs-10,10px);font-weight:800;border-bottom:1px solid currentColor}.passport-section{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8%;overflow:hidden}.passport-copy h2{font-size:clamp(43px,5.2vw,75px)}.passport-copy em{color:var(--lime)}.passport-copy>p:not(.eyebrow){font-size:var(--fs-14,14px);color:#d7dec8;max-width:490px}.passport-copy ul{list-style:none;padding:0;margin:27px 0;font-size:var(--fs-13,13px)}.passport-copy li{padding:10px 0;border-bottom:1px solid #fff1d426}.passport-copy li:before{content:'';display:inline-block;width:1em;height:1em;vertical-align:-.125em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 8h13M9.5 3.5 14 8l-4.5 4.5' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' transform='rotate(315 8 8)'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 8h13M9.5 3.5 14 8l-4.5 4.5' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' transform='rotate(315 8 8)'/%3E%3C/svg%3E") center/contain no-repeat;color:var(--lime);margin-right:14px}.passport-copy .small-note{font-size:var(--fs-10,10px);margin-top:22px!important}.passport-art{position:relative;display:flex;flex-direction:column;align-items:center}.phone-vote{background:var(--purple);padding:17px 13px;margin-top:16px;border:1px solid var(--ink)}.phone-vote>span{font-size:var(--fs-7,7px);font-weight:800;display:block}.phone-vote strong{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-26,26px);font-weight:800;display:block;line-height:1.2;margin-top:6px}.how-section{color:var(--ink);border-bottom:1px solid #19201d30}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;margin-top:42px}.how-grid article>span{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-48,48px);font-weight:800;color:#b84332;line-height:1}.how-grid h3{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-32,32px);font-weight:800;margin:18px 0 15px}.how-grid p{font-size:var(--fs-13,13px);color:#5a6352;line-height:1.85}.route-section{color:var(--ink)}.route-section .lineup-intro{padding-bottom:50px}.route-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:4%;padding:0 var(--gutter) 90px;align-items:start}.map-rail{position:sticky;top:23px;min-width:0}.rail-heading>span{font-size:var(--fs-8,8px);letter-spacing:.11em;font-weight:800;color:#9a5a3c;display:block}.rail-heading>b{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-28,28px);font-weight:800;display:block;margin:5px 0 15px;line-height:1.1}.map-rail .map-wrap{margin:0;min-height:0;box-shadow:5px 5px #d7c7a4;position:relative}.map-rail #real-map{height:325px}.map-rail .map-key{padding:12px 9px;font-size:var(--fs-8,8px);gap:9px;flex-wrap:wrap}.map-rail #route-spotlight{margin-top:24px;border-top:2px solid var(--ink);padding-top:14px;display:grid;grid-template-columns:39px 1fr;gap:13px}.spotlight-number{background:var(--ink);color:var(--lime);height:39px;display:grid;place-items:center;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:var(--fs-26,26px)}.spotlight-label{font-size:var(--fs-8,8px);letter-spacing:.09em;font-weight:800;color:#9e5039}.spotlight-name{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-26,26px);font-weight:800;line-height:1.1;margin:3px 0 6px}.spotlight-address{font-size:var(--fs-10,10px);line-height:1.65}.spotlight-address a{border-bottom:1px solid currentColor;margin-left:6px}.route-note{font-size:var(--fs-10,10px);line-height:1.8;margin-top:19px;color:#626851}.map-detail{font-size:var(--fs-8,8px);color:#7b7b64;line-height:1.7;margin-top:9px}.venue-marker.active-marker{box-shadow:0 0 0 3px #fff1d4,0 0 0 6px #19201d;z-index:1000!important}.venue-marker.no-pickup.active-marker{box-shadow:0 0 0 3px #fff1d4,0 0 0 6px #d46c48}.route-layout #venue-chapters{min-width:0}.route-layout .venue-chapter{padding:26px 27px 28px;border:2px solid var(--ink);color:var(--paper)}.route-layout .venue-chapter:last-child{margin-bottom:0}.route-layout .chapter-top{margin-bottom:22px;gap:10px}.route-layout .chapter-top .eyebrow{font-size:var(--fs-8,8px);gap:10px;letter-spacing:.055em}.route-layout .chapter-number{font-size:var(--fs-28,28px)}.route-layout .pickup{font-size:var(--fs-7,7px);letter-spacing:.04em;padding:6px}.route-layout .chapter-body{display:flex;flex-direction:column;gap:26px;align-items:stretch}.route-layout .chapter-copy{display:block;order:0}.route-layout .chapter-copy h2{font-size:clamp(35px,3.6vw,55px);margin-bottom:16px;line-height:1.07}.route-layout .featured .chapter-copy h2{font-size:clamp(42px,4.25vw,67px)}.route-layout .venue-fullname{font-size:var(--fs-22,22px);margin:0 0 12px}.route-layout .chapter-copy>p:not(.venue-fullname){font-size:var(--fs-12,12px);max-width:none}.route-layout .chapter-copy .venue-address{font-size:var(--fs-11,11px);margin-top:19px}.route-layout .chapter-copy .venue-address small{font-size:var(--fs-9,9px);display:inline;margin-left:9px}.route-layout .chapter-copy .venue-exception{margin-top:14px;padding:10px 12px}.route-layout .chapter-actions{font-size:var(--fs-9,9px);gap:25px;margin-top:7px}.route-layout .featured .architecture{width:138%;left:-19%;bottom:0}.route-layout .stage-label span{font-size:var(--fs-8,8px)}.contests-section{color:var(--ink)}.contests-section>.section-heading{max-width:none}.contests-section .section-heading em{color:#34354d}.contests-section .section-heading>p:not(.eyebrow){color:#3e4143}.contest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}.contest-grid article{background:#bbabe4;border:2px solid var(--ink);padding:25px;box-shadow:5px 5px var(--ink)}.contest-grid article:nth-child(2){background:#c6b9e9}.contest-grid article:nth-child(3){background:var(--coral)}.contest-icon{font-family:Arial,sans-serif;font-size:var(--fs-56,56px);line-height:1.3;height:88px;display:flex;align-items:center;gap:9px;position:relative}.contest-icon>span{color:var(--paper);font-size:var(--fs-44,44px);rotate:17deg}.cocktail-icon{font-size:85px;letter-spacing:0}.contest-number{font-size:var(--fs-8,8px);font-weight:800;letter-spacing:.08em}.contest-grid h3{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:var(--fs-36,36px);line-height:1.06;letter-spacing:0;margin:16px 0}.contest-grid p{font-size:var(--fs-12,12px);line-height:1.8}.contest-grid a{font-size:var(--fs-8,8px);letter-spacing:.05em;font-weight:800;display:inline-block;border-bottom:1px solid currentColor;margin-top:24px}.contest-passport{margin-top:30px;display:inline-block}.contests-section .sweaters{padding-top:65px;padding-bottom:65px}.toy-strip{padding:28px var(--gutter);display:flex;align-items:center;gap:25px;border-bottom:2px solid var(--ink)}.toy-symbol{font-size:var(--fs-48,48px);line-height:1}.toy-strip h3{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-28,28px);font-weight:800}.toy-strip p{font-size:var(--fs-11,11px);margin-top:8px}.toy-strip a{font-size:var(--fs-9,9px);font-weight:800;white-space:nowrap;margin-left:auto;border-bottom:1px solid currentColor}.photos-section{color:var(--ink)}.photos-section .section-heading h2{max-width:900px;font-size:clamp(43px,5.2vw,73px)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:33px 28px;margin:45px 0 0}.photo-grid figure{margin:0;background:#fff9e8;padding:9px;border:1px solid #19201d80;rotate:-2deg}.photo-grid figure:nth-child(3n+2){rotate:2deg}.photo-grid img{display:block;width:100%;height:auto;aspect-ratio:1.3;object-fit:cover}.photo-grid figcaption{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-15,15px);font-weight:800;display:flex;gap:9px;padding:14px 5px 7px;line-height:1.2}.photo-grid figcaption>span{color:#bc4c34}.good{align-items:center}.cause-grid{margin:25px 0;display:grid;grid-template-columns:1fr 1fr;gap:23px 20px}.cause-grid>div{display:flex;gap:12px;border-top:1px solid #19201d50;padding-top:14px}.cause-grid b{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-24,24px);line-height:1}.cause-grid span{font-size:var(--fs-10,10px);font-weight:800;line-height:1.6}.cause-grid small{font-size:var(--fs-10,10px);font-weight:400;display:block;margin-top:5px}.sponsors-section{color:var(--ink)}.sponsors-section .section-heading{max-width:800px}.sponsors-section .btn{margin-top:27px}.title-sponsor{padding:38px;border:2px dashed #19201d80;display:grid;grid-template-columns:1fr 1fr;gap:13px 45px;align-items:center}.title-sponsor>span{font-size:var(--fs-9,9px);font-weight:800;letter-spacing:.08em;grid-column:1/-1}.title-sponsor h3{font-family:'Barlow Condensed',sans-serif;font-size:38px;font-weight:800;line-height:1.1}.title-sponsor p{font-size:var(--fs-13,13px);max-width:400px}.title-sponsor a{font-size:var(--fs-9,9px);font-weight:800;text-decoration:underline;justify-self:start}.sponsor-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-top:30px}.sponsor-item{border:1px solid #19201d60;padding:16px;background:var(--paper);transition:translate .2s;display:flex;flex-direction:column}.sponsor-item:hover{translate:0 -5px}.sponsor-item img{display:block;width:100%;height:155px;object-fit:contain;margin-bottom:20px;mix-blend-mode:multiply}.sponsor-item h3{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-26,26px);font-weight:800;line-height:1.1}.sponsor-item p{font-size:var(--fs-10,10px);margin:11px 0 18px;line-height:1.8}.sponsor-item>span{font-size:var(--fs-8,8px);font-weight:800;margin-top:auto}.sponsor-foot{font-size:var(--fs-12,12px);margin-top:30px;line-height:1.9}.sponsor-foot a{font-weight:800;text-decoration:underline}.updates-section{display:grid;grid-template-columns:1fr 1.1fr;gap:6%;align-items:center}.updates-section em{color:var(--lime)}.updates-section>div>p:not(.eyebrow){font-size:var(--fs-13,13px);color:#d1d8c2;max-width:430px}.updates-section label{font-size:var(--fs-10,10px);letter-spacing:.07em;font-weight:800}.updates-section .small-note{font-size:var(--fs-10,10px);line-height:1.8;color:#b8c1ad;margin-top:23px}.updates-section .small-note a{color:var(--paper);text-decoration:underline;display:inline}.event-page footer>div{display:grid;grid-template-columns:1fr 1fr;gap:9px 25px}.event-page footer button{grid-column:1/-1;text-align:left;margin-top:3px}.mobile-tickets{display:none}.event-page input:focus-visible,.event-page select:focus-visible{outline:3px solid var(--coral);outline-offset:4px}
@media(min-width:1600px){.event-page{--gutter:max(6%,calc((100vw - 1450px)/2))}.route-layout{grid-template-columns:500px minmax(0,1fr)}.map-rail #real-map{height:360px}}
@media(max-width:1100px){.header nav{gap:15px;font-size:var(--fs-10,10px)}.header nav>a:nth-child(3){display:none}.event-page .hero{min-height:640px}.hero-deck strong{font-size:var(--fs-15,15px)}.hero .event-name{font-size:var(--fs-22,22px)}.hero-ctas>.btn{font-size:var(--fs-17,17px);padding:15px 17px;gap:20px}.quick-facts strong{font-size:var(--fs-22,22px)}.quick-facts>div{padding-left:15px}.quick-facts span{font-size:var(--fs-7,7px)}.route-layout{gap:25px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.route-layout .venue-chapter{padding:23px 21px}.route-layout .chapter-top{flex-wrap:wrap}.map-rail .map-key{font-size:var(--fs-7,7px);gap:8px}.map-rail #real-map{height:290px}.ticket-shop{padding:25px}.ticket-big{font-size:var(--fs-56,56px)}.ticket-perks p{font-size:var(--fs-11,11px)}.contest-grid{gap:18px}.contest-grid article{padding:20px}.contest-grid h3{font-size:var(--fs-30,30px)}.contest-grid p{font-size:var(--fs-11,11px)}.sponsor-item{padding:13px}.sponsor-item img{height:115px}.sponsor-item h3{font-size:var(--fs-24,24px)}.toy-strip h3{font-size:var(--fs-24,24px)}}
@media(max-width:760px){.event-page{--gutter:5%}.section-pad{padding-top:46px;padding-bottom:46px}.section-heading h2,.event-intro h2,.passport-copy h2,.updates-section h2{font-size:clamp(42px,11vw,64px);margin:18px 0 23px}.section-heading>.eyebrow{font-size:var(--fs-8,8px)}.section-heading>p:not(.eyebrow){font-size:var(--fs-13,13px)}.utility{font-size:var(--fs-7,7px);padding:8px 5%;line-height:1.6}.utility>span:last-child{display:none}.utility b{margin-left:5px}.header{padding-top:18px;padding-bottom:18px}.header .wordmark{font-size:var(--fs-20,20px)}.header .wordmark small{font-size:var(--fs-9,9px)}.header nav>a.btn{display:inline-flex;white-space:nowrap;font-size:var(--fs-13,13px)}.header nav>a.btn>span{font-size:var(--fs-17,17px)}.event-page .hero{min-height:0;padding-bottom:58px;display:flex}.hero .event-name{font-size:var(--fs-22,22px);letter-spacing:.12em;margin-top:17px}.event-page .hero h1{line-height:1.02;margin:12px 0 20px}.event-page .hero-deck{font-size:var(--fs-13,13px);line-height:1.85}.hero-deck strong{font-size:var(--fs-14,14px);margin-bottom:4px}.hero-sponsor{font-size:var(--fs-9,9px);margin-top:14px}.hero-ctas>.btn{font-size:var(--fs-17,17px);padding:15px 17px;white-space:nowrap}.hero-ctas>a:not(.btn){font-size:var(--fs-11,11px);padding:9px 0}.hero-bottom{font-size:var(--fs-7,7px)}.quick-facts{grid-template-columns:1fr 1fr;gap:23px 0;padding:26px 5% 38px}.quick-facts>div{padding-left:20px}.quick-facts>div:nth-child(odd){padding-left:0;border-left:0}.quick-facts>div:last-child{grid-column:1/-1;border-top:1px solid #fff1d430;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:10px}.quick-facts span{font-size:var(--fs-8,8px);margin-bottom:6px}.quick-facts>div:last-child span{margin-bottom:0}.quick-facts strong{font-size:var(--fs-26,26px)}.quick-facts>div:last-child strong{font-size:var(--fs-24,24px)}.event-intro{display:block}.event-intro .eyebrow{font-size:var(--fs-8,8px)}.event-intro p:not(.eyebrow){font-size:var(--fs-13,13px)}.intro-photo{margin:43px 8px 12px;padding:9px;rotate:2deg;box-shadow:6px 6px #dfc9a3}.intro-photo figcaption{font-size:var(--fs-11,11px);line-height:1.4;padding:13px 1px 5px}.photo-sticker{right:-15px;font-size:var(--fs-17,17px);padding:13px 16px}.ticket-layout{margin-top:30px}.souvenir-ticket{rotate:-2deg;box-shadow:6px 6px #cbb690}.ticket-big{font-size:61px;padding:23px 26px 10px}.ticket-art-header{padding:16px 20px;font-size:var(--fs-8,8px)}.ticket-perks{padding:19px 25px 24px}.ticket-perks p{font-size:var(--fs-11,11px)}.ticket-stub{padding:18px 23px}.ticket-shop{padding:25px 22px}.ticket-shop>.eyebrow{font-size:var(--fs-9,9px)}.ticket-shop .btn{padding:15px 14px}.quantity button{width:42px;height:42px}.sponsor-strip{margin-top:35px;display:block;padding:21px 0;font-size:var(--fs-10,10px)}.sponsor-strip span{display:block}.sponsor-strip a{display:inline-block;font-size:var(--fs-9,9px);margin-top:12px;white-space:normal}.passport-section{display:block}.passport-copy>.eyebrow{font-size:var(--fs-9,9px)}.passport-copy>p:not(.eyebrow){font-size:var(--fs-13,13px)}.passport-copy ul{font-size:var(--fs-12,12px)}.passport-copy .btn{font-size:var(--fs-18,18px);gap:30px}.passport-art{margin-top:52px;padding-bottom:5px}.how-grid{grid-template-columns:1fr;margin-top:30px}.how-grid article{display:grid;padding-top:23px}.how-grid h3{margin:0;font-size:var(--fs-28,28px)}.how-grid p{font-size:var(--fs-12,12px)}.route-section .lineup-intro{padding-top:60px;padding-bottom:32px}.route-layout{display:block;padding-bottom:60px}.map-rail{position:static;margin-bottom:30px}.rail-heading>b{font-size:var(--fs-26,26px)}.map-rail #real-map{height:310px}.map-rail .map-key{font-size:var(--fs-8,8px);gap:11px}.route-note{font-size:var(--fs-11,11px)}.map-detail{font-size:var(--fs-8,8px)}.map-rail #route-spotlight{display:none}.route-layout .venue-chapter{padding:24px 19px}.route-layout .chapter-top{gap:9px;margin-bottom:20px;flex-wrap:wrap}.route-layout .chapter-top .eyebrow{font-size:var(--fs-8,8px)}.route-layout .pickup{font-size:var(--fs-7,7px)}.route-layout .chapter-copy h2{font-size:clamp(35px,10vw,59px)}.route-layout .featured .chapter-copy h2{font-size:clamp(39px,11vw,66px)}.route-layout .venue-fullname{font-size:var(--fs-24,24px);line-height:1.2}.route-layout .chapter-copy>p:not(.venue-fullname){font-size:var(--fs-12,12px)}.route-layout .chapter-copy .venue-address{font-size:var(--fs-12,12px)}.route-layout .chapter-copy .venue-address small{display:block;font-size:var(--fs-10,10px);margin:0}.route-layout .chapter-actions{font-size:var(--fs-10,10px)}.route-layout .venue-theatre{aspect-ratio:1.04}.route-layout .featured .venue-theatre{aspect-ratio:1.04}.route-layout .featured .architecture{width:151%;left:-25%;bottom:2%}.contest-grid{grid-template-columns:1fr;gap:21px;margin-top:30px}.contest-grid article{padding:25px;display:grid;grid-template-columns:1fr 80px;gap:0 10px}.contest-icon{grid-column:2;grid-row:1/3;font-size:var(--fs-30,30px);height:auto;gap:3px;align-self:start;letter-spacing:-.1em;margin-top:17px}.contest-icon>span{font-size:var(--fs-30,30px)}.cocktail-icon{font-size:65px}.contest-number{font-size:var(--fs-7,7px);grid-column:1;align-self:start}.contest-grid h3{font-size:var(--fs-32,32px);margin:14px 0;grid-column:1}.contest-grid p{font-size:var(--fs-12,12px);grid-column:1/-1}.contest-grid a{font-size:var(--fs-8,8px);grid-column:1/-1;justify-self:start;margin-top:18px}.contest-passport{font-size:var(--fs-15,15px)!important;line-height:1.5}.contests-section .sweaters{padding-top:50px;padding-bottom:50px}.toy-strip{flex-wrap:wrap;gap:18px}.toy-symbol{font-size:38px;align-self:start}.toy-strip>div{flex:1}.toy-strip h3{font-size:var(--fs-24,24px);line-height:1.1}.toy-strip p{font-size:var(--fs-11,11px);line-height:1.8}.toy-strip a{margin:0 0 0 54px;font-size:var(--fs-8,8px)}.photos-section .section-heading h2{font-size:clamp(37px,9.7vw,60px)}.photo-grid{grid-template-columns:1fr 1fr;gap:22px 17px;margin-top:32px}.photo-grid figure{padding:6px;box-shadow:3px 3px #dec9a1}.photo-grid img{object-position:center}.photo-grid figcaption{font-size:var(--fs-12,12px);padding:12px 2px 5px;line-height:1.25;gap:5px}.photo-grid figcaption>span{font-size:var(--fs-15,15px)}.cause-grid{gap:22px 18px;margin:27px 0}.cause-grid b{font-size:var(--fs-22,22px)}.cause-grid span{font-size:var(--fs-9,9px)}.cause-grid small{font-size:var(--fs-10,10px)}.sponsors-section .btn{font-size:var(--fs-17,17px);padding:15px 18px;gap:25px}.title-sponsor{padding:25px;display:block}.title-sponsor>span{font-size:var(--fs-8,8px)}.title-sponsor h3{font-size:var(--fs-36,36px);margin:16px 0}.title-sponsor p{font-size:var(--fs-12,12px)}.title-sponsor a{display:inline-block;font-size:var(--fs-8,8px);margin-top:22px}.sponsor-grid{grid-template-columns:1fr 1fr;gap:15px;margin-top:25px}.sponsor-item{padding:15px}.sponsor-item img{height:128px;margin-bottom:14px}.sponsor-item h3{font-size:var(--fs-24,24px)}.sponsor-item p{font-size:var(--fs-10,10px)}.sponsor-item>span{font-size:var(--fs-8,8px)}.sponsor-item:last-child{grid-column:1/-1}.sponsor-foot{font-size:var(--fs-11,11px)}.updates-section{display:block}.updates-section .eyebrow{font-size:var(--fs-8,8px)}.updates-section form{margin-top:30px}.updates-section label{font-size:var(--fs-9,9px)}.event-page footer{padding-bottom:125px}.event-page footer>div{gap:13px 30px}.concept-note{bottom:85px;font-size:var(--fs-7,7px);padding:6px 8px;right:10px}.mobile-tickets{display:flex;position:fixed;z-index:1000;bottom:0;left:0;right:0;min-height:74px;padding:12px 5% max(12px,env(safe-area-inset-bottom));background:var(--ink);border-top:1px solid #fff1d445;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -5px 15px #19201d20}.mobile-tickets>span{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-20,20px);line-height:1.2;font-weight:700}.mobile-tickets small{display:block;font-family:'DM Sans',sans-serif;font-size:var(--fs-8,8px);font-weight:400;margin-top:5px}.mobile-tickets .btn{font-size:var(--fs-16,16px);min-height:43px;white-space:nowrap;padding:11px 15px;gap:8px}.toast{bottom:117px}.event-page .faq h2{font-size:clamp(37px,10.7vw,55px)}}
@media(max-width:370px){.header .wordmark{font-size:var(--fs-16,16px)}.header .wordmark small{font-size:var(--fs-8,8px)}.header nav>a.btn{font-size:var(--fs-11,11px);padding:10px}.hero-deck strong{font-size:var(--fs-13,13px)}.hero-ctas{grid-template-columns:1fr auto}.hero-ctas>.btn{font-size:var(--fs-15,15px);padding:14px 13px;gap:12px}.hero-ctas>a:not(.btn){font-size:var(--fs-10,10px)}.hero .event-name{font-size:var(--fs-20,20px)}.quick-facts strong{font-size:var(--fs-24,24px)}.quick-facts>div:last-child strong{font-size:var(--fs-20,20px)}.ticket-big{font-size:var(--fs-56,56px)}.ticket-shop{padding:23px 18px}.ticket-shop .btn{font-size:var(--fs-14,14px);gap:8px}.route-layout .featured .chapter-copy h2{font-size:var(--fs-36,36px)}.route-layout .chapter-copy h2{font-size:var(--fs-32,32px)}.route-layout .venue-fullname{font-size:var(--fs-20,20px)}.route-layout .pickup{font-size:var(--fs-7,7px)}.route-layout .venue-chapter:not(.featured) .stage-label{font-size:var(--fs-8,8px)}.route-layout .venue-tagline{font-size:var(--fs-8,8px)}.photo-grid{gap:17px 13px}.photo-grid figcaption{font-size:var(--fs-10,10px)}.mobile-tickets>span{font-size:var(--fs-17,17px)}.mobile-tickets .btn{font-size:var(--fs-14,14px)}.mobile-tickets small{font-size:var(--fs-7,7px)}.sponsor-item{padding:12px}.sponsor-item h3{font-size:var(--fs-22,22px)}.sponsor-item img{height:100px}}
.map-rail #real-map{flex:none}.contest-icon svg{width:92px;height:84px;overflow:visible}.contest-icon{letter-spacing:0}
@media(max-width:760px){.contest-icon svg{width:77px;height:75px}}
/* C20: the redrawn icons share one 100x90 grid centered on (50,45), so center the art in its card. */
.contest-grid .contest-icon{align-self:center;justify-content:center;width:100%}
@media(min-width:761px) and (max-height:780px){.map-rail #real-map{height:245px}.map-rail .map-detail{display:none}.map-rail .route-note{margin-top:12px}.map-rail #route-spotlight{margin-top:19px}}
.venue-marker.neighbor-pin,.venue-marker.neighbor-pin.active-marker{background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;pointer-events:none}.neighbor-pin svg{width:60px;height:55px;overflow:visible}.neighbor-pin .pin-number-disc{fill:#19201d;stroke:#fff1d4;stroke-width:2;pointer-events:all}.neighbor-pin.no-pickup .pin-number-disc{fill:#d46c48}.neighbor-pin text{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-20,20px);font-weight:800;fill:#fff1d4;pointer-events:none}.neighbor-pin.active-marker .pin-number-disc{stroke-width:3}.neighbor-pin .pin-ring{fill:none;stroke:none;pointer-events:none}.neighbor-pin.active-marker .pin-ring{fill:#fff1d4;stroke:#19201d;stroke-width:3}.neighbor-pin.no-pickup.active-marker .pin-ring{stroke:#d46c48}
@media(max-width:760px){.ticket-layout{display:flex;flex-direction:column;align-items:stretch}.ticket-shop{order:-1}.souvenir-ticket{margin:38px 7px 0}.concept-note{display:none}.photo-grid img{aspect-ratio:1.3}}
/* C16: from tablet up the ticket keeps its 1024px width (440px) and centers in its column; phones unchanged. */
@media(min-width:761px){.souvenir-ticket{width:100%;max-width:440px;justify-self:center}}
/* Long event pages should move straight to the requested section. Scene motion is independent. */
html{scroll-behavior:auto}
/* Reference-led venue scenes: shared coordinates prevent hands and props from drifting apart. */
.route-layout .venue-theatre,.route-layout .featured .venue-theatre{border-radius:var(--r-md,8px);min-height:0;max-height:none}.accurate-scene{display:block;width:100%;height:auto;overflow:hidden}.accurate-scene>.town-art{height:530px}.route-layout .stage-label,.route-layout .featured .stage-label,.route-layout .venue-chapter:not(.featured) .stage-label{top:6%;left:6%;translate:0;rotate:-4deg;font-size:var(--fs-12,12px);white-space:normal;max-width:165px}.route-layout .featured .stage-label{font-size:var(--fs-20,20px);max-width:175px}.route-layout .featured .stage-label span{font-size:var(--fs-7,7px)}.route-layout .venue-tagline{font-size:var(--fs-10,10px);left:10px;bottom:10px;padding:6px 9px}.accurate-scene .snowfall{display:none}.accurate-scene .town-art>path{opacity:1}.accurate-scene .scene-disco-beams{animation:light-fan 9s ease-in-out infinite alternate;transform-origin:400px 68px;opacity:.14}.scene-disco-ball{animation:disco-shimmer 6s ease-in-out infinite}.flat-record{animation:record-revolve 3.6s linear infinite;transform-origin:0px 0px;transform-box:view-box}.pose-dj .pip-bounce{animation:none}.dj-wrist{animation:mix-wrist 2.4s ease-in-out infinite;transform-origin:96px 316px}.dj-wrist.right{animation-delay:-1.2s}.pose-acoustic .rudy-dance,.pose-carols .rudy-dance,.pose-karaoke .rudy-dance{animation:performer-sway 3.6s ease-in-out infinite;transform-origin:145px 345px}.pose-acoustic .rudy-leg,.pose-carols .rudy-leg,.pose-karaoke .rudy-leg,.pose-acoustic .rudy-head,.pose-karaoke .rudy-head,.pose-carols .rudy-head{animation:none}.strumming-hand{animation:proper-strum .8s ease-in-out infinite;transform-origin:75px 236px;transform-box:view-box}.singing-mouth{animation:chorus-mouth 1.6s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.actor-nick .singing-mouth{animation-delay:-.45s}.pose-carols .nick-head{animation:none}.pose-carols .nick-groove,.pose-toast .nick-groove,.pose-fireside .nick-groove{animation:performer-sway 4.4s ease-in-out infinite;transform-origin:150px 345px}.pose-carols .nick-leg,.pose-toast .nick-leg,.pose-fireside .nick-leg{animation:none}.pose-fireside .nick-toast,.pose-toast .nick-toast{animation:quiet-toast 5.8s ease-in-out infinite;transform-origin:231px 190px}.pose-sway .rudy-dance{animation:performer-sway 3.8s ease-in-out infinite;transform-origin:145px 345px}.pose-sway .rudy-leg{animation:none}.pose-sway .rudy-arm{animation-duration:4.5s}.pose-listen .pip-bounce{animation:listener-nod 3s ease-in-out infinite;transform-origin:140px 390px}.pit-flames{animation:small-fire 1.3s ease-in-out infinite alternate;transform-origin:0px 0px;transform-box:view-box}.fire-glow{animation:fire-warmth 2.1s ease-in-out infinite;opacity:.09}.scene-note{animation:voice-note 3.8s ease-out infinite}.venue-bulb{animation:bulbs 5s ease-in-out infinite}.pose-acoustic .party-character,.pose-carols .party-character,.pose-karaoke .party-character{overflow:visible}
@keyframes proper-strum{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(6deg)}}@keyframes performer-sway{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@keyframes chorus-mouth{0%,100%{transform:scaleY(.55)}20%{transform:scaleY(1)}45%{transform:scaleY(.6)}68%{transform:scaleY(1.2)}}@keyframes record-revolve{to{transform:rotate(360deg)}}@keyframes mix-wrist{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes small-fire{0%{transform:scale(1,.93)}100%{transform:scale(.97,1.03)}}@keyframes fire-warmth{0%,100%{opacity:.07}50%{opacity:.13}}@keyframes quiet-toast{0%,65%,100%{transform:rotate(0)}35%{transform:rotate(-5deg)}}@keyframes listener-nod{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@keyframes voice-note{0%{translate:0 7px;opacity:0}20%{opacity:.8}100%{translate:5px -24px;opacity:0}}@keyframes light-fan{from{transform:rotate(-9deg);opacity:.10}to{transform:rotate(9deg);opacity:.18}}@keyframes disco-shimmer{0%,100%{opacity:.78}50%{opacity:1}}
@media(max-width:760px){.route-layout .stage-label,.route-layout .venue-chapter:not(.featured) .stage-label{font-size:var(--fs-9,9px);max-width:120px;left:5%;top:5%}.route-layout .featured .stage-label{font-size:var(--fs-14,14px);max-width:124px;top:5%;left:5%}.route-layout .featured .stage-label span{font-size:5px;letter-spacing:.02em;max-width:100px}.route-layout .venue-tagline{font-size:var(--fs-8,8px);left:7px;bottom:7px;padding:5px 6px}}

/* Put the participating businesses before the long event sections and mobile artwork. */
.early-lineup{grid-column:1/-1;grid-row:2;position:relative;z-index:2;margin-top:34px;padding:25px 0 6px;border-top:1px solid #fff1d440;min-width:0;scroll-margin-top:20px}
.early-lineup-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}
.early-lineup .eyebrow{font-size:var(--fs-8,8px);color:#bac5a9;letter-spacing:.11em}
.early-lineup h2{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:var(--fs-30,30px);line-height:1.1;margin:7px 0 0;letter-spacing:0}
.early-lineup-heading>a{font-size:var(--fs-8,8px);font-weight:700;letter-spacing:.04em;border-bottom:1px solid #fff1d460;padding-bottom:5px;white-space:nowrap}
.early-lineup-heading>a span{margin-left:9px}
.early-lineup-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #fff1d440}
.early-venue{display:grid;grid-template-columns:1fr auto;gap:10px 6px;padding:17px 16px;min-width:0;border-left:1px solid #fff1d440;color:var(--paper)}
.early-venue:first-child{border-left:0}
.early-number{font-size:var(--fs-9,9px);font-weight:700;opacity:.65;grid-column:1;align-self:start}
.early-arrow{grid-column:2;grid-row:1;font-size:var(--fs-20,20px);line-height:1}
.early-venue-copy{grid-column:1/-1;min-width:0}
.early-venue strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-24,24px);line-height:1.05;font-weight:800;min-height:51px}
.early-venue small{display:block;font-size:var(--fs-7,7px);line-height:1.5;margin-top:10px;font-weight:700}
.early-featured{background:var(--lime);color:var(--ink)}
.early-venue:hover{background:var(--paper);color:var(--ink)}
.early-lineup a:focus-visible{outline:3px solid var(--coral);outline-offset:4px;position:relative;z-index:3}
@media(min-width:761px){.event-page .hero-art{grid-column:2;grid-row:1}.event-page .hero-bottom{bottom:21px}}
@media(max-width:1000px) and (min-width:761px){.early-venue{padding:15px 11px}.early-venue strong{font-size:var(--fs-22,22px);min-height:45px}.early-venue small{font-size:var(--fs-7,7px)}}
@media(max-width:760px){
 /* The opening already lists every bar; skip the repeated route navigation. */
 .route-section .lineup-list{display:none}
 .event-page .hero{padding-top:30px}
 .early-lineup{margin-top:26px;padding-top:22px;grid-row:auto}
 .early-lineup-heading{align-items:start;gap:12px;flex-direction:column;margin-bottom:16px}
 .early-lineup h2{font-size:var(--fs-28,28px);margin-top:7px}
 .early-lineup .eyebrow{font-size:var(--fs-8,8px)}
 .early-lineup-heading>a{font-size:var(--fs-8,8px);padding-bottom:4px}
 .early-lineup-links{display:block}
 .early-venue{grid-template-columns:22px minmax(0,1fr) 20px;gap:12px;align-items:center;min-height:65px;padding:12px 14px;border-left:0;border-top:1px solid #fff1d430}
 .early-venue:first-child{border-top:0}
 .early-number{grid-column:1;grid-row:1;align-self:center;font-size:var(--fs-9,9px)}
 .early-venue-copy{grid-column:2;grid-row:1}
 .early-venue strong{font-size:var(--fs-24,24px);min-height:0;line-height:1.12}
 .early-venue small{margin-top:5px}
 .early-arrow{grid-column:3;grid-row:1;font-size:var(--fs-22,22px);align-self:center}
}
@media(max-width:370px){.early-lineup h2{font-size:var(--fs-24,24px)}.early-venue{gap:8px;padding:12px 10px;grid-template-columns:20px minmax(0,1fr) 16px}.early-venue strong{font-size:var(--fs-22,22px)}.early-venue small{font-size:var(--fs-7,7px)}}

/* Final rig alignment and a faster groove reserved for Freddy J's. */
.scene-freddy{--party-beat:1.8s;--toast-cycle:3.6s}
.dj-wrist.right{transform-origin:209px 314px}

/* V6: a continuous party-poster world, with quiet space for practical information. */
.section-seam{height:clamp(48px,6vw,78px);position:relative;overflow:hidden;margin:-1px 0;pointer-events:none}
.section-seam>svg{display:block;width:100%;height:calc(100% + 2px);margin-top:-1px;overflow:visible}
.section-seam>svg:not([preserveAspectRatio]){object-fit:fill}

.event-intro{background:linear-gradient(180deg,#ffe5bc 0,var(--paper) 145px);border:0}
.ticker{position:relative;z-index:2;box-shadow:0 16px 32px #b5532c16}
.ticket-section{border-top:0;background:radial-gradient(ellipse closest-side at 70% 50%,#f5c7a33b,transparent),#f0e1bd}
.passport-section{background:radial-gradient(ellipse closest-side at 65% 50%,#47674870,transparent),#243c32}
.how-section{border:0;background:linear-gradient(180deg,var(--paper) 55%,#f2e8c9 100%)}
.route-section{background:linear-gradient(180deg,#f2e8c9,var(--paper) 330px)}
.route-section .lineup-intro{background:transparent}
.contests-section{background:var(--purple)}
.contests-section>.section-heading{background:radial-gradient(ellipse closest-side at 50% 50%,#dac6ee50,transparent)}
.contests-section .sweaters{background:radial-gradient(ellipse closest-side at 50% 50%,#ff9367,transparent),var(--coral)}
.contests-section .sweaters:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:25px;z-index:3;pointer-events:none;background:radial-gradient(circle at 12px 0,transparent 11px,var(--lime) 12px) 0 0/25px 25px repeat-x}
.toy-strip{border:0;padding-top:35px;padding-bottom:35px;background:linear-gradient(180deg,var(--lime),#e7fba1)}
.photos-section{background:radial-gradient(ellipse closest-side at 50% 50%,#f6dfb955,transparent),var(--paper)}
.sponsors-section{background:radial-gradient(ellipse closest-side at 65% 50%,#ecc68b50,transparent),#f0e1bd}
.updates-section{background:radial-gradient(ellipse closest-side at 35% 50%,#44644780,transparent),#23372f}
.faq{background:radial-gradient(ellipse closest-side at 50% 50%,#f6e9c8,var(--paper))}
.closing{background:radial-gradient(ellipse closest-side at 50% 50%,#365744aa,transparent),#21352c}
.closing+footer{background:linear-gradient(180deg,#21352c,var(--ink));border-top:0}
.section-heading{position:relative}
.section-illustration{pointer-events:none;position:relative}
.section-illustration svg{display:block;width:100%;height:auto;overflow:visible}
.camera-illustration{position:absolute;width:235px;right:0}
#tickets>.section-heading,#photos>.section-heading{padding-right:245px;max-width:none}
.camera-illustration{top:-12px;rotate:-7deg}
.how-grid article{position:relative;border-top:0;padding-top:0}
.how-icon{width:145px;height:104px;margin:0 0 15px;grid-column:1/-1}
.how-icon svg{width:100%;height:100%;overflow:visible}
.how-grid article>span{display:block}
.contest-icon>svg{overflow:visible}
.contest-grid article:nth-child(1) .contest-icon circle{animation:decoration-glint 4s ease-in-out infinite}
.contest-grid article:nth-child(1) .contest-icon circle:nth-child(even){animation-delay:-2s}
.contest-grid article:nth-child(2) .contest-icon svg{animation:cocktail-toast 6s ease-in-out infinite;transform-origin:50% 100%}
.contest-grid article:nth-child(3) .contest-icon svg{animation:knit-rock 6s ease-in-out infinite;transform-origin:50% 20%}
.title-sponsor{position:relative;isolation:isolate;margin-top:65px}
.marquee-lights{position:absolute;top:-20px;left:0;right:0;display:flex;justify-content:space-between;gap:8px;pointer-events:none}
.marquee-lights i{display:block;width:9px;height:9px;flex:0 0 9px;border:1px solid var(--ink);border-radius:var(--r-round,50%);background:var(--coral);animation:marquee-chase 6s ease-in-out infinite;animation-delay:var(--delay)}
.marquee-lights i:nth-child(3n){background:var(--purple)}
.marquee-lights i:nth-child(3n+1){background:var(--lime)}
.phone-vote{position:relative;overflow:hidden}
.good{background:radial-gradient(ellipse closest-side at 65% 50%,#51404f,transparent),#272438;color:var(--paper);gap:5%;grid-template-columns:1.1fr 1fr;overflow:visible;padding-top:55px;padding-bottom:65px}
.good-copy>.eyebrow{color:var(--orange,#ffad64);font-size:var(--fs-9,9px);letter-spacing:.09em}
.good h2{font-size:clamp(52px,5.3vw,81px);line-height:1.1;letter-spacing:-.02em}
.good h2 span{color:#ffad64;text-shadow:none}
.good-copy>p:not(.eyebrow){color:#e3d8cf}
.good-copy>.small-note{color:#c6b8c6!important}
.good .cause-grid{gap:24px 22px}
.good .cause-grid>div{border-color:#fff1d438}
.good .cause-grid b{color:#ffad64}
.good .cause-grid span{color:var(--paper)}
.good .cause-grid small{color:#c6b8c6}
.good .underline{color:var(--lime);font-size:var(--fs-14,14px);line-height:1.5;margin-top:21px}
.good-art{width:100%;max-width:none;min-width:0}
.parade-art svg{display:block;width:100%;height:auto;overflow:visible}
.parade-art-caption{font-size:var(--fs-10,10px);text-align:center;color:#d8cbd8;line-height:1.7;margin:19px 0 12px}
.parade-link{display:flex;align-items:center;justify-content:center;gap:15px;font-size:var(--fs-9,9px);letter-spacing:.04em;font-weight:700;color:var(--paper);padding:13px 0;border-top:1px dashed #fff1d440;border-bottom:1px dashed #fff1d440;margin:0 8%}
.parade-link span{font-size:var(--fs-20,20px);color:#ffad64}
.hanging-ornament{animation:ornament-sway 7s ease-in-out infinite;animation-delay:var(--delay);transform-origin:0 0}
.light-glow{animation:gentle-glow 6s ease-in-out infinite;animation-delay:var(--delay)}
.bunting-flag{animation:pennant-breeze 7s ease-in-out infinite;animation-delay:var(--delay);transform-origin:0 0}
.motion-star{animation:star-breathe 8s ease-in-out infinite;transform-origin:0 0}
.camera-rock{animation:camera-lilt 8s ease-in-out infinite;transform-origin:80px 110px}
.camera-lens{animation:lens-focus 7s ease-in-out infinite;transform-origin:82px 77px}
.paper-plane{animation:plane-drift 7s ease-in-out infinite;transform-origin:0 0}
.pumpkin-march{animation:pumpkin-step 2.4s ease-in-out infinite;transform-origin:110px 280px}
.drum-arm{animation:drum-tap 1.2s ease-in-out infinite;transform-origin:0 0}
.drum-arm.right{animation-delay:-.6s;animation-direction:reverse}
.drum-head{animation:drummer-nod 2.4s ease-in-out infinite;transform-origin:98px 116px}
.ghost-float{animation:ghost-rise 5.6s ease-in-out infinite}
.ghost-wave{animation:pennant-wave 5.6s ease-in-out infinite;transform-origin:0 0}
.ghost-shadow{animation:ghost-shadow 5.6s ease-in-out infinite;transform-origin:405px 446px}
.little-bat{animation:bat-hover 5s ease-in-out infinite;transform-origin:0 0}
.bat-wing{animation:bat-flap 1.3s ease-in-out infinite;transform-origin:0 0}
.bat-wing.right{animation-direction:reverse}
@keyframes ornament-sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes gentle-glow{0%,100%{opacity:.06}50%{opacity:.24}}
@keyframes pennant-breeze{0%,100%{transform:skewX(-4deg)}50%{transform:skewX(4deg)}}
@keyframes star-breathe{0%,100%{transform:scale(.85) rotate(-10deg);opacity:.7}50%{transform:scale(1.05) rotate(10deg);opacity:1}}
@keyframes stitch-glow{0%,100%{opacity:.45}50%{opacity:.85}}
@keyframes paper-lilt{0%,100%{transform:translateY(2px) rotate(-3deg)}50%{transform:translateY(-3px) rotate(3deg)}}
@keyframes camera-lilt{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
@keyframes lens-focus{0%,70%,100%{transform:rotate(0)}35%{transform:rotate(18deg)}}
@keyframes shuttle-idle{0%,100%{transform:translateY(0)}30%{transform:translateY(-2px)}60%{transform:translateY(1px)}}
@keyframes wheel-turn{to{transform:rotate(360deg)}}
@keyframes ballot-hover{0%,100%{transform:translateY(-4px)}50%{transform:translateY(3px)}}
@keyframes plane-drift{0%,100%{transform:translate(-10px,0) rotate(-3deg)}50%{transform:translate(10px,-6px) rotate(2deg)}}
@keyframes envelope-float{0%,100%{transform:translateY(4px) rotate(-3deg)}50%{transform:translateY(-4px) rotate(3deg)}}
@keyframes pumpkin-step{0%,100%{transform:rotate(-1deg) translateY(0)}25%,75%{transform:translateY(-3px)}50%{transform:rotate(1deg) translateY(0)}}
@keyframes drum-tap{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(7deg)}}
@keyframes drummer-nod{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
@keyframes ghost-rise{0%,100%{transform:translateY(5px)}50%{transform:translateY(-6px)}}
@keyframes pennant-wave{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(5deg)}}
@keyframes ghost-shadow{0%,100%{transform:scaleX(1.05);opacity:.3}50%{transform:scaleX(.83);opacity:.17}}
@keyframes bat-hover{0%,100%{transform:translateY(3px) rotate(-3deg)}50%{transform:translateY(-4px) rotate(3deg)}}
@keyframes bat-flap{0%,100%{transform:scaleY(.5)}50%{transform:scaleY(1)}}
@keyframes decoration-glint{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes cocktail-toast{0%,70%,100%{transform:rotate(0)}35%{transform:rotate(7deg)}}
@keyframes knit-rock{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes marquee-chase{0%,100%{opacity:.45}50%{opacity:1;box-shadow:0 0 8px #ffad6444}}
@keyframes stamp-turn{0%,100%{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}
@media(max-width:1050px){#tickets>.section-heading,#photos>.section-heading{padding-right:180px}.camera-illustration{width:170px;top:35px}.good{gap:3%}.good h2{font-size:var(--fs-56,56px)}.good .underline{font-size:var(--fs-12,12px)}}
@media(max-width:760px){
 .section-seam{height:48px}
 .seam-ribbon,.seam-night,.seam-pennants{height:62px}
 .section-seam>svg{width:200%;max-width:none;position:relative;left:-50%}
 .section-seam.seam-night>svg{left:-80%}
 .section-seam.seam-mail>svg{left:-65%}
 #tickets>.section-heading,#photos>.section-heading{padding-right:0}
 .camera-illustration{position:relative;width:145px;right:auto;top:auto;float:none;margin:15px 0 -8px auto}
 .how-grid{gap:35px}
 .how-grid article{grid-template-columns:35px 1fr;gap:8px 13px}
 .how-icon{grid-column:1/-1;grid-row:1;width:116px;height:83px;margin:0 0 8px auto}
 .how-grid article>span{font-size:var(--fs-32,32px)}
 .good{padding-top:30px;padding-bottom:40px;gap:30px}
 .good h2{font-size:clamp(46px,11.7vw,74px)}
 .good-copy>.eyebrow{font-size:var(--fs-8,8px);line-height:1.8}
 .good .cause-grid{gap:21px 16px}
 .good-art{width:100%;max-width:500px;align-self:center}
 .good .underline{font-size:var(--fs-13,13px)}
 .parade-art-caption{font-size:var(--fs-9,9px);margin-top:10px}
 .parade-link{font-size:var(--fs-8,8px);margin-left:6%;margin-right:6%}
 .marquee-lights{gap:5px;top:-17px}
 .marquee-lights i{width:6px;height:6px;flex-basis:6px}
 .title-sponsor{margin-top:45px}
 .toy-strip{padding-top:28px;padding-bottom:28px}
}
@media(prefers-reduced-motion:reduce){.section-seam *, .section-illustration *, .how-icon *, .parade-art *, .contest-icon *, .marquee-lights *{animation:none!important;transition:none!important}}

/* Practical interfaces keep the event palette with restrained, stable controls. */
[hidden]{display:none!important}
.quiet-section *,.quiet-seam *{animation:none!important}
.quiet-section .section-illustration,.quiet-section .how-icon{display:none}
.quiet-section a,.quiet-section button,.quiet-section input,.quiet-section select{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}
.quiet-section a:focus-visible,.quiet-section button:focus-visible,.quiet-section input:focus-visible,.quiet-section select:focus-visible,.attendee-mobile-nav a:focus-visible{outline:3px solid #ae9bdd;outline-offset:4px}
.quiet-section .btn{font-family:'DM Sans',sans-serif;font-size:var(--fs-14,14px);font-weight:700;text-transform:none;letter-spacing:0;border-radius:var(--r-md,8px);box-shadow:none;rotate:0;translate:0}
.quiet-section .btn:hover{translate:0;rotate:0;transform:none;box-shadow:0 3px 12px #19201d15}
#mlcp-passport-intro{grid-template-columns:1fr 1fr;gap:9%;padding-top:72px;padding-bottom:72px}
#mlcp-passport-intro .passport-copy h2{font-family:'DM Sans',sans-serif;font-weight:600;font-size:clamp(36px,4vw,55px);line-height:1.15;letter-spacing:-.045em;text-transform:none;margin:18px 0 24px}
#mlcp-passport-intro .passport-copy h2 em{color:#d8e6b9}
#mlcp-passport-intro .passport-copy .btn{margin-top:27px;min-height:48px;gap:30px}
#mlcp-passport-intro .passport-copy>p:not(.eyebrow){font-size:var(--fs-14,14px);line-height:1.85;max-width:430px}
#mlcp-passport-intro .passport-art{margin:0;padding:0;rotate:0;display:block}
.passport-panel{background:#fffaf0;color:#24382e;border:1px solid #e4e3d4;border-radius:var(--r-lg,12px);padding:25px;box-shadow:0 18px 50px #07130c1a;font-family:'DM Sans',sans-serif;text-align:left;min-width:0}
.passport-panel-top{display:flex;align-items:center;gap:12px;padding:0 0 22px;border-bottom:1px solid #24382e16}
.passport-mark{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;background:#edf0df;border-radius:var(--r-lg,12px);color:#426347}
.passport-mark svg{width:22px;height:22px}
.passport-panel-top>div{min-width:0}
.passport-panel-top p{font-size:var(--fs-17,17px);font-weight:700;line-height:1.25;margin:0;letter-spacing:-.025em}
.passport-panel-top>div>span{display:block;font-size:var(--fs-10,10px);line-height:1.5;color:#717b6d;margin-top:5px}
.passport-date{margin-left:auto;border:1px solid #dcded1;padding:6px 8px;border-radius:var(--r-sm,4px);white-space:nowrap;font-size:var(--fs-8,8px);font-weight:700;letter-spacing:.04em}
.passport-panel-links>a{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid #24382e12;text-decoration:none}
.passport-panel-links>a>svg:first-child{width:22px;height:22px;flex:0 0 22px;color:#567157}
.passport-panel-links>a>svg:last-child{width:16px;height:16px;flex:0 0 16px;margin-left:auto;color:#717b6d}
.passport-panel-links strong{display:block;font-size:var(--fs-13,13px);font-weight:600;line-height:1.5}
.passport-panel-links small{display:block;font-size:var(--fs-10,10px);line-height:1.65;color:#737d6f;margin-top:3px}
.passport-panel-links>a:hover{color:#496e42;background:#eff1e550}
.passport-panel-note{font-size:var(--fs-9,9px);color:#717b6d;line-height:1.8;padding:17px 0 0;margin:0}
.ticket-shop{border:1px solid #b9c1ab;border-radius:var(--r-lg,12px);box-shadow:0 10px 28px #19201d09}
.ticket-shop .quantity{border:1px solid #b5bea8;border-radius:var(--r-sm,4px);overflow:hidden}
.ticket-shop .quantity button:hover:not(:disabled){background:#e8ecd9}
.how-grid article>span{border-top:1px solid #19201d22;padding-top:20px}
#updates input{border-radius:6px;background:#ffffff05}
.faq summary{font-weight:600}
.faq summary>span{transition:rotate .16s ease}
.attendee-mobile-nav{display:none}
@media(max-width:760px){
 #mlcp-passport-intro{display:block;padding-top:45px;padding-bottom:45px}
 #mlcp-passport-intro .passport-copy h2{font-size:var(--fs-40,40px)}
 #mlcp-passport-intro .passport-copy>p:not(.eyebrow){font-size:var(--fs-13,13px)}
 #mlcp-passport-intro .passport-art{margin-top:30px}
 .passport-panel{padding:20px 18px;border-radius:10px;box-shadow:0 8px 24px #07130c0d}
 .passport-panel-top{gap:10px;padding-bottom:17px}
 .passport-panel-top p{font-size:var(--fs-16,16px)}
 .passport-panel-top>div>span{font-size:var(--fs-9,9px)}
 .passport-mark{flex-basis:35px;width:35px;height:35px}
 .passport-date{font-size:var(--fs-7,7px);padding:6px}
 .passport-panel-links>a{gap:11px;padding:16px 0;min-height:70px}
 .passport-panel-links strong{font-size:var(--fs-12,12px)}
 .passport-panel-links small{font-size:var(--fs-9,9px)}
 .passport-panel-links>a>svg:first-child{width:20px;height:20px;flex-basis:20px}
 .passport-panel-note{font-size:var(--fs-8,8px)}
 .ticket-shop{box-shadow:0 8px 22px #19201d09}
 .ticket-shop .btn{font-size:var(--fs-12,12px)}
 .how-grid article>span{grid-row:1/3;grid-column:1;border:0;padding:0}
 .how-grid article h3{grid-column:2;grid-row:1}
 .how-grid article p{grid-column:2;grid-row:2}
 .attendee-mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:8px 4% max(8px,env(safe-area-inset-bottom));min-height:74px;background:#fffaf0;border-top:1px solid #24382e22;box-shadow:0 -4px 20px #19201d08}
 .attendee-mobile-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;font:500 var(--fs-9,9px)/1.3 'DM Sans',sans-serif;color:#64725f;border-radius:var(--r-md,8px);min-height:52px;transition:background-color .16s,color .16s}
 .attendee-mobile-nav a svg{width:21px;height:21px}
 .attendee-mobile-nav a.current{background:#eaf0dd;color:#284435}
 .attendee-mobile-nav a:hover{background:#f0f2e6;color:#24382e}
}
@media(max-width:370px){.passport-panel{padding:17px 14px}.passport-panel-top p{font-size:var(--fs-14,14px)}.passport-panel-links small{font-size:var(--fs-8,8px)}.passport-panel-links strong{font-size:var(--fs-11,11px)}.passport-panel-links>a{gap:9px}}

/* Reserve artwork geometry before fetching it. No jumping ticket or venue controls. */
[data-portrait][data-lazy-art]{aspect-ratio:360/490}
.venue-theatre[data-lazy-art]{contain:layout paint}
.venue-theatre[data-lazy-art]:not([data-art-state=ready]){background:radial-gradient(ellipse at 50% 100%,#43513a,#182723 70%)}
.page-inactive *, .page-inactive *::before, .page-inactive *::after{animation-play-state:paused!important}
.data-saver *, .data-saver *::before, .data-saver *::after{animation:none!important;scroll-behavior:auto!important}
.ticker.out-of-view>div{animation-play-state:paused!important}
/* Use opacity rather than repainting an animated shadow or SVG fill. */
@keyframes marquee-chase{0%,100%{opacity:.45}50%{opacity:1}}
@keyframes karaoke{0%,100%{opacity:.7}50%{opacity:1}}
.map-fallback{font-size:var(--fs-12,12px);line-height:1.65}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important}}

[data-studio-art]{aspect-ratio:620/450}
/* The desktop illustration deliberately overhangs by 2%; reserve that height too. */
#party-gang{position:relative;aspect-ratio:820/652.8}
#party-gang>.party-gang{position:absolute;inset:0 auto auto 0}
@media(max-width:760px){#party-gang{aspect-ratio:820/640}}

/* Study 10: shared spacing, restrained feedback, and a continuous visual rhythm. */
:root{--ease-ui:cubic-bezier(.2,.7,.2,1)}
.btn,.button{transition:background-color .18s var(--ease-ui),color .18s var(--ease-ui),border-color .18s var(--ease-ui),box-shadow .18s var(--ease-ui)}
.btn{border-radius:var(--r-sm,4px);box-shadow:3px 3px 0 var(--ink)}
.btn:hover{translate:0;box-shadow:2px 2px 0 var(--ink)}
.btn:active{translate:0;box-shadow:1px 1px 0 var(--ink)}
.quiet-section .btn span{font-size:var(--fs-20,20px)}
.section-heading h2{text-wrap:balance}
.section-heading>p:not(.eyebrow),.hero-deck{text-wrap:pretty}
.early-lineup-links{border-radius:6px;overflow:hidden}
.early-venue small{letter-spacing:.055em}
.early-venue,.passport-panel-links>a{transition:background-color .18s var(--ease-ui),color .18s var(--ease-ui)}
.ticker>div{gap:0}
.ticker-group{display:flex;align-items:center;flex-shrink:0;gap:36px;padding-right:36px}
.route-layout .venue-chapter{border-width:1px;border-radius:var(--r-lg,12px);box-shadow:4px 4px 0 #d7c7a4;margin-bottom:28px}
.route-layout .venue-chapter.featured{border-top:3px solid var(--lime)}
.route-layout .chapter-copy>p:not(.venue-fullname){line-height:1.8}
.route-layout .venue-theatre,.route-layout .featured .venue-theatre{aspect-ratio:800/670;translate:0;transition:none}
.photo-grid figure:nth-child(odd){rotate:-1deg}
.photo-grid figure:nth-child(even){rotate:1deg}
.photo-grid figure{box-shadow:3px 4px 0 #19201d14}
.contest-grid article{display:flex;flex-direction:column}
.contest-grid article>a{margin-top:auto;align-self:flex-start}
.contest-grid article>p{margin-bottom:22px}
.sponsor-grid .sponsor-item{border-radius:var(--r-sm,4px)}
.faq summary{min-height:56px;align-items:center}
.faq details[open] summary{color:#4b6440}
.order-art{margin-top:24px}
.form-panel,.order-card{border-radius:var(--r-lg,12px)}
.field input:not([type=file]):hover,.field textarea:hover{border-color:#87977a}
.field input:not([type=file]):focus,.field textarea:focus{border-color:#526e42;box-shadow:0 0 0 3px #526e4210}
@media(max-width:760px){
 .ticker-group{gap:25px;padding-right:25px}
 .early-venue small{font-size:var(--fs-8,8px);letter-spacing:.035em}
 .route-layout .venue-chapter{border-radius:var(--r-md,8px);box-shadow:3px 3px 0 #d7c7a4;margin-bottom:22px}
 .photo-grid figure{rotate:0!important}
 .mobile-tickets{padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .order-card>ul{margin:12px 0}
 .order-note{margin-top:12px}
}
@media(hover:none){.btn:hover{translate:0;box-shadow:3px 3px 0 var(--ink)}}
.order-aside{padding-top:0}
@media(hover:none){.early-venue:not(.early-featured):hover{background:transparent;color:var(--paper)}}

/* Artwork gets a real column; decorative overhang must never consume copy space. */
.event-page main{overflow:clip}
.section-seam{scroll-margin-top:180px}
#wristband-sponsor{scroll-margin-top:80px}
.event-page .hero{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);column-gap:clamp(28px,4vw,64px)}
.event-page .hero-copy{min-width:0}
.event-page .hero-art{margin:0;width:100%;max-width:720px;rotate:0}
.event-page .hero-ctas{display:flex;flex-wrap:wrap;gap:16px 24px}
.event-page .hero-ctas>a{max-width:100%}
.event-page .hero-scene .sticker-top{right:2%}
.photos-section>.section-heading{display:grid;grid-template-columns:minmax(0,1fr) clamp(145px,18vw,210px);column-gap:36px}
.photos-section>.section-heading>h2,.photos-section>.section-heading>p{grid-column:1;min-width:0}
.photos-section .camera-illustration{position:relative;grid-column:2;grid-row:1/4;align-self:center;width:100%;top:auto;right:auto;margin:0;rotate:0}
.contests-section .sweaters:before{mask-image:linear-gradient(transparent,#000 130px)}
@media(min-width:761px) and (max-width:900px){
 .event-page .hero{display:flex;flex-direction:column;align-items:stretch}
 .event-page .hero-art{align-self:center;margin-top:40px;max-width:600px}
 .event-page .hero-bottom{position:static;margin-top:30px}
}
@media(max-width:760px){
 .event-page .hero-art{margin-top:40px}
 .photos-section>.section-heading{display:block}
 .photos-section .camera-illustration{width:145px;margin:22px 0 0 auto}
}

/* Sponsor logo slots belong to the scene; their typography stays still and legible. */
.sponsor-placement{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--ink);background:var(--paper);border:1px solid #19201d55;border-radius:var(--r-sm,4px);padding:16px;text-decoration:none;min-width:0;max-width:100%}
.placement-label,.placement-link{font-size:var(--fs-9,9px);font-weight:700;line-height:1.6;letter-spacing:.04em}
.placement-label{white-space:normal;min-width:0;overflow-wrap:anywhere}
.placement-link{white-space:nowrap}
.logo-placeholder{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 17px;border:1px dashed currentColor;border-radius:3px;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:var(--fs-20,20px);line-height:1.3;letter-spacing:.03em;text-align:center;white-space:normal;min-width:0;overflow-wrap:anywhere}
.sponsor-placement:hover .logo-placeholder,.backer-slots>a:hover .logo-placeholder{background:#dfff7355}
.hero-scene{position:relative}
.hero-presenter{position:relative;z-index:2;margin:42px 0 0;box-shadow:3px 3px 0 var(--ink);flex-wrap:wrap}
.hero-presenter .placement-label{max-width:92px}
.hero-presenter .placement-link{color:#4c6142}
.sponsor-strip .wristband-placement{display:flex;flex-wrap:wrap;background:#dfff73;border-radius:var(--r-lg,12px);border-style:dashed;gap:12px;padding:14px 20px;font-size:var(--fs-9,9px)!important;margin:0}
.wristband-placement .placement-label{max-width:80px;flex:0 1 80px}
.wristband-placement .placement-link{display:none}
.wristband-placement .logo-placeholder{border:0;padding:0;font-size:var(--fs-20,20px)}
#tickets .sponsor-strip{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:28px;align-items:center}
.wristband-copy{min-width:0;line-height:1.7}.wristband-copy>b{display:block;font-size:var(--fs-12,12px)}.wristband-copy>p{font-size:var(--fs-11,11px);margin-top:5px}.wristband-copy>a{display:inline-block;white-space:normal;margin-top:12px}
.contest-grid .contest-presenter{display:flex;flex-direction:column;align-self:stretch;margin:0 0 23px;padding:12px;background:#fff1d48a;gap:7px;border-color:#19201d45;color:var(--ink);font-family:inherit;font-size:inherit}
.contest-presenter .logo-placeholder{width:100%;min-height:58px}
.contest-presenter .placement-link{font-size:var(--fs-10,10px)}
.runway-presenter{margin:26px 25px 0;flex-wrap:wrap;background:#e7fba1}
.runway-presenter .placement-label{max-width:135px}
.photo-sponsorship{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;margin-top:45px}
.photo-sponsorship h3,.business-backers h3{font-family:'Barlow Condensed',sans-serif;font-size:var(--fs-36,36px);line-height:1.15;margin:10px 0 14px}
.photo-sponsorship p:not(.eyebrow),.business-backers p:not(.eyebrow){font-size:var(--fs-12,12px);line-height:1.8;max-width:460px}
.photo-presenter{flex-direction:column;padding:22px;border:6px solid var(--paper);outline:1px solid #19201d40;box-shadow:4px 4px 0 #19201d16;background:#e8deca;gap:13px;rotate:1deg}
.photo-presenter .logo-placeholder{background:var(--paper);width:100%;min-height:82px}
.title-sponsor .title-presenter{display:flex;margin:16px auto 24px;max-width:470px;background:var(--paper);position:relative;z-index:1;flex-wrap:wrap;text-decoration:none;grid-column:2;grid-row:2/5;justify-self:stretch;min-height:130px}
.title-sponsor h3{grid-column:1;grid-row:2}.title-sponsor p{grid-column:1;grid-row:3}.title-sponsor>a:last-child{grid-column:1;grid-row:4}
.title-presenter .placement-label{max-width:90px}
.title-presenter .placement-link{display:none}
.business-backers{margin:48px 0 40px;color:var(--ink)}
.backer-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.backer-slots>a{display:block;padding:20px;background:#fffaf0;border:1px solid #19201d30;border-radius:var(--r-md,8px)}
.backer-slots .logo-placeholder{min-height:80px;color:#546048}
.backer-slots>a>span{display:block;margin-top:14px;font-size:var(--fs-11,11px)}
.desktop-dock[hidden]{display:none}
@media(min-width:761px){.event-page .concept-note{display:none}}
@media(max-width:1000px){.sponsor-strip{flex-wrap:wrap}.hero-presenter{margin-top:38px}.hero-presenter .placement-link{display:none}}
@media(max-width:760px){.hero-presenter{margin-top:28px;padding:12px;gap:15px}.hero-presenter .logo-placeholder{font-size:var(--fs-20,20px)}.sponsor-strip .wristband-placement{width:100%;white-space:normal}.runway-presenter{margin:22px 0 0;gap:10px}.runway-presenter .placement-label{max-width:110px;font-size:var(--fs-8,8px)}.photo-sponsorship{grid-template-columns:1fr;gap:22px}.photo-presenter{rotate:0}.backer-slots{grid-template-columns:1fr;gap:12px}.backer-slots>a{display:flex;align-items:center;gap:20px;padding:15px}.backer-slots .logo-placeholder{min-height:65px;font-size:var(--fs-17,17px);flex:1}.backer-slots>a>span{margin:0;width:100px;line-height:1.6}.contest-grid .contest-presenter{flex-direction:row;flex-wrap:wrap}.contest-presenter .logo-placeholder{width:auto;flex:1}.contest-presenter .placement-label{max-width:85px}}
@media(max-width:620px){#tickets .sponsor-strip{grid-template-columns:minmax(0,1fr);gap:20px}}

/* Study 13: an original SVG holiday bus, with a traditional Christmas palette. */
.holiday-opening{--holiday-green:var(--xmas-green,#194b37);--holiday-red:var(--xmas-red,#b9253b);--holiday-cream:var(--xmas-cream,#fff4dc)}
.holiday-opening .utility{background:#e9dec0;color:#254735}
.holiday-opening .header{background:var(--holiday-green);border-bottom:0}
.holiday-opening .header .wordmark-icon{color:#f0c36c}
.holiday-opening .header .btn,.holiday-opening .mobile-tickets .btn{background:var(--holiday-red);color:#fff5df}
.holiday-opening .hero{background:linear-gradient(180deg,#fff6e3 0%,#fff4dc 80%,#f2e7c8 100%);color:var(--holiday-green);padding-top:38px;padding-bottom:26px}
.holiday-opening .hero:before{content:'';top:0;left:0;width:100%;height:7px;rotate:0deg;opacity:1;background:repeating-linear-gradient(125deg,#b9253b 0 18px,#fff4dc 18px 31px,#194b37 31px 49px,#fff4dc 49px 62px)}
.holiday-opening .hero-noise{display:none}
.holiday-opening .hero .event-name{color:var(--holiday-red);letter-spacing:.08em}
.holiday-opening .hero h1{font-size:clamp(64px,7.2vw,114px);color:var(--holiday-green)}
.holiday-opening .hero h1>span{color:var(--holiday-red)}
.holiday-opening .hero-copy>.eyebrow,.holiday-opening .hero-deck,.holiday-opening .hero-prices,.holiday-opening .hero-sponsor{color:#50604b}
.holiday-opening .hero .live-spark{color:var(--holiday-red)}
.holiday-opening .hero-deck strong{color:var(--holiday-green)}
.holiday-opening .hero-facts>span{border-color:#194b3740}
.holiday-opening .hero-ctas>.btn{background:var(--holiday-red);color:#fff8e4;border-color:#842037;box-shadow:3px 3px 0 #842037}
.holiday-opening .hero-ctas>.btn:hover{background:#9e2033}
.holiday-opening .hero-ctas>a,.holiday-opening .hero-sponsor{border-color:#194b3740}
.holiday-opening .hero-prices i{color:var(--holiday-red)}
.holiday-opening .hero-art{max-width:760px;rotate:0deg}
.holiday-opening .hero-scene{isolation:isolate}
.holiday-opening .hero-scene .orbit-type{position:relative;top:auto;right:auto;rotate:0deg;transform:none;text-align:center;font:800 var(--fs-12,12px)/1.5 'DM Sans',sans-serif;letter-spacing:.18em;color:var(--holiday-red);margin:0 0 2px}
.holiday-opening #party-gang{aspect-ratio:800/620}
.holiday-bus{display:block;width:100%;height:auto;overflow:visible}
.mobile-hero-visual{display:none}
.holiday-opening .hero-scene .sticker{display:none}
.bus-scene-caption{display:none}
.holiday-opening .bus-scene-caption{display:block;text-align:center;font:800 clamp(16px,1.7vw,23px)/1.2 'Barlow Condensed',sans-serif;letter-spacing:.04em;color:var(--holiday-green);margin-top:-2px}
.holiday-opening .bus-scene-caption em{font-style:normal;color:var(--holiday-red)}
.holiday-opening .hero-presenter{margin-top:24px;background:#fffaf0;border-color:#c2b68c;box-shadow:2px 3px 0 #ded0aa;color:var(--holiday-green)}
.holiday-opening .hero-presenter .logo-placeholder{border-color:#c6b895;color:var(--holiday-green)}
.holiday-opening .early-lineup{border-color:#194b3733}
.holiday-opening .early-lineup .eyebrow{color:#5c684d}
.holiday-opening .early-lineup-heading>a{border-color:#194b3740}
.holiday-opening .early-lineup-links{border-color:#c8c2a0;background:#fff8e6}
.holiday-opening .early-venue{border-color:#c8c2a0;color:var(--holiday-green)}
.holiday-opening .early-featured{background:var(--holiday-red);color:#fff4dc}
.holiday-opening .early-venue:hover{background:#e5e8ce;color:var(--holiday-green)}
.holiday-opening .early-featured:hover{background:#9e2033;color:#fff4dc}
.holiday-opening .hero-bottom>a{color:var(--holiday-green)}
.holiday-opening .hero-bottom{position:static;grid-column:1/-1;margin-top:22px}
.holiday-opening .quick-facts{background:#f2e7c8;color:var(--holiday-green)}
.holiday-opening .quick-facts span{color:#566349}
.holiday-opening .quick-facts>div{border-color:#194b3733}
/* Shared controls are quiet. All scene movement uses only transform or opacity. */
/* A staggered wave, toast and reply repeats while visible; the bus idles gently. */
.hb-body{animation:hb-idle 4s ease-in-out infinite;transform-origin:410px 465px}
.hb-wave{animation:hb-wave 8s ease-in-out infinite;transform-origin:315px 285px}
.hb-toast{animation:hb-toast 8s ease-in-out infinite;transform-origin:514px 283px}
.hb-nod{animation:hb-nod 8s ease-in-out infinite;transform-origin:632px 270px}
.hb-bow{animation:hb-bow 4s ease-in-out infinite;transform-origin:536px 390px}
.hb-light,.hb-spark{animation:hb-twinkle 9s ease-in-out infinite}
.hb-spark{animation-delay:3s}
.hb-snow{animation:hb-snow 8s ease-in-out infinite}
@keyframes hb-idle{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}
@keyframes hb-wave{0%,8%,38%,100%{transform:rotate(0)}15%,27%{transform:rotate(-11deg)}21%,32%{transform:rotate(5deg)}}
@keyframes hb-toast{0%,26%,69%,100%{transform:rotate(0)}43%,54%{transform:rotate(-12deg)}48%{transform:rotate(-9deg)}}
@keyframes hb-nod{0%,48%,83%,100%{transform:rotate(0)}59%,71%{transform:rotate(5deg)}65%{transform:rotate(-3deg)}}
@keyframes hb-bow{0%,80%,100%{transform:rotate(0)}30%{transform:rotate(-3deg)}55%{transform:rotate(3deg)}}
@keyframes hb-twinkle{0%,76%,100%{opacity:.25}88%{opacity:.8}}
@keyframes hb-snow{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(9px);opacity:.7}}
@media(max-width:900px){
 .holiday-opening .hero-copy{display:flex;flex-direction:column;align-items:stretch}
 .holiday-opening .hero-copy>.eyebrow{font-size:var(--fs-7,7px);line-height:1.5}
 .holiday-opening .hero .event-name{font-size:var(--fs-17,17px);margin-top:10px}
 .holiday-opening .hero h1{font-size:clamp(42px,11vw,64px);line-height:1.03;margin:6px 0 4px}
 /* Crop empty scenery, retaining the SVG's original coordinates and joint pivots. */
 .holiday-opening .mobile-hero-visual{display:block;position:relative;aspect-ratio:720/490;width:100%;max-width:380px;align-self:center;overflow:hidden}
 .holiday-opening .mobile-hero-visual #party-gang{position:absolute;width:111.112%;left:-5.556%;top:-12.245%}
 .holiday-opening .hero-copy .hero-deck{margin:6px 0 0;line-height:1.5}
 .holiday-opening .hero-deck .hero-story{display:none}
 .holiday-opening .hero-facts{margin:12px 0 6px}
 .holiday-opening .hero-facts>b{font-size:var(--fs-32,32px)}
 .holiday-opening .hero-copy .hero-prices{order:1;margin:0 0 12px}
 .holiday-opening .hero-ctas{order:2;gap:12px}
 .holiday-opening .hero-ctas>a:not(.btn) span{margin-left:6px}
 .holiday-opening .hero-ctas>.btn{padding:11px 15px}
 .holiday-opening .hero-copy .hero-sponsor{display:none}
 .holiday-opening .early-lineup{margin-top:24px;padding-top:20px}
 .holiday-opening .early-lineup-heading .eyebrow{display:none}
 .holiday-opening .early-lineup-heading{gap:6px;margin-bottom:12px}
 .holiday-opening .early-lineup-heading h2{margin-top:0}
 .holiday-opening .hero-art{margin-top:20px}
 .holiday-opening .hero-art .hero-scene,.holiday-opening .bus-scene-caption{display:none}
 .holiday-opening .hero-presenter{margin-top:0}
}
@media(max-width:760px){
 .holiday-opening .hero{padding-top:18px}
 /* C14: the 900px block's 12px gap wins on phones; give the two actions room. */
 .holiday-opening .hero-ctas{column-gap:32px}
}
/* C14: under 360px the pair no longer fits one row, so stack it on purpose. */
@media(max-width:359px){.holiday-opening .hero-ctas{flex-direction:column;align-items:flex-start;row-gap:14px}}
@media(hover:none){.holiday-opening .early-venue:not(.early-featured):hover{background:transparent;color:var(--holiday-green)}}
@media(prefers-reduced-motion:reduce){.holiday-bus *{animation:none!important}}

/* One Christmas identity for the public page, Passport and sponsorship journey. */
.holiday-theme{--holiday-green:var(--xmas-green,#194b37);--holiday-red:var(--xmas-red,#b9253b);--holiday-cream:var(--xmas-cream,#fff4dc);--holiday-gold:var(--xmas-gold,#efc568);--holiday-stripe:repeating-linear-gradient(125deg,#b9253b 0 18px,#fff4dc 18px 31px,#194b37 31px 49px,#fff4dc 49px 62px)}
.holiday-theme :focus-visible{outline-color:var(--holiday-red)}
.holiday-theme .quiet-section .btn,.holiday-theme .dock-tickets{background:var(--holiday-red);color:#fff8e4;border-color:#842037}
.holiday-theme .quiet-section h2 em{color:var(--holiday-red)}
.holiday-theme.attendee-page #how h2{text-transform:uppercase}
.holiday-theme footer{background:var(--holiday-green)}
.holiday-theme .quiet-seam [fill="#dfff73"]{fill:var(--holiday-gold)}
.holiday-theme .quiet-seam [fill="#ae9bdd"],.holiday-theme .quiet-seam [fill="#ff644e"]{fill:var(--holiday-red)}
.holiday-theme .quiet-seam [stroke="#ff644e"]{stroke:var(--holiday-red)}
.holiday-theme #mlcp-passport-intro{background:var(--holiday-green)}
.holiday-theme #mlcp-passport-intro .passport-copy h2{font-family:Anton,Impact,sans-serif;font-weight:400;line-height:1.08;letter-spacing:-.025em;text-transform:uppercase}
.holiday-theme #mlcp-passport-intro .passport-copy h2 em{color:var(--holiday-gold)}
.holiday-theme .passport-panel{background:#fffaf0;border-color:#d8caa4;box-shadow:3px 4px 0 #102f2633;border-radius:var(--r-lg,12px)}
.holiday-theme .passport-mark{background:#f6e9c8;color:var(--holiday-red)}
.holiday-theme .passport-panel-links>a>svg:first-child{color:var(--holiday-red)}
.holiday-theme .passport-panel-links>a:hover{background:#f3edda;color:var(--holiday-green)}
.holiday-theme .attendee-mobile-nav{background:#fffaf0;border-color:#d8caa4}
.holiday-theme .attendee-mobile-nav a.current{background:var(--holiday-red);color:#fff4dc}
.holiday-theme .attendee-mobile-nav a:focus-visible{outline-color:var(--holiday-red)}
.holiday-theme.attendee-page .closing h2 span{color:var(--holiday-gold)}
.holiday-theme .header .btn{font-family:Anton,Impact,sans-serif;text-transform:uppercase}
.holiday-theme .site-header{background:var(--holiday-green);padding-left:5.5%;padding-right:5.5%}
.holiday-theme .site-header .wordmark-icon{color:var(--holiday-gold)}
.holiday-theme .site-header nav{gap:26px}
.holiday-theme .button:not(.outline){background:var(--holiday-red);color:#fff4dc;border-color:#842037}
.holiday-theme .button:not(.outline):hover{background:#9e2033}
.holiday-theme .hero-actions .button{font:400 var(--fs-20,20px)/1.4 Anton,Impact,sans-serif;text-transform:uppercase;box-shadow:3px 3px 0 #842037}
.holiday-theme .wave{background:#fff4dc}
.holiday-theme .wave svg path:first-child{fill:#fff4dc}
.holiday-theme .wave svg path:last-child{stroke:#b9253b}
.holiday-theme .form-panel,.holiday-theme .order-card{background:#fffaf0;border-color:#d8caa4}
.holiday-theme .form-panel h1{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(30px,3.4vw,44px);line-height:1.1;letter-spacing:-.025em;text-transform:uppercase}
.holiday-theme .field input:not([type=file]):focus,.holiday-theme .field textarea:focus{border-color:var(--holiday-green);box-shadow:0 0 0 3px #194b3714}
.holiday-theme .field input[type=file]{background:#f8f2e4;border-color:#c8bc9a}
.holiday-theme input[type=checkbox]{accent-color:var(--holiday-red)}
.holiday-theme .selection-bar,.holiday-theme .footer{background:var(--holiday-green)}
@media(max-width:760px){.holiday-theme .site-header{padding:19px 5%;gap:12px}.holiday-theme .site-header .wordmark{font-size:var(--fs-20,20px);gap:9px}.holiday-theme .site-header .wordmark small{letter-spacing:.11em}.holiday-theme .site-header nav{gap:0}.holiday-theme .hero-actions .button{font-size:var(--fs-17,17px)}}
@media(max-width:370px){.holiday-theme .site-header .wordmark{font-size:var(--fs-17,17px)}.holiday-theme .site-header .wordmark-icon{font-size:var(--fs-32,32px)}}
