:root{--ink:#15233b;--ink-2:#2b3c5c;--paper:#f7f2e8;--paper-2:#efe7d6;--line:#ddd2bb;--card:#fffdf8;--copper:#b8602a;--copper-2:#d98a4e;--muted:#5d6677;--radius:14px;--max:1160px;--serif:"Fraunces", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font:17px/1.65 var(--sans);margin:0}img{max-width:100%;display:block}a{color:var(--copper);text-underline-offset:3px}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 .5em;font-weight:600;line-height:1.1}h1{font-size:clamp(2.6rem,6vw,4.6rem)}h2{font-size:clamp(1.8rem,3.6vw,2.6rem)}h3{font-size:1.3rem}p{margin:0 0 1em}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}.eyebrow{font:600 .78rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--copper);margin-bottom:14px}.lead{color:var(--ink-2);font-size:1.2rem}.muted{color:var(--muted)}.section{padding:84px 0}.section.tight{padding:56px 0}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px;display:flex}.section-head h2{margin:0}.btn{font:600 .95rem/1 var(--sans);border:2px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:8px;padding:13px 22px;text-decoration:none;transition:all .15s;display:inline-flex}.btn:hover{background:var(--ink);color:var(--paper)}.btn.solid{background:var(--copper);border-color:var(--copper);color:#fff}.btn.solid:hover{background:var(--ink);border-color:var(--ink)}.btn.light{border-color:var(--paper);color:var(--paper)}.btn.light:hover{background:var(--paper);color:var(--ink)}.ph{background:linear-gradient(135deg, var(--paper-2), var(--line));border-radius:var(--radius);position:relative;overflow:hidden}.ph:before{content:"";background:repeating-linear-gradient(45deg,#0000 0 14px,#15233b0a 14px 15px);position:absolute;inset:0}.ph img{object-fit:cover;width:100%;height:100%;position:relative}.site-header{z-index:20;background:color-mix(in srgb, var(--paper) 94%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;height:72px;display:flex}.brand{font:600 1.45rem/1 var(--serif);color:var(--ink);letter-spacing:-.01em;text-decoration:none}.brand span{color:var(--copper)}.nav{gap:4px;display:flex}.nav a{color:var(--ink);font:500 .93rem/1 var(--sans);border-radius:8px;padding:10px 12px;text-decoration:none}.nav a:hover{background:var(--paper-2)}.menu-btn{font:600 .95rem var(--sans);color:var(--ink);cursor:pointer;background:0 0;border:0;padding:10px;display:none}@media (width<=900px){.menu-btn{display:block}.nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;padding:8px 16px 16px;display:none;position:absolute;top:72px;left:0;right:0}.nav.open{display:flex}.nav a{padding:14px 8px;font-size:1.05rem}}.page-hero{border-bottom:1px solid var(--line);padding:72px 0 40px}.page-hero h1{margin-bottom:.2em}.events{gap:14px;display:grid}.event{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:120px 1fr auto;align-items:center;gap:22px;padding:18px 22px;display:grid}.event .when{text-align:center;border-right:1px solid var(--line);padding-right:20px}.event .mon{font:700 .75rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--copper)}.event .day{font:600 2.1rem/1.05 var(--serif)}.event .range{color:var(--muted);white-space:nowrap;font-size:.74rem}.event .flyer-thumb{border:1px solid var(--line);background:#fff;border-radius:6px;margin-top:12px;transition:transform .15s,box-shadow .15s;display:block;overflow:hidden}.event .flyer-thumb img{object-fit:cover;object-position:top;width:100%;height:150px;display:block}.event .flyer-thumb:hover{transform:translateY(-2px);box-shadow:0 8px 18px #15233b26}.event:has(.flyer-thumb){align-items:start}.event h3{margin:0 0 4px;font-size:1.25rem}.event .meta{color:var(--muted);font-size:.95rem}.event .tag{font:600 .72rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;background:var(--paper-2);color:var(--ink-2);border-radius:6px;margin-right:6px;padding:6px 9px;display:inline-block}.event .tag.warn{color:#8a3b10;background:#f6dccb}.event.cancelled h3{color:var(--muted);text-decoration:line-through}.event .actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.event .actions a{font:600 .85rem/1 var(--sans);border:1.5px solid var(--line);color:var(--ink);white-space:nowrap;border-radius:999px;padding:10px 14px;text-decoration:none}.event .actions a:hover{border-color:var(--copper);color:var(--copper)}@media (width<=640px){.event{grid-template-columns:96px 1fr}.event .flyer-thumb img{height:120px}.event .when{padding-right:14px}.event .actions{grid-column:1/-1;justify-content:start}}.month-label{font:600 1.05rem/1 var(--serif);color:var(--ink-2);margin:36px 0 14px}.month-label:first-child{margin-top:0}.empty{text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);padding:32px}.site-footer{background:var(--ink);color:#cfd6e3;margin-top:40px;padding:64px 0 36px}.site-footer a{color:#fff;text-decoration:none}.foot-grid{grid-template-columns:1.4fr 1fr 1fr;gap:40px;display:grid}.foot-grid h4{font:600 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--copper-2);margin:0 0 16px}.foot-grid ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.foot-brand{font:600 2rem/1 var(--serif);color:#fff;margin-bottom:10px}.foot-bottom{border-top:1px solid #ffffff1f;flex-direction:column;align-items:center;gap:14px;margin-top:48px;padding-top:28px;display:flex}.site-footer .sdt{text-align:center;font:400 13px/1.5 var(--sans);color:#9c9c9c;flex-direction:column;align-items:center;gap:6px;display:flex}.site-footer .sdt:hover{color:#fff}.site-footer .sdt img{width:23px;height:23px}.foot-bottom .copy{color:#7f8899;font-size:.78rem}@media (width<=760px){.foot-grid{grid-template-columns:1fr}}.flyers{flex-wrap:wrap;justify-content:center;gap:32px;max-width:980px;margin:0 auto;display:flex}.flyers>.flyer{width:calc(33.3333% - 21.3333px)}@media (width<=760px){.flyers{gap:20px}.flyers>.flyer{width:calc(50% - 10px)}}@media (width<=420px){.flyers{max-width:320px}.flyers>.flyer{width:100%}}.flyers .empty{width:100%}.flyer{color:var(--ink);text-align:center;justify-items:center;gap:12px;text-decoration:none;display:grid}.flyer-pic{aspect-ratio:8.5/11;background:var(--card);border:1px solid var(--line);width:100%;box-shadow:0 2px 0 var(--line);border-radius:6px;place-items:center;transition:transform .15s,box-shadow .15s;display:grid;position:relative;overflow:hidden}.flyer-pic img{object-fit:cover;object-position:top;width:100%;height:100%;position:absolute;inset:0}.flyer-pdf{font:700 .8rem/1 var(--sans);letter-spacing:.14em;color:var(--copper);border:2px solid var(--copper);border-radius:6px;padding:10px 12px}.flyer:hover .flyer-pic{transform:translateY(-3px)rotate(-.6deg);box-shadow:0 12px 26px #15233b24}.flyer-title{font:600 1.05rem/1.3 var(--serif)}.flyer:hover .flyer-title{color:var(--copper)}.filters{gap:10px;margin-bottom:26px;display:grid}.filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-label{font:700 .74rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);width:56px}.chip{font:600 .88rem/1 var(--sans);border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:999px;padding:9px 14px}.chip span{color:var(--muted);margin-left:2px;font-weight:500}.chip:hover{border-color:var(--copper)}.chip[aria-pressed=true]{background:var(--copper);border-color:var(--copper);color:#fff}.chip[aria-pressed=true] span{color:#fffc}@media (width<=640px){.filter-label{width:100%}}.mini{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 16px 12px}.mini.loading{opacity:.6}.mini-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.mini-head strong{font:600 1.05rem/1 var(--serif)}.mini-head button{border:1px solid var(--line);width:32px;height:32px;color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;font-size:1.1rem}.mini-head button:hover:not(:disabled){border-color:var(--copper);color:var(--copper)}.mini-head button:disabled{opacity:.35;cursor:default}.mini-week,.mini-days{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mini-week span{font:700 .68rem/2 var(--sans);color:var(--muted)}.mini-days button{aspect-ratio:1;font:500 .88rem/1 var(--sans);color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:50%;position:relative}.mini-days button:hover:not(:disabled){background:var(--paper-2)}.mini-days button.past{color:#b9b2a3;cursor:default}.mini-days button.busy{color:var(--ink);font-weight:700}.mini-days button.busy:after{content:"";background:var(--copper);border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;bottom:4px;left:50%}.mini-days button.today{box-shadow:inset 0 0 0 1.5px var(--copper)}.mini-note{color:var(--muted);margin:10px 0 0;font-size:.78rem}.mini-note .dot{background:var(--copper);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-left:4px;display:inline-block}.event{scroll-margin-top:96px}.event.flash{animation:1.6s ease-out flash}@keyframes flash{0%{box-shadow:0 0 0 3px var(--copper)}to{box-shadow:0 0 0 3px #0000}}.prose{max-width:70ch}.prose h2{margin-top:1.4em}.prose img{border-radius:var(--radius);margin:1.2em 0}.prose ul{padding-left:1.2em}.video{aspect-ratio:16/9;border-radius:var(--radius);background:var(--ink);margin:1.5em 0;position:relative;overflow:hidden}.video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}details.fold{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);margin:0 0 14px}details.fold>summary{cursor:pointer;font:600 1.15rem/1.2 var(--serif);justify-content:space-between;padding:18px 22px;list-style:none;display:flex}details.fold>summary:after{content:"+";color:var(--copper);font-size:1.4rem}details.fold[open]>summary:after{content:"–"}details.fold>div{padding:0 22px 22px}details.fold iframe{border:0;width:100%;min-height:520px}.event.reserved{opacity:.8;background:0 0;border-style:dashed}.event.reserved h3{color:var(--muted)}.pager{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:32px;display:flex}.pager[hidden]{display:none}.pager-note{text-align:center;width:100%;margin:0 0 4px;font-size:.92rem}.pager .chip{min-width:42px}.pager .chip[aria-current=page]{background:var(--copper);border-color:var(--copper);color:#fff;cursor:default}.pager .chip:disabled{opacity:.4;cursor:default}.pager-gap{color:var(--muted);padding:0 2px}.pager-word{font-weight:inherit;color:inherit}@media (width<=520px){.pager{gap:5px}.pager .chip{min-width:34px;padding:9px 8px}.pager-word{display:none}}:root{--night:#160810;--wine:#3a0b1f;--wine-2:#561230;--rose:#e11d48;--rose-deep:#be123c;--rose-soft:#fb7185;--blush:#fde6ea;--gold:#d9b27c;--gold-2:#f2d6a8;--ivory:#fbf6f1;--radius:18px;--max:1240px;--ease:cubic-bezier(.2,.8,.2,1)}body{background:var(--ivory);font-size:17.5px}h1,h2,h3{font-family:var(--serif);letter-spacing:-.025em;font-variation-settings:"opsz" 144;font-weight:500}h2{font-size:clamp(2.2rem,4.8vw,3.8rem);line-height:1.02}h1 em,h2 em,blockquote em{color:var(--rose-deep);font-style:italic;font-weight:400}::selection{background:var(--rose);color:#fff}a{color:var(--rose-deep)}a:hover{color:var(--wine)}.skip{z-index:50;background:var(--rose);color:#fff;border-radius:8px;padding:10px 14px;position:absolute;top:8px;left:-9999px}.skip:focus{left:8px}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.kicker{font:800 .74rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--rose-deep);align-items:center;gap:12px;margin:0 0 18px;display:inline-flex}.kicker:before{content:"";background:currentColor;width:34px;height:2px}.kicker.light{color:var(--gold)}.script{font-family:var(--serif);font-style:italic;font-weight:400}.btn{font:700 .95rem/1 var(--sans);letter-spacing:.02em;border-width:1.5px;border-color:color-mix(in srgb, var(--ink) 35%, transparent);isolation:isolate;transition:color .3s, border-color .3s, transform .3s var(--ease), background .3s;border-radius:999px;padding:16px 26px;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;background:var(--ink);transition:transform .45s var(--ease);border-radius:inherit;position:absolute;inset:0;transform:translateY(101%)}.btn:hover{color:#fff;border-color:var(--ink);background:0 0}.btn:hover:before{transform:none}.btn.ink{background:var(--wine);border-color:var(--wine);color:#fff}.btn.ink:before{background:var(--rose)}.btn.ink:hover{border-color:var(--rose)}.btn.rose{background:var(--rose);border-color:var(--rose);color:#fff;box-shadow:0 14px 34px -12px #e11d48b3}.btn.rose:before{background:#fff}.btn.rose:hover{color:var(--wine);border-color:#fff;transform:translateY(-2px)}.btn.glass,.btn.light{color:#fff;backdrop-filter:blur(8px);background:#ffffff14;border-color:#ffffff73}.btn.glass:before,.btn.light:before{background:#fff}.btn.glass:hover,.btn.light:hover{color:var(--wine);border-color:#fff}.btn.ivory{background:var(--ivory);border-color:var(--ivory);color:var(--wine)}.btn.ivory:before{background:var(--night)}.btn.ivory:hover{color:#fff;border-color:var(--night)}.row-cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.row-cta.center{justify-content:center}.site-header{backdrop-filter:blur(14px)saturate(1.3);background:#160810e6;border-bottom:1px solid #ffffff14;transition:background .4s,box-shadow .4s}.is-home .site-header:not(.scrolled){backdrop-filter:none;background:linear-gradient(#1608108c,#0000);border-color:#0000}.site-header.scrolled{box-shadow:0 14px 40px -20px #0009}.site-header .wrap{height:80px}.brand{color:#fff;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand:hover{color:#fff}.brand .mark{color:#fff;flex:none}.brand:hover .mark-dots{animation:3s linear infinite spin}.mark-dots,.mark-ring{transform-origin:50px 50px}.brand-words{line-height:1;display:grid}.brand-words em{font:italic 400 1.45rem/1 var(--serif);letter-spacing:-.01em;color:#fff}.brand-words span{font:800 .66rem/1 var(--sans);letter-spacing:.34em;color:var(--gold);margin-top:5px}.nav{gap:2px}.nav a{color:#ffffffd1;font:600 .9rem/1 var(--sans);border-radius:999px;padding:10px 11px;position:relative}.nav a:after{content:"";background:var(--rose);transform-origin:0;height:2px;transition:transform .35s var(--ease);position:absolute;bottom:4px;left:12px;right:12px;transform:scaleX(0)}.nav a:hover{color:#fff;background:0 0}.nav a:hover:after,.nav a[aria-current=page]:after{transform:none}.nav a[aria-current=page]{color:#fff}.menu-btn{color:#fff;font:700 .95rem/1 var(--sans);align-items:center;gap:10px;display:none}.bars,.bars:before,.bars:after{content:"";background:currentColor;border-radius:2px;width:20px;height:2px;display:block;position:relative}.bars:before{position:absolute;top:-6px}.bars:after{position:absolute;top:6px}@media (width<=1180px){.menu-btn{display:inline-flex}.nav{border-bottom:2px solid var(--rose);background:#160810f7;flex-direction:column;padding:8px 20px 22px;display:none;position:absolute;top:80px;left:0;right:0;box-shadow:0 30px 50px -20px #0009}.nav.open{display:flex}.nav a{padding:15px 12px;font-size:1.1rem}.nav a:after{width:40px;bottom:8px;right:auto}.menu-open .site-header{background:#160810f7!important}}@media (width<=420px){.brand-words em{font-size:1.2rem}.brand-words span{letter-spacing:.28em;font-size:.58rem}.brand .mark{width:38px;height:38px}}.hero{color:#fff;isolation:isolate;background:var(--night);--mx:70%;--my:30%;align-items:end;min-height:100svh;margin-top:-80px;display:grid;position:relative;overflow:hidden}.hero-video{object-fit:cover;z-index:-2;width:100%;height:100%;animation:settle 2.4s var(--ease) both;position:absolute;inset:0;transform:scale(1.06)}@keyframes settle{0%{filter:blur(6px)brightness(.6);transform:scale(1.18)}to{filter:none;transform:scale(1.06)}}.hero-shade{z-index:-1;background:radial-gradient(40% 50% at var(--mx) var(--my), #e11d4838, transparent 70%), linear-gradient(90deg, #160810e0 0%, #1608109e 45%, #16081026 80%), linear-gradient(0deg, #160810e6 0%, transparent 45%);transition:background .2s;position:absolute;inset:0}.hero-inner{width:100%;padding-top:140px;padding-bottom:110px}.hero-kicker{font:700 .78rem/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);align-items:center;gap:12px;margin:0 0 22px;animation:.9s .1s both rise;display:inline-flex}.live-dot{background:var(--rose);border-radius:50%;flex:none;width:9px;height:9px;animation:2s infinite ping;box-shadow:0 0 #e11d48b3}@keyframes ping{70%{box-shadow:0 0 0 12px #e11d4800}to{box-shadow:0 0 #e11d4800}}.hero-title{letter-spacing:-.045em;color:#fff;max-width:9.5em;margin:0 0 .3em;font-size:clamp(3.2rem,9vw,8.4rem);font-weight:400;line-height:.9}.hero-title .w{vertical-align:top;margin:0 .16em -.12em 0;padding:0 .04em .12em;display:inline-block;overflow:hidden}.hero-title .w>*{animation:wordup 1.1s var(--ease) both;display:inline-block}.hero-title .w:nth-child(2)>*{animation-delay:.1s}.hero-title .w:nth-child(3)>*{animation-delay:.2s}.hero-title .w:nth-child(4)>*{animation-delay:.32s}.hero-title .w:nth-child(5)>*{animation-delay:.44s}.hero-title em{color:var(--rose-soft);background:linear-gradient(100deg, var(--rose-soft) 20%, var(--gold-2) 50%, var(--rose-soft) 80%) 0 0 / 250% 100%;-webkit-text-fill-color:transparent;animation:wordup 1.1s .32s var(--ease) both, shimmer 6s 1.5s linear infinite;-webkit-background-clip:text;background-clip:text;font-style:italic}@keyframes wordup{0%{opacity:0;filter:blur(8px);transform:translateY(110%)rotate(6deg)}to{opacity:1;filter:none;transform:none}}@keyframes shimmer{to{background-position:-250% 0}}.hero-lead{color:#ffffffdb;max-width:40ch;margin:0 0 30px;font-size:clamp(1.08rem,1.6vw,1.3rem);animation:1s .7s both rise}.hero-cta{flex-wrap:wrap;gap:14px;animation:1s .85s both rise;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}.next-up{backdrop-filter:blur(14px);background:#16081073;border:1px solid #ffffff2e;border-radius:20px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;max-width:560px;margin-top:34px;padding:12px 18px 12px 12px;animation:1s 1s both rise;display:grid}.next-up-label{font:800 .7rem/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#fff;background:var(--rose);text-align:center;border-radius:14px;width:78px;padding:14px 10px}.next-up .event{box-shadow:none;color:#fff;background:0 0;border:0;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:0}.next-up .event:hover{box-shadow:none;transform:none}.next-up .event .when{border-color:#fff3;padding-right:12px}.next-up .event .mon{color:var(--gold-2)}.next-up .event .day{color:#fff;font-size:2rem}.next-up .event h3{color:#fff;font-size:1.1rem}.next-up .event h3 a{color:#fff}.next-up .event .actions,.next-up .event p.meta,.next-up .event .flyer-thumb,.next-up .event .tag{display:none}.next-up .event div.meta,.next-up .event .meta{color:#ffffffbf;font-size:.88rem;line-height:1.5}.next-up .empty{text-align:left;color:#fffc;background:0 0;border:0;padding:6px}.badge{z-index:2;width:clamp(120px,13vw,180px);animation:1s 1.1s both rise;position:absolute;top:120px;right:clamp(16px,5vw,70px)}.badge-ring{transform-origin:100px 100px;animation:24s linear infinite spin}.badge text{font:800 12.5px var(--sans);fill:#fff;letter-spacing:3.2px}.badge .b-small{font:800 10px var(--sans);fill:#ffffffd9;letter-spacing:3px}.badge .b-big{font:italic 400 34px var(--serif);fill:#fff;letter-spacing:-1px}@keyframes spin{to{transform:rotate(360deg)}}.hero-pause{z-index:3;backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#16081066;border:1px solid #ffffff80;border-radius:50%;width:46px;height:46px;font-size:.8rem;position:absolute;bottom:36px;right:clamp(16px,5vw,70px)}.hero-pause:hover{background:var(--rose);border-color:var(--rose)}.paused .badge-ring{animation-play-state:paused}.scroll-cue{z-index:3;border:1.5px solid #fff9;border-radius:14px;width:26px;height:42px;margin-left:-13px;position:absolute;bottom:26px;left:50%}.scroll-cue span{background:#fff;border-radius:2px;width:4px;height:8px;margin-left:-2px;animation:1.8s infinite cue;position:absolute;top:8px;left:50%}@keyframes cue{0%{opacity:0;transform:translateY(-4px)}40%{opacity:1}to{opacity:0;transform:translateY(14px)}}@media (width<=760px){.hero-inner{padding-top:200px;padding-bottom:90px}.badge{width:104px;top:96px;right:16px}.hero-shade{background:linear-gradient(#16081059 0%,#160810b3 45%,#160810f2 100%)}.scroll-cue{display:none}.hero-pause{bottom:20px}.next-up{grid-template-columns:minmax(0,1fr)}.next-up-label{width:auto}.next-up-label br{display:none}}.marquee{background:var(--rose);color:#fff;z-index:2;position:relative;overflow:hidden}.marquee-track{width:max-content;animation:36s linear infinite marquee;display:flex}.marquee span{white-space:nowrap;align-items:center;display:flex}.marquee b{font:italic 400 clamp(1.6rem, 3.4vw, 2.6rem)/1 var(--serif);letter-spacing:-.01em;padding:18px 0}.marquee i{color:var(--gold-2);margin:0 30px;font-size:1.1rem;font-style:normal}.marquee b:nth-of-type(2n){color:#0000;-webkit-text-stroke:1.2px #fff}@keyframes marquee{to{transform:translate(-50%)}}.reveal{opacity:0;transition:opacity 1s var(--ease) var(--d,0s), transform 1s var(--ease) var(--d,0s);transform:translateY(40px)}.reveal.in{opacity:1;transform:none}.glance{background:var(--ivory);overflow:hidden}.glance-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(40px,7vw,100px);display:grid}.month{background:var(--night);color:#fff;border-radius:28px;padding:26px;position:relative;rotate:-2deg;box-shadow:0 50px 80px -40px #3a0b1fbf}.month:after{content:"";filter:blur(10px);z-index:-1;background:radial-gradient(circle,#e11d4899,#0000 70%);border-radius:50%;width:90px;height:90px;position:absolute;inset:-14px 14px auto auto}.month-head{font:800 .72rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.month-dots{gap:5px;display:flex}.month-dots i{background:#ffffff40;border-radius:50%;width:7px;height:7px}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.month-grid b{font:800 .68rem/1 var(--sans);color:#ffffff73;text-align:center;padding-bottom:6px}.month-grid b:last-of-type{color:var(--rose-soft)}.month-grid .day{aspect-ratio:1;font:600 .9rem/1 var(--sans);color:#fff9;background:#ffffff0d;border-radius:10px;place-items:center;display:grid;position:relative}.in .month-grid .day{animation:pop .5s calc(var(--i) * 22ms) var(--ease) both}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.month-grid .day.hot{background:var(--rose);color:#fff;z-index:2;font-size:1.1rem;font-weight:800;box-shadow:0 0 #e11d48cc}.in .month-grid .day.hot{animation:pop .5s calc(var(--i) * 22ms) var(--ease) both, glow 2.2s 1.4s infinite}@keyframes glow{0%{box-shadow:0 0 #e11d48bf}70%,to{box-shadow:0 0 0 16px #e11d4800}}.month-grid .day.hot em{font:800 .66rem/1 var(--sans);letter-spacing:.1em;white-space:nowrap;background:var(--gold-2);color:var(--wine);opacity:0;border-radius:8px;padding:7px 9px;font-style:normal;position:absolute;bottom:calc(100% + 10px);left:50%;translate:-50%}.month-grid .day.hot em:after{content:"";border:5px solid #0000;border-top-color:var(--gold-2);margin-left:-5px;position:absolute;top:100%;left:50%}.in .month-grid .day.hot em{animation:tip .6s 1.2s var(--ease) both}@keyframes tip{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.month-note{font:italic 400 1.5rem/1.25 var(--serif);margin:22px 0 0}.month-note strong{color:var(--rose-soft);font-weight:500}.month-note span{color:#fff9;font-size:1.05rem}.facts{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0;margin:30px 0 0;display:grid}.facts>div{border-bottom:1px solid var(--line);padding:22px 22px 22px 0}.facts>div:nth-child(odd){border-right:1px solid var(--line)}.facts>div:nth-child(2n){padding-left:22px}.facts dt{font:800 .7rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--rose-deep);margin-bottom:10px}.facts dd{font:500 1.35rem/1.2 var(--serif);color:var(--ink);letter-spacing:-.01em;margin:0}.facts dd small{font:400 .92rem/1.5 var(--sans);color:var(--muted);letter-spacing:0;margin-top:6px;display:block}@media (width<=900px){.glance-grid{grid-template-columns:minmax(0,1fr)}.month{width:100%;max-width:440px;margin:0 auto}}@media (width<=560px){.facts{grid-template-columns:1fr}.facts>div:nth-child(odd){border-right:0}.facts>div:nth-child(2n){padding-left:0}}.promenade{background:var(--night);color:#ffffffd1;isolation:isolate;position:relative;overflow:hidden}.promenade:before{content:"";z-index:-1;background:radial-gradient(45% 60% at 22%,#e11d4847,#0000 70%),radial-gradient(30% 40% at 90% 10%,#d9b27c24,#0000 70%);position:absolute;inset:0}.promenade h2{color:#fff}.promenade h2 em{color:var(--rose-soft)}.promenade .lead{color:#fff}.prom-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,90px);display:grid}.prom-svg{width:100%;max-width:500px;margin:0 auto;display:block;overflow:visible}.prom-square{fill:none;stroke:#ffffff1f;stroke-width:1.5px;stroke-dasharray:4 6}.prom-track{fill:none;stroke:#ffffff1a;stroke-width:1px}.prom-trail{fill:none;stroke:var(--rose);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:120 620;transform-origin:160px 160px;opacity:.9;filter:drop-shadow(0 0 6px #e11d48cc);animation:14s linear infinite spin}.prom-dancers{transform-origin:160px 160px;animation:14s linear infinite spin}.prom-dancers .gent{fill:var(--ivory)}.prom-dancers .lady{fill:var(--rose)}.prom-dancers .hands{fill:none;stroke:var(--gold);stroke-width:2px;stroke-linecap:round}.couple{transform-box:fill-box;transform-origin:50%;animation:.9s ease-in-out infinite alternate bob}@keyframes bob{to{transform:translateY(-3px)}}.prom-word{font:italic 400 34px var(--serif);fill:#fff;letter-spacing:-1px}.prom-sub{font:800 9.5px var(--sans);fill:var(--gold);letter-spacing:3.5px}.counters{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:34px 0;display:grid}.counters>div{border-top:1px solid #ffffff2e;padding-top:16px}.counters strong{font:400 clamp(2.4rem, 4.6vw, 3.6rem)/1 var(--serif);color:#fff;letter-spacing:-.03em;font-variant-numeric:tabular-nums;display:block}.counters strong span{font:inherit;color:inherit}.counters>div>span{color:#fff9;font-size:.85rem;font-weight:600}@media (width<=900px){.prom-grid{grid-template-columns:minmax(0,1fr)}.prom-svg{max-width:360px}}@media (width<=480px){.counters{grid-template-columns:1fr;gap:6px}.counters>div{align-items:baseline;gap:14px;display:flex}}.film{background:var(--ivory);position:relative;overflow:hidden}.film-sticky{padding:90px 0 60px}.film-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;width:100%;margin-bottom:36px;display:flex}.film-head h2{margin:0}.film-nav{align-items:center;gap:10px;display:flex}.film-nav button{border:1.5px solid color-mix(in srgb, var(--ink) 35%, transparent);background:var(--card);width:52px;height:52px;color:var(--wine);cursor:pointer;border-radius:50%;font-size:1.5rem;line-height:1;transition:background .3s,color .3s,border-color .3s}.film-nav button:hover{background:var(--rose);border-color:var(--rose);color:#fff}.film-track{scroll-snap-type:x mandatory;padding:10px 24px 34px;padding-left:max(24px, calc((100vw - var(--max)) / 2 + 24px));scroll-padding-left:max(24px, calc((100vw - var(--max)) / 2 + 24px));scrollbar-width:auto;scrollbar-color:var(--rose) var(--paper-2);gap:24px;display:flex;overflow-x:auto}.film-track::-webkit-scrollbar{height:12px}.film-track::-webkit-scrollbar-track{background:var(--paper-2);margin:0 max(24px, calc((100vw - var(--max)) / 2 + 24px));border-radius:999px}.film-track::-webkit-scrollbar-thumb{background:var(--rose);border:3px solid var(--paper-2);border-radius:999px}.frame{scroll-snap-align:start;color:var(--ink);flex:0 0 min(56vw,760px);text-decoration:none}.frame:nth-child(2n){margin-top:40px}.frame-img{border-radius:var(--radius);aspect-ratio:16/9;background:var(--paper-2);display:block;overflow:hidden;box-shadow:0 30px 50px -36px #3a0b1f99}.frame-img img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease);transform:scale(1.06)}.frame:hover .frame-img img{transform:scale(1)}.frame-cap{font:italic 400 1.35rem/1.2 var(--serif);align-items:baseline;gap:14px;margin-top:16px;display:flex}.frame-cap b{font:800 .75rem/1 var(--sans);letter-spacing:.16em;color:var(--rose-deep);font-style:normal}@media (width<=760px){.frame{flex-basis:84vw}.frame:nth-child(2n){margin-top:0}.film-nav button{width:44px;height:44px}}.upnext{background:var(--paper-2)}.upnext-more{margin:26px 0 0;font-weight:600}.event{border-radius:var(--radius);border:1px solid var(--line);background:var(--card);transition:transform .35s var(--ease), box-shadow .35s, border-color .35s}.event:hover{border-color:color-mix(in srgb, var(--rose) 45%, var(--line));transform:translateY(-3px);box-shadow:0 24px 40px -26px #3a0b1f8c}.event .mon{font:800 .72rem/1 var(--sans);letter-spacing:.2em;color:var(--rose-deep)}.event .day{font-family:var(--serif);letter-spacing:-.04em;color:var(--wine);font-size:2.6rem;font-weight:400}.event h3{font-family:var(--serif);letter-spacing:-.01em;font-weight:500}.event .tag{font-family:var(--sans);letter-spacing:.04em;background:var(--blush);color:var(--rose-deep);font-weight:700}.event .actions a:hover{border-color:var(--rose);color:#fff;background:var(--rose)}.events .empty{background:var(--card)}@media (width<=640px){.event{align-items:start}.event .when{padding-top:4px}}.event>div{min-width:0}.event .tag{overflow-wrap:anywhere;white-space:normal;max-width:100%;line-height:1.3}.learn-band{background:var(--rose-deep);color:#fff;isolation:isolate;position:relative;overflow:hidden}.learn-band:before{content:"";z-index:-1;background:conic-gradient(from 0deg at 50% 50%, var(--rose-deep), var(--wine-2), var(--rose), var(--rose-deep));opacity:.7;animation:30s linear infinite spin;position:absolute;inset:-40%}.learn-band:after{content:"";z-index:-1;background:radial-gradient(70% 90% at 20%,#0000,#3a0b1f8c);position:absolute;inset:0}.learn-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:clamp(30px,5vw,60px);padding-top:110px;padding-bottom:110px;display:grid}.learn-words{font:italic 400 clamp(3rem, 6.4vw, 5.6rem)/.95 var(--serif);letter-spacing:-.04em;display:grid}.learn-words span{color:#0000;-webkit-text-stroke:1.5px #ffffffb3;animation:6s infinite lit}.learn-words span:nth-child(2){animation-delay:2s}.learn-words span:nth-child(3){animation-delay:4s}@keyframes lit{0%,30%{color:#fff;-webkit-text-stroke-color:#fff;transform:translate(14px)}36%,to{color:#0000;transform:none}}.learn-copy h2{color:#fff}.lesson-pill{font:800 .74rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-2);background:#16081059;border:1px solid #fff3;border-radius:999px;flex-wrap:wrap;gap:6px 0;padding:10px 20px;display:inline-flex}.lesson-pill span+span:before{content:"✦";color:var(--rose-soft);margin:0 12px}.learn-copy p{color:#ffffffe6;font-size:1.1rem}.learn-pic{aspect-ratio:3/4;border:6px solid #ffffff26;border-radius:999px 999px 24px 24px;margin:0;overflow:hidden;box-shadow:0 50px 80px -40px #160810e6}.learn-pic img{object-fit:cover;object-position:30% 50%;width:100%;height:100%;transition:transform 2s var(--ease);transform:scale(1.1)}.learn-pic.in img{transform:none}@media (width<=1000px){.learn-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.learn-words{grid-column:1/-1;grid-auto-flow:column;justify-content:start;gap:20px;font-size:clamp(2.2rem,7vw,4rem)}}@media (width<=640px){.learn-grid{grid-template-columns:minmax(0,1fr);padding-top:80px;padding-bottom:80px}.learn-words{grid-auto-flow:row}.learn-pic{max-width:300px}}.honor{background:var(--ivory);overflow:hidden}.honor-lead{max-width:60ch;color:var(--muted);font-size:1.08rem}.timeline{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin:50px 0 0;padding:0;list-style:none;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(90deg, var(--rose), var(--gold));transform-origin:0;height:2px;transition:transform 1.8s var(--ease) .3s;position:absolute;top:11px;left:0;right:0;transform:scaleX(0)}.timeline.in:before{transform:none}.timeline li{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transition-delay:calc(.5s + var(--i) * .22s);padding-top:44px;position:relative;transform:translateY(16px)}.timeline.in li{opacity:1;transform:none}.timeline li:before{content:"";background:var(--ivory);border:2px solid var(--rose);width:20px;height:20px;box-shadow:0 0 0 5px var(--ivory);border-radius:50%;position:absolute;top:2px;left:0}.timeline li:after{content:"";background:var(--rose);border-radius:50%;width:8px;height:8px;position:absolute;top:8px;left:6px}.timeline b{font:400 2.2rem/1 var(--serif);color:var(--wine);letter-spacing:-.03em;display:block}.timeline span{color:var(--ink-2);margin-top:8px;font-weight:600;display:block}@media (width<=900px){.timeline{grid-template-columns:minmax(0,1fr);gap:0;padding-left:40px}.timeline:before{transform-origin:top;background:linear-gradient(var(--rose), var(--gold));width:2px;height:auto;inset:0 auto 0 10px;transform:scaleY(0)}.timeline li{padding:0 0 26px}.timeline li:before{left:-40px}.timeline li:after{left:-34px}.timeline b{font-size:1.8rem}}.extras{background:var(--paper-2)}.extras-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.card-pic{background:var(--card);color:var(--ink);transition:transform .5s var(--ease), box-shadow .5s;border-radius:24px;grid-template-rows:250px auto;text-decoration:none;display:grid;overflow:hidden;box-shadow:0 30px 50px -40px #3a0b1fb3}a.card-pic:hover{color:var(--ink);transform:translateY(-8px);box-shadow:0 40px 60px -36px #3a0b1fb3}.cp-img{display:block;position:relative;overflow:hidden}.cp-img img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease)}.card-pic:hover .cp-img img{transform:scale(1.08)}.cp-play{background:var(--rose);color:#fff;width:64px;height:64px;transition:transform .4s var(--ease);border-radius:50%;place-items:center;margin:auto;padding-left:4px;display:grid;position:absolute;inset:0;box-shadow:0 0 0 10px #e11d484d}.card-pic:hover .cp-play{transform:scale(1.12)}.cp-text{gap:6px;padding:22px 26px 28px;display:grid}.card-pic .kicker{margin:0}.card-pic strong{font:500 1.8rem/1.1 var(--serif);letter-spacing:-.02em}.card-pic em{color:var(--muted);font-style:normal}.card-3d{background:radial-gradient(circle at 50% 60%, var(--wine-2), var(--night));perspective:600px}.card-3d span{background:var(--rose);border-radius:50%;width:22px;height:22px;margin:-11px;animation:6s linear infinite circle;position:absolute;top:50%;left:50%;box-shadow:0 0 16px #e11d48cc}.card-3d span:nth-child(2n){background:var(--ivory);border-radius:5px;box-shadow:0 0 14px #fff6}.card-3d span:nth-child(2){animation-delay:-.75s}.card-3d span:nth-child(3){animation-delay:-1.5s}.card-3d span:nth-child(4){animation-delay:-2.25s}.card-3d span:nth-child(5){animation-delay:-3s}.card-3d span:nth-child(6){animation-delay:-3.75s}.card-3d span:nth-child(7){animation-delay:-4.5s}.card-3d span:nth-child(8){animation-delay:-5.25s}@keyframes circle{0%{transform:rotateX(58deg)rotate(0)translate(78px)rotate(0)}to{transform:rotateX(58deg)rotate(360deg)translate(78px)rotate(-360deg)}}@media (width<=900px){.extras-grid{grid-template-columns:minmax(0,1fr);max-width:520px;margin:0 auto}}.closing{color:#fff;isolation:isolate;text-align:center;padding:clamp(110px,16vw,200px) 0;position:relative;overflow:hidden}.closing-bg{object-fit:cover;z-index:-2;width:100%;height:100%;animation:30s ease-in-out infinite alternate kenburns;position:absolute;inset:0}@keyframes kenburns{0%{transform:scale(1.05)}to{transform:scale(1.22)translate(-2%,1%)}}.closing-shade{z-index:-1;background:radial-gradient(60% 70%,#3a0b1fb8,#160810eb);position:absolute;inset:0}.closing-inner{max-width:900px}.closing .mark{color:#fff;margin:0 auto 26px}.closing .mark-dots{animation:16s linear infinite spin}.closing blockquote{font:400 clamp(2.4rem, 6vw, 5rem)/1.02 var(--serif);letter-spacing:-.035em;margin:0 0 20px}.closing blockquote em{color:var(--rose-soft)}.closing .lead{color:#ffffffd1}.site-footer{background:var(--night);color:#ffffffb3;border-top:0;margin-top:0;padding:0 0 36px;position:relative}.site-footer:before{content:"";background:linear-gradient(90deg, var(--rose), var(--gold), var(--rose));background-size:200% 100%;height:3px;animation:8s linear infinite shimmer;display:block}.foot-sign{text-align:center;padding:70px 20px 40px}.foot-sign .mark{color:#fff;margin:0 auto}.foot-sign .mark-dots{animation:20s linear infinite spin}.foot-big{font:400 clamp(2.4rem, 7vw, 5rem)/1 var(--serif);color:#fff;letter-spacing:-.04em;margin:14px 0 0}.foot-big em{color:var(--rose-soft)}.foot-name{font:italic 400 1.6rem/1.1 var(--serif);color:#fff;display:block}.foot-when{margin-top:14px}.foot-grid h4{font:800 .72rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}.site-footer a{color:#ffffffd1}.site-footer a:hover{color:var(--rose-soft)}.foot-bottom{border-top-color:#ffffff1a}.foot-bottom .copy{color:#ffffff73;text-align:center}.page-hero{background:var(--night);color:#ffffffd9;isolation:isolate;border:0;padding:90px 0 70px;position:relative;overflow:hidden}.ph-glow{z-index:-1;background:radial-gradient(40% 70% at 15% 20%,#e11d4852,#0000 70%),radial-gradient(35% 60% at 85% 90%,#d9b27c29,#0000 70%);animation:14s ease-in-out infinite alternate drift;position:absolute;inset:0}@keyframes drift{to{transform:translate(4%,3%)scale(1.08)}}.page-hero .wrap{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:50px;display:grid;position:relative}.page-hero .script{color:var(--rose-soft);margin-bottom:12px;font-size:clamp(1.4rem,2.6vw,2rem);line-height:1;animation:.9s both rise;display:block}.page-hero h1{color:#fff;letter-spacing:-.045em;animation:wordup 1.1s 80ms var(--ease) both;margin-bottom:.25em;font-size:clamp(3rem,8vw,6.4rem);font-weight:400;line-height:.92}.page-hero .lead{color:#ffffffc7;max-width:56ch;animation:1s .3s both rise}.page-hero .eyebrow{font:800 .74rem/1 var(--sans);color:var(--gold);letter-spacing:.24em}.page-hero p:has(.btn){animation:1s .45s both rise}.page-hero .btn:not(.rose):not(.ink){color:#fff;background:#ffffff14;border-color:#ffffff73}.page-hero .btn:not(.rose):not(.ink):before{background:#fff}.page-hero .btn:not(.rose):not(.ink):hover{color:var(--wine)}.hero-pic{width:min(400px,34vw);animation:rise 1.2s .2s var(--ease) both;margin:0;position:relative}.hp-frame{aspect-ratio:4/5;border:1px solid #ffffff2e;border-radius:200px 200px 22px 22px;display:block;overflow:hidden;box-shadow:0 50px 80px -40px #000000e6}.hp-frame img{object-fit:cover;width:100%;height:100%;animation:24s ease-in-out infinite alternate kenburns}.hero-pic:before{content:"";border:1.5px dashed #e11d4899;border-radius:214px 214px 34px 34px;animation:5s ease-in-out infinite alternate breathe;position:absolute;inset:-14px}@keyframes breathe{to{opacity:.4;inset:-22px}}.hero-pic figcaption{background:var(--rose);color:#fff;font:italic 400 1.2rem/1 var(--serif);border-radius:999px;padding:12px 18px;position:absolute;bottom:30px;left:-26px;rotate:-4deg;box-shadow:0 16px 30px -12px #0009}.ph-line{background:linear-gradient(90deg, transparent, var(--rose), var(--gold), transparent);background-size:200% 100%;height:3px;animation:6s linear infinite shimmer;position:absolute;bottom:0;left:0;right:0}@media (width<=860px){.page-hero .wrap{grid-template-columns:minmax(0,1fr)}.hero-pic{display:none}.page-hero{padding:70px 0 56px}}.after-hero{padding-top:70px}.view-switch{background:var(--paper-2)}.view-switch button{font-weight:700}.view-switch button[aria-selected=true]{background:var(--wine);color:#fff}.cal-title{font-size:clamp(1.8rem,3.6vw,2.6rem)}.chip[aria-pressed=true],.pager .chip[aria-current=page]{background:var(--wine);border-color:var(--wine);color:#fff}.mini-days button.busy:after{background:var(--rose)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.reveal,.timeline li{opacity:1;transform:none}.timeline:before{transform:none}.month-grid .day.hot em{opacity:1}.marquee-track{justify-content:center;width:auto}.marquee span[aria-hidden],.marquee span:nth-child(2){display:none}.marquee span{flex-wrap:wrap;justify-content:center}.learn-words span{color:#fff}}
