:root{--ink:#211a39;--paper:#faf9f6;--purple:#7551c8;--magenta:#bb1cb5;--lavender:#eee9fa;--muted:#716b7b;--line:#ddd8e5;--lime:#dcf695;--display:'Sora',sans-serif;--body:'Manrope',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.7}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #05a3d8;outline-offset:5px}button{color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);line-height:1.1;letter-spacing:-.055em}h1{font-size:clamp(44px,6.8vw,100px);font-weight:500}h2{font-size:clamp(33px,4.2vw,60px);font-weight:500}h3{font-size:25px;font-weight:500}p{color:var(--muted)}.skip-link{position:fixed;top:-100px;left:20px;z-index:200;background:white;padding:12px}.skip-link:focus{top:10px}.header{height:100px;max-width:1600px;margin:auto;padding:0 5%;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20}.brand{display:flex;gap:12px;align-items:center;line-height:1.1;font-family:var(--display);font-weight:700;letter-spacing:.14em;font-size:16px}.brand img{width:56px;height:56px}.brand small{font-size:9px;letter-spacing:.2em}.nav{display:flex;gap:34px;font-size:13px;font-weight:700}.nav a{position:relative;padding:10px 0}.nav a[aria-current=page]:after{content:'';position:absolute;bottom:3px;height:3px;width:18px;border-radius:4px;background:var(--magenta);left:0}.header-actions{display:flex;gap:27px;align-items:center}.languages{display:flex;align-items:center;gap:8px;font-size:11px}.languages button{border:0;background:none;padding:8px 2px;color:#81798d;font-size:12px;font-weight:700}.languages button[aria-pressed=true]{color:var(--ink)}.languages span{opacity:.3}.button{display:inline-flex;gap:38px;align-items:center;justify-content:space-between;background:var(--ink);color:white;padding:17px 25px;border-radius:99px;border:1px solid transparent;font-size:13px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#4c326e;transform:translateY(-2px)}.button span[aria-hidden]{font-size:20px;line-height:1}.button-small{padding:11px 20px;gap:20px}.button.light{background:var(--lime);color:var(--ink)}.button.light:hover{background:#c9ed77}.button.outline{border-color:var(--line);background:transparent;color:var(--ink)}.menu-button{display:none;border:0;background:none;width:40px;height:44px}.menu-button span{display:block;background:var(--ink);width:22px;height:2px;margin:6px}.mobile-nav{position:absolute;top:83px;left:0;right:0;background:var(--paper);padding:25px 7%;box-shadow:0 15px 25px #211a3914}.mobile-nav:not([hidden]){display:grid;gap:15px}.wrap{max-width:1320px;margin:auto;padding:0 5%}.eyebrow{display:flex;gap:11px;align-items:center;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.18em;margin-bottom:24px}.dot{width:7px;height:7px;background:var(--magenta);border-radius:50%;display:inline-block}.hero{margin:0 28px;background:var(--ink);color:white;border-radius:22px;overflow:hidden;position:relative}.hero-inner{max-width:1480px;margin:auto;min-height:660px;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:55px 5% 65px;gap:25px}.hero-copy{position:relative;z-index:2;padding:25px 0}.hero .eyebrow{color:#d9cbee}.hero .dot{background:var(--lime)}.hero h1{font-size:clamp(52px,5.8vw,87px);line-height:1.09;letter-spacing:-.065em}.hero h1 em{font-style:normal;color:#c7acf7}.hero-copy>p{color:#c7bed3;max-width:355px;margin:27px 0;font-size:14px;line-height:1.9}.hero-buttons{display:flex;align-items:center;gap:25px}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px;display:inline-block}.hero .text-link{color:#eee5ff}.hero-media{height:510px;position:relative;margin-left:15px}.hero-media .main-photo{position:absolute;inset:8px 40px 12px 4px;width:calc(100% - 44px);height:490px;object-fit:cover;object-position:50% 55%;border-radius:180px 180px 12px 12px;transform:rotate(4deg)}.hero-media .inset-photo{position:absolute;bottom:-8px;left:-36px;width:170px;height:210px;object-fit:cover;border:7px solid var(--paper);border-radius:7px;transform:rotate(-9deg);box-shadow:0 10px 50px #0003}.photo-tag{position:absolute;right:8px;bottom:65px;background:var(--paper);color:var(--ink);padding:12px 18px;transform:rotate(-5deg);font-family:var(--display);font-size:13px;font-weight:600;box-shadow:0 5px 30px #0001}.sun{position:absolute;right:-8px;top:-13px;color:var(--lime);font-size:90px;line-height:1;z-index:1;font-family:serif}.hero-bottom{max-width:1320px;margin:auto;padding:20px 5%;display:flex;justify-content:space-between;border-top:1px solid #ffffff25;color:#c7bed3;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.hero-bottom span:last-child{display:flex;gap:9px;align-items:center}.hero-bottom .dot{width:5px;height:5px}.ticker{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:29px 7%;font-family:var(--display);font-size:12px;letter-spacing:.08em;border-bottom:1px solid var(--line);white-space:nowrap}.ticker .spark{font-size:24px;color:var(--purple)}.intro{padding:100px 0}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:end}.intro h2{max-width:620px}.intro .body-copy{max-width:395px}.intro .body-copy p{margin-bottom:23px;font-size:14px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px}.section-top h2{max-width:680px}.section-top .eyebrow{margin-bottom:15px}.photo-section{padding:70px 0 85px;background:var(--lavender)}.photo-strip{display:grid;grid-template-columns:1.15fr .85fr 1fr;gap:18px}.photo-button{padding:0;border:0;background:none;display:block;position:relative;overflow:hidden;text-align:left;border-radius:8px}.photo-button img{width:100%;height:340px;object-fit:cover;transition:transform .5s}.photo-button:hover img{transform:scale(1.04)}.photo-button .expand{position:absolute;bottom:15px;right:15px;border-radius:50%;width:36px;height:36px;background:#fff;display:grid;place-items:center;font-size:23px;opacity:0;transition:opacity .2s}.photo-button:hover .expand,.photo-button:focus-visible .expand{opacity:1}.photo-strip .photo-button:nth-child(2){margin-top:45px}.photo-strip .photo-button:nth-child(2) img{height:340px}.photo-note{font-size:10px;text-transform:uppercase;letter-spacing:.14em;margin-top:24px}.events-home{padding:90px 0}.event-preview{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding-top:30px;gap:60px}.event-preview h3{font-size:33px;margin:14px 0}.event-preview p{font-size:14px;max-width:430px;margin-bottom:22px}.pill{display:inline-flex;font-size:9px;text-transform:uppercase;letter-spacing:.13em;padding:6px 12px;border-radius:30px;border:1px solid var(--line);font-weight:800}.next-event{background:#efedf2;border-radius:8px;padding:30px;display:flex;align-items:center;gap:25px}.next-event .symbol{font-size:42px;color:var(--purple)}.next-event h3{font-size:23px;margin:0 0 12px}.next-event p{font-size:13px;margin:0 0 15px}.cta-band{margin:0 28px 35px;padding:65px 7%;border-radius:15px;background:#dcecf0;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-band h2{font-size:clamp(33px,4vw,56px);max-width:700px}.cta-band p{margin-top:16px;max-width:540px;font-size:14px}footer{padding:40px 7% 23px;max-width:1600px;margin:auto}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:35px}.footer-top p{font-size:13px}.social-link{font-size:12px;font-weight:700}.footer-bottom{padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px}.page-head{padding:65px 0 50px;max-width:850px}.page-head p{font-size:15px;max-width:540px;margin-top:25px}.page-head h1 em{font-style:normal;color:var(--purple)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 35px}.filter{border:1px solid var(--line);border-radius:40px;padding:9px 20px;background:transparent;font-size:11px;font-weight:700}.filter[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.gallery-grid{columns:3;column-gap:20px;margin-bottom:45px}.gallery-grid .photo-button{margin-bottom:20px;width:100%;break-inside:avoid}.gallery-grid img{height:auto;width:100%}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;margin-bottom:80px}.gallery-bottom p{font-size:12px}.events-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:40px}.events-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:12px 0;font-size:13px;font-weight:700}.events-tabs button[aria-pressed=true]{border-color:var(--purple)}.event-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:center;background:#f0ecf7;border-radius:15px;padding:38px;margin-bottom:80px}.event-image{width:100%;height:440px;object-fit:cover;object-position:top;border-radius:6px}.event-card h2{font-size:43px;margin:25px 0}.event-card p{font-size:14px;margin-bottom:22px}.event-meta{display:flex;gap:25px;font-size:11px;margin-bottom:20px;color:var(--purple);font-weight:700}.event-tags{font-size:10px;letter-spacing:.06em;text-transform:uppercase;margin:30px 0}.upcoming{background:var(--lavender);padding:65px;border-radius:15px;margin-bottom:80px;max-width:100%}.upcoming h2{margin-bottom:23px}.upcoming p{margin:0 0 25px;max-width:550px}.contact-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;padding:60px 0 80px}.contact-layout h1{font-size:clamp(46px,5.5vw,78px)}.contact-layout h1 em{color:var(--purple);font-style:normal}.contact-layout .lead{margin:25px 0 35px;max-width:470px}.contact-photo{position:relative}.contact-photo>img{width:100%;height:560px;object-fit:cover;border-radius:180px 180px 10px 10px}.contact-photo .photo-tag{bottom:45px;right:-15px}.contact-info{border-top:1px solid var(--line);margin-top:37px;padding-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-info small{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:9px;color:var(--muted);margin-bottom:8px}.contact-info strong{font-size:13px}.faq{padding:65px 0 90px;border-top:1px solid var(--line)}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}.faq h2{font-size:40px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;padding:23px 35px 23px 0;position:relative;font-size:14px;font-weight:700}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:5px;font-size:22px;top:14px;color:var(--purple)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;padding:0 30px 25px 0}.not-found{padding:80px 5%;min-height:50vh}.not-found p{margin:20px 0}dialog{padding:0;border:0;background:#171322;color:white;width:min(1100px,94vw);max-width:94vw;border-radius:12px;max-height:94dvh;box-shadow:0 20px 100px #0006}dialog::backdrop{background:#130e22e8;backdrop-filter:blur(9px)}.lightbox-top{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;font-size:12px}.icon-button{background:transparent;border:1px solid #ffffff40;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;color:white;font-size:25px;flex-shrink:0}.icon-button:hover{background:#ffffff25}.lightbox-stage{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px}.lightbox-stage img{height:min(72dvh,780px);max-width:calc(100% - 120px);object-fit:contain;min-width:0}.lightbox-stage button[hidden]{display:none}#lightbox-caption{text-align:center;font-size:12px;color:#d1c4e1;padding:15px 20px}.fade-in{animation:appear .5s ease both}@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.hero{max-width:1544px;margin:auto}.cta-band{max-width:1544px;margin:0 auto 35px}}@media(max-width:1050px){.nav{gap:20px}.header-actions{gap:17px}.hero-inner{min-height:580px}.hero h1{font-size:60px}.hero-media{height:430px}.hero-media .main-photo{height:410px;inset:10px 15px 10px 0;width:calc(100% - 15px)}.hero-media .inset-photo{width:130px;height:160px;left:-25px}.sun{right:-12px;font-size:68px}.intro-grid{gap:45px}.ticker{font-size:10px}.event-card{gap:35px}.event-card h2{font-size:34px}.event-image{height:420px}.contact-layout{gap:40px}.contact-photo>img{height:540px}.footer-top p{max-width:220px}}@media(max-width:760px){.header{height:84px;padding:0 6%}.brand{font-size:13px;gap:9px}.brand img{width:48px;height:48px}.brand small{font-size:8px}.nav,.header-cta{display:none}.menu-button{display:block}.header-actions{gap:20px}.hero{margin:0 12px;border-radius:15px}.hero-inner{grid-template-columns:1fr;padding:35px 7% 38px;gap:25px}.hero-copy{padding:4px 0}.hero h1{font-size:clamp(48px,10.7vw,77px);max-width:600px}.hero-copy>p{margin:20px 0 25px;max-width:350px}.eyebrow{font-size:9px;margin-bottom:20px}.hero-buttons{gap:22px}.button{font-size:12px;gap:24px;padding:15px 22px}.hero-media{height:385px;width:85%;max-width:380px;justify-self:center;margin:0 0 10px 15px}.hero-media .main-photo{height:365px;inset:5px 0 0 0;width:100%;border-radius:140px 140px 10px 10px;object-position:center 65%}.hero-media .inset-photo{width:125px;height:155px;left:-22px;bottom:0}.photo-tag{font-size:11px;right:-17px;bottom:40px;padding:10px 13px}.sun{right:-20px;top:0}.hero-bottom{padding:18px 7%;font-size:8px}.hero-bottom span:last-child{display:none}.ticker{padding:20px 6%;gap:10px;font-size:8px;white-space:normal}.ticker .spark{font-size:19px}.ticker span:last-child{display:none}.wrap{padding:0 7%}.intro{padding:60px 0}.intro-grid{grid-template-columns:1fr;gap:25px}.intro .body-copy{max-width:100%}.intro h2{font-size:38px}.section-top{align-items:start;flex-direction:column;gap:20px}.section-top h2{font-size:37px}.photo-section{padding:50px 0}.photo-strip{grid-template-columns:1fr 1fr;gap:12px}.photo-strip img{height:280px}.photo-strip .photo-button:nth-child(2){margin-top:30px}.photo-strip .photo-button:nth-child(2) img{height:280px}.photo-strip .photo-button:nth-child(3){display:none}.photo-note{font-size:9px}.events-home{padding:55px 0}.event-preview{grid-template-columns:1fr;gap:30px;padding-top:25px}.event-preview h3{font-size:29px}.next-event{padding:25px;gap:20px}.cta-band{margin:0 12px 20px;padding:40px 7%;flex-direction:column;align-items:start}.cta-band h2{font-size:38px}.cta-band .button{margin-top:5px}footer{padding:30px 7% 25px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:20px}.footer-top p{grid-row:2;grid-column:1/-1;max-width:100%}.footer-bottom{flex-direction:column;gap:10px}.page-head{padding:45px 0 35px}.page-head h1{font-size:54px}.page-head p{font-size:14px}.filters{gap:7px;margin-bottom:25px}.filter{padding:8px 13px;font-size:10px}.gallery-grid{columns:2;column-gap:12px}.gallery-grid .photo-button{margin-bottom:12px}.gallery-bottom{flex-direction:column;gap:20px;align-items:start;margin-bottom:50px}.event-card{grid-template-columns:1fr;padding:22px;gap:25px;margin-bottom:50px}.event-image{height:350px;object-fit:contain;background:#e7e0f1}.event-card h2{font-size:33px}.event-card .pill{margin-top:0}.event-tags{margin:20px 0}.event-meta{gap:15px;flex-wrap:wrap}.upcoming{padding:30px;margin-bottom:50px}.upcoming h2{font-size:33px}.contact-layout{grid-template-columns:1fr;gap:45px;padding:40px 0 55px}.contact-layout h1{font-size:57px}.contact-info{gap:14px}.contact-info strong{font-size:11px}.contact-photo{max-width:440px;width:90%;justify-self:center}.contact-photo>img{height:450px}.faq{padding:45px 0 55px}.faq-grid{grid-template-columns:1fr;gap:25px}.faq h2{font-size:36px}.lightbox-stage{gap:6px;padding:0 8px}.lightbox-stage .icon-button{width:34px;height:34px;font-size:20px}.lightbox-stage img{max-width:calc(100% - 80px);height:65dvh}.photo-button .expand{opacity:1;width:30px;height:30px;font-size:18px}.gallery-grid .expand{width:27px;height:27px;bottom:9px;right:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

main:focus{outline:none}
.training-teaser{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:center;padding-top:10px;padding-bottom:85px}.training-teaser p{max-width:430px;margin:24px 0;font-size:14px}.training-teaser-art{position:relative;width:min(100%,350px);justify-self:center;padding:20px;background:var(--lavender);border-radius:18px;transform:rotate(3deg)}.poster-button{padding:0;border:0;background:transparent;display:block;width:100%;position:relative;text-align:left;border-radius:8px}.poster-button img{width:100%;height:auto;border-radius:8px}.poster-expand{position:absolute;right:12px;bottom:12px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:white;color:var(--ink);font-size:23px;box-shadow:0 3px 15px #211a3930}.training-offer{position:absolute;left:-35px;bottom:25px;background:var(--lime);padding:12px 22px;border-radius:5px;font-weight:800;font-size:13px;transform:rotate(-6deg);pointer-events:none}.training-offer span{margin-left:20px}.family-section{background:#e5edf0;padding:75px 0;margin-bottom:35px}.family-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.family-grid h2{font-size:clamp(30px,3.2vw,48px)}.family-grid>div>p:not(.art-caption){font-size:14px;margin-top:25px;max-width:440px}.art-caption{margin-top:12px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.community-values{list-style:none;margin:25px 0 0;padding:0}.community-values li{display:flex;gap:15px;align-items:center;font-size:12px;font-weight:700;padding:9px 0}.community-values li span{color:var(--purple);font-size:23px}.training-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;padding-bottom:65px}.training-intro .page-head{padding-bottom:25px}.training-intro h1{font-size:clamp(42px,5vw,72px)}.training-intro h1 em{color:var(--purple);font-style:normal}.training-intro .page-head>p{margin-bottom:25px}.training-coach{margin-bottom:27px}.training-coach p{font-size:11px;margin-top:12px}.training-poster{padding:30px 0 0;max-width:380px;justify-self:center}.training-schedule{padding:30px 0 80px}.schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.schedule-card{border:1px solid var(--line);padding:30px 25px;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start}.schedule-card:nth-child(2){background:var(--lavender);border-color:var(--lavender)}.schedule-number{font-size:9px;letter-spacing:.1em;text-transform:uppercase;font-weight:800}.session-time{display:block;font-family:var(--display);font-size:clamp(20px,2vw,29px);letter-spacing:-.05em;font-weight:500;color:var(--purple);margin:35px 0 20px}.schedule-card h3{font-size:21px;margin-bottom:15px}.schedule-card p{font-size:12px;margin-bottom:25px}.schedule-card small{display:block;font-size:9px;color:var(--muted);margin-top:auto;padding-top:15px}.schedule-card .text-link{font-size:10px;margin-bottom:5px}.schedule-note{font-size:11px;margin:20px 0 35px;max-width:850px}.first-session{background:var(--ink);color:white;border-radius:12px;display:flex;gap:25px;align-items:center;padding:30px}.first-session-mark{font-size:48px;color:var(--lime)}.first-session h3{font-size:26px}.first-session p{font-size:12px;color:#d0c5dd;margin-top:10px;max-width:540px}.first-session .button{margin-left:auto;flex-shrink:0}.social-section{padding-top:50px;padding-bottom:75px}.social-intro{font-size:13px;max-width:650px;margin:-5px 0 30px}.social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.social-card{border:1px solid var(--line);border-radius:12px;padding:25px;min-width:0}.social-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:25px}.social-card-top>span:last-child{font-size:11px;color:var(--purple)}.social-card time{font-size:10px;color:var(--muted)}.social-card h3{font-size:25px;margin:12px 0 15px}.social-card>p:not(.embed-status){font-size:12px;min-height:82px}.social-card .button{padding:11px 16px;font-size:11px;width:100%;justify-content:space-between;margin:23px 0 18px}.social-card .button:disabled{cursor:wait;opacity:.7;transform:none}.original-post{font-size:10px}.embed-note,.embed-status{font-size:10px;line-height:1.7;color:var(--muted)}.embed-note{margin-top:20px}.embed-status:not(:empty){margin:0 0 15px}.instagram-slot{width:100%;min-width:0;margin:0 0 16px;overflow:auto;overscroll-behavior-x:contain}.instagram-slot iframe{max-width:100%!important;min-width:0!important;width:100%!important;border:0!important}.instagram-slot blockquote{min-width:0!important;max-width:100%!important;width:100%!important;margin:0!important}.instagram-highlights{padding-top:0;padding-bottom:80px}.highlights-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.highlight-card{background:var(--lavender);border:1px solid transparent;border-radius:12px;padding:25px;position:relative;transition:border-color .2s,transform .2s}.highlight-card:hover{border-color:var(--purple);transform:translateY(-3px)}.highlight-mark{font-size:11px;font-weight:800;color:var(--purple)}.highlight-card h3{font-size:22px;margin:20px 0 12px}.highlight-card p{font-size:11px;max-width:155px}.highlight-arrow{position:absolute;top:20px;right:22px;font-size:23px;color:var(--purple)}
@media(max-width:1050px){.nav{gap:22px}.header-actions{gap:18px}.training-teaser{gap:45px}.family-grid{gap:35px}.training-intro{gap:35px}.schedule-card{padding:25px 20px}.first-session{flex-wrap:wrap}.first-session .button{margin-left:0}.social-card{padding:18px}.social-card h3{font-size:23px}.highlight-card{padding:20px}.highlight-card h3{font-size:20px}}
@media(max-width:760px){.training-teaser{grid-template-columns:1fr;gap:35px;padding-top:0;padding-bottom:60px}.training-teaser h2{font-size:38px}.training-teaser-art{width:80%;max-width:330px}.training-offer{left:-24px;font-size:12px}.family-section{padding:45px 0}.family-grid{grid-template-columns:1fr;gap:35px}.family-grid h2{font-size:36px}.family-grid>div:first-child{order:2}.art-caption{font-size:8px}.training-intro{grid-template-columns:1fr;gap:10px;padding-bottom:50px}.training-intro h1{font-size:49px}.training-intro .page-head{padding-bottom:5px}.training-poster{max-width:360px;width:90%;padding-top:20px}.schedule-grid{grid-template-columns:1fr;gap:14px}.schedule-card{padding:25px}.session-time{font-size:30px;margin:25px 0 15px}.schedule-card p{font-size:13px;margin-bottom:15px}.training-schedule{padding-top:0;padding-bottom:50px}.first-session{padding:25px;gap:20px}.first-session h3{font-size:26px}.first-session-mark{font-size:38px}.first-session .button{width:100%;justify-content:center}.social-section{padding-top:35px;padding-bottom:55px}.social-grid{grid-template-columns:1fr}.social-card{padding:25px}.social-card>p:not(.embed-status){min-height:0}.social-card h3{font-size:27px}.social-card .button{width:auto;gap:45px}.social-card-top{margin-bottom:15px}.instagram-highlights{padding-bottom:50px}.highlights-grid{grid-template-columns:1fr 1fr;gap:12px}.highlight-card{padding:23px 18px}.highlight-card h3{font-size:20px}.highlight-card p{font-size:10px}.highlight-arrow{right:16px;font-size:19px}}
@media(min-width:761px) and (max-width:980px){.header-cta{display:none}.nav{gap:22px}}
.header{height:124px;padding-left:4%;padding-right:4%;gap:25px}.header>.brand{font-size:23px;letter-spacing:.1em;gap:16px;flex-shrink:0}.header>.brand img{width:86px;height:86px}.header>.brand small{font-size:13px;letter-spacing:.16em}.header-actions{gap:20px;flex-shrink:0}.nav{gap:27px}.languages{gap:7px}.languages button{padding:10px 3px;min-height:44px}.hero{border:1px solid #b279e540;background:radial-gradient(ellipse at 100% 0%,#533575 0%,transparent 55%),var(--ink)}.hero h1 em{background:linear-gradient(110deg,#f4a1dc,#c7acf7 50%,#89ddf9);color:#d7b7ff;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero .photo-tag{background:#ef54b9;color:#211a39;font-weight:800}.hero .sun{color:#a7ecfb;text-shadow:0 0 40px #92e8ff30}.hero .inset-photo{border-color:#eaf9a2}.hero .eyebrow{font-size:11px}.ticker{margin:25px 0 0;padding:31px 5%;background:#ce258b;color:white;font-size:clamp(12px,1.4vw,21px);font-weight:800;letter-spacing:.06em;border:0;transform:rotate(-1.2deg);box-shadow:0 9px 0 #e8ec9e;position:relative;z-index:1}.ticker .spark{color:#e9f5a7;font-size:38px}.intro .eyebrow .dot,.photo-section .eyebrow .dot{background:#da2f98}.photo-section{background:#eae2fa}.photo-section h2{color:#4e2b84}.intro{padding-top:110px}.family-section{background:#ddf0f4}.cta-band{background:#e7edae}.hero-bottom{font-weight:700}.waiver-callout{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:20px;padding-bottom:80px}.waiver-callout h2{font-size:clamp(33px,3.8vw,53px)}.waiver-callout p{font-size:13px;max-width:570px;margin-top:20px}.waiver-callout .button{flex-shrink:0}.waiver-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:start;margin-bottom:90px}.waiver-summary{min-width:0}.waiver-summary h2{font-size:35px;margin:25px 0}.waiver-summary>p{font-size:13px;margin-bottom:20px}.waiver-summary .pill{font-size:8px;letter-spacing:.06em;overflow-wrap:anywhere}.waiver-terms{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:25px}.waiver-terms>summary{cursor:pointer;font-weight:700;padding:20px 0;font-size:13px}.waiver-terms>div{padding:0 0 25px}.waiver-terms section{margin:22px 0}.waiver-terms h3{font-family:var(--body);font-size:13px;letter-spacing:0;line-height:1.6;font-weight:800;margin-bottom:10px}.waiver-terms p{font-size:12px;line-height:1.9}.waiver-form{border:1px solid var(--line);background:white;border-radius:15px;padding:28px;min-width:0}.waiver-form h2{font-size:25px;margin-bottom:20px;letter-spacing:-.035em}.waiver-form p{font-size:12px;margin-bottom:20px}.waiver-form-heading{display:flex;align-items:center;gap:12px}.waiver-form-heading h2{margin:0 0 12px}.waiver-form .text-link{font-size:11px;margin-bottom:20px}.waiver-form iframe{display:block;border:0;width:100%;background:transparent;min-width:0}.waiver-form .waiver-privacy{font-size:10px;margin-top:20px}.waiver-form-mark{color:var(--purple);font-size:45px;display:block;margin-bottom:20px}.contact-info{grid-template-columns:1fr 1fr}.contact-info>div:last-child{grid-column:1/-1}.faq details p{max-width:650px}.faq details[open]{background:#eee9fa55}.faq details[open] summary,.faq details[open] p{padding-left:15px}
@media(max-width:1200px){.header{gap:18px}.header>.brand{font-size:19px;gap:12px}.header>.brand img{width:74px;height:74px}.header>.brand small{font-size:11px}.nav{gap:19px}.header-actions{gap:14px}.header-cta{padding:11px 16px;font-size:11px;gap:15px}}
@media(max-width:1080px){.header-cta{display:none}.header{height:108px}.header>.brand img{width:70px;height:70px}.nav{gap:20px}}
@media(max-width:900px){.nav{display:none}.menu-button{display:block}.mobile-nav{top:108px}.header{padding:0 5%}.header-actions{gap:20px}.mobile-nav a{padding:5px 0}.mobile-nav a[href="#/waiver"]{color:var(--magenta);font-weight:800}}
@media(max-width:760px){.header{height:100px;padding:0 5%;gap:12px}.header>.brand{font-size:17px;gap:10px;letter-spacing:.07em}.header>.brand img{width:64px;height:64px}.header>.brand small{font-size:9px;letter-spacing:.1em}.header-actions{gap:12px}.languages{gap:5px}.languages button{font-size:11px;padding:8px 1px}.menu-button{width:30px;padding:0}.mobile-nav{top:100px}.hero .eyebrow{font-size:9px;line-height:1.8}.ticker{display:grid;grid-template-columns:1fr auto;gap:9px;padding:24px 8%;margin-top:20px;font-size:16px;letter-spacing:.04em;transform:rotate(-1deg)}.ticker .spark{font-size:28px;line-height:1}.ticker .spark:nth-of-type(4){display:block}.ticker span:last-child{display:block;grid-column:1/-1;font-size:15px}.intro{padding-top:65px}.waiver-callout{flex-direction:column;align-items:flex-start;padding-top:5px;padding-bottom:55px;gap:25px}.waiver-layout{grid-template-columns:1fr;gap:30px;margin-bottom:55px}.waiver-summary h2{font-size:31px}.waiver-form{padding:21px 14px}.waiver-form h2{font-size:23px}.waiver-form .text-link{font-size:10px}.contact-info strong{font-size:11px}}
@media(max-width:380px){.header>.brand{font-size:15px;gap:7px}.header>.brand img{width:55px;height:55px}.header>.brand small{font-size:8px}.header-actions{gap:6px}.languages{gap:3px}.header{padding:0 4%}.hero h1{font-size:45px}.ticker{font-size:14px}.ticker span:last-child{font-size:13px}}
html{overflow-x:clip}
@media(max-width:380px){.hero h1{font-size:clamp(34px,11vw,41px)}.hero-buttons{gap:16px}.hero-buttons .button{padding:14px 18px;gap:20px;font-size:11px}.hero-buttons .text-link{font-size:10px}}
/* Keep shared gutters after section padding shorthands such as .intro and .events-home. */
.wrap{padding-inline:5%}
@media(max-width:760px){.wrap{padding-inline:clamp(24px,7vw,32px)}}
/* Mobile polish: comfortable touch targets and readable supporting copy. */
@media(max-width:760px){
 .languages{gap:2px}.languages span{display:none}.languages button{min-width:28px}
 .menu-button{width:44px;flex-shrink:0;display:grid;align-content:center;justify-items:center}.menu-button span{margin:3px 0}
 .mobile-nav:not([hidden]){gap:6px}.mobile-nav a{display:flex;align-items:center;min-height:44px}
 .page-head h1{font-size:clamp(34px,12vw,54px)}
 .hero-buttons{flex-wrap:wrap;gap:10px 18px}.hero-buttons .button{flex-shrink:0}.hero-buttons .text-link{font-size:12px}
 .filter{min-height:44px;font-size:12px}
 .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
 .schedule-card .text-link,.original-post,.waiver-form .text-link{font-size:12px}
 .schedule-card small,.schedule-note,.embed-note,.embed-status,.waiver-form .waiver-privacy{font-size:11px}
 .social-card>p:not(.embed-status),.first-session p,.waiver-form p{font-size:14px}
 .highlight-card p{font-size:12px}
 .lightbox-stage .icon-button{width:44px;height:44px}
 .lightbox-stage img{height:auto;max-height:65dvh;max-width:calc(100% - 100px)}
}
@media(max-width:380px){.header{gap:6px}}
@media(min-width:761px) and (max-width:980px){.highlights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.page-head h1,.training-intro h1{font-size:clamp(34px,10.8vw,41px)}.highlights-grid{grid-template-columns:1fr}}
