:root{--plum:#4d2149;--cream:#fff1df;--paper:#fff8ed;--orange:#ee6b3b;--yellow:#ffce51;--lavender:#d9c4e7;--muted:#765d72;--line:#4d21493d;--page:1220px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--plum);scroll-behavior:smooth;scrollbar-gutter:stable;min-height:100%}body{background:var(--plum);color:var(--plum);min-height:100dvh;margin:0;font-family:Avenir Next,Helvetica Neue,Helvetica,Arial,sans-serif;overflow-x:clip}a{color:inherit;text-decoration:none}button,input{font:inherit}img{max-width:100%}h1,h2,h3,p{text-wrap:pretty}section[id]{scroll-margin-top:82px}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{background:var(--yellow);border:2px solid var(--plum);color:var(--plum);z-index:100;padding:12px 16px;font-size:13px;font-weight:700;transition:transform .15s;position:fixed;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.hero{background:var(--cream);color:var(--plum);height:100svh;min-height:730px;position:relative;overflow:hidden}.hero-video{object-fit:cover;object-position:center;width:100%;height:calc(100% - 82px);position:absolute;bottom:0;right:0;transform:scale(1.05)}.hero-shade{background:linear-gradient(90deg,#4d2149f0 0%,#4d2149d1 34%,#4d214938 70%,#0000 100%);width:100%;height:calc(100% - 82px);position:absolute;bottom:0;right:0}.site-header{background:var(--cream);border-bottom:2px solid var(--plum);min-height:82px;padding:13px max(24px,calc((100vw - var(--page))/2));z-index:30;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:fixed;top:0;left:0;right:0}.site-header>.brand{z-index:12;position:relative}.brand{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:11px;width:fit-content;font-size:13px;font-weight:800;line-height:1;display:flex}.brand img{width:44px;height:51px}.brand span{gap:4px;display:grid}.brand small{letter-spacing:.26em;font-size:8px}.desktop-nav{align-items:center;gap:4px;padding:4px;display:flex;position:relative}.desktop-nav a{padding:9px 11px;font-size:13px;transition:color .18s;position:relative}.desktop-nav a:hover,.desktop-nav a[aria-current=location]{color:var(--orange)}.header-actions{justify-self:end;align-items:center;gap:12px;display:flex;position:relative}.header-contact-wrap{position:relative}.header-contact{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:1px solid;padding:0 0 4px;font-size:13px}.header-contact:hover,.header-contact[aria-expanded=true]{color:var(--orange)}.header-contact-popover{background:var(--paper);border:2px solid var(--plum);box-shadow:5px 5px 0 var(--plum);opacity:0;pointer-events:none;visibility:hidden;gap:9px;min-width:190px;padding:14px;transition:opacity .16s,transform .16s;display:grid;position:absolute;top:calc(100% + 14px);right:0;transform:translateY(-6px)}.header-contact-popover.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)}.header-contact-popover a{border:1px solid var(--plum);text-align:center;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 16px;font-size:13px;font-weight:700;display:flex}.header-contact-popover a svg{stroke-width:1.8px;width:18px;height:18px}.header-contact-popover a:hover{background:var(--orange);color:var(--paper)}.mobile-nav{display:none}.hero-copy{bottom:64px;left:max(24px,calc((100vw - var(--page))/2));z-index:2;width:48%;max-width:600px;position:absolute}.hero-copy>p{color:var(--lavender);margin:0 0 20px;font-size:13px;font-weight:700}.hero h1{color:var(--cream);letter-spacing:-.075em;text-wrap:balance;max-width:600px;margin:0;font-size:clamp(60px,6.5vw,94px);font-weight:750;line-height:.88}.hero-bottom{border-top:2px solid var(--cream);grid-template-columns:1fr;gap:22px;margin-top:30px;padding-top:18px;display:grid}.hero-bottom p{color:var(--cream);margin:0;font-size:15px;line-height:1.55}.hero-cta{background:var(--orange);border:2px solid var(--plum);box-shadow:6px 6px 0 var(--plum);color:var(--paper);cursor:pointer;text-align:left;max-width:390px;padding:18px 20px;transition:background .15s,box-shadow .15s,transform .15s;display:block}.hero-cta:hover{background:var(--yellow);box-shadow:4px 4px 0 var(--plum);color:var(--plum);transform:translate(2px,2px)}.hero-cta strong{font-size:18px;line-height:1.15}.hero-note{background:var(--yellow);border:2px solid var(--plum);color:var(--plum);bottom:42px;right:max(28px,calc((100vw - var(--page))/2));z-index:2;padding:14px 17px;font-size:18px;line-height:1.05;position:absolute;transform:rotate(2deg)}.scroll-cue{color:var(--cream);z-index:2;font-size:12px;position:absolute;bottom:28px;right:28%}.opening-statement{background:var(--paper);color:var(--plum);padding:115px max(24px,calc((100vw - var(--page))/2));grid-template-columns:1fr auto;align-items:end;gap:70px;display:grid}.opening-statement p{letter-spacing:-.058em;max-width:1010px;margin:0;font-size:clamp(38px,5vw,70px);font-weight:650;line-height:.98}.opening-statement span{background:var(--yellow);border:2px solid var(--plum);max-width:220px;padding:15px 17px;font-size:13px;line-height:1.45;transform:rotate(-1.5deg)}.lessons{background:var(--plum);color:var(--cream);padding:115px 0 0}.section-heading{max-width:var(--page);grid-template-columns:210px 1fr;gap:50px;margin:0 auto 70px;padding:0 24px;display:grid}.section-heading>p,.teachers-copy>p,.first-lesson-copy>p,.studio-copy>p:first-child{color:var(--muted);margin:8px 0 0;font-size:13px;font-weight:700}.lessons .section-heading>p{color:var(--yellow)}.section-heading h2{letter-spacing:-.07em;margin:0;font-size:clamp(54px,7vw,96px);font-weight:680;line-height:.88}.lesson-list{border-top:2px solid var(--cream);max-width:var(--page);margin:auto}.lesson-list article{border-bottom:1px solid #fff1df4d;grid-template-columns:200px 1fr 1fr 130px;align-items:start;gap:25px;padding:30px 0;display:grid}.lesson-list article>span{color:var(--yellow);padding-top:5px;font-size:12px}.lesson-list h3{color:var(--cream);letter-spacing:-.045em;margin:0;font-size:clamp(28px,3vw,42px);font-weight:650;line-height:1}.lesson-list article>p{color:#dec9db;margin:0;font-size:14px;line-height:1.6}.lesson-list article>a{color:var(--yellow);justify-self:end;padding-top:5px;font-size:12px}.lesson-list article>a:hover{color:var(--orange)}.lesson-filmstrip{background:var(--plum);grid-template-columns:1.35fr .85fr .8fr;height:520px;margin-top:90px;padding:0 18px 18px;display:grid}.lesson-filmstrip figure{border:3px solid var(--plum);margin:0;position:relative;overflow:hidden}.lesson-filmstrip figure:first-child{border-radius:52% 0 0/18% 0 0}.lesson-filmstrip figure:last-child{border-radius:0 48% 0 0/0 20% 0 0}.lesson-filmstrip img{object-fit:cover}.teachers{background:var(--orange);color:var(--plum);grid-template-columns:.92fr 1.08fr;min-height:760px;display:grid}.teachers-photo{border-right:4px solid var(--plum);min-height:650px;position:relative}.teachers-photo img{object-fit:cover;object-position:center 18%}.teachers-copy{align-self:center;padding:90px clamp(45px,8vw,115px)}.teachers-copy>p{color:#702a3d}.teachers h2{color:var(--paper);letter-spacing:-.07em;margin:28px 0 42px;font-size:clamp(51px,6vw,82px);font-weight:680;line-height:.88}.teacher-name{color:inherit;font-style:italic}.teacher-notes{border-top:2px solid var(--plum);grid-template-columns:1fr;gap:14px;max-width:590px;padding-top:24px;display:grid}.teacher-notes p{color:#60203f;margin:0;font-size:14px;line-height:1.65}.certifications{border-top:1px solid #4d214961;max-width:590px;margin-top:24px;padding-top:18px}.certification-summary{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:0;display:flex}.certification-summary strong{font-size:14px;line-height:1.45}.certification-toggle{border-bottom:1px solid;flex:none;align-items:center;gap:7px;padding-bottom:3px;font-size:11px;font-weight:750;display:inline-flex}.certification-toggle b{font-size:15px;line-height:1;transition:transform .32s cubic-bezier(.22,1,.36,1);display:inline-block}.certifications.is-open .certification-toggle b{transform:rotate(180deg)}.certification-reveal{transform-origin:top;grid-template-rows:0fr;transition:grid-template-rows .46s cubic-bezier(.22,1,.36,1),transform .34s cubic-bezier(.22,1,.36,1);display:grid;transform:translateY(-10px)scale(.975)}.certifications.is-open .certification-reveal{grid-template-rows:1fr;transform:translateY(0)scale(1)}.certification-reveal-inner{min-height:0;overflow:hidden}.certification-strip{scroll-snap-type:x mandatory;scrollbar-color:var(--plum) #4d214929;scrollbar-width:thin;gap:16px;margin-top:18px;padding:0 0 12px;scroll-padding-left:1px;display:flex;overflow-x:auto}.certification-strip figure{scroll-snap-align:start;flex:0 0 clamp(225px,52vw,300px);margin:0}.certification-strip img{background:var(--paper);border:2px solid var(--plum);width:100%;height:auto;display:block}.certification-strip figcaption{letter-spacing:.04em;text-transform:uppercase;padding-top:7px;font-size:11px;font-weight:750}.first-lesson{background:var(--yellow);color:var(--plum);padding:115px max(24px,calc((100vw - var(--page))/2));grid-template-columns:.65fr 1.35fr;display:grid}.price-block{border-right:2px solid var(--plum);align-content:start;padding-right:55px;display:grid}.price-block>span{font-size:13px;font-weight:700}.price-block strong{letter-spacing:-.1em;margin:35px 0 20px;font-size:clamp(110px,15vw,200px);font-weight:750;line-height:.82}.price-block p{margin:0;font-size:17px;line-height:1.5}.price-includes{border-top:2px solid var(--plum);gap:10px;margin-top:8px;padding-top:18px;display:grid}.price-includes>b{margin-bottom:3px;font-size:18px}.price-includes p{align-items:baseline;gap:9px;font-size:15px;display:flex}.price-includes p span{text-transform:uppercase;min-width:43px;font-size:12px;font-weight:800}.price-includes small{color:#67405e;margin-top:5px;font-size:12px;font-weight:650}.first-lesson-copy{padding-left:70px}.first-lesson-copy>p{color:#7a3a61}.first-lesson h2{letter-spacing:-.065em;margin:28px 0 52px;font-size:clamp(48px,6vw,80px);font-weight:680;line-height:.9}.visit-flow{border-top:2px solid var(--plum);grid-template-columns:1fr 1fr;display:grid}.visit-flow article{border-bottom:1px solid #4d214957;grid-template-columns:38px 1fr;gap:4px 14px;padding:24px 28px 24px 0;display:grid}.visit-flow article:nth-child(2n){border-left:1px solid #4d214957;padding-left:28px}.step-number{color:#9b4d64;grid-row:1/3;padding-top:6px;font-size:12px;font-weight:750}.visit-flow h3{grid-column:2;margin:0 0 6px;font-size:24px;font-weight:650}.visit-flow p{color:#67405e;grid-column:2;margin:0;font-size:14px;line-height:1.55}.text-link{border-bottom:1px solid;margin-top:35px;padding-bottom:4px;font-size:13px;font-weight:700;display:inline-block}.studio{background:var(--cream);color:var(--plum);grid-template-columns:1.15fr .85fr;min-height:700px;padding:34px;display:grid}.studio-map{border:3px solid var(--plum);box-shadow:10px 10px 0 var(--lavender);min-height:590px;position:relative;overflow:hidden}.studio-map-frame{position:absolute;inset:0;overflow:hidden}.studio-map iframe{pointer-events:auto;touch-action:auto;border:0;width:calc(100% + 70px);height:calc(100% + 190px);position:absolute;top:-135px;left:-35px}.studio-map.has-directions iframe{width:100%;height:100%;top:0;left:0}.studio-map.has-directions .map-place-label{display:none}.map-place-label{background:var(--paper);border:2px solid var(--plum);z-index:2;gap:3px;padding:11px 14px;display:grid;position:absolute;top:18px;left:18px}.map-place-label strong{font-size:14px}.map-place-label span{color:var(--muted);font-size:11px}.travel-time{background:var(--yellow);border:2px solid var(--plum);box-shadow:4px 4px 0 var(--plum);color:var(--plum);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;z-index:2;padding:14px 17px;font-size:12px;font-weight:750;position:absolute;top:18px;right:18px}.travel-time:hover{background:var(--orange);color:var(--paper)}.travel-form{background:var(--paper);border:2px solid var(--plum);box-shadow:5px 5px 0 var(--plum);opacity:0;pointer-events:none;visibility:hidden;z-index:3;gap:10px;padding:16px;transition:opacity .16s,transform .16s;display:grid;position:absolute;top:84px;left:18px;right:18px;transform:translateY(-8px)}.travel-form.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)}.travel-form-heading{margin:0;font-size:16px;font-weight:750}.current-location{background:var(--yellow);border:1px solid var(--plum);color:var(--plum);cursor:pointer;text-align:center;padding:12px 14px;font-size:13px;font-weight:750}.current-location:hover{background:var(--orange);color:var(--paper)}.location-status{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.travel-divider{color:var(--muted);text-transform:uppercase;align-items:center;gap:9px;font-size:11px;display:flex}.travel-divider:before,.travel-divider:after{content:"";background:#4d21494d;flex:1;height:1px}.travel-form label{font-size:13px;font-weight:750}.travel-form>div{grid-template-columns:1fr auto;gap:8px;display:grid}.travel-form input{border:1px solid var(--plum);color:var(--plum);background:#fff;min-width:0;padding:11px 12px}.travel-form button[type=submit]{background:var(--orange);border:1px solid var(--plum);color:var(--paper);cursor:pointer;padding:11px 14px;font-size:12px;font-weight:750}.travel-form-close{color:var(--plum);cursor:pointer;background:0 0;border:0;font-size:22px;line-height:1;position:absolute;top:7px;right:8px}.studio-copy{align-self:center;padding:80px clamp(42px,7vw,100px)}.studio h2{letter-spacing:-.06em;margin:25px 0 35px;font-size:clamp(45px,5vw,70px);font-weight:680;line-height:.92}.studio address{font-size:16px;font-style:normal;line-height:1.55}.studio address a{border-bottom:2px solid var(--orange);padding-bottom:6px;display:inline-block}.studio-copy>p:last-child{color:var(--muted);max-width:520px;margin-top:45px;font-size:14px;line-height:1.65}.questions{background:var(--lavender);color:var(--plum);padding:115px max(24px,calc((100vw - var(--page))/2));grid-template-columns:.8fr 1.2fr;gap:80px;display:grid}.questions .section-heading{margin:0;padding:0;display:block}.questions .section-heading>p{color:#6f486e;margin-bottom:28px}.questions .section-heading h2{font-size:clamp(55px,6vw,84px)}.faq{border-top:2px solid var(--plum)}.faq-item{border-bottom:1px solid #4d214947}.faq-trigger{color:inherit;cursor:pointer;letter-spacing:-.025em;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:22px 0;font-size:22px;font-weight:650;display:flex}.faq-trigger b{color:var(--orange);font-size:28px;font-weight:500;transition:transform .18s}.faq-item.is-open .faq-trigger b{transform:rotate(45deg)}.faq-answer-reveal{grid-template-rows:0fr;transition:grid-template-rows .44s cubic-bezier(.22,1,.36,1);display:grid}.faq-item.is-open .faq-answer-reveal{grid-template-rows:1fr}.faq-answer-inner{min-height:0;overflow:hidden}.faq-answer{color:#644b64;max-width:700px;padding:0 45px 22px 0;font-size:15px;line-height:1.65}.faq-answer p{margin:0}.faq-word{opacity:0;margin-right:.27em;display:inline-block;transform:translateY(3px)}.faq-item.is-open .faq-word{animation:.14s ease-out forwards faq-word-stream;animation-delay:var(--word-delay)}@keyframes faq-word-stream{to{opacity:1;transform:translateY(0)}}.contact{background:var(--plum);color:var(--cream);padding:115px max(24px,calc((100vw - var(--page))/2)) 70px}.contact>p{color:var(--lavender);margin:0 0 35px;font-size:14px}.contact h2{color:var(--yellow);letter-spacing:-.08em;max-width:1120px;margin:0;font-size:clamp(58px,9vw,124px);font-weight:720;line-height:.83}.schedule-panel{background:var(--yellow);border:2px solid var(--cream);color:var(--plum);gap:30px;margin-top:58px;padding:32px;scroll-margin-top:105px;display:grid}.schedule-intro{grid-template-columns:1fr;gap:8px;display:grid}.schedule-intro>span{color:#7a3a61;letter-spacing:.05em;text-transform:uppercase;grid-column:1/-1;font-size:12px;font-weight:750}.schedule-panel h3{letter-spacing:-.045em;margin:0;font-size:clamp(28px,3vw,40px);line-height:1}.schedule-intro p{color:#67405e;max-width:620px;margin:0;font-size:15px;line-height:1.55}.lesson-form{grid-template-columns:1fr 1fr;gap:20px 18px;display:grid}.form-field{align-content:start;gap:8px;min-width:0;margin:0;display:grid}.form-field-wide{grid-column:1/-1}.form-field label,.form-field legend{font-size:14px;font-weight:750}.form-field input,.form-field select,.form-field textarea{background:var(--paper);border:2px solid var(--plum);color:var(--plum);font:inherit;border-radius:0;width:100%;min-height:50px;padding:12px 13px;font-size:16px}.form-field textarea{resize:vertical;min-height:120px;line-height:1.5}.form-field input::placeholder,.form-field textarea::placeholder{color:#8c7087;opacity:1}.form-field .field-help{color:#67405e;margin:0;font-size:12px;line-height:1.4}.form-choice-group{border:0;grid-template-columns:repeat(3,minmax(0,1fr));padding:0}.form-choice-group-two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-choice-group legend{grid-column:1/-1;margin-bottom:2px;padding:0}.form-choice-group label{background:var(--paper);border:2px solid var(--plum);cursor:pointer;text-align:center;justify-content:center;align-items:center;min-height:52px;padding:10px 8px;font-size:14px;font-weight:700;line-height:1.2;transition:background .14s,box-shadow .14s,color .14s,transform .14s;display:flex;position:relative}.form-choice-group label:hover{background:var(--cream)}.form-choice-group label:has(input:checked){background:var(--plum);box-shadow:3px 3px 0 var(--orange);color:var(--cream);transform:translate(-1px,-1px)}.form-choice-group label:has(input:focus-visible){outline:3px solid var(--orange);outline-offset:3px}.form-choice-group input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.form-choice-group label svg{stroke-width:2px;flex:none;width:19px;height:19px;margin-right:7px}.form-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-submit{border-top:1px solid #4d214959;grid-template-columns:1fr;align-items:center;gap:10px;margin-top:4px;padding-top:24px;display:grid}.form-submit button{background:var(--orange);border:2px solid var(--plum);box-shadow:5px 5px 0 var(--plum);color:var(--paper);cursor:pointer;justify-content:center;align-items:center;gap:11px;min-height:58px;padding:15px 20px;font-size:16px;font-weight:800;display:flex}.form-submit button:hover:not(:disabled){background:var(--plum)}.form-submit button:disabled{cursor:not-allowed;filter:saturate(.65);opacity:.68}.form-submit button svg{stroke-width:2px;flex:none;width:22px;height:22px}.form-submit>p{color:#67405e;margin:0;font-size:13px;line-height:1.45}.form-submit .form-error{color:#8a1737;grid-column:1/-1;font-weight:700}.policy-dialog{color:var(--plum);background:0 0;border:0;width:calc(100% - 28px);max-width:620px;max-height:calc(100dvh - 28px);margin:auto;padding:0}.policy-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#240c22c7}.policy-dialog-shell{background:var(--yellow);border:2px solid var(--cream);box-shadow:9px 9px 0 var(--orange);grid-template-columns:minmax(0,1fr);gap:16px;max-height:calc(100dvh - 46px);padding:24px;display:grid;overflow-y:auto}.policy-dialog header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.policy-dialog header>div{gap:6px;min-width:0;display:grid}.policy-dialog header span{color:#7a3a61;letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.policy-dialog .policy-dialog-shell h2{color:var(--plum);letter-spacing:-.045em;overflow-wrap:anywhere;margin:0;font-size:clamp(26px,5vw,36px);line-height:1.05}.policy-dialog-close{color:var(--plum);cursor:pointer;background:0 0;border:0;flex:none;padding:3px;font-size:34px;line-height:.8}.policy-dialog-copy{background:var(--paper);border:2px solid var(--plum);overscroll-behavior:contain;max-height:min(38dvh,310px);padding:18px;font-size:16px;line-height:1.5;overflow-y:auto}.policy-dialog-copy p{margin:0 0 16px}.policy-dialog-copy ul{gap:13px;margin:0;padding-left:22px;display:grid}.policy-read-prompt{color:#67405e;margin:0;font-size:13px;font-weight:700}.policy-agreement{background:var(--cream);border:2px solid var(--plum);cursor:pointer;align-items:center;gap:12px;min-height:54px;padding:11px 13px;font-size:15px;font-weight:750;display:flex}.policy-agreement.is-disabled{cursor:not-allowed;opacity:.52}.policy-agreement input{accent-color:var(--plum);flex:none;width:20px;height:20px}.policy-dialog-actions{display:grid}.policy-dialog-actions button{border:2px solid var(--plum);cursor:pointer;font:inherit;justify-content:center;align-items:center;min-height:50px;padding:11px 14px;font-size:14px;font-weight:800;display:flex}.policy-dialog-actions button:disabled{cursor:not-allowed;opacity:.5}.policy-continue{background:var(--orange);color:var(--paper);gap:8px}.policy-continue:not(:disabled):hover{background:var(--plum)}.policy-continue svg{width:18px;height:18px}body:has(.policy-dialog[open]){overflow:hidden}.form-success{border-top:2px solid var(--plum);align-items:flex-start;gap:14px;padding-top:28px;display:flex}.form-success svg{stroke-width:2px;flex:none;width:30px;height:30px}.form-success div{gap:5px;display:grid}.form-success strong{font-size:22px}.form-success p{color:#67405e;margin:0;font-size:15px}.payment-success-page{background:var(--plum);color:var(--cream);justify-content:center;align-items:center;min-height:100svh;padding:32px 18px;display:flex}.payment-preview-note{background:var(--cream);border:2px solid var(--plum);color:var(--plum);letter-spacing:.03em;text-transform:uppercase;z-index:2;margin:0;padding:8px 12px;font-size:12px;font-weight:800;position:fixed;top:16px;left:50%;transform:translate(-50%)}.payment-success-card{background:var(--yellow);border:2px solid var(--cream);box-shadow:10px 10px 0 var(--orange);color:var(--plum);gap:18px;width:100%;max-width:820px;padding:clamp(28px,5vw,52px);display:grid}.payment-success-card>svg{stroke-width:1.8px;width:44px;height:44px}.payment-success-eyebrow{color:#7a3a61;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:13px;font-weight:800}.payment-success-card h1{letter-spacing:-.065em;margin:0;font-size:clamp(44px,8vw,80px);line-height:.9}.payment-success-card>p:not(.payment-success-eyebrow){max-width:620px;margin:0;font-size:17px;line-height:1.55}.payment-success-card .payment-deadline{font-size:14px;font-weight:700}.lesson-prep{border-top:2px solid var(--plum);gap:18px;margin-top:4px;padding-top:22px;display:grid}.lesson-prep-heading{gap:5px;display:grid}.lesson-prep-heading p{color:#7a3a61;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.lesson-prep-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(30px,5vw,44px);line-height:.95}.lesson-prep-grid{border:2px solid var(--plum);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lesson-prep-grid article{align-items:flex-start;gap:12px;min-width:0;padding:16px;display:flex}.lesson-prep-grid article:nth-child(2n){border-left:1px solid #4d214961}.lesson-prep-grid article:nth-child(n+3){border-top:1px solid #4d214961}.lesson-prep-icon{color:var(--plum);flex:0 0 28px;justify-content:center;align-items:center;height:28px;display:flex}.lesson-prep-icon svg{stroke-width:1.9px;width:23px;height:23px}.lesson-prep-grid h3{margin:1px 0 7px;font-size:17px;line-height:1.05}.lesson-prep-grid p,.lesson-prep-grid a{margin:0;font-size:14px;line-height:1.45}.lesson-prep-grid a{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.lesson-policy-link{border:2px solid var(--plum);color:var(--plum);cursor:pointer;font:inherit;background:0 0;justify-content:center;align-items:center;gap:9px;width:100%;min-height:50px;padding:11px 16px;font-size:14px;font-weight:800;display:flex}.lesson-policy-link:hover{background:var(--plum);color:var(--cream)}.lesson-policy-link svg{width:18px;height:18px}.success-policy-dialog{color:var(--plum);background:0 0;border:0;width:calc(100% - 28px);max-width:620px;margin:auto;padding:0}.success-policy-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#240c22cc}.success-policy-shell{background:var(--yellow);border:2px solid var(--cream);box-shadow:9px 9px 0 var(--orange);gap:17px;max-height:calc(100dvh - 38px);padding:clamp(20px,5vw,34px);display:grid;overflow-y:auto}.success-policy-shell header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.success-policy-shell header>div{gap:6px;display:grid}.success-policy-shell header span{color:#7a3a61;letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.success-policy-shell h2{letter-spacing:-.05em;margin:0;font-size:clamp(30px,6vw,46px);line-height:.93}.success-policy-shell header button{color:var(--plum);cursor:pointer;background:0 0;border:0;flex:none;padding:2px}.success-policy-shell header svg{width:28px;height:28px}.success-policy-shell>p{margin:0;font-size:17px;line-height:1.45}.success-policy-shell ul{gap:12px;margin:0;padding-left:22px;line-height:1.45;display:grid}.success-policy-shell>a{border-bottom:1px solid;justify-self:start;padding-bottom:3px;font-size:13px;font-weight:800}body:has(.success-policy-dialog[open]){overflow:hidden}.payment-success-actions{border-top:2px solid var(--plum);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:6px;padding-top:22px;display:grid}.payment-success-actions a{border:2px solid var(--plum);justify-content:center;align-items:center;gap:8px;min-height:52px;padding:12px 18px;font-size:15px;font-weight:800;display:flex}.payment-success-actions a:first-child{background:var(--orange);color:var(--paper)}.payment-success-actions a:hover{background:var(--plum);color:var(--cream)}.payment-success-actions svg{width:18px;height:18px}.policy-page{background:var(--plum);color:var(--cream);min-height:100svh;padding:clamp(22px,5vw,64px) max(18px,env(safe-area-inset-right,0px)) max(48px,calc(28px + env(safe-area-inset-bottom,0px))) max(18px,env(safe-area-inset-left,0px))}.policy-card{border:2px solid var(--cream);max-width:780px;margin:0 auto;padding:clamp(26px,6vw,64px)}.policy-header{gap:16px;display:grid}.policy-brand{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:11px;width:fit-content;margin-bottom:22px;font-size:13px;font-weight:800;line-height:1;display:flex}.policy-brand img{filter:brightness(0)invert();width:44px;height:51px}.policy-brand span{gap:4px;display:grid}.policy-brand small{letter-spacing:.26em;font-size:8px}.policy-header>p{color:var(--yellow);letter-spacing:.07em;text-transform:uppercase;margin:0;font-size:13px;font-weight:800}.policy-header h1{color:var(--yellow);letter-spacing:-.065em;margin:0;font-size:clamp(48px,9vw,82px);line-height:.88}.policy-lead{border-block:2px solid var(--cream);margin:34px 0 0;padding:24px 0;font-size:clamp(19px,3vw,25px);font-weight:750;line-height:1.35}.policy-terms{margin:0;padding:0;list-style:none}.policy-terms li{border-bottom:1px solid #fff1df5c;grid-template-columns:34px 1fr;gap:16px;padding:22px 0;display:grid}.policy-terms span{color:var(--orange);padding-top:3px;font-size:14px;font-weight:800}.policy-terms p{margin:0;font-size:17px;line-height:1.55}.policy-contact{background:var(--yellow);color:var(--plum);gap:15px;margin-top:32px;padding:22px;display:grid}.policy-contact>p{margin:0;font-size:18px;font-weight:800}.policy-contact>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.policy-contact a{border:2px solid var(--plum);justify-content:center;align-items:center;gap:8px;min-height:50px;padding:10px 12px;font-size:14px;font-weight:800;display:flex}.policy-contact a:hover{background:var(--plum);color:var(--cream)}.policy-contact svg{stroke-width:2px;width:18px;height:18px}.policy-return{border-bottom:1px solid;margin-top:32px;padding-bottom:4px;font-size:13px;font-weight:750;display:inline-block}.privacy-intro{margin:30px 0;font-size:21px;line-height:1.5}.privacy-card section{border-top:1px solid #fff1df5c;padding:22px 0}.privacy-card section h2{color:var(--yellow);margin:0 0 12px;font-size:23px}.privacy-card section p{overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.65}.privacy-card section a,.footer-privacy{text-underline-offset:4px;text-decoration:underline}.footer-privacy{padding:12px 0;font-size:13px}.not-found-page{background:var(--plum);color:var(--cream);min-height:100svh;padding:32px 18px max(42px,calc(24px + env(safe-area-inset-bottom,0px)));justify-content:center;align-items:center;display:flex}.not-found-card{border:2px solid var(--cream);gap:18px;width:100%;max-width:680px;padding:clamp(28px,6vw,58px);display:grid}.not-found-brand{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:11px;width:fit-content;font-size:13px;font-weight:800;line-height:1;display:flex}.not-found-brand img{filter:brightness(0)invert();width:44px;height:51px}.not-found-brand span{gap:4px;display:grid}.not-found-brand small{letter-spacing:.26em;font-size:8px}.not-found-code{color:var(--yellow);letter-spacing:.08em;margin:20px 0 0;font-size:14px;font-weight:800}.not-found-card h1{color:var(--yellow);letter-spacing:-.065em;margin:0;font-size:clamp(48px,9vw,82px);line-height:.9}.not-found-card>p:not(.not-found-code){color:var(--lavender);margin:0;font-size:17px;line-height:1.5}.not-found-card>a{background:var(--orange);border:2px solid var(--cream);box-shadow:6px 6px 0 var(--cream);color:var(--paper);text-align:center;max-width:280px;margin-top:8px;padding:16px 18px;font-size:16px;font-weight:800;display:block}.not-found-card>a:hover{background:var(--yellow);color:var(--plum)}.contact-options{border-top:2px solid var(--cream);grid-template-columns:1fr 1.35fr;margin-top:65px;display:grid}.contact-options>*{gap:12px;padding:28px 30px 28px 0;display:grid}.contact-options>*+*{border-left:1px solid #fff1df66;padding-left:25px}.contact-options span{color:var(--lavender);font-size:14px;font-weight:650}.contact-options strong{overflow-wrap:anywhere;font-size:clamp(21px,2vw,27px);font-weight:650}.contact-options a:hover strong{color:var(--orange)}.contact-actions{gap:10px;margin-top:5px;display:flex}.contact-actions a{border:2px solid #fff1dfa6;justify-content:center;align-items:center;gap:9px;min-width:140px;min-height:52px;padding:12px 18px;font-size:14px;font-weight:700;display:flex}.contact-actions svg,.contact-email span svg{stroke-width:1.8px;width:19px;height:19px}.contact-actions a:hover{background:var(--orange);border-color:var(--orange)}.contact-email{align-content:center}.contact-email span{align-items:center;gap:9px;display:flex}.site-footer{background:var(--plum);color:var(--cream);padding:34px max(24px,calc((100vw - var(--page))/2)) 42px;border-top:1px solid #fff1df61;justify-content:space-between;align-items:center;display:flex}.site-footer .brand{color:var(--cream)}.site-footer .brand img{filter:brightness(0)invert()}.footer-location{text-align:right;align-items:flex-start;gap:12px;display:flex}.footer-location>svg{color:var(--yellow);stroke-width:1.8px;flex:none;width:22px;height:22px}.footer-location div{gap:5px;display:grid}.footer-location strong{color:var(--yellow);font-size:14px}.footer-location a{border-bottom:1px solid #fff1dfa6;padding-bottom:3px;font-size:13px;line-height:1.5}@media (max-width:1050px){.hero{height:auto;min-height:0;padding-top:82px}.site-header{grid-template-columns:1fr auto;padding-inline:24px}.site-header>.brand{perspective:420px}.site-header>.brand img{backface-visibility:visible;transform-origin:50%;transform-style:preserve-3d;will-change:transform;transition:transform .62s cubic-bezier(.22,.8,.26,1);transform:rotateY(0)}.site-header:has(.mobile-nav-trigger[aria-expanded=true])>.brand img{transform:rotateY(1turn)}.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav-trigger{color:var(--plum);cursor:pointer;z-index:12;background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:relative}.mobile-nav-icon{gap:5px;width:19px;display:grid}.mobile-nav-icon i{background:currentColor;width:100%;height:2px;transition:transform .15s;display:block}.mobile-nav-trigger[aria-expanded=true] .mobile-nav-icon i:first-child{transform:translateY(7px)rotate(45deg)}.mobile-nav-trigger[aria-expanded=true] .mobile-nav-icon i:nth-child(2){opacity:0}.mobile-nav-trigger[aria-expanded=true] .mobile-nav-icon i:last-child{transform:translateY(-7px)rotate(-45deg)}.mobile-nav-panel{background:var(--paper);color:var(--plum);opacity:0;padding:110px clamp(24px,7vw,72px) max(30px,env(safe-area-inset-bottom));pointer-events:none;visibility:hidden;z-index:10;grid-template-rows:1fr auto;transition:opacity .18s,transform .18s;display:grid;position:fixed;inset:0;transform:translateY(-10px)}.mobile-nav-panel.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)}.mobile-nav-panel nav{align-content:center;gap:0;display:grid}.mobile-nav-panel nav a{border-bottom:1px solid var(--line);letter-spacing:-.05em;padding:13px 0;font-size:clamp(38px,6vw,58px);font-weight:680;line-height:1}.mobile-nav-contact{border-top:2px solid var(--plum);gap:10px;padding-top:16px;display:grid}.mobile-nav-contact a{text-align:center;padding:10px 0;font-size:13px;font-weight:650}.mobile-nav-contact .mobile-nav-primary{background:var(--orange);border:2px solid var(--plum);box-shadow:5px 5px 0 var(--plum);color:var(--paper);letter-spacing:-.01em;justify-content:center;align-items:center;gap:11px;min-height:64px;padding:17px 20px;font-size:18px;font-weight:800;line-height:1.1;display:flex}.mobile-nav-primary svg{stroke-width:2.25px;flex:none;width:23px;height:23px}.hero-video{object-position:58% center;width:100%;height:clamp(340px,42svh,430px);position:relative;bottom:auto;right:auto;transform:none}.hero-shade{display:none}.hero-copy{width:auto;max-width:820px;padding:52px 32px 96px;position:relative;bottom:auto;left:auto}.hero-copy>p{color:var(--muted)}.hero h1{color:var(--plum)}.hero-bottom{border-color:var(--plum)}.hero-bottom p{color:var(--muted)}.hero h1{font-size:clamp(62px,8.5vw,80px)}.hero-note{top:calc(32px + clamp(340px,42svh,430px));bottom:auto;right:32px}.scroll-cue{color:var(--plum);bottom:32px;right:32px}.opening-statement{grid-template-columns:1fr;gap:40px}.section-heading{grid-template-columns:1fr;gap:25px}.lesson-list{margin-inline:24px}.lesson-list article{grid-template-columns:160px 1fr}.lesson-list article>p{grid-column:2}.lesson-list article>a{grid-column:2;justify-self:start}.lesson-filmstrip{height:420px}.teachers{grid-template-columns:1fr}.teachers-photo{border-bottom:4px solid var(--plum);border-right:0;min-height:690px}.first-lesson{grid-template-columns:1fr}.price-block{border-bottom:2px solid var(--plum);border-right:0;grid-template-columns:1fr auto;margin-bottom:55px;padding:0 0 40px}.price-block strong{grid-area:1/2/3;margin:0}.first-lesson-copy{padding-left:0}.studio{grid-template-columns:1fr}.studio-map{min-height:540px}.questions{grid-template-columns:1fr;gap:55px}}@media (max-width:820px){.lesson-list article{grid-template-columns:1fr;gap:14px;padding:30px 0}.lesson-list article>span{grid-column:1;padding-top:0;font-size:12px;font-weight:700;line-height:1.4}.lesson-list article>p{grid-column:1;max-width:650px}.lesson-list article>a{border-bottom:1px solid;grid-column:1;justify-self:start;margin-top:5px;padding:0 0 3px;font-size:13px;font-weight:700}}@media (max-width:680px){.hero{height:auto;min-height:0;padding-top:72px}.site-header{grid-template-columns:1fr auto;min-height:72px;padding:9px 16px}.desktop-nav{display:none}.brand{font-size:11px}.brand img{width:37px;height:44px}.header-contact{font-size:11px}.header-contact-popover{top:calc(100% + 16px);right:-56px}.mobile-nav{display:block}.mobile-nav-trigger{color:var(--plum);cursor:pointer;z-index:12;background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:relative}.mobile-nav-icon{gap:5px;width:19px;display:grid}.mobile-nav-icon i{background:currentColor;width:100%;height:2px;transition:transform .15s;display:block}.mobile-nav-trigger[aria-expanded=true] .mobile-nav-icon i:first-child{transform:translateY(7px)rotate(45deg)}.mobile-nav-trigger[aria-expanded=true] .mobile-nav-icon i:nth-child(2){opacity:0}.mobile-nav-trigger[aria-expanded=true] .mobile-nav-icon i:last-child{transform:translateY(-7px)rotate(-45deg)}.mobile-nav-panel{background:var(--paper);color:var(--plum);opacity:0;padding:96px 20px max(24px,env(safe-area-inset-bottom));pointer-events:none;visibility:hidden;z-index:10;grid-template-rows:1fr auto;transition:opacity .18s,transform .18s;display:grid;position:fixed;inset:0;transform:translateY(-10px)}.mobile-nav-panel.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)}.mobile-nav-panel nav{align-content:center;gap:0;display:grid}.mobile-nav-panel nav a{border-bottom:1px solid var(--line);letter-spacing:-.05em;padding:13px 0;font-size:clamp(32px,10vw,46px);font-weight:680;line-height:1}.mobile-nav-contact{border-top:2px solid var(--plum);gap:10px;padding-top:16px;display:grid}.mobile-nav-contact a{text-align:center;padding:10px 0;font-size:13px;font-weight:650}.mobile-nav-contact .mobile-nav-primary{background:var(--orange);border:2px solid var(--plum);box-shadow:5px 5px 0 var(--plum);color:var(--paper);letter-spacing:-.01em;justify-content:center;align-items:center;gap:11px;min-height:64px;padding:17px 20px;font-size:18px;font-weight:800;line-height:1.1;display:flex}.mobile-nav-primary svg{stroke-width:2.25px;flex:none;width:23px;height:23px}.hero-video{object-position:58% center;width:100%;height:270px;display:block;position:relative}.hero-shade{display:none}.hero-copy{width:auto;max-width:none;padding:55px 16px 92px;position:relative;bottom:auto;left:auto}.hero-copy>p{font-size:12px}.hero h1{font-size:58px;line-height:.88}.hero-bottom{gap:20px;margin-top:25px}.hero-bottom p{font-size:14px}.hero-cta{width:calc(100% - 6px);max-width:none}.hero-note{padding:11px 13px;font-size:14px;top:304px;bottom:auto;right:14px}.scroll-cue{color:var(--plum);bottom:24px;right:16px}.opening-statement{padding:78px 16px}.opening-statement p{font-size:40px}.opening-statement span{transform:none}.lessons{padding-top:78px}.section-heading{margin-bottom:45px;padding-inline:16px}.section-heading h2{font-size:55px}.lesson-list{margin-inline:16px}.lesson-list article{grid-template-columns:1fr;gap:12px;padding:28px 0}.lesson-list article>p,.lesson-list article>a{grid-column:1}.lesson-list h3{font-size:34px}.lesson-filmstrip{grid-template-columns:1fr 1fr;height:500px;margin-top:60px;padding:0 8px 8px}.lesson-filmstrip figure:first-child{border-radius:42% 0 0/14% 0 0;grid-column:1/-1}.lesson-filmstrip figure:last-child{border-radius:0}.teachers-photo{min-height:500px}.teachers-copy{padding:68px 16px}.teachers h2{font-size:52px}.teacher-notes{grid-template-columns:1fr}.first-lesson{padding:74px 16px}.price-block{display:block}.price-block strong{margin:30px 0 15px;font-size:130px;display:block}.price-includes{margin-top:18px}.first-lesson h2{font-size:52px}.visit-flow{grid-template-columns:1fr}.visit-flow article,.visit-flow article:nth-child(2n){border-left:0;padding:22px 0}.studio{padding:16px 16px 65px}.studio-map{box-shadow:7px 7px 0 var(--lavender);min-height:410px}.map-place-label{top:70px;left:12px}.travel-time{text-align:center;top:12px;left:12px;right:12px}.travel-form{top:66px;left:12px;right:12px}.travel-form>div{grid-template-columns:1fr}.studio-copy{padding:68px 0 0}.studio h2{font-size:47px}.questions{padding:74px 16px}.questions .section-heading{padding:0}.questions .section-heading h2{font-size:57px}.faq-trigger{font-size:19px}.contact{padding:78px 16px 54px}.contact h2{font-size:59px}.schedule-panel{margin-top:42px;padding:22px 20px}.schedule-intro,.lesson-form{grid-template-columns:1fr}.form-field-wide{grid-column:1}.form-submit{grid-template-columns:1fr;align-items:stretch}.form-submit .form-error{grid-column:1}.policy-dialog-shell{gap:13px;padding:18px}.policy-dialog-copy{max-height:34dvh;padding:15px}.policy-dialog-actions{grid-template-columns:1fr}.contact-options{grid-template-columns:1fr;margin-top:50px}.contact-options>*{padding:25px 0}.contact-options>*+*{border-top:1px solid #fff1df66;border-left:0;padding-left:0}.contact-actions{grid-template-columns:1fr 1fr;display:grid}.contact-actions a{min-width:0}.policy-contact>div,.lesson-prep-grid{grid-template-columns:1fr}.lesson-prep-grid article:nth-child(2n){border-left:0}.lesson-prep-grid article:nth-child(n+2){border-top:1px solid #4d214961}.payment-success-actions{grid-template-columns:1fr}.site-footer{padding:28px max(16px,env(safe-area-inset-right,0px)) max(72px,calc(36px + env(safe-area-inset-bottom,0px))) max(16px,env(safe-area-inset-left,0px));flex-direction:column;align-items:flex-start;gap:28px}.footer-location{text-align:left}section[id]{scroll-margin-top:72px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-video{display:none}.hero{background:linear-gradient(90deg,#4d2149f0 0%,#4d2149d1 34%,#4d214938 70%,transparent 100%),url(/media/hero-poster.jpg) center bottom/100% calc(100% - 82px) no-repeat var(--cream)}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.faq-word{opacity:1;transform:none;animation-delay:0s!important}}@media (max-width:1050px) and (prefers-reduced-motion:reduce){.hero{background:linear-gradient(var(--cream) 0 82px,transparent 82px),url(/media/hero-poster.jpg) 58% 82px/100% clamp(340px,42svh,430px) no-repeat var(--cream)}.hero-copy{margin-top:clamp(340px,42svh,430px)}}@media (max-width:680px) and (prefers-reduced-motion:reduce){.hero{background:linear-gradient(var(--cream) 0 72px,transparent 72px),url(/media/hero-poster.jpg) center 72px/100% 270px no-repeat var(--cream)}.hero-copy{margin-top:270px}}
