@font-face{font-family:Manrope;src:url(manrope-light.ttf) format("truetype");font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Bodoni Moda;src:url(bodoni-0.ttf) format("truetype");font-style:italic;font-weight:500;font-display:swap}
@font-face{font-family:Barlow Condensed;src:url(font-2.ttf) format("truetype");font-weight:800;font-display:swap}
@font-face{font-family:Manrope;src:url(font-3.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url(font-6.ttf) format("truetype");font-weight:700;font-display:swap}
:root{color-scheme:dark;--bg:#080808;--ink:#fafafa;--muted:#c0c0c0;--pink:#e0006b;--pink-soft:color-mix(in srgb,var(--pink) 27%,white);--pink-deep:color-mix(in srgb,var(--pink) 20%,#101010);--pink-fill:color-mix(in srgb,var(--pink) 78%,black);--line:#ffffff26;--display:"Barlow Condensed",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,sans-serif;line-height:1.65}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--pink);outline-offset:5px}
img{display:block;max-width:100%}
.wrap{width:min(90%,1220px);margin-inline:auto}
.preview{position:absolute;z-index:5;left:50%;transform:translateX(-50%);top:8px;font-size:8px;letter-spacing:.21em;color:#dadada;white-space:nowrap}
header{position:fixed;inset:0 0 auto;z-index:10;transition:background .3s}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:24px;transition:min-height .3s}
.nav-scrolled header{background:#111111;border-bottom:1px solid var(--line)}
.nav-scrolled .nav{min-height:61px}
.logo{width:106px;height:auto}
.links{display:flex;align-items:center;gap:clamp(14px,2.2vw,36px)}
.links a{font-size:12px;color:#ffffff}
.links a:hover{color:var(--pink)}
.links a[aria-current]{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:8px}
.menu{display:none}
.opening[open]{position:fixed;inset:0;display:grid;place-items:center;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:24px;border:0;color:var(--ink);background:radial-gradient(ellipse at 50% 59%,var(--pink-deep) 0%,#100a0e 45%,#080808 73%);animation:opening-out .28s ease-in 1.62s both}
.opening::backdrop{background:#080808;animation:opening-out .28s ease-in 1.62s both}
.opening-content{text-align:center;width:min(65vw,350px)}
.opening-content img{width:100%;height:auto;animation:type-in .55s ease-out both}
.opening-beat{display:flex;align-items:center;justify-content:center;gap:6px;height:45px;margin-top:23px;color:var(--pink)}
.opening-beat i{width:4px;height:30px;border-radius:999px;background:currentColor;box-shadow:0 0 12px color-mix(in srgb,var(--pink) 44%,transparent);animation:opening-beat .62s ease-in-out infinite alternate}
.opening-beat i:nth-child(2n){animation-delay:-.35s}
.opening-beat i:nth-child(3n){animation-delay:-.19s}
.opening-beat i:nth-child(4){animation-delay:-.48s}
.opening-skip{position:absolute;right:clamp(14px,4vw,42px);bottom:max(18px,env(safe-area-inset-bottom));background:#141114;color:inherit;cursor:pointer}
.opening-active{overflow:hidden}
.opening-active .hero-art img,.opening-active .hero-role,.opening-active .hero h1,.opening-active .hero-welcome,.opening-active .hero-intro,.opening-active .hero-actions,.opening-active .quick-links a{animation-play-state:paused}
@keyframes opening-beat{from{transform:scaleY(.2);opacity:.55}to{transform:scaleY(1);opacity:1}}
@keyframes opening-out{from{opacity:1}to{opacity:0}}
.hero{position:relative;isolation:isolate;overflow:hidden;background:#0c0b0c}
.hero-art{position:absolute;inset:0 38% 0 0;z-index:-1;overflow:hidden}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center 13%;animation:portrait-in 1.3s cubic-bezier(.18,.64,.25,1) both}
.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,#0c0b0c 100%),linear-gradient(0deg,#0c0b0c,transparent 26%,transparent 82%,#0c0b0ca6)}
.hero-shell{min-height:clamp(620px,calc(100svh - 81px),930px);display:grid;grid-template-columns:52% 48%;align-items:center;padding-block:110px 64px}
.hero-copy{grid-column:2;max-width:100%;padding-left:clamp(12px,3vw,50px)}
.hero-role{margin:0 0 18px;color:var(--pink-soft);font-size:clamp(10px,1vw,13px);font-weight:700;letter-spacing:.15em;text-transform:uppercase;animation:type-in .7s ease-out .16s both}
.hero-role::before{content:"";display:inline-block;width:26px;height:1px;margin-right:12px;vertical-align:middle;background:var(--pink)}
.hero h1{margin:0;animation:type-in .9s cubic-bezier(.17,.75,.25,1) .18s both}
.hero-logo{width:min(100%,460px);height:auto}
.hero-welcome{margin:clamp(20px,2.5vw,35px) 0 10px;color:var(--ink);font:700 clamp(27px,3.3vw,48px)/1.12 Manrope,system-ui,sans-serif;letter-spacing:-.055em;text-wrap:balance}
.hero-intro{max-width:40ch;margin:0;color:#ddd;font-size:clamp(14px,1.25vw,17px);line-height:1.65}
.hero-welcome,.hero-intro,.hero-actions{animation:type-in .72s cubic-bezier(.17,.75,.25,1) .36s both}
.hero-actions{gap:10px;margin-top:clamp(19px,2.2vw,30px)}
.eyebrow{display:block;margin:0 0 16px;color:var(--pink-soft);font-size:10px;font-weight:700;letter-spacing:.19em}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:24px}
.quick-nav{background:#101010;border-block:1px solid var(--line)}
.quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,1.2vw,16px);padding-block:12px}
.quick-links a{display:flex;justify-content:center;text-align:center;gap:clamp(6px,1vw,12px);align-items:center;min-height:54px;padding:10px clamp(12px,2vw,28px);border:1px solid var(--line);border-radius:999px;transition:background .24s,border-color .24s,translate .24s;animation:type-in .65s cubic-bezier(.18,.7,.2,1) .44s both}
.quick-links a:nth-child(2){animation-delay:.54s}
.quick-links a:nth-child(3){animation-delay:.64s}
.quick-links a:is(:hover,:focus-visible){background:var(--pink-deep);border-color:var(--pink);translate:0 -3px}
.quick-links strong{font-size:clamp(14px,2vw,20px)}
.quick-links span{color:var(--pink)}
.quick-links .quick-number{flex:none;font-size:10px;font-weight:700;letter-spacing:.09em}
.btn{display:inline-flex;justify-content:space-between;gap:14px;align-items:center;min-height:44px;padding:10px 20px;border:1px solid #ffffff42;border-radius:999px;font-size:12px;font-weight:700;transition:background .22s,border-color .22s,transform .22s}
.btn:is(:hover,:focus-visible){transform:translateY(-2px);border-color:var(--pink);background:var(--pink-deep)}
.btn span{display:inline-block;transition:transform .22s}
.btn:is(:hover,:focus-visible) span{transform:translate(3px,-2px)}
.btn.pink{background:var(--pink-fill);border-color:var(--pink)}
.btn.pink:hover{background:color-mix(in srgb,var(--pink) 85%,black)}
section:not(.hero){border-bottom:1px solid var(--line)}
section h2{margin:0;font:800 clamp(55px,7vw,104px)/.87 var(--display);letter-spacing:-.015em}
section h2 em{font-style:normal;color:var(--pink)}
h3{margin:12px 0 6px;font-size:22px;line-height:1.2}
p{color:var(--muted);font-size:14px}
.music-section{overflow:hidden;background:radial-gradient(ellipse at 28% 44%,var(--pink-deep),#140d13 55%,#0c0a0c 82%)}
.music-wrap{padding-block:clamp(54px,8vw,108px)}
.music-feature{display:grid;grid-template-columns:minmax(0,1.23fr) minmax(0,1fr);align-items:center;gap:clamp(24px,7vw,98px)}
.release-art.feature-copy{position:relative;isolation:isolate;width:100%;max-width:560px;margin:0;padding:0 21% 0 0}
.release-art img{position:relative;display:block;width:100%;height:auto;border-radius:clamp(13px,2vw,25px);box-shadow:0 18px 44px #0009}
.release-disc{position:absolute;z-index:-1;top:4%;left:24%;width:72%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#0e0b0e 0 2%,var(--pink) 2.5% 13%,#201520 13.5% 15%,transparent 16%),conic-gradient(from 40deg,#131014,var(--pink-deep),#100e10,var(--pink-deep),#131014);box-shadow:inset 0 0 0 1px #ffffff23,0 18px 42px #0008;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.release-disc::after{content:"";position:absolute;inset:17%;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 4px,#ffffff0e 5px 6px);mask-image:radial-gradient(circle,transparent 0 29%,#000 30%)}
.release-art:hover .release-disc{transform:translateX(5%) rotate(18deg)}
.release-copy h2{font-size:clamp(57px,8vw,122px);margin-bottom:16px}
.release-copy h2 em{font:300 .78em/.95 Manrope,system-ui,sans-serif;letter-spacing:-.045em;color:var(--pink)}
.release-copy p{margin:18px 0 0;max-width:34ch}
.release-next{display:flex;align-items:center;gap:clamp(16px,4vw,52px);margin-top:clamp(36px,6vw,80px);padding-top:24px;border-top:1px solid var(--line)}
.release-year{font:800 clamp(38px,6vw,76px)/1 var(--display);color:var(--pink)}
.release-next h3,.release-next p{margin:0}
.release-next p{margin-top:5px}
@media(max-width:640px){.music-feature{grid-template-columns:1fr}.release-art.feature-copy{max-width:420px}.release-copy h2{font-size:clamp(52px,13vw,82px)}}
@media(prefers-reduced-motion:reduce){.release-art:hover .release-disc{transform:none}}
.immersive{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:min(90%,1220px);margin-inline:auto;align-items:center;gap:clamp(32px,7vw,106px);padding-block:clamp(54px,8vw,110px)}
.wide-photo{overflow:hidden;border-radius:clamp(18px,2.5vw,34px);background:#141414}
/* Keep the color photos in the same muted palette while preserving skin tones. */
.wide-photo img{filter:saturate(.72) contrast(1.06)}
.schedule-photo img{filter:saturate(.83) contrast(1.04)}
.wide-photo img{width:100%;height:clamp(400px,47vw,650px);object-fit:cover;object-position:center 23%}
.dance-section .wide-photo img{object-position:center 17%}
.dance-section .wide-photo{grid-column:2;grid-row:1}
.immersive>.wrap{width:100%;margin:0}
.dance-section>.wrap{grid-column:1;grid-row:1}
.feature-copy h3{font-family:"Bodoni Moda",Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(26px,3vw,40px)}
.motion-ready .immersive.visible .wide-photo img,.motion-ready .schedule-photo.visible img{animation:scene-in 1.55s cubic-bezier(.16,.75,.28,1) both}
@keyframes scene-in{from{transform:scale(1.065);opacity:.64}to{transform:scale(1);opacity:1}}
.cursor-glow{display:none}
@media (any-hover:hover) and (any-pointer:fine) and (prefers-reduced-motion:no-preference){
 .cursor-glow{display:block;position:fixed;z-index:12;inset:0 auto auto 0;width:164px;height:164px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--pink) 37%,transparent) 0%,color-mix(in srgb,var(--pink) 17%,transparent) 28%,transparent 69%);pointer-events:none;opacity:0;transition:opacity .2s;transform:translate3d(var(--pointer-x,-200px),var(--pointer-y,-200px),0) translate(-50%,-50%)}
 .cursor-glow.active{opacity:1}
}
.feature-copy{max-width:490px}
.meta,.news-body small,.tag,.badge{font-size:10px;letter-spacing:.11em;color:var(--pink-soft)}
.new-year{margin-top:26px;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:13px}
.new-year strong{color:var(--ink)}
.live,.news-section,.credits{overflow:clip;padding-block:clamp(55px,7vw,105px);background:radial-gradient(ellipse at 82% 35%,var(--pink-deep) 0%,#0d0b0d 55%)}
.credits-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}
.credits-heading h2 em{font:300 .61em/1 Manrope,system-ui,sans-serif;letter-spacing:-.045em;color:var(--pink)}
.credits-heading p{margin:0}
.project-gallery{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.35fr);gap:clamp(24px,4vw,62px);align-items:center}
.project-feature{min-width:0;padding-block:18px}
.project-role{color:var(--pink-soft);margin-bottom:12px}
.project-title{font:800 clamp(36px,4.5vw,64px)/.95 var(--display);margin:0}
.project-description{max-width:38ch;min-height:4.9em}
.project-controls{display:flex;align-items:center;gap:14px;margin-top:18px}
.project-controls[hidden]{display:none}
.project-controls button{min-height:44px;padding-inline:12px;border:1px solid var(--line);border-radius:999px;background:#1b141a;color:var(--ink);font:inherit;font-size:12px;cursor:pointer}
.project-controls button:hover{border-color:var(--pink)}
.project-count{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.12em;color:var(--muted)}
.project-track{--card-height:clamp(290px,36vw,530px);--active-ratio:1114 / 1600;--card-width:min(80%,calc(var(--card-height) * (var(--active-ratio))));position:relative;isolation:isolate;height:var(--card-height);touch-action:pan-y}
.project-card{position:absolute;top:50%;left:0;width:min(80%,calc(var(--card-height) * (var(--ratio))));aspect-ratio:var(--ratio);transform-origin:left center;translate:0 -50%;isolation:isolate;display:grid;align-items:end;margin:0;border-radius:clamp(16px,2.4vw,30px);overflow:hidden;background:#100b10;color:#fff;padding:clamp(14px,2.3vw,30px)}
.project-card[data-preview]{left:calc(var(--card-width) + clamp(12px,2vw,24px));width:min(55%,calc(var(--card-height) * .76 * (var(--ratio))));opacity:.68}
.project-card[hidden]{display:none}
.project-card img,.project-card::after{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.project-card img{object-fit:cover;object-position:center}
.project-card::after{content:"";background:linear-gradient(0deg,#090609 0%,#090609a0 20%,transparent 54%)}
.project-card-label small,.project-card-label strong{display:block}
.project-card-label small{color:var(--pink-soft);font-size:9px;letter-spacing:.13em}
.project-card-label strong{font-size:clamp(17px,2.1vw,25px);line-height:1.15;margin-top:5px}
.credits-details{margin-top:24px;max-width:640px}
.credits-details summary{cursor:pointer;color:var(--muted);font-size:14px}
.credits-list ul{list-style:none;padding:0;margin:12px 0 34px}
.credits-list li{padding:9px 0}
.credits-list li span{display:block;color:var(--muted);font-size:.82em}
.credits-list h3{color:var(--pink-soft)}
.contact{padding-block:clamp(57px,8vw,112px)}
.live{background:#101010}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:37px}
.section-head p{max-width:285px;margin:0}
.livebox{display:grid;grid-template-columns:140px 1fr auto;gap:22px;align-items:center;padding:20px 0;border-block:1px solid var(--line)}
.livebox p{margin:6px 0}
.year{font:800 56px/1 var(--display);color:var(--pink)}
.news-heading{margin-bottom:clamp(22px,4vw,44px)}
.news-heading em{font:italic 500 .65em/1 "Bodoni Moda",Georgia,serif;color:var(--pink)}
.news-announcement{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;gap:clamp(24px,5vw,68px);min-height:clamp(340px,42vw,560px);overflow:hidden;border-radius:clamp(18px,3vw,38px);padding:clamp(20px,5vw,68px);background:radial-gradient(ellipse at 86% 58%,#8a164d,#2e1022 47%,#100d12 77%);box-shadow:inset 0 0 0 1px #ffffff14}
.news-year{position:absolute;z-index:-1;right:-.04em;top:50%;translate:0 -50%;font:800 clamp(150px,39vw,550px)/.8 var(--display);letter-spacing:-.05em;color:color-mix(in srgb,var(--pink) 16%,transparent);pointer-events:none}
.news-badges{display:flex;flex-wrap:wrap;gap:8px}
.news-badges span{border:1px solid #ffffff45;border-radius:999px;padding:6px 11px;font-size:10px;font-weight:700;letter-spacing:.13em}
.news-badges span:first-child{background:var(--pink-fill);border-color:var(--pink-fill)}
.news-bill h3{margin:0;font:800 clamp(57px,11vw,150px)/.8 var(--display);letter-spacing:-.035em}
.news-bill h3 em{font:italic 500 .52em/1 "Bodoni Moda",Georgia,serif;color:var(--pink);white-space:nowrap}
.news-bill p{margin:17px 0 0;color:var(--ink);font-size:clamp(18px,3vw,35px);font-weight:700}
.news-note{margin:0;max-width:51ch;color:#e3cdd8;font-size:12px}
.motion-ready .news-announcement.visible .news-year{animation:news-year-in 1.05s cubic-bezier(.18,.7,.2,1) both}
@keyframes news-year-in{from{opacity:0;transform:translateX(12%)}to{opacity:1;transform:none}}
.immersive.dance-section{border-bottom:0}
.schedule-section{border-top:1px solid var(--line);padding-top:clamp(20px,3vw,48px)}
.schedule-intro{position:relative;isolation:isolate;display:grid;align-items:center;min-height:clamp(360px,36vw,610px)}
.schedule-photo{position:absolute;inset:0;z-index:-1;overflow:hidden}
.schedule-photo img{width:100%;height:100%;object-fit:cover;object-position:center 84%}
.schedule-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--bg) 0%,#080808b0 15%,transparent 43%),linear-gradient(90deg,#080808eb 0%,#080808b3 29%,transparent 57%)}
.schedule-copy{padding-block:32px}
.schedule-intro h2{font-size:clamp(38px,6.25vw,90px)}
.schedule-intro p{max-width:34ch;margin:18px 0 0;color:#ededed}
.schedule-content{position:relative;margin-top:calc(-1 * clamp(66px,8vw,110px));padding-bottom:clamp(55px,7vw,95px)}
.schedule-content>.filters:not(.schedule-weeks){margin-bottom:12px}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.filter{background:#171717;border:1px solid var(--line);color:var(--ink);font:inherit;font-size:12px;min-height:44px;padding:8px 16px;border-radius:999px;cursor:pointer;transition:border-color .2s,background .2s}
.filter:hover{border-color:var(--pink)}
.filter.active{background:var(--pink-fill);border-color:var(--pink)}
.schedule-top,.class{border-bottom:1px solid var(--line);padding:14px 0}
.class{display:grid;grid-template-columns:110px 1fr auto;gap:20px;align-items:center}
.class small,.class p,.class h4{display:block;margin:0}
.class small,.note{font-size:11px;color:var(--muted)}
.contact{background:#101010}
.contact p{margin-block:25px}
.site-footer{border-top:1px solid var(--line);background:radial-gradient(ellipse at 0% 0%,#310f21 0%,transparent 54%),#101010}
.footer-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) auto;align-items:start;gap:clamp(22px,4vw,60px);padding-block:clamp(28px,4.5vw,62px)}
.footer-brand a{display:inline-block}
.footer-brand .logo{width:clamp(110px,12vw,175px);height:auto}
.footer-brand p{margin:12px 0 0;color:var(--muted);font-size:.875rem}
.footer-group .eyebrow{display:block;margin:0 0 10px;color:var(--pink-soft)}
.footer-links,.footer-socials,.footer-meta,.footer-legal{display:flex;flex-wrap:wrap;align-items:center}
.footer-links{gap:0 18px}
.footer-socials{gap:8px}
.footer-links a,.footer-legal a,.footer-legal button{display:inline-flex;align-items:center;min-height:44px}
.footer-links a:hover,.footer-legal :is(a,button):hover{color:var(--pink-soft)}
.footer-meta{justify-content:space-between;gap:4px 22px;border-top:1px solid var(--line);padding-block:10px;color:var(--muted);font-size:.8rem}
.footer-meta p{margin:0;font-size:inherit}
.footer-legal{gap:0 18px}
.footer-legal .privacy-open{font-size:inherit;text-decoration:none}
@media(max-width:720px){
 .footer-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .footer-brand{grid-column:1/-1}
}
@media(max-width:430px){
 .footer-row{grid-template-columns:minmax(0,1fr)}
 .footer-meta{padding-block:12px 16px}
}
.privacy-open{padding:0;border:0;background:none;color:inherit;font:inherit;font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.privacy-banner{position:fixed;z-index:20;right:clamp(12px,3vw,42px);bottom:max(clamp(12px,3vw,42px),env(safe-area-inset-bottom));width:min(440px,calc(100% - 24px));padding:clamp(17px,2.5vw,26px);border:1px solid #ffffff30;border-radius:24px;background:#171417;color:var(--ink);box-shadow:0 12px 45px #0009}
.privacy-banner .eyebrow{margin-bottom:6px;color:var(--pink-soft)}
.privacy-banner h2{margin:0;font:800 34px/1.05 var(--display)}
.privacy-banner p{margin:10px 0 16px}
.privacy-actions{display:flex;flex-wrap:wrap;gap:8px}
.privacy-actions .btn{justify-content:center;flex:1 1 auto}
.privacy-actions button{color:inherit;font-family:inherit;cursor:pointer}
.motion-ready .reveal{opacity:0;translate:0 24px;transition:opacity .65s ease,translate .65s cubic-bezier(.2,.65,.2,1)}
.motion-ready .reveal.visible{opacity:1;translate:0 0}
@keyframes portrait-in{from{opacity:.55;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}
@keyframes type-in{from{opacity:0;translate:0 27px}to{opacity:1;translate:0 0}}
@media(max-width:800px){
 .nav{min-height:72px}.links{gap:14px}.links a{font-size:10px}
}
@media(max-width:760px){
 .menu{display:block;background:#141414;color:var(--ink);border:1px solid var(--line);min-height:44px;padding:8px 14px;border-radius:999px;font:inherit;font-size:11px}
 .links{display:none;position:absolute;inset:100% 0 auto;background:#141414;padding:16px 5%;border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr}
 .links.open{display:grid}.links a{font-size:13px;padding:6px 0}
 .logo{width:88px}
}
@media(max-width:640px){
 .hero-art{inset:0 0 auto;height:clamp(350px,104vw,620px)}
 .hero-art img{object-position:center 14%}
 .hero-art::after{background:linear-gradient(180deg,#0c0b0c9c,transparent 24%,transparent 52%,#0c0b0c 99%)}
 .hero-shell{display:block;min-height:0;padding-block:clamp(250px,79vw,480px) 38px}
 .hero-copy{padding:0}
 .hero-logo{width:min(70%,280px)}
 .hero-role{font-size:10px;letter-spacing:.12em;margin-bottom:12px}
 .quick-links a{gap:5px;min-height:48px;padding-inline:8px}
 .quick-links strong{font-size:clamp(11px,3.2vw,16px)}
 .immersive{grid-template-columns:1fr;gap:28px}
 .wide-photo img{height:auto;max-height:480px}
 .dance-section .wide-photo,.dance-section>.wrap{grid-column:auto;grid-row:auto}
 .section-head{display:block}.section-head p{margin-top:16px}
 .livebox{grid-template-columns:72px 1fr}.livebox .tag{grid-column:2}
 .schedule-intro{display:block;min-height:0}
 .schedule-photo{position:relative;z-index:auto}
 .schedule-photo img{height:auto}
 .schedule-photo::after{background:linear-gradient(0deg,var(--bg),transparent 54%)}
 .schedule-copy{position:relative;margin-top:-24px;padding-block:0 12px}
 .schedule-content{margin-top:0}
 .class{grid-template-columns:90px 1fr;gap:8px 13px}.class .badge{grid-column:2}
 .credits-heading{display:block}
 .project-gallery{grid-template-columns:1fr;gap:12px}
 .project-description{min-height:0}
 .project-track{grid-row:1;--card-height:clamp(220px,74vw,400px)}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}
 .motion-ready .reveal{opacity:1;translate:none}
 .btn:is(:hover,:focus-visible),.quick-links a:is(:hover,:focus-visible),.btn:is(:hover,:focus-visible) span{translate:none;transform:none}
}

.language-switch{display:flex;align-items:center;gap:2px;flex:none;padding:3px;border:1px solid var(--line);border-radius:999px;background:#111d;font-size:11px;font-weight:700}
.language-switch a,.language-switch span{display:grid;place-items:center;min-width:32px;min-height:30px;border-radius:999px}
.language-switch [aria-current]{background:var(--pink-fill);color:#fff}
.language-switch a:hover{background:var(--pink-deep)}
@media(max-width:900px){.nav{gap:12px}.links{gap:12px}}
@media(max-width:760px){.menu{margin-left:auto}}
.tour-status{margin:18px 0 0;color:var(--muted)}
.community-teaser,.community-list{padding-block:clamp(42px,7vw,84px)}
.community-teaser{background:#130e13}
.community-teaser-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.community-teaser p{margin:14px 0 0}
.community-page header{background:#111}
.community-hero{padding-block:clamp(130px,15vw,210px) clamp(58px,9vw,115px);background:radial-gradient(ellipse at 75% 65%,var(--pink-deep),#240d1e 46%,#0e0b10 78%)}
.community-hero h1{margin:0;font:800 clamp(64px,14vw,190px)/.83 var(--display);letter-spacing:-.04em}
.community-hero em{color:var(--pink);font-style:normal}
.community-hero p{margin:20px 0;color:#eee;font-size:clamp(16px,2.3vw,28px)}
.community-list h2{font-size:clamp(44px,7vw,92px)}
.call-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.call-card{border-radius:24px;padding:clamp(19px,3vw,36px);border:1px solid var(--line);background:#1a1219}
.call-card h3{margin:0;font:800 clamp(29px,4vw,53px)/.95 var(--display)}
.call-card .call-meta{color:var(--pink-soft)}
.call-card details{padding-top:12px;border-top:1px solid var(--line)}
.call-card summary{cursor:pointer;font-size:14px;font-weight:700}
@media(max-width:640px){.call-grid{grid-template-columns:1fr}}
.call-form label{display:grid;gap:6px;margin-bottom:14px;font-size:14px;font-weight:700}
.call-form input,.call-form textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#0e0b10;color:var(--ink);font:inherit;font-weight:400}
.call-form textarea{resize:vertical}
.call-form button,.call-review button{font-family:inherit;color:var(--ink);background-color:#201520;cursor:pointer}
.call-form .btn.pink,.call-review .btn.pink{background-color:var(--pink-fill)}
.call-feedback:empty{display:none}
.call-pending article{border-top:1px solid var(--line);margin-top:16px;padding-top:16px;overflow-wrap:anywhere}
.call-pending h3{font-size:24px}

.community-hero{position:relative;isolation:isolate;overflow:hidden;background:#110c11}
.community-hero-art{position:absolute;inset:0 0 0 38%;z-index:-1;background:linear-gradient(90deg,#110c11 0%,#110c1166 35%,transparent 78%),linear-gradient(0deg,#110c11,transparent 35%),url(class-studio.webp) center 65% / cover no-repeat}
.community-hero .wrap{position:relative}
.community-hero .btn{margin:0 6px 8px 0}
.community-hero h1{font-size:clamp(61px,12vw,160px)}
@media(max-width:640px){.community-hero-art{inset:0;background:linear-gradient(90deg,#110c11e8,#110c1160),linear-gradient(0deg,#110c11,transparent 60%),url(class-studio.webp) center / cover no-repeat}.community-hero h1{font-size:clamp(55px,13vw,88px)}}

.mobile-tabs{display:none}
@media(max-width:640px){
  body:has(.mobile-tabs){padding-bottom:calc(66px + env(safe-area-inset-bottom))}
  .mobile-tabs{position:fixed;z-index:11;inset:auto 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:#110e12f5;border-top:1px solid #ffffff25;backdrop-filter:blur(14px)}
  .mobile-tabs a{display:grid;align-content:center;justify-items:center;gap:3px;min-height:53px;border-radius:13px;color:#ded5df;font-size:clamp(10px,3vw,12px);line-height:1.15;text-align:center}
  .mobile-tabs svg{width:22px;height:22px}
  .mobile-tabs a[aria-current]{color:var(--pink-soft);background:var(--pink-deep)}
  .mobile-tabs a:focus-visible{outline-offset:-2px}
  .mobile-tabs a:active{background:var(--pink-deep)}
  body:has(.mobile-tabs) .privacy-banner{bottom:calc(75px + env(safe-area-inset-bottom))}
}

.community-hero{padding-block:clamp(96px,12vw,155px) clamp(20px,4vw,52px)}
.community-hero h1{font-size:clamp(46px,9vw,126px)}
.community-hero p{margin:12px 0}
.community-page #calls{padding-block:clamp(20px,3vw,42px)}
.community-page #calls .section-head{margin-bottom:14px}
.community-page #calls h2{font-size:clamp(30px,5.5vw,70px)}
.call-feed{gap:10px;align-items:start}
.call-feed .call-card{padding:0;border-radius:16px;overflow-wrap:anywhere}
.call-feed .call-disclosure{padding:0;border:0}
.call-disclosure summary{list-style:none;display:flex;align-items:center;gap:12px;padding:12px}
.call-disclosure summary::-webkit-details-marker{display:none}
.call-disclosure summary::after{content:"+";flex:none;margin-inline-start:auto;color:var(--pink-soft);font-size:18px;line-height:1}
.call-disclosure[open] summary::after{content:"−"}
.call-thumb{flex:none;width:clamp(58px,7vw,88px);aspect-ratio:1;object-fit:contain;border-radius:10px;background:#261b25}
.call-feed .call-copy{min-width:0}
.call-feed h3{font-size:clamp(18px,2.2vw,29px);line-height:1.12}
.call-feed .call-meta{margin:4px 0 0;font-size:12px;font-weight:500}
.call-expanded{border-top:1px solid var(--line);padding:12px 16px 16px}
.call-expanded p{margin:0 0 10px;white-space:pre-wrap}
.call-expanded .listing-art{max-width:420px;border-radius:10px}
.listing-art{position:relative;isolation:isolate;margin:0;aspect-ratio:var(--art-ratio,1.5);overflow:hidden;background:#251622}
.listing-art-portrait{--art-ratio:1.15}
.listing-art img{display:block;width:100%;height:100%;object-fit:contain}
.listing-art .listing-art-fill{position:absolute;inset:0;z-index:-1;object-fit:cover;filter:blur(25px) brightness(.48) saturate(.88);transform:scale(1.13)}
.call-copy .eyebrow{display:inline-block;margin-bottom:5px;font-size:10px}
.call-form input[type=file]{font-size:16px}
.call-form input::file-selector-button{border:0;border-radius:999px;padding:8px 12px;margin-inline-end:10px;background:var(--pink-deep);color:var(--ink);cursor:pointer}
.call-form small{color:var(--pink-soft);font-weight:400}
.call-pending .listing-art{max-width:300px;border-radius:14px;margin-top:12px}
@media(max-width:640px){
  .call-disclosure summary{padding:10px;gap:10px}
}

.schedule-weeks{margin-bottom:10px}
.schedule-weeks .filter.active{background:var(--pink-deep);border-color:var(--pink)}
.schedule-content .class{--status:#a9e3ce;--status-bg:#173229;border:0;border-top:1px solid var(--line);padding:8px 12px;background:transparent;gap:10px;grid-template-columns:48px minmax(0,1fr) auto}
.schedule-content :is(.class-cover,.class-teachingCover){--status:#ffce86;--status-bg:#3e2b19}
.schedule-content .class-cancelled{--status:#ffa3a9;--status-bg:#3f2026}
.schedule-content .class-workshop{--status:var(--pink-soft);--status-bg:var(--pink-deep)}
.class-status{justify-self:start;border-radius:100px;padding:5px 10px;background:var(--status-bg);color:var(--status);font-size:12px;font-weight:800;white-space:nowrap}
.class .class-note{margin-top:4px;color:var(--status);font-size:13px}
@media(max-width:640px){
 .schedule-content .class{grid-template-columns:43px minmax(0,1fr) auto;gap:7px;padding:8px}
}

.call-filters{display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:12px}
.call-filters[hidden]{display:none}
.call-filters label{display:grid;gap:4px;min-width:0;flex:0 1 190px;font-size:12px;font-weight:700}
.call-filters select,.call-form select{width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:#1a1219;color:var(--ink);font:inherit;font-size:16px;color-scheme:dark}
.call-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.call-tags span{background:var(--pink-deep);color:var(--pink-soft);border-radius:100px;padding:4px 9px;font-size:12px;overflow-wrap:anywhere}
@media(max-width:640px){.call-filters label{flex:1 1 135px}}

.class-actions{display:grid;justify-items:start;gap:7px}
.class-booking.btn{min-height:40px;padding:8px 12px;font-size:12px}
.class-music-link{margin-top:12px}
.class-music{margin-top:clamp(22px,5vw,64px);padding:clamp(18px,4vw,42px);border:1px solid var(--pink);border-radius:24px;background:linear-gradient(125deg,var(--pink-deep),#161216 75%);display:grid;grid-template-columns:1fr 1fr;gap:20px;scroll-margin-top:110px}
.class-music h3{margin:8px 0;font:800 clamp(24px,4vw,50px)/1.04 var(--display)}
.class-music p{margin:6px 0 0}
.class-music-options{display:grid;gap:8px}
.class-music-options>div{padding:12px 14px;border-radius:12px;background:#0e0a0ed0}
.class-music-options p{margin:3px 0 7px;font-size:14px}
@media(max-width:640px){
 .class-music{grid-template-columns:1fr}
}

.music-shop{box-sizing:border-box;width:min(550px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:auto;border:1px solid var(--pink);border-radius:22px;background:#171017;color:var(--ink);box-shadow:0 28px 90px #000a}
.music-shop::backdrop{background:#080409c9}
.shop-inner{position:relative;padding:clamp(16px,5vw,32px)}
.shop-close{position:absolute;inset:12px 12px auto auto;border:1px solid var(--line);border-radius:50%;background:#291a27;color:var(--ink);font-size:24px;width:44px;height:44px;cursor:pointer}
.music-shop h2{margin:10px 44px 0 0;font:800 clamp(27px,6vw,46px)/1.04 var(--display)}
.music-shop h3{margin:16px 0 4px}
.music-shop :is(h2,h3)[tabindex="-1"]:focus{outline:none}
.music-shop p{margin:4px 0 12px}
.shop-note,.shop-product small,.shop-order small{color:var(--pink-soft);font-size:13px}
.shop-products{min-width:0;display:grid;gap:6px;padding:0;margin:0 0 12px;border:0}
.shop-product{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:#1e151e;cursor:pointer}
.shop-product:has(input:checked){border-color:var(--pink);background:var(--pink-deep)}
.shop-product input{accent-color:var(--pink)}
.shop-product small,.shop-order small{display:block}
.shop-order{padding:12px;border-radius:12px;background:#251824;margin:12px 0}
.shop-order ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.shop-order li+li{padding-top:8px;border-top:1px solid var(--line)}
.music-shop [data-shop-next]:disabled{opacity:.55;cursor:default}
.shop-order p{display:flex;justify-content:space-between;gap:8px;margin:10px 0 0}
.shop-actions{display:flex;flex-wrap:wrap;gap:8px}
.music-shop .btn{font:inherit;font-weight:700;cursor:pointer}
button[data-open-shop],.music-shop button.btn{color:var(--ink)}
.music-shop .btn:not(.pink){background:#241923;color:var(--ink)}
.shop-product-row{min-width:0}
.shop-preview{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:5px 8px;color:var(--pink-soft);font-size:11px}
.shop-preview audio{width:100%;height:34px;min-width:0;color-scheme:dark}
@media(max-width:420px){.shop-preview{grid-template-columns:1fr;gap:3px}}

.real-schedule,.artist-bio{margin-bottom:20px;padding:clamp(16px,3vw,28px);border:1px solid var(--line);border-radius:18px;background:#171217}
.real-schedule h3,.real-schedule p{margin:0 0 10px}
.artist-bio{display:grid;gap:16px}
.artist-bio p{margin:0}
@media(min-width:760px){
 .artist-bio{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(20px,3vw,42px)}
 .artist-bio p+p{border-inline-start:1px solid var(--line);padding-inline-start:clamp(20px,3vw,42px)}
}
.schedule-demo>summary{cursor:pointer;padding:12px 0;font-weight:700}
.schedule-demo[open]>summary{margin-bottom:12px}

.bio-page header{background:#101010}
.bio-hero{position:relative;isolation:isolate;display:grid;align-items:center;min-height:clamp(555px,58vw,780px);overflow:hidden;background:#101010}
.bio-photo{position:absolute;inset:0 0 0 39%;z-index:-1}
.bio-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 16%}
.bio-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101010,transparent 45%),linear-gradient(0deg,#101010a0,transparent 35%)}
.bio-hero-copy{padding-block:112px 52px}
.bio-hero h1{margin:0;text-transform:uppercase;font:800 clamp(86px,15vw,210px)/.76 var(--display);letter-spacing:-.045em}
.bio-hero h1 em{display:block;text-transform:none;color:var(--pink);font:italic 500 .7em/1.04 "Bodoni Moda",Georgia,serif}
.bio-hero p{margin:12px 0 0;font-size:clamp(16px,2vw,23px)}
.bio-index{background:#141114;border-block:1px solid var(--line)}
.bio-index .wrap{display:grid;grid-template-columns:repeat(3,1fr)}
.bio-index a{display:flex;align-items:center;gap:10px;padding:16px 12px;font-size:clamp(12px,1.5vw,16px);font-weight:800}
.bio-index a+a{border-inline-start:1px solid var(--line)}
.bio-index a span:first-child{color:var(--pink);font-size:11px}
.bio-index a:hover{background:var(--pink-deep)}
.bio-story,.bio-credits,.bio-press{padding-block:clamp(34px,6vw,85px);scroll-margin-top:82px}
.bio-story,.bio-press{display:grid;grid-template-columns:1fr 1.45fr;gap:20px 40px}
.bio-text{max-width:63ch}
.bio-text p{margin:0 0 13px;font-size:clamp(16px,1.7vw,20px);line-height:1.65}
.bio-text p:first-child{color:var(--ink);font-weight:700}
.bio-credits{background:#141114;border-block:1px solid var(--line)}
.bio-credits .credits-details{margin-block:18px}
.bio-press{align-items:end;grid-template-columns:1.35fr 1fr}
.bio-press p{max-width:57ch}
@media(prefers-reduced-motion:no-preference){
 .bio-hero-copy>*{animation:type-in .75s ease-out both}
 .bio-hero-copy h1{animation-delay:.12s}
 .bio-hero-copy p{animation-delay:.24s}
}
@media(max-width:640px){
 .bio-hero{min-height:0;display:grid;align-items:end;padding-top:64px}
 .bio-photo{position:relative;grid-area:1/1;inset:auto;aspect-ratio:4/5}
 .bio-photo img{object-position:center 22%}
 .bio-photo::after{background:linear-gradient(0deg,#101010,transparent 68%),linear-gradient(90deg,#101010a0,transparent 60%)}
 .bio-hero-copy{grid-area:1/1;align-self:end;padding-block:0 24px}
 .bio-hero h1{font-size:clamp(68px,20vw,122px)}
 .bio-story,.bio-press{grid-template-columns:1fr}
 .bio-index a{gap:5px;padding:12px 5px}
}

.bio-text p:first-child{font-weight:400}
.bio-text strong{color:var(--ink);font-weight:700}
.bio-credits .bio-cv{max-width:none}
.bio-cv summary{padding:15px 18px;border:1px solid var(--line);border-radius:12px;color:var(--ink);font-weight:800;background:#101010}
.bio-cv summary::marker{color:var(--pink)}
.bio-cv .credits-list{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:18px}
.bio-cv .credits-list ul{margin-bottom:0}
.bio-cv .credits-list li{border-top:1px solid var(--line)}
@media(max-width:640px){.bio-cv .credits-list{grid-template-columns:1fr}}

.bio-hero{min-height:clamp(415px,46vw,610px)}
.bio-hero h1{font-size:clamp(72px,11vw,154px)}
.bio-hero-copy{padding-block:88px 32px}
.bio-story,.bio-credits,.bio-press{padding-block:clamp(28px,4.5vw,56px)}
.bio-story h2,.bio-credits h2,.bio-press h2{font-size:clamp(30px,5vw,60px)}
.bio-text{max-width:66ch}
.bio-text p{font-size:clamp(14px,1.25vw,16px);line-height:1.68}
.bio-press{display:block}
.bio-press-intro{display:flex;align-items:end;justify-content:space-between;gap:12px 24px;flex-wrap:wrap}
.bio-press-intro p{margin-bottom:0}
.bio-press-downloads{margin-top:22px}
.bio-press-downloads h3{margin:0 0 10px;font-size:18px}
.bio-press-docs,.bio-press-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bio-press-docs a,.bio-press-photo{border:1px solid var(--line);border-radius:12px;background:#141114;overflow:hidden}
.bio-press-docs a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;font-size:13px}
.bio-press-docs a span,.bio-press-photo small{color:var(--pink-soft);font-size:10px;white-space:nowrap}
.bio-press-docs a:hover,.bio-press-photo:hover{border-color:var(--pink)}
.bio-press-photo{display:flex;flex-direction:column}
.bio-press-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;background:#0c0a0c}
.bio-press-photo>span{display:flex;flex:1;justify-content:space-between;align-items:center;gap:5px;padding:9px;font-size:12px}
@media(min-width:850px){.bio-press-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){
 .bio-hero{min-height:0}
 .bio-photo{aspect-ratio:5/4}
 .bio-hero-copy{padding-block:0 18px}
 .bio-hero h1{font-size:clamp(54px,15vw,90px)}
 .bio-press-docs{grid-template-columns:1fr}
 .bio-press-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}

.bio-stage{position:relative;isolation:isolate;display:grid;align-items:center;min-height:310px;overflow:hidden;border-block:1px solid var(--line);background:#101010}
.bio-stage-copy{padding:clamp(20px,4vw,48px);max-width:min(56%,600px)}
.bio-stage-copy h2 em{display:block;font:300 .79em/1.08 Manrope,system-ui,sans-serif;letter-spacing:-.045em;color:var(--pink)}
.bio-stage-copy p{max-width:38ch;margin:12px 0 16px;font-size:14px}
.bio-stage-image{position:absolute;z-index:-1;inset:0 0 0 42%;margin:0;overflow:hidden}
.bio-stage-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%}
.bio-stage-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101010,transparent 42%),linear-gradient(0deg,#101010df,transparent 45%)}
.bio-stage-image figcaption{position:absolute;z-index:1;right:14px;bottom:10px;color:#eee;font-size:10px}
@media(max-width:640px){
 .bio-stage{min-height:0}
 .bio-stage-copy{max-width:none;grid-row:1}
 .bio-stage-image{position:relative;inset:auto;aspect-ratio:2.5/1}
 .bio-stage-image::after{background:linear-gradient(0deg,#101010da,transparent 55%)}
}

@media(prefers-reduced-motion:no-preference){
 @keyframes stage-entrance{
   from{opacity:.35;transform:translateY(var(--entrance-distance,20px))}
   to{opacity:1;transform:translateY(0)}
 }
 @keyframes stage-photo-entrance{
   from{opacity:.42;scale:1.055}
   to{opacity:1;scale:1}
 }
 @keyframes stage-dialog-entrance{
   from{opacity:0;transform:translateY(14px) scale(.98)}
   to{opacity:1;transform:none}
 }
 .motion-item.motion-entered{animation:stage-entrance .72s cubic-bezier(.2,.75,.25,1) var(--entrance-delay,0ms) backwards}
 .project-services-grid,.schedule-copy,.bio-credits,.call-feed{--entrance-distance:26px}
 .schedule-content .filters,.call-filters,.footer-row{--entrance-distance:10px}
 .nav .links a[aria-current]{animation:nav-underline-in .28s ease-out}
 @keyframes nav-underline-in{from{text-decoration-color:transparent}to{text-decoration-color:var(--pink)}}
 .motion-item:focus-within{animation:none}
 .bio-photo,.community-hero{overflow:hidden}
 .bio-photo img,.community-hero-art,.bio-stage-image.motion-entered img{animation:stage-photo-entrance 1.05s cubic-bezier(.18,.65,.23,1) both}
 .community-hero .wrap>*{animation:stage-entrance .55s cubic-bezier(.2,.7,.2,1) both}
 .community-hero .wrap h1{animation-delay:80ms}
 .community-hero .wrap p{animation-delay:135ms}
 .community-hero .wrap .btn{animation-delay:190ms}
 .community-hero .wrap .btn:focus-visible{animation:none}
 .music-shop[open],.privacy-banner:not([hidden]){animation:stage-dialog-entrance .28s ease-out both}
 .music-shop [data-shop-step]:not([hidden]),.credits-details[open]>.credits-list,.call-disclosure[open]>.call-expanded{animation:stage-entrance .3s ease-out both}
 #class-list .class{animation:stage-entrance .35s cubic-bezier(.2,.7,.2,1) both}
 #class-list .class:nth-child(2){animation-delay:35ms}
 #class-list .class:nth-child(3){animation-delay:70ms}
 #class-list .class:nth-child(4){animation-delay:105ms}
 @supports (animation-timeline: view()) {
   @media(min-width:761px){
     .wide-photo,.schedule-photo,.bio-stage-image{view-timeline-name:--photo-flow}
     .motion-ready .immersive.visible .wide-photo img,.motion-ready .schedule-photo.visible img,.motion-ready .bio-stage-image.motion-entered img{
       animation:photo-flow linear both;
       animation-timeline:--photo-flow;
       animation-range:entry 0% cover 75%;
     }
     @keyframes photo-flow{from{transform:scale(1.055)}to{transform:scale(1)}}
   }
 }
 .bio-press-photo img,.call-thumb{transition:scale .38s cubic-bezier(.2,.7,.2,1)}
 @media(hover:hover) and (pointer:fine){
   .bio-press-photo:hover img,.call-disclosure summary:hover .call-thumb{scale:1.04}
 }
}

#class-list{display:grid;gap:8px;margin-top:10px}
.schedule-day{min-width:0;border:1px solid var(--line);border-radius:12px;background:#141214}
.schedule-day-title{margin:0;padding:8px 12px;color:var(--pink-soft);font-size:12px}
.schedule-day .class h5{margin:0 0 2px;font-size:14px;line-height:1.22}
.schedule-day .class time{font-size:13px;font-variant-numeric:tabular-nums}
.schedule-day .class-meta{color:var(--muted);font-size:12px;line-height:1.4}
.schedule-day .class-booking{max-width:100%;min-height:36px;padding:6px 9px;font-size:11px;text-align:center}
@media(min-width:1100px){#class-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
@media(max-width:640px){
 .schedule-day .class-booking{max-width:86px;min-height:44px;line-height:1.25}
}

.class-level{display:inline-block;margin-top:4px;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.35;color:var(--level-ink);background:var(--level-bg)}
.class-level-beginner{--level-ink:#b8e8ff;--level-bg:#163446}
.class-level-intermediate{--level-ink:#f4ceff;--level-bg:#472752}
.class-level-all{--level-ink:#eee3d4;--level-bg:#3d3329}

.contact-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.contact-socials a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:700;transition:background .22s,border-color .22s}
.contact-socials a:is(:hover,:focus-visible){border-color:var(--pink);background:var(--pink-deep)}

.social-icon{display:block;width:19px;height:19px;flex:none}
.hero-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;animation:type-in .65s ease-out .47s both}
.opening-active .hero-socials{animation-play-state:paused}
.social-icon-link{display:inline-grid;place-items:center;width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;transition:background .22s,border-color .22s,color .22s}
.social-icon-link:is(:hover,:focus-visible){border-color:var(--pink);background:var(--pink-deep);color:var(--pink-soft)}
.contact-socials a{gap:7px}

.dance-intro h2+p{margin-block-start:clamp(26px,4vw,52px)}
.dance-intro .dance-schedule-link{text-decoration:underline;text-underline-offset:.18em}
.dance-intro .dance-schedule-link:is(:hover,:focus-visible){color:var(--pink-soft)}

.project-services{padding-block:clamp(34px,5vw,75px);border-top:1px solid var(--line)}
.project-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(18px,4vw,54px);margin-bottom:20px}
.project-services-grid article{padding-block:15px;border-top:1px solid var(--line)}
.project-services-grid article:first-child{border-top-color:var(--pink)}
.project-services-grid h3{margin:0 0 5px;font-size:clamp(17px,2vw,23px)}
.project-services-grid p{margin:0;max-width:58ch}
@media(max-width:640px){.project-services-grid{grid-template-columns:1fr}}

.credits-details>summary,.call-review>summary{list-style:none}
.credits-details>summary::-webkit-details-marker,.call-review>summary::-webkit-details-marker{display:none}
.credits-details>summary::before,.call-review>summary::before{content:"+";margin-inline-end:8px;color:var(--pink-soft)}
.credits-details[open]>summary::before,.call-review[open]>summary::before{content:"−"}

.nav > .language-switch{flex:none}
.nav .nav-booking{justify-content:center;min-height:44px;padding-inline:14px;background:var(--pink-fill);border-color:var(--pink);color:#fff}
.nav .nav-booking:is(:hover,:focus-visible){color:#fff;background:color-mix(in srgb,var(--pink) 85%,black)}
.links.open .nav-booking{grid-column:1/-1}

.contact-details{display:grid;gap:8px;margin-top:18px;font-style:normal}
.contact-details a{margin-inline-start:8px;color:var(--ink);text-decoration:underline;text-underline-offset:.18em;overflow-wrap:anywhere}
.contact-details a:is(:hover,:focus-visible){color:var(--pink-soft)}

.release-copy .btn:has(.platform-icon){gap:8px}
.platform-icon-spotify{color:#1ed760}
.platform-icon-apple-music{color:#fa2d48}
.platform-icon-music-links{color:var(--pink-soft)}

.backstage-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:28px}
.backstage-index a{display:grid;gap:6px;padding:clamp(14px,2vw,24px);border:1px solid var(--line);border-radius:18px;background:#151115;transition:background .22s,border-color .22s}
.backstage-index a:is(:hover,:focus-visible){border-color:var(--pink);background:var(--pink-deep)}
.backstage-index strong{font-size:clamp(16px,2vw,22px)}
.backstage-index a>span:last-child{color:var(--muted);font-size:14px}
.backstage-section{border-top:1px solid var(--line)}
@media(max-width:640px){.backstage-index{grid-template-columns:1fr;gap:8px}}

.backstage-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
.backstage-preview-card{display:grid;grid-template-columns:clamp(80px,12vw,144px) minmax(0,1fr);align-items:stretch;overflow:hidden;min-height:112px;border:1px solid var(--line);border-radius:18px;background:#191419;transition:border-color .22s,background .22s}
.backstage-preview-card img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.backstage-preview-copy{display:grid;align-content:center;gap:5px;padding:12px clamp(10px,2vw,20px)}
.backstage-preview-copy strong{font-size:clamp(15px,2vw,19px);line-height:1.25}
.backstage-preview-copy>span:last-child{color:var(--muted);font-size:12px}
.backstage-preview-card:is(:hover,:focus-visible){border-color:var(--pink);background:var(--pink-deep)}
@media(max-width:680px){.backstage-preview-grid{grid-template-columns:1fr;gap:8px}}

.live-updates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}
.live-update{min-width:0;border:1px solid var(--line);border-radius:20px;background:#151115;transition:border-color .22s,background .22s}
.live-update:has(summary:is(:hover,:focus-visible)),.live-update:has(details[open]){border-color:var(--pink);background:#1a1319}
.live-update-disclosure summary{display:block;border-radius:inherit;cursor:pointer;list-style:none}
.live-update-disclosure summary::-webkit-details-marker,.live-updates-more>summary::-webkit-details-marker{display:none}
.live-update-art{display:grid;place-content:center;aspect-ratio:1365/576;overflow:hidden;border-radius:19px 19px 0 0;background:#100d11}
.live-update-art img{display:block;width:100%;height:100%;object-fit:contain}
.live-update-art-date{place-content:stretch;padding:5% 7%;background:radial-gradient(ellipse at 85% 100%,var(--pink-deep),transparent 70%),#110e12}
.live-update-ticket{display:grid;grid-template-columns:minmax(0,1fr) minmax(66px,23%);border:1px solid #ffffff35;border-radius:11px;background:#181219}
.live-update-ticket-main{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:6px;padding:6px 9%;border-left:3px solid var(--pink);border-radius:10px 0 0 10px}
.live-update-ticket-label{color:var(--pink-soft);font-size:clamp(8px,1vw,11px);font-weight:700;letter-spacing:.17em}
.live-update-art-days{display:flex;align-items:center;gap:.13em;color:var(--ink);font:800 clamp(38px,7.7vw,100px)/.85 var(--display);letter-spacing:-.025em}
.live-update-art-days span{color:var(--pink);font-size:.6em}
.live-update-ticket-stub{display:grid;align-content:center;justify-items:center;gap:2px;padding:4px;border-left:1px dashed #ffffff58;color:var(--pink-soft);font-size:clamp(8px,1vw,11px);font-weight:700;text-transform:uppercase}
.live-update-ticket-stub strong{color:var(--ink);font:italic 500 clamp(15px,2.5vw,31px)/1 "Bodoni Moda",Georgia,serif}
.live-update-overview{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:end;padding:14px clamp(14px,2vw,24px)}
.live-update-range{grid-column:1/-1;color:var(--pink-soft);font-size:12px;font-weight:700}
.live-update-heading{display:grid;gap:4px}
.live-update-heading strong{font:800 clamp(21px,3vw,33px)/1.08 var(--display);overflow-wrap:anywhere}
.live-update-toggle{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;white-space:nowrap}
.live-updates-more{margin-top:14px}
.live-updates-more>summary{width:fit-content;cursor:pointer;list-style:none}
.live-updates-more>.live-updates{margin-top:14px}
.live-updates-more:not([open]) .live-updates-less,.live-updates-more[open] .live-updates-more-label{display:none}
.live-update-toggle span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--pink-deep);color:var(--pink-soft);font-size:16px}
.live-update-toggle span::before{content:"+"}
.live-update-disclosure[open] .live-update-toggle span::before{content:"−"}
.live-update-content{padding:12px clamp(14px,2.5vw,28px) 18px;border-top:1px solid var(--line)}
.live-update-content p{margin:0 0 10px}
.live-update-content .btn{margin-top:10px}
.live-update-meta{color:var(--muted);font-size:13px}
.live-update-dates{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 10px;padding:0;list-style:none;font-size:14px}
.live-update-dates a,.live-update-credit a{text-decoration:underline;text-underline-offset:.2em}
.live-update-dates a:is(:hover,:focus-visible){color:var(--pink-soft)}
.live-update-credit{color:var(--muted);font-size:11px}
@media(max-width:680px){.live-updates{grid-template-columns:1fr;gap:10px}}
@media(prefers-reduced-motion:no-preference){
 .live-update-disclosure[open] .live-update-content{animation:stage-entrance .28s ease-out both}
}

.bio-page .bio-hero{min-height:clamp(430px,44vw,620px);background:#100d11}
.bio-page .bio-photo{inset-inline-start:43%}
.bio-page .bio-photo::after{background:linear-gradient(90deg,#100d11,transparent 46%),linear-gradient(0deg,#100d11 0%,transparent 31%)}
.bio-page .bio-hero-copy{padding-block:92px 46px}
.bio-page .bio-hero h1{margin-top:12px}
.bio-page .bio-hero p{font-size:clamp(13px,1.15vw,16px)}
.bio-page .bio-hero-copy > .eyebrow{font-size:10px}
.bio-hero-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.bio-page .bio-index .wrap{gap:8px;padding-block:8px}
.bio-page .bio-index a{justify-content:center;min-width:0;border:1px solid var(--line);border-radius:999px;padding:10px 8px;text-align:center}
.bio-page .bio-index a:is(:hover,:focus-visible){border-color:var(--pink);background:var(--pink-deep)}
.bio-page .bio-story{align-items:start;grid-template-columns:minmax(0,.75fr) minmax(0,1.45fr);gap:clamp(16px,4vw,58px)}
.bio-story-heading h2 em{color:var(--pink);font:300 .88em/1 Manrope,system-ui,sans-serif;letter-spacing:-.045em}
.bio-page .bio-text{max-width:67ch;border-inline-start:1px solid var(--line);padding-inline-start:clamp(18px,3vw,42px)}
.bio-page .bio-text p{font-size:14px;line-height:1.65;margin:0 0 14px}
.bio-page .bio-text p:last-child{margin-bottom:0}
.bio-page .bio-stage{border:1px solid var(--line);border-radius:20px;min-height:270px}
.bio-page .bio-stage-image img{object-position:center 40%}
.bio-credit-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.bio-credit-groups .bio-cv{min-width:0;margin:0}
.bio-credit-groups .bio-cv summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:13px;border-radius:14px;list-style:none}
.bio-credit-groups .bio-cv summary::-webkit-details-marker{display:none}
.bio-credit-groups .bio-cv summary::before{content:none}
.bio-credit-groups .bio-cv summary::after{content:"+";display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--pink-deep);color:var(--pink-soft)}
.bio-credit-groups .bio-cv[open] summary::after{content:"−"}
.bio-credit-groups .bio-cv summary:is(:hover,:focus-visible),.bio-credit-groups .bio-cv[open] summary{border-color:var(--pink)}
.bio-credit-number,.bio-credit-count{font-size:11px;color:var(--pink-soft)}
.bio-credit-groups .bio-cv .credits-list{display:block;padding:0 12px;margin-top:10px;font-size:14px}
.bio-credit-groups .bio-cv .credits-list ul{margin:0}
.bio-page .bio-press-downloads{padding-top:14px;border-top:1px solid var(--line)}
.bio-page .bio-press-downloads h3 span{margin-inline-end:5px;color:var(--pink-soft);font-size:11px}
.bio-page .bio-press-docs a:focus-visible,.bio-page .bio-press-photo:focus-visible{border-color:var(--pink)}
@media(max-width:640px){
 .bio-page .bio-hero{min-height:0}
 .bio-page .bio-photo{inset:auto;aspect-ratio:4/4.5}
 .bio-page .bio-photo::after{background:linear-gradient(0deg,#100d11,transparent 76%),linear-gradient(90deg,#100d1180,transparent 70%)}
 .bio-page .bio-hero-copy{padding-block:0 18px}
 .bio-hero-actions{margin-top:12px}
 .bio-page .bio-index a{gap:5px;font-size:11px}
 .bio-page .bio-story,.bio-credit-groups{grid-template-columns:1fr}
 .bio-page .bio-text{padding-inline-start:12px}
}

.bio-page .bio-hero-logo{display:block;width:clamp(210px,31vw,420px);height:auto}
@media(max-width:640px){.bio-page .bio-hero-logo{width:clamp(174px,49vw,280px)}}

.legal-details a:is(:hover,:focus-visible){color:var(--pink-soft)}
.legal-page header{background:#101010;border-bottom:1px solid var(--line)}
.legal-main{padding-block:clamp(108px,13vw,170px) 55px}
.legal-heading{padding-bottom:22px;border-bottom:1px solid var(--line)}
.legal-heading h1{margin:4px 0 0;font:800 clamp(50px,9vw,104px)/1 var(--display)}
.legal-heading p{color:var(--muted);margin:10px 0 0}
.legal-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.legal-details section{padding:clamp(15px,2.8vw,28px);border:1px solid var(--line);border-radius:16px;background:#151115}
.legal-details h2{font:700 clamp(16px,2.2vw,20px)/1.3 Manrope,system-ui,sans-serif;overflow-wrap:anywhere;margin:0 0 10px;color:var(--pink-soft)}
.legal-details p,.legal-details address,.legal-details ul{margin:0;font-size:14px;font-style:normal}
.legal-details ul{padding:0;list-style:none}
.legal-details a{text-decoration:underline;text-underline-offset:.2em}
@media(max-width:640px){.legal-details{grid-template-columns:1fr}}

.legal-privacy{grid-template-columns:1fr;max-width:78ch}

.press-viewer{width:min(940px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:clamp(12px,2vw,22px);border:1px solid var(--line);border-radius:18px;background:#141114;color:var(--ink)}
.press-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px}
.press-viewer::backdrop{background:#000d}
.press-viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.press-viewer-bar h2{margin:0;font:800 clamp(20px,4vw,32px)/1.1 var(--display)}
.press-viewer-media{display:grid;place-items:center;min-height:0;background:#090809;border-radius:10px}
.press-viewer-media img{display:block;width:100%;height:min(66dvh,720px);max-height:100%;object-fit:contain}
.press-viewer-download{justify-self:center}
body:has(.press-viewer[open]){overflow:hidden}
