:root{--blue:#2c54aa;--blue-deep:#203e82;--green:var(--blue);--green-deep:var(--blue-deep);--lavender:#aaa4e6;--lavender-soft:#dcd8f5;--lavender-ink:#554f91;--paper:#f5ecd9;--paper-light:#fbf4e5;--coral:#ef5d3c;--coral-action:#b43a26;--ink:#1a3169;--rule:#8b82d3b8;--rule-soft:#8b82d361;--squiggle-card:57px 23px 52px 29px / 26px 55px 25px 49px;--squiggle-panel:48px 20px 44px 24px / 22px 46px 21px 42px;--squiggle-button:44px 18px 40px 22px / 20px 42px 19px 38px;--squiggle-button-alt:20px 42px 19px 38px / 44px 18px 40px 22px;--squiggle-tile:37px 15px 34px 19px / 17px 36px 16px 32px;--squiggle-tabs:35px 14px 32px 18px / 16px 34px 15px 30px;--squiggle-field:33px 13px 30px 16px / 15px 31px 14px 28px;--squiggle-thumb:27px 11px 25px 14px / 12px 26px 12px 24px;--squiggle-pill:27px 11px 25px 14px / 12px 26px 12px 24px;--squiggle-chip:26px 10px 23px 13px / 12px 24px 11px 22px;--display:var(--font-beth-ellen), cursive;--body:var(--font-montserrat), Arial, sans-serif;--ui:var(--font-montserrat), Arial, sans-serif;--page-pad:clamp(1.5rem, 4.4vw, 5rem);--header-height:108px;--motion-ease:cubic-bezier(.22, 1, .36, 1);--motion-route:.24s;--motion-surface:.19s}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scroll-behavior:smooth}body{background-color:var(--paper);background-image:var(--paper-texture);min-width:320px;color:var(--ink);font-family:var(--body);text-rendering:optimizelegibility;margin:0;font-size:18px;line-height:1.42}body::selection{background:var(--lavender);color:var(--green-deep)}a{color:inherit;text-decoration:none}button,input,textarea{color:inherit;font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}.akibwa-project-banner{z-index:80;color:#101217;background:#faf8f3;width:100%;font-family:Avenir Next,Inter,Helvetica Neue,Arial,sans-serif;display:none;position:sticky;top:0}.akibwa-project-banner:after{content:"";background:#1b947d;height:4px;position:absolute;bottom:0;left:0;right:0}html[data-akibwa-project=true] .akibwa-project-banner{display:block}.akibwa-project-banner__inner{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:clamp(34px,5vw,78px);width:min(100% - 48px,1310px);min-height:104px;margin:0 auto;padding:12px 0 15px;display:grid}.akibwa-project-banner__identity{color:#030405;letter-spacing:-.06em;white-space:nowrap;margin:0;font-size:clamp(2.15rem,3.8vw,3.45rem);font-weight:540;line-height:.92}.akibwa-project-banner__name-stack{white-space:nowrap;display:inline-grid}.akibwa-project-banner__name{grid-area:1/1;justify-self:start;width:max-content;padding-bottom:.1em;font-weight:660;position:relative}.akibwa-project-banner__name:after{content:"";opacity:.5;background:currentColor;border-radius:.05em;height:.1em;position:absolute;bottom:0;left:0;right:0}.akibwa-project-banner__name--daniel{color:#236bb8;animation:8.4s infinite akibwa-name-daniel}.akibwa-project-banner__name--akibwa{color:#99451f;animation:8.4s infinite akibwa-name-akibwa}@keyframes akibwa-name-daniel{0%,47%{opacity:1;transform:translateY(0)}49%,98%{opacity:0;transform:translateY(.04em)}to{opacity:1;transform:translateY(0)}}@keyframes akibwa-name-akibwa{0%,47%{opacity:0;transform:translateY(.04em)}49%,98%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(.04em)}}.akibwa-project-banner__copy{justify-items:start;gap:10px;min-width:0;display:grid}.akibwa-project-banner__lede{color:#101217;letter-spacing:-.035em;white-space:nowrap;margin:0;font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(1.18rem,2vw,1.72rem);line-height:1.04}.akibwa-project-banner__nav{color:#596169;flex-wrap:wrap;align-items:baseline;gap:.35em 1em;font-size:clamp(.7rem,.88vw,.82rem);font-weight:680;line-height:1.2;display:flex}.akibwa-project-banner__nav a{text-underline-offset:.28em;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:1px;transition:color .12s,text-decoration-color .12s}.akibwa-project-banner__nav a:first-child{color:#303438}.akibwa-project-banner__nav a:nth-child(2){color:#247366}.akibwa-project-banner__nav a:nth-child(3){color:#9e3b50}.akibwa-project-banner__nav a:nth-child(4){color:#087997}.akibwa-project-banner__nav a:hover,.akibwa-project-banner__nav a:focus-visible{color:#101217;text-decoration-color:currentColor}.akibwa-project-banner__nav a:focus-visible{outline-offset:4px;outline:2px solid}@media (max-width:800px){.akibwa-project-banner__inner{grid-template-columns:1fr;gap:7px;min-height:132px;padding:10px 0 14px}.akibwa-project-banner__identity{font-size:clamp(2rem,10vw,2.8rem)}.akibwa-project-banner__copy{gap:7px}.akibwa-project-banner__lede{font-size:1.05rem}.akibwa-project-banner__nav{gap:.3em .78em;font-size:.7rem}}@media (max-width:420px){.akibwa-project-banner__inner{width:min(100% - 32px,1310px)}.akibwa-project-banner__identity{font-size:2rem}.akibwa-project-banner__lede{font-size:.95rem}}@media (max-height:560px) and (orientation:landscape){.akibwa-project-banner__inner{grid-template-columns:auto minmax(0,1fr);gap:18px;min-height:58px;padding:8px 0 10px}.akibwa-project-banner__identity{font-size:1.7rem}.akibwa-project-banner__copy{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}.akibwa-project-banner__lede{white-space:normal;font-size:clamp(.78rem,2vw,.95rem);line-height:1;display:block}.akibwa-project-banner__nav{white-space:nowrap;flex-wrap:nowrap;gap:.72em;font-size:.62rem}}@media (prefers-reduced-motion:reduce){.akibwa-project-banner__name--daniel{opacity:1;animation:none;transform:none}.akibwa-project-banner__name--akibwa{opacity:0;animation:none;transform:none}}:focus-visible{outline:2px solid var(--coral);outline-offset:5px;box-shadow:0 0 0 2px var(--paper-light), 0 0 0 5px var(--blue-deep)}.skip-link{top:.75rem;left:var(--page-pad);z-index:40;background:var(--blue-deep);min-height:44px;color:var(--paper-light);font-family:var(--ui);letter-spacing:.13em;text-transform:uppercase;align-items:center;padding:.6rem 1.4rem;font-size:.76rem;font-weight:700;transition:transform .14s ease-out;display:inline-flex;position:absolute;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}@media (prefers-reduced-motion:reduce){.skip-link{transition:none}}.route-fade{animation:route-fade-in var(--motion-route) var(--motion-ease) both}@keyframes route-fade-in{0%{opacity:.28}to{opacity:1}}@media (max-width:720px){:root{--motion-route:.19s;--motion-surface:.18s}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.route-fade{animation:none}}.brand-wordmark{aspect-ratio:900/280;width:100%;-webkit-mask-image:var(--wordmark-image);-webkit-mask-position:50%;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-image:var(--wordmark-image);mask-image:var(--wordmark-image);background:currentColor;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.brand-wordmark--green{color:var(--green)}.brand-wordmark--cream{color:var(--paper)}.site-header{z-index:20;min-height:var(--header-height);background-color:var(--paper);background-image:var(--paper-texture);border-bottom:1px solid #0b51391a;position:relative}.site-header__inner{min-height:var(--header-height);padding:0 var(--page-pad);justify-content:space-between;align-items:center;gap:3rem;display:flex}.site-header__brand{flex:0 380px;width:min(380px,35vw)}.header-wordmark{aspect-ratio:auto;width:100%;height:72px}.site-nav{align-self:stretch;align-items:stretch;gap:clamp(1.75rem,4vw,4.75rem);display:flex}.site-nav__link{min-height:44px;color:var(--green-deep);font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;align-items:center;font-size:.82rem;font-weight:700;display:flex;position:relative}.site-nav__link:after{background:var(--coral);content:"";opacity:0;height:2px;transition:opacity .16s,transform .16s;position:absolute;bottom:22px;left:0;right:0;transform:scaleX(.5)}.site-nav__link:hover,.site-nav__link[aria-current=page]{color:var(--coral-action)}.site-nav__link:hover:after,.site-nav__link[aria-current=page]:after{opacity:1;transform:scaleX(1)}.button{border-radius:var(--squiggle-button);min-height:60px;font-family:var(--ui);letter-spacing:.19em;text-align:center;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;padding:.9rem 2.7rem;font-size:.78rem;font-weight:600;line-height:1.15;transition:background .16s,color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--coral{background:var(--coral-action);color:var(--paper-light)}.button--coral:hover{background:#95301f}.text-action{min-height:44px;font-family:var(--ui);letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid #082b2433;align-items:center;font-size:.76rem;font-weight:700;transition:color .16s ease-out,transform .16s ease-out;display:inline-flex;position:relative}.text-action:after{background:var(--coral-action);content:"";transform-origin:0;height:2px;transition:transform .16s ease-out;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.text-action:hover{color:var(--coral-action);transform:translateY(-2px)}.text-action:hover:after,.text-action:focus-visible:after{transform:scaleX(1)}.text-action--on-dark{color:var(--paper);border-color:#f5ecd96b}.text-action--on-dark:after{background:var(--lavender)}.text-action--on-dark:hover,.text-action--on-dark:focus-visible{color:var(--lavender)}.eyebrow{color:var(--lavender-ink);font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:700}.editorial-rule{background:var(--lavender);width:min(360px,75%);height:2px;margin:1.4rem 0 1.2rem}.editorial-rule--green{background:var(--green)}.short-rule{background:var(--lavender);width:30px;height:1px;margin:.8rem 0 1.1rem;display:block}.asset-mark{display:block;position:relative}.asset-mark__picture{width:100%;height:100%;display:block}.asset-mark__image{object-fit:contain;object-position:center;width:100%;height:100%}.home-hero{min-height:min(660px, calc(100vh - var(--header-height)));grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);display:grid}.home-hero__copy{padding:clamp(3.25rem, 7vw, 7rem) var(--page-pad);background-color:var(--green);background-image:var(--paper-texture);color:var(--paper);flex-direction:column;justify-content:center;align-items:flex-start;display:flex;overflow:hidden}.home-hero__copy h1{width:100%;max-width:720px;font-family:var(--display);letter-spacing:-.035em;flex-direction:column;margin:0;font-size:clamp(2.6rem,4.8vw,5.9rem);font-weight:400;line-height:1.02;display:flex}.home-hero__copy h1>span{width:fit-content;max-width:100%}.home-title__script{color:var(--lavender);letter-spacing:-.04em;font-style:italic}.home-hero__copy>p{margin-bottom:1.7rem;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.25}.home-hero__actions{flex-direction:column;align-items:flex-start;gap:1.25rem;width:min(100%,470px);display:flex}.home-hero__links{flex-wrap:wrap;align-items:center;gap:.4rem 1.6rem;width:100%;display:flex}.principles-strip{border-left:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);background-color:var(--lavender-soft);background-image:var(--paper-texture);grid-template-rows:repeat(3,minmax(0,1fr));display:grid}.principle{border-bottom:1px solid var(--rule-soft);min-height:0;padding:clamp(1.5rem,2.5vw,2.5rem) clamp(1.5rem,3vw,3.5rem)}.principles-strip>:last-child{border-bottom:0}.principle{grid-template-columns:76px 1fr;align-items:center;gap:1.5rem;display:grid}.principle .asset-mark{width:68px;height:80px}.principle h2{color:var(--lavender-ink);font-family:var(--display);letter-spacing:-.025em;margin:0;font-size:clamp(1.35rem,1.8vw,1.75rem);font-weight:400;line-height:1.4}.principle p{max-width:360px;margin:0;font-size:1.05rem;line-height:1.3}.approach-composition{grid-template-columns:45% 55%;min-height:700px;display:grid}.approach-intro{padding:clamp(3.5rem, 6vw, 6rem) var(--page-pad);background-color:var(--lavender);background-image:var(--paper-texture);position:relative;overflow:hidden}.approach-intro h1{z-index:2;font-family:var(--display);letter-spacing:-.045em;word-spacing:.08em;margin:0;font-size:clamp(3rem,5.6vw,6.2rem);font-weight:400;line-height:1;position:relative}.approach-intro h1 em{color:var(--blue);font-style:normal}.approach-intro>p{z-index:2;max-width:400px;margin:0;font-size:clamp(1.2rem,1.7vw,1.55rem);line-height:1.3;position:relative}.approach-intro__splat{z-index:1;aspect-ratio:1;background-size:contain;width:min(78%,440px);position:absolute;bottom:-8%;right:-22%}.approach-list{padding:2rem var(--page-pad);position:relative;overflow:hidden}.approach-item{z-index:2;border-bottom:1px solid var(--rule);grid-template-columns:150px 1fr;align-items:center;gap:2rem;min-height:210px;display:grid;position:relative}.approach-item:last-of-type{border-bottom:0}.approach-item .asset-mark{width:126px;height:132px}.approach-item h2{font-family:var(--ui);letter-spacing:.09em;text-wrap:balance;text-transform:uppercase;margin-bottom:1rem;font-size:clamp(1.1rem,1.7vw,1.45rem);line-height:1.2}@media (min-width:821px){.approach-list,.faq-index{background-color:var(--lavender-soft);background-image:var(--paper-texture)}}@media (min-width:1000px){.approach-item h2{white-space:nowrap}}.approach-item p{max-width:470px;margin:0;font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.35}.teacher-band{min-height:136px;padding:1.5rem var(--page-pad);background-color:var(--green);background-image:var(--paper-texture);color:var(--paper);grid-template-columns:minmax(270px,.6fr) 2.2fr;align-items:center;display:grid}.teacher-band h2{border-right:2px solid var(--lavender);font-family:var(--display);letter-spacing:-.02em;word-spacing:.12em;margin:0;font-size:clamp(2rem,3vw,3rem);font-weight:400}.teacher-band p{margin:0;padding-left:clamp(2rem,4vw,4rem);font-size:clamp(1.15rem,1.75vw,1.55rem)}.editorial-callout{max-width:980px;padding:clamp(4rem, 8vw, 8rem) var(--page-pad);text-align:center;margin:0 auto}.editorial-callout h2{font-family:var(--display);letter-spacing:-.045em;margin-bottom:1rem;font-size:clamp(2.4rem,4.6vw,4.4rem);font-weight:400;line-height:1.08}.editorial-callout>p:not(.eyebrow){max-width:660px;margin:0 auto 2rem;font-size:1.25rem}.lessons-hero{grid-template-columns:59% 41%;min-height:300px;display:grid}.lessons-hero__title{padding:2.8rem var(--page-pad);background-color:var(--lavender);background-image:var(--paper-texture);align-items:center;display:flex}.lessons-hero h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:clamp(3rem,5.3vw,5.6rem);font-weight:400;line-height:1.02}.lessons-hero h1 em{font-weight:400}.lessons-hero__art{background-color:var(--green);background-image:var(--paper-texture);position:relative;overflow:hidden}.lessons-hero__art .lessons-hero__field{background-position:50%;background-size:contain;width:112%;height:112%;position:absolute;bottom:-7%;right:-6%}.lesson-programme{padding:2rem var(--page-pad) 2.5rem}.lesson-programme__intro{margin-bottom:2rem;font-size:clamp(1.25rem,2vw,1.7rem)}.lesson-programme__grid{grid-template-columns:repeat(3,1fr);display:grid}@media (min-width:821px){.lesson-programme__grid{grid-template-rows:auto auto auto auto auto auto}.lesson-product{grid-row:span 6;grid-template-rows:subgrid;align-content:start;display:grid}}.lesson-product{border-right:1px solid var(--rule);min-height:330px;padding:0 clamp(1.4rem,3vw,2.8rem);position:relative}.lesson-product:first-child{padding-left:0}.lesson-product:last-child{border-right:0;padding-right:0}.lesson-product__price{font-family:var(--display);letter-spacing:-.035em;margin:.35rem 0 0;font-size:clamp(3rem,4.6vw,4.6rem);line-height:1.05}.lesson-product__duration{margin:.35rem 0 0;font-size:clamp(1.15rem,1.75vw,1.45rem);line-height:1.25}.lesson-product__rule{background:var(--rule);width:100%;height:1px;margin:.8rem 0 1rem;display:block}.lesson-product__description{max-width:380px;margin:0;font-size:1.08rem}.lesson-product__note{color:var(--coral-action);font-family:var(--ui);letter-spacing:.13em;text-transform:uppercase;align-items:center;margin-top:.5rem;font-size:.78rem;font-weight:700;display:flex}.lessons-closing{border-bottom:1px solid var(--rule-soft);grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);display:grid}.lesson-location-band{min-height:112px;padding:1rem var(--page-pad);background-color:var(--green);background-image:var(--paper-texture);color:var(--paper);justify-content:space-between;align-items:center;gap:2rem;display:flex}.lesson-location-band>div{align-items:center;gap:1.8rem;display:flex}.lesson-location-band__mark{width:96px;height:76px}.lesson-location-band p{font-family:var(--ui);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:clamp(1rem,2vw,1.45rem);font-weight:700}.lesson-location-band .button{white-space:nowrap}.lessons-note{padding:2rem var(--page-pad);border-left:1px solid var(--rule-soft);background-color:var(--lavender-soft);background-image:var(--paper-texture);flex-direction:column;justify-content:center;align-items:flex-start;gap:1rem;display:flex}.lessons-note p{max-width:38ch;margin:0}.faq-hero{min-height:280px;padding:3.5rem var(--page-pad);background-color:var(--lavender);background-image:var(--paper-texture);align-items:center;display:flex;overflow:hidden}.faq-hero h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:clamp(3rem,5.6vw,5.8rem);font-weight:400;line-height:1.08}.faq-reference{border-bottom:1px solid var(--rule);grid-template-columns:minmax(260px,30%) 1fr;display:grid}.faq-index{border-right:1px solid var(--rule);min-height:660px;padding:3rem var(--page-pad);position:relative;overflow:hidden}.faq-index ol{z-index:2;margin:1.2rem 0 0;padding:0;list-style:none;position:relative}.faq-index li{border-top:1px solid var(--rule-soft)}.faq-index li:last-child{border-bottom:1px solid var(--rule-soft)}.faq-index a{min-height:56px;font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;align-items:center;font-size:.78rem;font-weight:700;display:flex}.faq-index a:hover{color:var(--coral-action)}.faq-index a span{width:42px;color:var(--lavender-ink)}.faq-index__answer-index{aspect-ratio:1;opacity:.9;width:min(68%,220px);position:absolute;bottom:2rem;right:12%}.faq-groups{padding:1.2rem var(--page-pad) 4rem}.faq-group{scroll-margin-top:calc(var(--header-height) + 20px)}.faq-group__header{border-bottom:2px solid var(--green);align-items:baseline;gap:1.3rem;padding:2.7rem 0 1.2rem;display:flex}.faq-group__header span{color:var(--lavender-ink);font-family:var(--ui);font-size:.78rem;font-weight:700}.faq-group__header h2{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:clamp(2rem,3vw,3.2rem);font-weight:400}.faq-row{border-bottom:1px solid var(--rule)}.faq-row summary{cursor:pointer;min-height:78px;font-family:var(--body);justify-content:space-between;align-items:center;gap:2rem;padding:1rem 0;font-size:clamp(1.12rem,1.7vw,1.4rem);list-style:none;display:flex}.faq-row summary::-webkit-details-marker{display:none}.faq-row__symbol{flex:0 0 24px;width:24px;height:24px;position:relative}.faq-row__symbol:before,.faq-row__symbol:after{background:var(--coral-action);content:"";width:24px;height:2px;position:absolute;top:50%;left:0}.faq-row__symbol:after{transition:transform .15s;transform:rotate(90deg)}.faq-row[open] .faq-row__symbol:after{transform:rotate(0)}.faq-row__answer{max-width:720px;padding:0 3.5rem 1.5rem 0}.faq-row__answer p{margin:0;font-size:1.05rem}.faq-contact{padding:clamp(4rem, 7vw, 7rem) var(--page-pad);text-align:center}.faq-contact h2{font-family:var(--display);letter-spacing:-.04em;margin-bottom:1.8rem;font-size:clamp(2.2rem,3.8vw,3.8rem);font-weight:400}.faq-contact__book{width:fit-content;margin:1.6rem auto 0;display:flex}.booking-composition{border-bottom:1px solid var(--rule);background-color:var(--green);background-image:var(--paper-texture);grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.booking-intro{padding:1.2rem var(--page-pad);background-color:var(--green);background-image:var(--paper-texture);color:var(--paper);grid-template-columns:minmax(260px,.85fr) minmax(0,1.8fr) clamp(140px,12vw,220px);align-items:center;gap:clamp(1.5rem,4vw,4.5rem);display:grid;position:relative;overflow:hidden}.booking-intro h1{z-index:2;font-family:var(--display);letter-spacing:-.035em;grid-column:1;margin:0;font-size:clamp(2rem,3vw,3.15rem);font-weight:400;line-height:1;position:relative}.booking-intro h1 br,.booking-intro>.editorial-rule{display:none}.booking-intro>p{max-width:430px;font-size:1.18rem}.booking-intro__points{z-index:2;grid-column:2;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.booking-intro__points li{min-height:62px;color:var(--lavender-soft);font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;border-right:1px solid #aaa4e6a6;grid-template-columns:56px minmax(0,1fr);align-items:center;padding:0 clamp(.75rem,1.5vw,1.25rem);font-size:.7rem;font-weight:700;display:grid}.booking-intro__points li:last-child{border-right:0}.booking-intro__points .asset-mark{width:46px;height:50px}.booking-intro__time-window{z-index:1;aspect-ratio:1;opacity:.96;width:clamp(220px,16vw,300px);margin:0;position:absolute;top:clamp(-52px,-3vw,-38px);right:clamp(-58px,-3vw,-36px)}.booking-provider--account{min-height:640px}@media (max-width:820px){.booking-provider--account{min-height:750px}}.booking-provider{--booking-control-height:52px;--booking-control-font-size:.7rem;--booking-control-tracking:.12em;min-width:0;padding:1.5rem var(--page-pad) 3rem;background-color:var(--paper);background-image:var(--paper-texture);container:booking/inline-size}.booking-provider .button,.booking-provider .booking-back{min-height:var(--booking-control-height);border-radius:var(--squiggle-button);font-family:var(--ui);font-size:var(--booking-control-font-size);letter-spacing:var(--booking-control-tracking);text-transform:uppercase;padding:.72rem clamp(1.1rem,2vw,1.6rem);font-weight:700;line-height:1.2}.booking-provider button.text-action{min-height:40px;font-family:var(--ui);font-size:var(--booking-control-font-size);letter-spacing:var(--booking-control-tracking);padding:.35rem .1rem .28rem;font-weight:700;line-height:1.2}.booking-placeholder{border:1px solid var(--rule);min-height:360px;margin-top:1.5rem;padding:3rem}.booking-placeholder h3{font-family:var(--display);font-size:2.5rem;font-weight:400}.booking-policy{min-height:100px;padding:1rem var(--page-pad);background-color:var(--lavender);background-image:var(--paper-texture);grid-template-columns:90px 1fr auto;align-items:center;gap:1.5rem;display:grid}.booking-policy .asset-mark{width:72px;height:72px}.booking-policy p{margin:0}body{-webkit-user-select:none;user-select:none}input,textarea,.booking-success__reference dd,.booking-success__note,.lesson-list__reference,.manage-booking__facts dd,.schedule-bookings__meta{-webkit-user-select:text;user-select:text}.booking-policy strong{color:var(--ink);white-space:nowrap;font-weight:700}.booking-policy .eyebrow{color:var(--ink)}.booking-policy a,.booking-policy button.text-action{color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:none;text-underline-offset:2px;background:0 0;border:0;border-bottom:1px solid;padding:0;text-decoration:underline}.booking-policy a:hover,.booking-policy a:focus-visible,.booking-policy button.text-action:hover,.booking-policy button.text-action:focus-visible{color:var(--coral-action)}.booking-stage{display:flow-root}.booking-state-note--initial{min-height:110px;padding:1.25rem}@container booking (min-width:1040px){.booking-stage--lessons{grid-template-columns:minmax(420px,.9fr) minmax(560px,1.1fr);align-items:stretch;gap:1rem clamp(1rem,2vw,1.4rem);display:grid}.booking-stage--lessons>.unified-account-area,.booking-stage--lessons>.unified-account-area>.my-lessons--embedded{display:contents}.booking-stage--lessons .unified-account-controls{grid-area:1/1/auto/-1}.booking-stage--lessons .my-lessons__account-section--detached{grid-area:2/1;min-width:0;margin:0}.booking-stage--lessons>.unified-calendar-shell{grid-area:2/2}}.booking-journey-start,.booking-workflow-sign-in{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e61a;padding:clamp(1.35rem,3.2vw,2.35rem)}.booking-journey-start__heading{margin-bottom:1.25rem}.booking-journey-start__heading .eyebrow{margin-bottom:.35rem}.booking-journey-start__heading h2,.booking-workflow-step-head h2{font-family:var(--ui);margin:0;font-size:clamp(1.05rem,2.3vw,1.35rem);line-height:1.3}.booking-journey-start__choices{grid-template-columns:1fr;gap:.75rem;display:grid}.booking-intent-card{border:1px solid var(--rule);border-radius:var(--squiggle-tile);min-height:84px;color:var(--ink);cursor:pointer;text-align:left;background:#f5ecd980;grid-template-columns:46px minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.9rem 1rem;transition:border-color .16s,background .16s;display:grid}.booking-intent-card--book{background:#c23a2714;border-color:#c23a2761}.booking-intent-card:hover,.booking-intent-card:focus-visible{border-color:var(--coral-action);background:#c23a271f}.booking-intent-card__icon{border-radius:var(--squiggle-pill);width:42px;height:42px;color:var(--lavender-ink);background:#aaa4e63d;place-items:center;display:grid}.booking-intent-card--book .booking-intent-card__icon{color:var(--coral-action);background:#c23a271f}.booking-intent-card strong{font-family:var(--ui);font-size:.95rem;line-height:1.3}.booking-intent-card__count{min-width:1.65rem;min-height:1.65rem;color:var(--coral-action);font-family:var(--ui);background:#c23a271f;border-radius:50%;place-items:center;font-size:.66rem;font-weight:700;display:grid}.booking-intent-card>svg{color:var(--lavender-ink)}.booking-workflow-step-head{justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:.9rem;display:flex}.booking-workflow-step-head .booking-back{flex:none;margin-left:auto}@container booking (min-width:540px){.booking-journey-start__choices{grid-template-columns:repeat(2,minmax(0,1fr))}}@keyframes booking-flow-in{0%{opacity:.56;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes booking-content-in{0%{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}html.booking-transitioning .booking-stage{pointer-events:none}html.booking-transitioning .booking-selection-stack,html.booking-transitioning .booking-choice-summary,html.booking-transitioning .booking-journey-start,html.booking-transitioning .booking-workflow-sign-in,html.booking-transitioning .calendar-weeks,html.booking-transitioning .unified-account-controls,html.booking-transitioning .unified-calendar__panel-content,html.booking-transitioning .booking-confirmation-stage{animation:booking-flow-in var(--motion-surface) var(--motion-ease) both}.unified-calendar__panel-content>.booking-state-note,.unified-calendar__panel-content>.booking-alert,.unified-calendar__panel-content>.slot-grid,.unified-calendar__availability>.booking-state-note,.unified-calendar__availability>.slot-grid{animation:.15s ease-out both booking-content-in}.booking-back{border:1px solid var(--coral);border-radius:var(--squiggle-pill);min-height:44px;color:var(--coral-action);cursor:pointer;font-family:var(--ui);letter-spacing:.06em;white-space:nowrap;text-transform:uppercase;background:0 0;flex-wrap:nowrap;align-items:center;gap:.4rem;padding:.55rem 1.1rem .55rem .9rem;font-size:.78rem;font-weight:700;transition:background .16s,color .16s;display:inline-flex}.booking-back:hover,.booking-back:focus-visible{background:var(--coral-action);color:#fff}.booking-provider .booking-back--tertiary{border:0;border-bottom:1px solid #c23a274d;border-radius:0;min-height:40px;padding:.35rem .1rem .28rem}.booking-provider .booking-back--tertiary:hover,.booking-provider .booking-back--tertiary:focus-visible{color:#95301f;background:0 0}.booking-step-head .booking-existing-link{letter-spacing:.14em;align-self:flex-start;width:auto;min-height:46px;margin-top:.2rem;padding:.6rem 1.3rem;font-size:.7rem}.booking-step-head{flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;margin-bottom:.2rem;display:flex}.booking-step-head--lesson{flex-direction:column;align-items:flex-start;gap:1.5rem;margin-bottom:2rem}.booking-step-head .booking-step-heading{margin:0}.booking-step-heading{font-family:var(--display);margin:.5rem 0 .3rem;font-size:clamp(1.9rem,4.2vw,2.9rem);font-weight:400;line-height:1.05}.booking-step-heading:focus-visible{outline-offset:6px}.booking-step-note-row{flex-wrap:wrap;align-items:center;gap:.75rem 1.75rem;margin:.6rem 0 1.5rem;display:flex}.booking-step-note-row .booking-step-note{margin:0}.booking-step-note{opacity:.8;margin-bottom:1.5rem;font-size:.95rem}.lesson-choice{grid-template-columns:1fr;gap:.7rem;margin-top:1.25rem;display:grid}@container booking (min-width:520px){.lesson-choice{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:.85rem}.lesson-choice .lesson-card{grid-template-columns:1fr;align-content:start;gap:.45rem;padding:1.4rem 1.3rem 1.2rem}.lesson-choice .lesson-card>svg:last-child{display:none}}.lesson-card{border:1px solid var(--rule);border-radius:var(--squiggle-tile);color:inherit;cursor:pointer;text-align:left;background:0 0;grid-template-columns:56px 1fr auto;align-items:center;gap:1rem;padding:.9rem 1.1rem;transition:background .14s,border-color .14s;display:grid}.lesson-choice .lesson-card:nth-child(2){border-radius:15px 37px 19px 34px/36px 17px 32px 16px}.lesson-choice .lesson-card:nth-child(3){border-radius:32px 19px 37px 15px/16px 34px 17px 36px}.lesson-card:hover,.lesson-card:focus-visible{border-color:var(--coral);background:#aaa4e629}.lesson-card.is-selected{border-color:var(--coral-action);background:#c23a271f;box-shadow:inset 0 -3px #c23a2799}.lesson-card__mark{width:52px;height:52px}.lesson-card__mark--repeat{border-radius:var(--squiggle-pill);color:var(--lavender-ink);background:#aaa4e642;justify-content:center;align-items:center;display:inline-flex}.lesson-card__mark .asset-mark__image{object-fit:contain;width:100%;height:100%}.lesson-card__text{flex-direction:column;gap:.1rem;display:flex}.lesson-card strong{font-family:var(--display);font-size:1.55rem;font-weight:400;line-height:1.32}.lesson-card__meta{font-family:var(--ui);letter-spacing:.07em;text-transform:uppercase;opacity:.75;font-size:.76rem;font-weight:700}.lesson-card svg:last-child{color:var(--lavender-ink)}.unified-booking__head{justify-content:flex-end;align-items:flex-start;gap:1rem 1.5rem;width:100%;margin:0 0 .65rem;display:flex}.unified-booking__lesson-picker{margin-bottom:1.6rem}.unified-booking__lesson-picker .lesson-choice{margin-top:.65rem}.booking-setup{gap:.85rem;max-width:700px;margin:.75rem auto 0;display:grid}.booking-setup__group{border:0;gap:.4rem;margin:0;padding:0;display:grid}.booking-setup__group legend{color:var(--lavender-ink);font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.1rem;font-size:.68rem;font-weight:700}.booking-setup .segmented{width:100%;margin:0}.booking-repeat-choice.booking-repeat-choice--setup{border-radius:0 var(--squiggle-field) var(--squiggle-field) 0;background:0 0;border:0;border-left:3px solid #524a967a;margin:.1rem 0 0;padding:.2rem 0 .2rem .8rem}.booking-setup__continue{justify-self:end;min-width:min(190px,100%)}.booking-selection-stack{gap:.7rem;display:grid}.booking-selection-summary,.booking-choice-summary{border:1px solid var(--rule);border-radius:var(--squiggle-field);background:#aaa4e61c;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.7rem .9rem;display:grid}.booking-selection-summary__mark{border-radius:var(--squiggle-tile);width:44px;height:44px;color:var(--blue-deep);background:#2f58b224;justify-content:center;align-items:center;display:inline-flex}.booking-selection-summary__lesson-mark,.booking-selection-summary__lesson-mark .asset-mark__picture,.booking-selection-summary__lesson-mark .asset-mark__image{width:42px;height:42px;display:block}.booking-date-summary{border:1px solid var(--rule);border-radius:var(--squiggle-field);background:#aaa4e61c;grid-area:calendar;grid-template-columns:48px minmax(0,1fr) auto;align-self:start;align-items:center;gap:.75rem;padding:.7rem .9rem;display:grid}.booking-date-summary__mark{border-radius:var(--squiggle-tile);width:44px;height:44px;color:var(--blue-deep);background:#2f58b224;justify-content:center;align-items:center;display:inline-flex}.booking-choice-summary__mark{width:44px;height:44px}.booking-choice-summary__copy{flex-direction:column;gap:.08rem;min-width:0;display:flex}.booking-choice-summary__copy .eyebrow{color:var(--ink);letter-spacing:.04em;margin:0;font-size:.875rem}.booking-choice-summary__copy strong{font-family:var(--ui);font-size:.95rem;line-height:1.25}.booking-choice-summary__copy small{opacity:.72;font-size:.75rem;line-height:1.35}.booking-provider button.booking-choice-summary__change{color:var(--ink);letter-spacing:.04em;white-space:nowrap;justify-self:end;margin-left:auto;font-size:.875rem}.booking-provider button.booking-choice-summary__change:hover,.booking-provider button.booking-choice-summary__change:focus-visible{color:var(--ink)}.booking-provider button.booking-choice-summary__change:after{background:var(--ink)}.unified-calendar__empty-summary{border-left:3px solid var(--coral-action);margin:-.35rem 0 1rem;padding:.55rem 0 .55rem .8rem;font-size:.88rem;line-height:1.45}.unified-calendar-shell{min-width:0}.unified-calendar{grid-template-areas:"calendar""panel";align-items:start;gap:.75rem 1rem;min-width:0;display:grid}.unified-calendar.unified-calendar--overview{grid-template-columns:minmax(0,1fr);grid-template-areas:"calendar"}.unified-calendar__grid{grid-area:calendar;width:100%;max-width:none}.unified-calendar__toolbar{flex-wrap:wrap;grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:.55rem;display:grid}.unified-calendar__legend{font-family:var(--ui);letter-spacing:.05em;text-transform:uppercase;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.75rem 1rem;font-size:.63rem;font-weight:700;line-height:1.3;display:flex}.unified-calendar__expand{white-space:nowrap}.unified-calendar__range{color:var(--lavender-ink);font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;font-size:.63rem;font-weight:700;line-height:1.3}.unified-calendar__range-actions{justify-content:flex-end;align-items:center;gap:.35rem .8rem;margin-left:auto;line-height:1.3;display:flex}.unified-calendar__legend span{align-items:center;gap:.35rem;display:inline-flex}.unified-calendar__legend i{border-radius:50%;width:10px;height:10px}.unified-calendar__legend .is-booked{background:var(--coral-action)}.unified-calendar__legend .is-free{background:var(--lavender)}.unified-calendar .calendar-week button.has-booking{color:var(--coral-action);background:#c23a2729;font-weight:700}.unified-calendar .calendar-week button.has-booking.has-availability{background:linear-gradient(135deg,#c23a2733 0 48%,#aaa4e657 48% 100%)}.unified-calendar .calendar-week button.has-booking:hover,.unified-calendar .calendar-week button.has-booking:focus-visible,.unified-calendar .calendar-week button.has-booking.is-selected{background:var(--coral-action);color:#fff}.unified-calendar .calendar-week button small{max-width:100%;font-family:var(--ui);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;margin-top:.12rem;font-size:.48rem;font-weight:700;line-height:1.1;display:block;overflow:hidden}.unified-calendar .calendar-week button small.calendar-booking-times{letter-spacing:0;white-space:normal;justify-items:center;margin-top:.15rem;font-size:.46rem;line-height:1.12;display:grid}.calendar-booking-times span{display:block}.unified-calendar__panel{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e621;grid-area:panel;min-width:0;padding:clamp(1rem,2.4vw,1.35rem);position:relative;overflow:hidden}#booking-lesson-choice,#lesson-calendar,#booking-next-step,#booking-step-heading{scroll-margin-top:1rem}.unified-calendar__panel-content>h3{font-family:var(--ui);margin:.2rem 0 .8rem;font-size:1rem;line-height:1.4}.lesson-manage-overlay{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1a31693d;place-items:center;padding:clamp(1rem,4vw,2rem);animation:.16s ease-out both lesson-manage-backdrop;display:grid;position:fixed;inset:0;overflow-y:auto}.lesson-manage-overlay--reschedule{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#111f486b}.unified-calendar--managed-overlay{z-index:61;box-sizing:border-box;overscroll-behavior:contain;border-radius:var(--squiggle-panel);background-color:var(--paper-light);background-image:radial-gradient(circle at 96% 2%, #ef5d3c1f, transparent 24%), var(--paper-texture);width:min(100vw - 2rem,1040px);max-height:calc(100dvh - 2rem);animation:lesson-manage-workspace-in .2s var(--motion-ease) both;border:1px solid #aaa4e6e6;outline:0;padding:clamp(.65rem,2vw,1rem);position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 28px 80px #111f4861}.unified-calendar--managed-overlay .unified-calendar__toolbar{padding-right:2.65rem}.unified-calendar--managed-overlay .unified-calendar__grid{background:0 0;border:0;border-radius:0;align-self:stretch}.unified-calendar--managed-overlay .unified-calendar__panel{background:0 0;border:0;border-radius:0;top:0}.lesson-manage-workspace__close{z-index:3;width:38px;height:38px;color:var(--ink);cursor:pointer;background:#aaa4e62e;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:.85rem;right:.85rem}.lesson-manage-workspace__close:hover,.lesson-manage-workspace__close:focus-visible{color:var(--coral-action);background:#aaa4e657}.lesson-manage-dialog{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:var(--paper-light);width:min(100%,440px);max-height:min(82vh,680px);animation:lesson-manage-dialog-in .19s var(--motion-ease) both;outline:0;gap:.75rem;padding:clamp(1.25rem,4vw,1.7rem);display:grid;position:relative;overflow-y:auto;box-shadow:0 24px 65px #1a316942}.lesson-manage-dialog__content{animation:lesson-manage-content-in .16s var(--motion-ease) both;gap:.75rem;display:grid}.lesson-manage-dialog:before{z-index:-1;border-radius:inherit;content:"";background:radial-gradient(circle at 94% 4%,#ef5d3c24,#0000 28%),linear-gradient(145deg,#aaa4e614,#0000 58%);position:absolute;inset:0}.lesson-manage-dialog__close{z-index:2;width:38px;height:38px;color:var(--ink);cursor:pointer;background:#aaa4e62e;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:.8rem;right:.85rem}.lesson-manage-dialog__close:hover,.lesson-manage-dialog__close:focus-visible{color:var(--coral-action);background:#aaa4e657}.lesson-manage-dialog__content>.lesson-calendar__status,.lesson-manage-dialog__content>.eyebrow{justify-self:start;margin-right:2.8rem}.lesson-manage-dialog h2{max-width:calc(100% - 2.8rem);font-family:var(--ui);margin:0;font-size:clamp(1.3rem,4vw,1.65rem);line-height:1.15}.lesson-manage-dialog__loading{align-content:center;gap:.45rem;min-height:100px;display:grid}.lesson-manage-dialog__loading h2{margin:0}.lesson-manage-dialog__lesson{border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);gap:.18rem;padding:.8rem 0;display:grid}.lesson-manage-dialog__lesson strong{font-family:var(--ui);font-size:.9rem;line-height:1.35}.lesson-manage-dialog__lesson span,.lesson-manage-dialog__question,.lesson-manage-dialog__decision>p{font-size:.8rem;line-height:1.5}.lesson-manage-dialog__question{margin-top:.1rem}.lesson-manage-dialog__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.lesson-manage-dialog__actions .button{width:100%;min-height:48px;padding:.72rem .8rem}.lesson-manage-dialog__actions .text-action{justify-self:center}.lesson-manage-dialog__actions--sequence{grid-template-columns:minmax(0,1fr)}.lesson-manage-dialog__series{border-top:1px solid var(--rule-soft);color:var(--lavender-ink);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.1rem .55rem;padding-top:.85rem;display:grid}.lesson-manage-dialog__series>svg{margin-top:.1rem}.lesson-manage-dialog__series>div{gap:.12rem;display:grid}.lesson-manage-dialog__series strong{font-family:var(--ui);font-size:.78rem}.lesson-manage-dialog__series span{font-size:.7rem;line-height:1.4}.lesson-manage-dialog__series .text-action{grid-column:2;justify-self:start;min-height:34px;margin-top:.2rem;font-size:.68rem}.lesson-manage-dialog__decision{gap:.8rem;display:grid}.lesson-manage-dialog__done{width:100%;margin-top:.2rem}.managed-lesson__current-time{margin:0 0 .8rem}.managed-lesson__duration{border:0;margin:0 0 .85rem;padding:0}.managed-lesson__duration legend{color:var(--lavender-ink);font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.45rem;font-size:.63rem;font-weight:700;line-height:1.3}.managed-lesson__duration .segmented{margin-bottom:0}.managed-lesson__duration-note{background:#aaa4e61f;border-radius:16px;margin:0 0 .85rem;padding:.7rem .8rem}@keyframes lesson-manage-backdrop{0%{opacity:0}}@keyframes lesson-manage-dialog-in{0%{opacity:0;transform:translateY(10px)scale(.985)}}@keyframes lesson-manage-content-in{0%{opacity:.45;transform:translateY(3px)}}@keyframes lesson-manage-workspace-in{0%{opacity:0;transform:translate(-50%,calc(10px - 50%))scale(.99)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.managed-lesson__header{justify-content:space-between;align-items:flex-start;gap:.75rem 1rem;margin-bottom:.75rem;display:flex}.managed-lesson__header>div{min-width:0}.managed-lesson__header h3{font-family:var(--ui);margin:.45rem 0 0;font-size:1rem;line-height:1.35}.managed-lesson__header .booking-back{flex:none;margin-left:auto}.unified-calendar__lesson-facts{gap:0;margin:0 0 1.1rem;display:grid}.unified-calendar__lesson-facts>div{border-top:1px solid var(--rule-soft);grid-template-columns:64px minmax(0,1fr);gap:.65rem;padding:.55rem 0;display:grid}.unified-calendar__lesson-facts dt{font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;opacity:.68;font-size:.66rem;font-weight:700}.unified-calendar__lesson-facts dd{margin:0;font-size:.86rem;line-height:1.4}.managed-lesson__series-context{border-top:1px solid var(--rule-soft);gap:.75rem;margin-top:1rem;padding-top:.9rem;display:grid}.managed-lesson__series-heading{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.6rem;display:grid}.managed-lesson__series-heading>svg{color:var(--lavender-ink);margin-top:.08rem}.managed-lesson__series-heading .eyebrow{margin-bottom:.2rem}.managed-lesson__series-heading p:last-child,.managed-lesson__series-manage>p{opacity:.78;font-size:.78rem;line-height:1.45}.managed-lesson__series-context>.text-action{justify-self:end}.managed-lesson__series-manage{border-top:1px solid var(--rule-soft);gap:.7rem;min-width:0;padding-top:.75rem;display:grid}.managed-lesson__series-manage>p{overflow-wrap:anywhere;min-width:0}.unified-calendar__bookings,.unified-calendar__availability,.unified-calendar__move{margin-top:1rem}.unified-calendar__bookings,.my-lessons__account-bookings{gap:.55rem;display:grid}.lesson-calendar__lesson.lesson-calendar__lesson--booked{border-radius:var(--squiggle-field);background:#c23a2717;border:1px solid #c23a2742;padding:.75rem}.lesson-calendar__lesson.lesson-calendar__lesson--booked:last-child{padding-bottom:.75rem}.lesson-calendar__lesson.lesson-calendar__lesson--booked:hover,.lesson-calendar__lesson.lesson-calendar__lesson--booked:focus-visible{border-color:var(--coral-action);background:#c23a2724}.upcoming-lesson-group{border-radius:var(--squiggle-field);background:#c23a2713;border:1px solid #c23a2742;transition:border-color .22s cubic-bezier(.22,1,.36,1),background .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1);overflow:hidden}.upcoming-lesson-group--single:hover,.upcoming-lesson-group--single:focus-within{background:#c23a271f;border-color:#c23a2770}.upcoming-lesson-group--series{background:linear-gradient(115deg, #aaa4e63d, #ffffff29), var(--paper-light);border-color:#524a966b;box-shadow:inset 4px 0 #524a96b8}.upcoming-lesson-group--series:hover,.upcoming-lesson-group--series:focus-within{background:linear-gradient(115deg, #aaa4e66b, #ffffff47), var(--paper-light);border-color:#524a969e;box-shadow:inset 4px 0 #524a96cc,0 9px 24px #524a961f}.upcoming-lesson-group.is-calendar-target,.upcoming-lesson-occurrence.is-calendar-target{background:#aaa4e64d;border-color:#524a96ad;box-shadow:0 9px 24px #524a9624}.upcoming-lesson-group--series .lesson-calendar__status--recurring{background:var(--lavender-ink)}.upcoming-lesson-group--series .lesson-calendar__lesson-copy>small>span{overflow-wrap:anywhere;min-width:0}.my-lessons__history-bookings{gap:.55rem;display:grid}.history-lesson-card{background:linear-gradient(115deg, #aaa4e626, #ffffff1a), var(--paper-light);border-color:#524a9647;box-shadow:inset 4px 0 #524a967a}.history-lesson-card--cancelled{background:#c23a270e;border-color:#c23a273d;box-shadow:inset 4px 0 #c23a2775}.history-lesson-card__summary{grid-template-columns:42px minmax(0,1fr)}.history-lesson-card__status--completed{background:var(--lavender-ink)}.history-lesson-card__status--cancelled{background:var(--coral-action)}.lesson-calendar__lesson-copy>.history-lesson-card__reference{font-family:var(--ui);letter-spacing:.05em;opacity:.56;margin-top:.1rem;font-size:.64rem}.upcoming-lesson-group__summary{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.8rem;display:grid}.upcoming-lesson-group__action{color:var(--coral-action);font-family:var(--ui);letter-spacing:.08em;text-align:right;text-transform:uppercase;flex:none;justify-content:flex-end;align-items:center;gap:.18rem;font-size:.61rem;font-weight:700;line-height:1.25;display:inline-flex}.upcoming-lesson-group__actions{flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:.1rem;min-width:max-content;display:flex}.upcoming-lesson-group__actions .text-action{min-height:34px;font-size:.62rem}.upcoming-lesson-group__dates-toggle{color:var(--lavender-ink)}.upcoming-lesson-group__recurrence-action{color:var(--coral-action)}.upcoming-lesson-occurrences{gap:.42rem;margin:-.1rem 0 .25rem clamp(.6rem,3vw,1.6rem);display:grid}.upcoming-lesson-occurrence{border-radius:var(--squiggle-field);width:100%;color:inherit;cursor:pointer;text-align:left;transition:background .18s var(--motion-ease), border-color .18s var(--motion-ease);background:#aaa4e617;border:1px solid #524a963d;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.72rem .8rem;display:grid}.upcoming-lesson-occurrence:hover,.upcoming-lesson-occurrence:focus-visible{background:#aaa4e633;border-color:#524a9680}.upcoming-lesson-occurrence>span:first-child{flex-direction:column;gap:.16rem;min-width:0;display:flex}.upcoming-lesson-occurrence strong{font-family:var(--ui);font-size:.78rem;line-height:1.35}.upcoming-lesson-occurrence small{opacity:.72;font-size:.7rem;line-height:1.35}.upcoming-lesson-group__dates{border-top:1px solid var(--rule-soft);background:#ffffff3d;padding:0 .75rem .35rem}.upcoming-lesson-group__date{border:0;border-bottom:1px solid var(--rule-soft);width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.72rem .05rem;transition:background .18s,color .18s;display:grid}.upcoming-lesson-group__date:last-child{border-bottom:0}.upcoming-lesson-group__date:hover,.upcoming-lesson-group__date:focus-visible{color:var(--coral-action);background:#aaa4e61f}.upcoming-lesson-group__date>span:first-child{flex-direction:column;gap:.16rem;min-width:0;display:flex}.upcoming-lesson-group__date strong{font-family:var(--ui);font-size:.78rem;line-height:1.35}.upcoming-lesson-group__date small{opacity:.72;font-size:.7rem;line-height:1.35}@container booking (max-width:480px){.upcoming-lesson-occurrences{margin-left:.45rem}.upcoming-lesson-group__summary{grid-template-columns:38px minmax(0,1fr);grid-template-areas:"mark copy""actions actions"}.upcoming-lesson-group__summary .lesson-calendar__mark{grid-area:mark}.upcoming-lesson-group__summary .lesson-calendar__lesson-copy{grid-area:copy}.upcoming-lesson-group__summary .upcoming-lesson-group__actions{flex-direction:column;grid-area:actions;align-items:stretch;width:100%;min-width:0;margin-top:.38rem}.upcoming-lesson-group__summary .upcoming-lesson-group__actions .text-action{justify-content:space-between;width:100%}.upcoming-lesson-group--single .upcoming-lesson-group__summary{grid-template-columns:38px minmax(0,1fr) auto;grid-template-areas:"mark copy actions";padding-right:.55rem}.upcoming-lesson-group--single .upcoming-lesson-group__summary .upcoming-lesson-group__actions{align-self:center;align-items:flex-end;width:auto;min-width:max-content;margin-top:0}.upcoming-lesson-group--single .upcoming-lesson-group__summary .upcoming-lesson-group__actions .text-action{justify-content:flex-end;width:auto;min-height:42px;padding-inline:.2rem}.history-lesson-card__summary{grid-template-columns:38px minmax(0,1fr);grid-template-areas:"mark copy"}}.lesson-calendar__status{border-radius:var(--squiggle-pill);background:var(--coral-action);color:#fff;width:max-content;font-family:var(--ui);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:.22rem;margin:0;padding:.16rem .45rem;font-size:.56rem;font-weight:700;line-height:1.2;display:inline-flex}.unified-calendar__availability{border-top:1px solid var(--rule);padding-top:1rem}.unified-calendar__availability .slot-grid{margin-top:.75rem}.unified-calendar__prompt{border-top:1px solid var(--rule-soft);opacity:.78;margin:1rem 0 0;padding-top:1rem;font-size:.88rem;line-height:1.5}.unified-account-area{z-index:4;width:100%;margin:0 0 1.6rem;position:relative}.unified-account-controls{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e61a;width:100%;padding:1.2rem clamp(1.2rem,2.6vw,1.65rem) 1.3rem}.unified-account-controls .my-lessons__header--embedded{margin-bottom:0}.unified-account-controls .my-lessons__details{border:0;border-top:1px solid var(--rule-soft);background:0 0;border-radius:0;gap:1rem;margin:1rem 0 0;padding:1.05rem 0 0}.unified-account-controls .my-lessons__series{border:0;border-top:1px solid var(--rule-soft);background:0 0;border-radius:0;margin:.9rem 0 0;padding:.9rem 0 0}@container booking (min-width:700px){.unified-calendar{grid-template-columns:minmax(0,1fr) minmax(245px,.62fr);grid-template-areas:"calendar panel";align-content:start}.unified-calendar__panel{position:sticky;top:1rem}.unified-calendar__empty-summary{display:none}}.unified-calendar__panel .manage-booking__actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.unified-calendar__panel .manage-booking__actions>.button,.unified-calendar__panel .manage-booking__actions>.booking-back{white-space:normal;width:100%;min-height:48px;padding:.65rem;line-height:1.2}@container booking (max-width:680px){.unified-booking__head{flex-direction:column;align-items:flex-start;width:100%;margin-left:0}.unified-account-controls{width:100%;margin-left:0;padding:1.15rem}.my-lessons__header--embedded .my-lessons__header-actions{flex-wrap:nowrap;justify-content:flex-end;gap:.45rem .85rem;margin-left:auto}.booking-selection-summary,.booking-choice-summary{grid-template-columns:42px minmax(0,1fr) auto}.booking-date-summary{grid-template-columns:38px minmax(0,1fr) auto;gap:.45rem;padding:.65rem}.booking-selection-summary__mark,.booking-choice-summary__mark,.booking-date-summary__mark{width:38px;height:38px}.booking-date-summary .booking-choice-summary__change{letter-spacing:.02em}.booking-choice-summary__change{grid-column:auto;justify-self:end}.unified-calendar__toolbar{align-items:flex-start}}@container booking (max-width:480px){.my-lessons__header--embedded{grid-template-columns:minmax(0,1fr) auto;row-gap:.5rem}.my-lessons__header--embedded .my-lessons__header-actions{display:contents}.my-lessons__header--embedded .my-lessons__header-actions .text-action{letter-spacing:.08em;grid-area:2/1/auto/-1;justify-content:flex-end;justify-self:end;width:auto;font-size:.62rem}.my-lessons__header--embedded .my-lessons__menu{grid-area:1/2}}.booking-step-head+.calendar-panel,.booking-step-note+.calendar-panel{margin-top:.9rem}.calendar-panel{border-radius:var(--squiggle-panel);border:1px solid var(--rule);max-width:640px;padding:clamp(1rem,2.4vw,1.75rem);position:relative;overflow:clip}.calendar-section-heading h2,.student-details-form h3{font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.3rem;font-size:.82rem}.calendar-section-heading p,.booking-state-note{margin-bottom:1rem;font-size:.92rem}.calendar-weekdays,.calendar-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;display:grid}.calendar-panel>*{z-index:1;position:relative}.calendar-panel__mark{z-index:0;opacity:.16;pointer-events:none;width:240px;height:240px;position:absolute;bottom:-92px;right:-84px}.calendar-week+.calendar-week{margin-top:7px}.calendar-month{font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--lavender-ink);margin:1.1rem 0 .4rem;font-size:.68rem;font-weight:700}.calendar-month:first-child{margin-top:.2rem}.calendar-weekdays span{font-family:var(--ui);letter-spacing:.06em;text-align:center;text-transform:uppercase;opacity:.7;padding:.55rem 0;font-size:.64rem;font-weight:700}.calendar-week button{border-radius:var(--squiggle-chip);min-height:62px;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;font-size:clamp(.9rem,1.6vw,1.05rem);transition:background .12s,color .12s;display:grid;position:relative}.calendar-week button:disabled{cursor:not-allowed}.calendar-week button:disabled>span{opacity:.38}.calendar-week button.has-availability{color:var(--green-deep);background:#aaa4e642;font-weight:700}.calendar-week button em{font-family:var(--ui);text-overflow:ellipsis;white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;opacity:.75;font-size:.5rem;font-style:normal;font-weight:700;display:block;overflow:hidden}.calendar-week button.is-today>span:after{color:var(--lavender-ink);content:"today";font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;margin-top:.1rem;font-size:.5rem;font-weight:700;display:block}.calendar-week button.is-selected,.calendar-week button.is-selected.has-availability,.calendar-week button.has-availability:hover,.calendar-week button.has-availability:focus-visible{background:var(--green);color:var(--paper)}.calendar-week button .is-muted{opacity:.45;font-weight:400}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.45rem;display:grid}.slot-grid button{border:1px solid var(--rule);border-radius:var(--squiggle-chip);min-height:48px;color:var(--green-deep);cursor:pointer;font-family:var(--ui);background:#ffffff8c;padding:.45rem .4rem;font-size:.94rem;font-weight:700;transition:background .12s,color .12s,border-color .12s,transform .12s}.slot-grid button:hover{transform:translateY(-1px)}.slot-grid button:hover,.slot-grid button:focus-visible,.slot-grid button.is-selected{border-color:var(--green);background:var(--green);color:var(--paper)}.slot-grid button small{opacity:.72;white-space:nowrap;font-size:.58rem;line-height:1.05;display:block}.booking-final{grid-template-columns:1fr;align-items:start;gap:clamp(1.25rem,3vw,2.5rem);margin-top:1rem;display:grid}.booking-confirmation-stage>.booking-selection-stack{margin-bottom:clamp(1.3rem,3vw,2rem)}.booking-confirmation-stage>.booking-step-heading{margin-top:0}@container booking (max-width:430px){.lesson-choice{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.booking-recap{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e624;padding:1.5rem;position:relative;overflow:hidden}.booking-recap__mark{z-index:0;opacity:.3;pointer-events:none;width:128px;height:128px;position:absolute;top:-18px;right:-22px}.booking-recap>:not(.booking-recap__mark){z-index:1;position:relative}.booking-recap h3{font-family:var(--display);flex-wrap:wrap;align-items:baseline;gap:.6rem;margin:.5rem 0 .9rem;font-size:1.7rem;font-weight:400;line-height:1.1;display:flex}.booking-recap__change{border:1px solid var(--coral);border-radius:var(--squiggle-pill);min-height:40px;color:var(--coral-action);cursor:pointer;font-family:var(--ui);letter-spacing:.07em;white-space:nowrap;text-transform:uppercase;background:0 0;flex-flow:row;align-items:center;gap:.35rem;padding:0 .95rem;font-size:.72rem;font-weight:700;transition:background .16s,color .16s;display:inline-flex}.booking-recap__change:after{display:none}.booking-recap__change:hover,.booking-recap__change:focus-visible{background:var(--coral-action);color:#fff}.booking-recap__foot{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;margin-top:1rem;display:flex}.booking-recap__foot strong{margin-top:0}.booking-recap p>span{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.booking-recap p{align-items:flex-start;gap:.5rem;margin-bottom:.55rem;font-size:.92rem;line-height:1.45;display:flex}.booking-recap__pair{flex-wrap:wrap;gap:.4rem 1.4rem;display:flex}.booking-recap__pair p{margin-bottom:0}.booking-recap p svg{flex:none;margin-top:.15rem}.booking-recap strong{font-family:var(--display);font-size:2.1rem;display:block}.student-details-form label{margin-bottom:.9rem;display:block}.student-details-form label>span{font-family:var(--ui);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.35rem;margin-bottom:.45rem;font-size:.72rem;display:flex}.student-details-form input,.student-details-form textarea{border:1px solid var(--rule);border-radius:var(--squiggle-field);width:100%;font:inherit;background:#ffffff80;padding:.8rem}.student-details-form textarea{resize:vertical;padding:.95rem .9rem .85rem;line-height:1.55}.student-details-form textarea:focus-visible{border:2px solid var(--blue-deep);box-shadow:none;outline:0}.booking-confirm-button{background:var(--coral-action);color:#fff;cursor:pointer;border:0;width:100%;margin-top:.4rem}.booking-confirm-button:disabled{border:1px solid var(--rule);color:var(--ink);cursor:not-allowed;opacity:.55;background:0 0}.auth-panel{border:1px solid var(--rule);border-radius:var(--squiggle-card);text-align:center;background:#aaa4e624;max-width:min(460px,100%);margin:0 auto;padding:clamp(1.4rem,3.4vw,2rem);position:relative;overflow:hidden}.auth-panel__mark{z-index:0;opacity:.3;pointer-events:none;width:128px;height:128px;position:absolute;top:-18px;right:-22px}.auth-panel>:not(.auth-panel__mark){z-index:1;position:relative}.auth-panel h3{font-family:var(--display);font-size:clamp(1.9rem,4.6vw,2.4rem);font-weight:400;line-height:1.1}.auth-panel__intro{opacity:.82;max-width:34ch;min-height:2.883rem;margin:.45rem auto 1.2rem;font-size:.93rem;line-height:1.55}.google-signin{margin-bottom:.5rem}.google-signin.is-loading{visibility:hidden}.google-signin__frame{border:2px solid var(--coral-action);border-radius:var(--squiggle-thumb);background:#fff;justify-content:center;align-items:center;min-height:56px;padding:3px;display:flex;overflow:hidden}.google-signin__divider{text-align:center;margin:1rem 0 .25rem;position:relative}.google-signin__divider:before{border-top:1px solid var(--rule);content:"";position:absolute;top:50%;left:0;right:0}.google-signin__divider span{font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;opacity:.75;background:#e9e2e0;padding:0 .7rem;font-size:.7rem;position:relative}.auth-tabs,.segmented{border:1px solid var(--rule);border-radius:var(--squiggle-tabs);background:#ffffff8c;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:1.2rem;padding:4px;display:grid;position:relative}.auth-tabs button,.segmented label{border-radius:var(--squiggle-thumb);color:var(--ink);cursor:pointer;font-family:var(--ui);letter-spacing:.04em;opacity:.72;background:0 0;border:0;padding:.62rem .5rem;font-size:.76rem;font-weight:700;transition:color .26s cubic-bezier(.22,1,.36,1),opacity .26s cubic-bezier(.22,1,.36,1)}.segmented label{text-align:center;text-transform:uppercase;justify-content:center;align-items:center;min-height:44px;margin:0;display:flex}.segmented input{opacity:0;width:1px;height:1px;position:absolute}.segmented label:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:2px}.auth-tabs button,.segmented label{z-index:1;position:relative}.auth-tabs button.is-active,.segmented label.is-active{color:var(--paper);opacity:1}.auth-tabs__thumb,.segmented__thumb{border-radius:var(--squiggle-thumb);background:var(--green);width:calc(50% - 6px);transition:transform .26s cubic-bezier(.22,1,.36,1);position:absolute;top:4px;bottom:4px;left:4px}.auth-tabs--signin .auth-tabs__thumb,.segmented--porto .segmented__thumb,.segmented--second .segmented__thumb{transform:translate(calc(100% + 4px))}.segmented--four{grid-template-columns:repeat(4,minmax(0,1fr))}.segmented--four .segmented__thumb{width:calc(25% - 7px)}.segmented--position-1 .segmented__thumb{transform:translate(calc(100% + 4px))}.segmented--position-2 .segmented__thumb{transform:translate(calc(200% + 8px))}.segmented--position-3 .segmented__thumb{transform:translate(calc(300% + 12px))}.auth-panel__form{animation:.24s cubic-bezier(.22,1,.36,1) both auth-fade}@keyframes auth-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.auth-panel label{text-align:left;margin-bottom:.9rem;display:block}.auth-panel label>span{font-family:var(--ui);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.35rem;margin-bottom:.3rem;font-size:.72rem;display:flex}.auth-panel input{border:1px solid var(--rule);border-radius:var(--squiggle-field);width:100%;font:inherit;background:#ffffffbf;padding:.85rem .9rem}.auth-panel label>span{margin-bottom:.45rem}.auth-panel input:focus-visible{outline-offset:3px}.auth-panel input[type=password]{letter-spacing:.2em;font-size:1.3rem}.booking-confirm-button{border-radius:var(--squiggle-button-alt)}.auth-panel label small{opacity:.68;margin-top:.3rem;font-size:.76rem;display:block}.auth-panel__aside{text-align:center;margin-top:.9rem}.auth-panel__link{min-height:44px;color:var(--lavender-ink);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;padding:0 0 2px;font-size:.84rem;transition:color .16s;display:inline-flex;position:relative}.auth-panel__link:after{background:var(--coral);content:"";opacity:0;height:1.5px;transition:opacity .16s,transform .16s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(.4)}.auth-panel__link:hover,.auth-panel__link:focus-visible{color:var(--coral-action)}.auth-panel__link:hover:after,.auth-panel__link:focus-visible:after{opacity:1;transform:scaleX(1)}.site-nav__link--account{color:var(--lavender-ink)}.nav-toggle{cursor:pointer;background:0 0;border:0;flex:none;width:46px;height:46px;padding:0;display:none}.nav-toggle>span{width:26px;margin:0 auto;display:block}.nav-toggle__line{background:var(--green-deep);border-radius:2px;height:2px;transition:transform .18s,opacity .14s;display:block}.nav-toggle__line+.nav-toggle__line{margin-top:6px}.nav-toggle.is-open .nav-toggle__line:first-child{transform:translateY(8px)rotate(45deg)}.nav-toggle.is-open .nav-toggle__line:nth-child(2){opacity:0}.nav-toggle.is-open .nav-toggle__line:last-child{transform:translateY(-8px)rotate(-45deg)}.nav-mobile{visibility:hidden;background-color:var(--paper);background-image:var(--paper-texture);border-top:1px solid #0000;max-height:0;transition:max-height .22s,border-color .22s,visibility 0s linear .22s;display:none;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 14px 26px #203e8217}.nav-mobile.is-open{border-top-color:var(--rule);visibility:visible;max-height:420px;transition:max-height .22s,border-color .22s,visibility}.nav-mobile__inner{padding:.35rem var(--page-pad) 1rem;flex-direction:column;display:flex}.nav-mobile__link{border-bottom:1px solid var(--rule-soft);min-height:54px;color:var(--green-deep);font-family:var(--ui);letter-spacing:.12em;text-transform:uppercase;align-items:center;font-size:.86rem;font-weight:700;transition:color .16s;display:flex;position:relative}.nav-mobile__link:after{background:var(--coral);content:"";opacity:0;height:2px;transition:opacity .16s,transform .16s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(.5)}.nav-mobile__link:last-child{border-bottom:0}.nav-mobile__link:hover,.nav-mobile__link:focus-visible,.nav-mobile__link[aria-current=page]{color:var(--coral-action)}.nav-mobile__link:hover:after,.nav-mobile__link:focus-visible:after,.nav-mobile__link[aria-current=page]:after{opacity:1;transform:scaleX(1)}.nav-mobile__link--account{color:var(--lavender-ink)}.my-lessons__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.75rem;font-size:.92rem;display:flex}button.text-action{cursor:pointer;min-height:40px;font:inherit;letter-spacing:.13em;text-transform:uppercase;color:var(--coral-action);background:0 0;border:0;border-bottom:1px solid #082b2433;justify-content:center;align-items:center;font-size:.76rem;font-weight:700;display:inline-flex}.my-lessons__header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1.1rem;display:flex}.my-lessons__header--embedded{grid-template-columns:minmax(0,1fr) auto;align-items:start;margin-bottom:1.25rem;display:grid}.my-lessons__account-name{flex-direction:column;gap:.16rem;min-width:0;display:flex}.my-lessons__account-name>span{font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--lavender-ink);font-size:.6rem;font-weight:700}.my-lessons__account-name>strong{font-family:var(--ui);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;line-height:1.3;overflow:hidden}.my-lessons__header-actions .text-action>span{min-width:1.35rem;min-height:1.35rem;color:var(--coral-action);letter-spacing:0;background:#c23a271f;border-radius:50%;place-items:center;margin-left:.25rem;font-size:.62rem;display:inline-grid}.my-lessons__menu{flex:none;position:relative}.my-lessons__menu-toggle{border:1px solid var(--rule);border-radius:var(--squiggle-pill);min-height:40px;color:var(--coral-action);cursor:pointer;font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;background:#ffffff3d;justify-content:center;align-items:center;gap:.35rem;padding:.45rem .75rem;font-size:.65rem;font-weight:700;display:inline-flex}.my-lessons__menu-toggle:hover,.my-lessons__menu-toggle:focus-visible,.my-lessons__menu-toggle[aria-expanded=true]{border-color:var(--coral-action);background:#c23a2714}.my-lessons__menu-panel{z-index:20;border:1px solid var(--rule);border-radius:var(--squiggle-field);background-color:var(--paper-light);background-image:var(--paper-texture);width:min(220px,100vw - 4rem);display:none;position:absolute;top:calc(100% + .4rem);right:0;overflow:hidden;box-shadow:0 14px 26px #203e8217}.my-lessons__menu-panel.is-open{display:grid}.my-lessons__menu-panel>button{border:0;border-bottom:1px solid var(--rule-soft);min-height:46px;color:var(--navy);cursor:pointer;font-family:var(--ui);letter-spacing:.08em;text-align:left;text-transform:uppercase;background:0 0;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .85rem;font-size:.68rem;font-weight:700;display:flex}.my-lessons__menu-panel>button:last-child{border-bottom:0}.my-lessons__menu-panel>button:hover,.my-lessons__menu-panel>button:focus-visible{color:var(--coral-action);background:#c23a2714}.my-lessons__menu-panel>.my-lessons__menu-book{background:var(--coral-action);color:#fff}.my-lessons__menu-panel>.my-lessons__menu-book:hover,.my-lessons__menu-panel>.my-lessons__menu-book:focus-visible{background:var(--coral);color:#fff}.my-lessons__menu-panel>button>span{min-width:1.35rem;min-height:1.35rem;color:var(--coral-action);letter-spacing:0;background:#c23a271f;border-radius:50%;place-items:center;font-size:.62rem;display:inline-grid}.my-lessons__account-section{border-top:1px solid var(--rule-soft);margin:.9rem 0 0;padding:.95rem 0 0}.my-lessons__account-section--detached{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e617;padding:clamp(1rem,2.4vw,1.35rem)}.my-lessons__account-section>.eyebrow,.my-lessons__account-section-heading .eyebrow{margin-bottom:.45rem}.my-lessons__account-section-heading{justify-content:space-between;align-items:end;gap:.7rem;margin-bottom:.75rem;display:flex}.my-lessons__account-section-heading p:last-child{opacity:.72;max-width:52ch;font-size:.8rem;line-height:1.45}.my-lessons__account-section-heading--upcoming{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.booking-provider .upcoming-lessons__book-action{border:1px solid var(--coral-action);background:var(--coral-action);color:#fff;gap:.42rem;min-height:42px;padding:.58rem .85rem;box-shadow:0 6px 16px #c23a2724}.booking-provider .upcoming-lessons__book-action:hover,.booking-provider .upcoming-lessons__book-action:focus-visible{border-color:var(--coral);background:var(--coral);color:#fff}@container booking (min-width:1040px){.my-lessons__header--embedded{align-items:center}.my-lessons__menu-toggle{display:none}.my-lessons__menu-panel,.my-lessons__menu-panel.is-open{width:auto;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:center;gap:.18rem;display:flex;position:static;overflow:visible}.my-lessons__menu-panel>button{border-radius:var(--squiggle-pill);letter-spacing:.06em;white-space:nowrap;background:0 0;border:0;min-height:40px;padding:.52rem .7rem;font-size:.62rem}.my-lessons__menu-panel>button:hover,.my-lessons__menu-panel>button:focus-visible{background:#aaa4e629}.my-lessons__menu-panel>.my-lessons__menu-book{background:var(--coral-action);min-height:42px;padding-left:.88rem;padding-right:.88rem;box-shadow:0 6px 16px #c23a2724}.my-lessons__menu-panel>.my-lessons__menu-book:hover,.my-lessons__menu-panel>.my-lessons__menu-book:focus-visible{background:var(--coral)}.upcoming-lessons__book-action{display:none}}.upcoming-lessons__title-line{align-items:center;gap:.35rem .55rem;width:max-content;min-width:0;max-width:100%;display:flex;position:relative}.upcoming-lessons__title-line .eyebrow{margin-bottom:0}.upcoming-lessons__hint{width:28px;height:28px;color:var(--lavender-ink);cursor:help;background:#524a961a;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid;position:relative}.upcoming-lessons__tip{z-index:12;width:min(300px,100vw - 5rem);color:var(--paper-light);font-family:var(--body);letter-spacing:0;opacity:0;pointer-events:none;text-align:left;text-transform:none;transform-origin:0 0;visibility:hidden;background:#1a3169f7;border:1px solid #dcd8f5b8;border-radius:12px 20px 14px 18px;padding:.62rem .76rem;font-size:.72rem;font-weight:400;line-height:1.4;transition:opacity .14s ease-out,transform .18s cubic-bezier(.22,1,.36,1),visibility 0s linear .18s;position:absolute;top:calc(100% + .5rem);left:0;transform:translateY(-6px)scale(.985);box-shadow:0 14px 30px #111f484d}.upcoming-lessons__tip:before{content:"";background:#1a3169f7;border-top:1px solid #dcd8f5b8;border-left:1px solid #dcd8f5b8;width:9px;height:9px;position:absolute;top:-5px;left:11.45rem;transform:rotate(45deg)}.upcoming-lessons__hint:hover+.upcoming-lessons__tip,.upcoming-lessons__hint:focus+.upcoming-lessons__tip,.upcoming-lessons__hint:focus-visible+.upcoming-lessons__tip{opacity:1;visibility:visible;transition-delay:0s;transform:none}.my-lessons__account-section .lesson-list{margin-top:.55rem}.my-lessons__account-section .lesson-list li:last-child{margin-bottom:0}.text-action--muted{color:var(--ink)}.my-lessons__details{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e624;gap:.85rem;margin-bottom:1.75rem;padding:1.2rem 1.3rem;display:grid}.my-lessons__details-row{align-items:end;gap:.65rem .8rem;display:grid}.my-lessons__details label{width:100%;display:block}.my-lessons__details label>span{font-family:var(--ui);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.35rem;font-size:.72rem;display:block}.my-lessons__details input{border:1px solid var(--rule);border-radius:var(--squiggle-field);width:100%;min-height:46px;font:inherit;background:#ffffffb3;padding:0 .85rem}.my-lessons__details button:disabled{cursor:not-allowed;opacity:.45}.my-lessons__details-row .button{white-space:nowrap;justify-self:end;width:auto;min-height:46px;padding-left:1rem;padding-right:1rem}@container booking (min-width:520px){.my-lessons__details-row{grid-template-columns:minmax(220px,1fr) auto}}.my-lessons__details-note{opacity:.8;max-width:52ch;margin-top:.35rem;font-size:.84rem;line-height:1.5}.my-lessons__details-note--ok{color:var(--coral-action);opacity:1}.my-lessons__group{margin-bottom:2.5rem}.my-lessons__group h2{font-family:var(--display);margin-bottom:.9rem;font-size:clamp(1.6rem,3.6vw,2.1rem);font-weight:400}.lesson-calendar__heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.8rem 1.25rem;margin-bottom:1rem;display:flex}.lesson-calendar__heading h2{margin-bottom:.15rem}.lesson-calendar__heading p{opacity:.76;max-width:48ch;font-size:.88rem}.lesson-calendar__heading .button{width:auto;min-height:44px;padding:.65rem 1.15rem;font-size:.66rem}.lesson-calendar{align-items:start;gap:1rem;min-width:0;display:grid}.lesson-calendar__grid{width:100%;max-width:none}.lesson-calendar__week+.lesson-calendar__week{margin-top:7px}.lesson-calendar .calendar-week button.has-booking{color:var(--coral-action);background:#c23a2726;font-weight:700}.lesson-calendar .calendar-week button.has-booking:hover,.lesson-calendar .calendar-week button.has-booking:focus-visible,.lesson-calendar .calendar-week button.has-booking.is-selected{background:var(--coral-action);color:#fff}.lesson-calendar .calendar-week button small{max-width:100%;font-family:var(--ui);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;margin-top:.12rem;font-size:.48rem;font-weight:700;line-height:1.1;display:block;overflow:hidden}.lesson-calendar__agenda{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e621;padding:1.2rem;position:relative;overflow:hidden}.lesson-calendar__agenda>h3{font-family:var(--ui);margin:.25rem 0 .9rem;font-size:1rem;line-height:1.35}.lesson-calendar__lesson{border:0;border-top:1px solid var(--rule-soft);width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.9rem .2rem;display:grid}.lesson-calendar__lesson:last-child{padding-bottom:.35rem}.lesson-calendar__lesson:hover,.lesson-calendar__lesson:focus-visible{color:var(--coral-action)}.lesson-calendar__mark{width:42px;height:42px}.lesson-calendar__lesson-copy{flex-direction:column;gap:.18rem;min-width:0;display:flex}.lesson-calendar__lesson-copy>strong{font-family:var(--ui);font-size:.92rem}.lesson-calendar__lesson-copy>span,.lesson-calendar__lesson-copy>small{opacity:.76;font-size:.76rem;line-height:1.35}.lesson-calendar__lesson-copy>small{align-items:center;gap:.3rem;display:inline-flex}.lesson-calendar__lesson-copy>.lesson-calendar__notice{color:var(--coral-action);opacity:1;font-weight:700}@container booking (min-width:760px){.lesson-calendar{grid-template-columns:minmax(0,1fr) minmax(245px,.62fr)}.lesson-calendar__agenda{position:sticky;top:1rem}}.lesson-list{margin:0;padding:0;list-style:none}.lesson-list li{border:1px solid var(--rule);border-radius:var(--squiggle-tile);grid-template-columns:56px minmax(0,1fr);grid-template-areas:"mark body""mark actions";align-items:start;gap:0 1rem;margin-bottom:.75rem;padding:1.15rem 1.4rem;display:grid}.lesson-list__mark{width:48px;height:32px;color:var(--coral);grid-area:mark}.lesson-list__body{grid-area:body}.lesson-list__body h3{font-family:var(--ui);letter-spacing:.01em;text-wrap:balance;margin-bottom:.4rem;font-size:1.02rem;font-weight:700;line-height:1.35}.lesson-list__body h3 em{font-family:var(--ui);letter-spacing:.02em;opacity:.72;font-size:.78rem;font-style:normal}.lesson-list__body p{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.25rem;font-size:.9rem;display:flex}.lesson-list__body p>span{align-items:baseline;gap:.4rem;min-width:0;display:inline-flex}.lesson-list__body p svg{flex:none;align-self:center}.lesson-list__fee{color:var(--coral-action);margin-top:.5rem;font-weight:700}.lesson-list__actions{flex-wrap:wrap;grid-area:actions;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.lesson-list__actions .lesson-list__reference{margin-left:auto}.lesson-list__reference{font-family:var(--ui);letter-spacing:.07em;opacity:.6;font-size:.72rem}.lesson-list--past li{border-color:var(--rule-soft);opacity:.78;grid-template-columns:1fr auto;align-items:center}.booking-repeat-choice{border:0;margin-bottom:.9rem;padding:0}.booking-repeat-note{opacity:.85;margin-top:.55rem;font-size:.84rem;line-height:1.5}.booking-success__series{border-left:3px solid var(--lavender);align-self:stretch;padding:.15rem 0 .15rem .85rem}.booking-skipped{align-self:stretch;margin-top:.7rem}.booking-skipped p{margin:0}.booking-skipped ul{margin:.35rem 0 0;padding-left:1.1rem;font-size:.88rem}.booking-skipped li{margin-top:.15rem}.my-lessons__series{border:1px solid var(--rule);border-radius:var(--squiggle-panel);background:#aaa4e624;margin-bottom:1.6rem;padding:1.1rem 1.25rem}.my-lessons__series h2{font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--lavender-ink);margin-bottom:.6rem;font-size:.72rem;font-weight:700}.my-lessons__series-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;display:grid}.my-lessons__series-row p{align-items:center;gap:.45rem;margin-bottom:0;font-size:.95rem;display:flex}@container booking (max-width:680px){.my-lessons__series-row>p{flex-wrap:wrap;align-items:flex-start}}.my-lessons__series-confirmation{border-radius:var(--squiggle-field);background:#f5ecd9c7;border:1px solid #ef5d3c6b;flex:1 0 100%;grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem 1.5rem;padding:1rem 1.1rem;display:flex}.my-lessons__series-confirmation h3{font-family:var(--ui);margin:0;font-size:.95rem;line-height:1.35}.my-lessons__series-confirmation p{opacity:.82;max-width:58ch;margin-top:.28rem;font-size:.84rem;line-height:1.5;display:block}.my-lessons__series-confirmation-actions{flex:none;align-items:center;gap:1rem;display:flex}.my-lessons__series-confirmation-actions .button{white-space:nowrap;min-height:44px;padding:.72rem 1rem}.my-lessons__series-confirmation-actions button:disabled{cursor:wait;opacity:.55}@media (max-width:680px){.my-lessons__series-confirmation{flex-direction:column;align-items:flex-start}.my-lessons__series-confirmation-actions{flex-direction:column;align-items:flex-start;gap:.65rem;width:100%}.my-lessons__series-confirmation-actions .button{width:100%}}.lesson-list__repeats{color:var(--lavender-ink);font-family:var(--ui);letter-spacing:.04em;align-items:center;gap:.4rem;font-size:.76rem;font-weight:700;display:flex}.student-details-form label em{opacity:.6;text-transform:none;font-style:normal}.booking-form-note{opacity:.86;margin-top:.8rem;font-size:.82rem;line-height:1.65}.booking-form-note a,.booking-form-note__calendar{color:inherit;cursor:pointer;font:inherit;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.booking-form-note a:hover,.booking-form-note__calendar:hover,.booking-form-note__calendar:focus-visible{color:var(--coral-action)}.booking-form-note strong{color:var(--coral-action);white-space:nowrap}.booking-payment-consent{border:1px solid var(--rule);border-radius:var(--squiggle-field);cursor:pointer;background:#aaa4e61a;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem;margin-top:.95rem;padding:.85rem .95rem;display:grid}.booking-payment-consent input{width:18px;height:18px;accent-color:var(--coral-action);margin-top:.12rem}.booking-payment-consent span{text-transform:none;font-size:.82rem;line-height:1.55}.booking-payment-consent a{color:var(--coral-action);text-underline-offset:2px;font-weight:700;text-decoration:underline}.booking-payment-consent:focus-within{outline:2px solid var(--ink);outline-offset:2px}.booking-alert--warn{border-left:3px solid var(--coral);background:#ef5d3c17;border-radius:0 12px 12px 0;padding:.7rem .85rem}.booking-success{border:1px solid var(--rule);flex-direction:column;align-items:flex-start;gap:.55rem;margin-top:1.5rem;padding:2rem 1.75rem;display:flex}.booking-success__head{justify-content:space-between;align-self:stretch;align-items:flex-start;gap:1rem;width:100%;display:flex}.booking-success__badge{flex:none;align-items:center;gap:.4rem;margin-top:.5rem;display:inline-flex}.booking-success__actions{flex-wrap:wrap;align-items:center;gap:1.4rem;margin:.4rem 0 .2rem;display:flex}.booking-success h2{font-family:var(--display);font-size:clamp(1.9rem,3.6vw,2.6rem);line-height:1.1}.booking-success__when{font-family:var(--ui);font-size:1rem;font-weight:700}.booking-success__reference{align-items:baseline;gap:.6rem;margin:.5rem 0;display:flex}.booking-success__reference dt{font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem}.booking-success__reference dd{font-family:var(--ui);letter-spacing:.06em;font-size:1.05rem;font-weight:700}.booking-success__note{opacity:.78;font-size:.84rem}.account-hero{padding:clamp(2rem, 4.5vw, 3.2rem) var(--page-pad);background-color:var(--lavender);background-image:var(--paper-texture);grid-template-columns:1fr;align-items:center;gap:1.5rem;display:grid;position:relative;overflow:hidden}.account-hero h1{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:clamp(2.3rem,6vw,4rem);font-weight:400;line-height:1.18}.account-hero p{max-width:46ch;margin-top:.9rem;font-size:clamp(1rem,1.6vw,1.2rem)}.account-hero__mark{z-index:0;aspect-ratio:1;opacity:.55;pointer-events:none;flex:none;width:clamp(150px,22vw,290px);position:absolute;top:50%;right:clamp(-2rem,-1vw,0rem);transform:translateY(-50%)}.account-hero>div{z-index:1;position:relative}.manage-page{max-width:760px;padding:clamp(2rem, 5vw, 3.5rem) var(--page-pad) 4rem;margin:0 auto}.booking-alert,.booking-form-status{text-align:left;align-items:flex-start;gap:.55rem;display:flex}.booking-alert svg,.booking-form-status svg{flex:none;margin-top:.14em}.booking-alert p,.booking-form-status p{margin:0;font-size:.9rem;line-height:1.5}.manage-booking{margin-top:1.75rem}.manage-booking__back{margin-bottom:1rem}.manage-booking__card{border:1px solid var(--rule);border-radius:var(--squiggle-panel);padding:1.5rem 1.7rem}.manage-booking__card h2{font-family:var(--display);margin-bottom:.9rem;font-size:clamp(1.7rem,4vw,2.3rem);line-height:1.1}.manage-booking__facts>div{border-top:1px solid var(--rule-soft);grid-template-columns:minmax(120px,.5fr) 1fr;align-items:baseline;gap:1rem;padding:.6rem 0;display:grid}.manage-booking__facts dt{font-family:var(--ui);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:.4rem;font-size:.7rem;display:flex}.manage-booking__facts dd{font-size:.98rem}.manage-booking__facts dd.is-struck{opacity:.6;text-decoration:line-through}.manage-booking__onward{flex-wrap:wrap;align-items:center;gap:1.4rem;margin-top:1.4rem;display:flex}.manage-booking__actions{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:1.4rem;display:flex}.manage-booking__actions .button:disabled{border:1px solid var(--rule);color:var(--ink);cursor:not-allowed;opacity:.55;background:0 0}.button--quiet{border:1px solid var(--rule);color:var(--ink);cursor:pointer;background:0 0}.button--quiet:hover{border-color:var(--green)}.manage-booking__confirm,.manage-booking__reschedule{border:1px solid var(--rule);border-radius:var(--squiggle-tile);margin-top:1.4rem;padding:1.4rem}.manage-booking__reschedule .calendar-week:last-of-type{margin-bottom:1.2rem}.manage-booking__reschedule .slot-grid{margin-bottom:.4rem}.booking-outcome{border-left:3px solid var(--green);background:#aaa4e638;align-items:flex-start;gap:.7rem;margin-bottom:1.4rem;padding:.9rem 1rem;display:flex}.booking-outcome strong{font-family:var(--ui);font-size:.95rem;display:block}.booking-outcome p{margin-top:.2rem;font-size:.9rem}.schedule-signin{border:1px solid var(--rule);max-width:380px;margin-top:1.5rem;padding:1.5rem}.schedule-signin label{margin-bottom:.9rem;display:block}.schedule-signin label span{font-family:var(--ui);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.25rem;font-size:.72rem;display:block}.schedule-signin input{border:1px solid var(--rule);background:#ffffff73;width:100%;padding:.7rem}.schedule-block{border-top:1px solid var(--rule);margin-top:2.4rem;padding-top:1.6rem}.schedule-block h2{font-family:var(--display);margin-bottom:.5rem;font-size:clamp(1.6rem,3.6vw,2.1rem);line-height:1.1}.schedule-bookings{list-style:none}.schedule-bookings li{border-bottom:1px solid var(--rule-soft);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem;padding:.8rem 0;display:flex}.schedule-bookings strong{font-family:var(--ui);font-size:.95rem;display:block}.schedule-bookings span{opacity:.82;font-size:.88rem}.schedule-bookings em{opacity:.7;margin-top:.2rem;font-size:.85rem;display:block}.schedule-bookings__meta{text-align:right;font-size:.82rem}.schedule-bookings__meta a{text-decoration:underline}.schedule-flag{color:var(--coral-action);margin-top:.2rem;font-weight:700;display:block}.schedule-week{margin:1.2rem 0 1.4rem}.schedule-day{border-top:1px solid var(--rule-soft);grid-template-columns:minmax(110px,.4fr) 1fr;align-items:start;gap:1rem;padding:.7rem 0;display:grid}.schedule-day h3{font-family:var(--ui);letter-spacing:.09em;text-transform:uppercase;font-size:.78rem}.schedule-day__windows{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.schedule-window{border:1px solid var(--rule);align-items:center;gap:.35rem;padding:.25rem .35rem;display:inline-flex}.schedule-window input{font:inherit;background:0 0;border:0;font-size:.9rem}.schedule-window span{opacity:.7;font-size:.78rem}.schedule-window button,.schedule-exceptions button{min-width:32px;min-height:32px;color:var(--coral-action);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.schedule-add{border:1px dashed var(--rule);color:inherit;cursor:pointer;font-family:var(--ui);background:0 0;align-items:center;gap:.3rem;padding:.4rem .65rem;font-size:.8rem;display:inline-flex}.schedule-add-lesson{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:.75rem;margin:1rem 0 .5rem;display:grid}.schedule-add-lesson label{display:block}.schedule-add-lesson label span{font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;opacity:.75;margin-bottom:.25rem;font-size:.7rem;font-weight:700;display:block}.schedule-add-lesson input,.schedule-add-lesson select{border:1px solid var(--rule);border-radius:var(--squiggle-field);width:100%;min-height:46px;font:inherit;background:#fff9;padding:0 .7rem}.schedule-add-lesson .button{border-radius:var(--squiggle-pill);min-height:46px}.schedule-move,.schedule-cancel{min-height:44px;color:var(--coral-action);cursor:pointer;font-family:var(--ui);letter-spacing:.07em;text-transform:uppercase;background:0 0;border:0;margin-left:auto;padding:.7rem .5rem .7rem 1rem;font-size:.72rem;font-weight:700;text-decoration:underline;display:block}.schedule-move{color:var(--lavender-ink)}.schedule-move-form{border-top:1px solid var(--rule-soft);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:.7rem;width:100%;margin-top:.85rem;padding-top:.85rem;display:grid}.schedule-move-form label span{font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;opacity:.75;margin-bottom:.25rem;font-size:.7rem;font-weight:700;display:block}.schedule-move-form input{border:1px solid var(--rule);border-radius:var(--squiggle-field);width:100%;min-height:46px;font:inherit;background:#fff9;padding:0 .7rem}.schedule-move-form .button{border-radius:var(--squiggle-pill);min-height:46px}.schedule-dayoff{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.schedule-dayoff input{border:1px solid var(--rule);font:inherit;background:#ffffff73;padding:.6rem}.schedule-exceptions{list-style:none}.schedule-exceptions li{border-bottom:1px solid var(--rule-soft);align-items:center;gap:.5rem;padding:.55rem 0;font-size:.9rem;display:flex}.schedule-exceptions li span{flex:1}.policy-page{background:var(--paper);min-height:70vh}.policy-page__hero{padding:clamp(4rem, 9vw, 7rem) var(--page-pad) clamp(2.5rem, 5vw, 4rem);background:var(--blue);color:var(--paper)}.policy-page__hero>.eyebrow{color:var(--lavender-soft)}.policy-page__hero h1{max-width:12ch;font-family:var(--display);margin:.35rem 0 1rem;font-size:clamp(3rem,7vw,6.2rem);font-weight:400;line-height:.98}.policy-page__hero>p:last-child{opacity:.72;font-size:.82rem}.policy-page__body{width:min(760px, calc(100% - 2 * var(--page-pad)));margin:0 auto;padding:clamp(2.8rem,6vw,5rem) 0 clamp(4rem,8vw,7rem)}.policy-page__body section+section{border-top:1px solid var(--rule-soft);margin-top:2.25rem;padding-top:2.25rem}.policy-page__body h2{color:var(--blue);font-family:var(--ui);letter-spacing:.02em;margin-bottom:.65rem;font-size:clamp(1rem,2vw,1.2rem)}.policy-page__body p{font-size:clamp(.98rem,1.6vw,1.08rem);line-height:1.75}.policy-page__body p+p{margin-top:.9rem}.policy-page__body a{color:var(--coral-action);text-underline-offset:3px;font-weight:700;text-decoration:underline}.site-footer{min-height:0;padding:1.35rem var(--page-pad);background-color:var(--green-deep);background-image:var(--paper-texture);color:var(--paper);grid-template-columns:minmax(220px,1fr) minmax(0,auto);align-items:center;gap:clamp(2.5rem,5vw,7rem);display:grid}.site-footer__brand{width:min(240px,100%)}.footer-wordmark{width:100%}.site-footer__actions{justify-content:flex-end;align-items:center;min-width:0;display:flex}.site-footer__nav{font-family:var(--ui);letter-spacing:.11em;text-transform:uppercase;flex-wrap:wrap;justify-content:flex-end;gap:0 clamp(1rem,2.2vw,2.6rem);font-size:.72rem;font-weight:700;display:flex}.site-footer__nav a{align-items:center;min-height:44px;display:flex}.site-footer__nav a:hover,.site-footer__contact a:hover{color:var(--lavender)}.site-footer__contact{text-align:right;white-space:nowrap;justify-content:flex-end;align-items:center;gap:clamp(.9rem,1.8vw,1.8rem);display:flex}.site-footer__top{min-height:44px;color:inherit;cursor:pointer;font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:.35rem;padding:0 0 2px;font-size:.72rem;font-weight:700;transition:color .16s;display:inline-flex;position:relative}.site-footer__top:after{background:var(--coral);content:"";opacity:0;height:1.5px;transition:opacity .16s,transform .16s;position:absolute;bottom:8px;left:0;right:0;transform:scaleX(.4)}.site-footer__top:hover:after,.site-footer__top:focus-visible:after{opacity:1;transform:scaleX(1)}.site-footer__contact a,.site-footer__contact .site-footer__top{border-radius:var(--squiggle-thumb);min-height:44px;font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;background:#f5ecd90f;border:1px solid #f5ecd973;justify-content:center;align-items:center;padding:0 1rem;font-size:.72rem;font-weight:700;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.site-footer__contact a:hover,.site-footer__contact a:focus-visible,.site-footer__contact .site-footer__top:hover,.site-footer__contact .site-footer__top:focus-visible{border-color:var(--paper);color:var(--paper);background:#f5ecd929}.site-footer__contact .site-footer__top:after,.site-footer__contact .site-footer__menu{display:none}@media (max-width:820px){.site-footer__contact .site-footer__menu{display:inline-flex}}@media (max-width:1100px){:root{--header-height:96px}.site-header__inner{gap:2rem}.site-header__brand{flex-basis:300px}.site-nav{gap:1.8rem}.home-hero__copy h1{font-size:clamp(2.6rem,5vw,4.8rem)}.principle{grid-template-columns:68px 1fr}.approach-composition{grid-template-columns:44% 56%}.approach-item{grid-template-columns:105px 1fr}.site-footer{grid-template-columns:minmax(200px,1fr) minmax(0,auto);gap:2rem;padding-top:2rem;padding-bottom:2rem}.site-footer__nav{justify-content:flex-end;gap:clamp(1rem,3vw,2.25rem)}}@media (min-width:821px) and (max-width:1100px){.lessons-closing{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr)}.lesson-location-band{flex-direction:column;justify-content:center;align-items:flex-start;gap:1.4rem;padding-top:2rem;padding-bottom:2rem}.lesson-location-band>div{gap:1rem}.lesson-location-band__mark{width:72px;height:64px}.lesson-location-band p{font-size:1rem}.lesson-location-band .button{width:min(100%,280px)}}@media (max-width:900px){.home-hero{grid-template-columns:1fr;min-height:auto}.home-hero__copy{min-height:500px}.principles-strip{border-left:0;grid-template-rows:none;grid-template-columns:1fr}.principle{border-right:0;border-bottom:1px solid var(--rule-soft);min-height:auto}}@media (max-width:820px){:root{--header-height:88px}.site-header__inner{gap:1rem;padding-top:.5rem;padding-bottom:.5rem}.site-header__brand{flex-basis:232px;width:232px}.site-nav{display:none}.nav-toggle,.nav-mobile{display:block}.home-hero__copy{min-height:470px}.principle{border-right:0;border-bottom:1px solid var(--rule-soft);min-height:auto;padding:1.65rem var(--page-pad);grid-template-columns:76px 1fr}.lessons-closing{grid-template-columns:1fr}.lessons-note{border-top:1px solid var(--rule-soft);border-left:0;flex-direction:column;justify-content:flex-start;align-items:flex-start}.approach-composition{grid-template-columns:1fr}.approach-intro{min-height:650px}.teacher-band{grid-template-columns:1fr;gap:1.2rem}.teacher-band h2{border-right:0;border-bottom:2px solid var(--lavender);padding-bottom:1rem}.teacher-band p{padding-left:0}.lessons-hero{grid-template-columns:1fr}.lessons-hero__art{min-height:220px}.lesson-programme__grid{grid-template-columns:1fr}.lesson-product,.lesson-product:first-child,.lesson-product:last-child{border-right:0;border-bottom:1px solid var(--rule);grid-template-columns:minmax(5.5rem,.74fr) 1px minmax(0,1.26fr);grid-template-areas:"eyebrow rule description""price rule description""duration rule description"".rule note";align-content:start;column-gap:clamp(.9rem,3.6vw,1.5rem);min-height:auto;padding:1.5rem 0;display:grid}.lesson-product>.eyebrow{letter-spacing:.09em;grid-area:eyebrow;font-size:.72rem}.lesson-product__price{grid-area:price}.lesson-product__duration{grid-area:duration;font-size:1.02rem}.lesson-product__rule{grid-area:rule;align-self:stretch;width:1px;height:auto;margin:0}.lesson-product__description{grid-area:description;font-size:1rem}.lesson-product__note{grid-area:note;margin-top:.35rem}.lesson-product:last-child{border-bottom:0}.faq-reference{grid-template-columns:1fr}.faq-index{border-right:0;border-bottom:1px solid var(--rule);min-height:auto}.faq-index ol{grid-template-columns:repeat(2,1fr);display:grid}.faq-index li:nth-child(2n){border-left:1px solid var(--rule-soft);padding-left:1rem}.faq-index li:nth-last-child(-n+2){border-bottom:1px solid var(--rule-soft)}.faq-index__answer-index{display:none}.booking-composition{grid-template-columns:1fr}.booking-intro{padding-top:1.9rem;padding-bottom:1.9rem;display:block;position:relative}.booking-intro h1{font-size:clamp(2.4rem,9vw,3.4rem)}.booking-intro h1 br{display:initial}.booking-intro>.editorial-rule{display:block}.booking-intro>p{font-size:1.08rem}.booking-intro__points,.booking-intro__time-window{display:none}.booking-provider{padding-top:1.75rem}.booking-policy{grid-template-columns:70px 1fr}.booking-policy a{grid-column:2;justify-self:start}.manage-booking__facts>div{grid-template-columns:1fr;gap:.15rem}.manage-booking__actions .button{text-align:center;width:100%}.schedule-day{grid-template-columns:1fr;gap:.4rem}.schedule-bookings__meta{text-align:left}.lesson-list li{grid-template-columns:1fr;grid-template-areas:"body""actions"}.lesson-list__actions{justify-content:space-between;align-items:center}.lesson-list__actions .button{text-align:center;flex:1}.lesson-list__mark{display:none}.site-footer{grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.site-footer__nav{display:none}.site-footer__actions{justify-content:flex-end}.site-footer__contact{text-align:right;justify-content:flex-end}}@media (max-width:560px){:root{--page-pad:1.25rem;--header-height:84px}body{font-size:17px}.site-header__brand{flex-basis:218px;width:218px}.button{width:100%;min-height:56px;padding-left:1.4rem;padding-right:1.4rem}.home-hero__copy{min-height:420px;padding-top:3rem;padding-bottom:3rem}.home-hero__copy h1{font-size:clamp(2.1rem,11vw,4.2rem)}.home-hero__copy>p{font-size:1.2rem}.principle{grid-template-columns:62px 1fr;gap:1.2rem}.home-hero__actions{align-items:stretch}.home-hero__links{justify-content:space-between;gap:.4rem 1.15rem}.approach-intro{min-height:590px}.approach-intro h1{font-size:clamp(2.6rem,12vw,4.4rem)}.approach-intro__splat{width:min(68%,330px);bottom:-7%;right:-10%}.approach-list{padding:0 var(--page-pad)}.approach-item{grid-template-columns:70px 1fr;gap:1rem;min-height:190px}.approach-item .asset-mark{width:72px;height:76px}.approach-item p{font-size:1rem}.teacher-band{padding-top:2rem;padding-bottom:2rem}.lessons-hero__title{min-height:310px}.lessons-hero h1{font-size:clamp(2.1rem,10vw,4rem)}.lesson-location-band{flex-direction:column;align-items:stretch;padding-top:1.5rem;padding-bottom:1.5rem}.faq-hero{min-height:230px}.faq-hero h1{font-size:clamp(2.4rem,11vw,4rem)}.faq-index ol{grid-template-columns:1fr}.faq-index li:nth-child(2n){border-left:0;padding-left:0}.faq-index li{border-bottom:0}.faq-index li:last-child{border-bottom:1px solid var(--rule-soft)}.faq-groups{padding-right:var(--page-pad);padding-left:var(--page-pad)}.faq-row summary{min-height:70px;font-size:1.05rem}.booking-intro__time-window{width:min(38%,190px);margin-top:1.8rem}.booking-intro h1{font-size:clamp(2.5rem,11vw,4.2rem)}.booking-policy{grid-template-columns:55px 1fr;padding-top:1.5rem;padding-bottom:1.5rem}.booking-policy .asset-mark{width:52px;height:52px}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer{grid-template-columns:minmax(0,1fr) auto;padding-top:1.75rem;padding-bottom:1.75rem}.site-footer__brand{width:min(220px,100%)}.site-footer__nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;width:min(100%,320px)}.site-footer__contact{flex-wrap:wrap;gap:0 1rem}}@media (prefers-reduced-motion:reduce){.upcoming-lessons__tip{transition:none}.lesson-manage-overlay,.lesson-manage-dialog,.lesson-manage-dialog__content,.unified-calendar--managed-overlay{animation:none}.text-action,.text-action:hover{transition:color .16s ease-out;transform:none}.text-action:after{display:none}.button,.button:hover{transition:background .16s,color .16s;transform:none}.site-nav__link:after,.site-nav__link:hover:after,.site-nav__link[aria-current=page]:after,.nav-mobile__link:after,.nav-mobile__link:hover:after,.nav-mobile__link[aria-current=page]:after{transition:none;transform:none}.faq-row__symbol:after,.auth-tabs__thumb,.segmented__thumb{transition:none}.auth-panel__form,.booking-selection-stack,.booking-choice-summary,.booking-journey-start,.booking-workflow-sign-in,.calendar-weeks,.unified-account-controls,.unified-calendar__panel-content,.booking-confirmation-stage,.unified-calendar__panel-content>.booking-state-note,.unified-calendar__panel-content>.booking-alert,.unified-calendar__panel-content>.slot-grid,.unified-calendar__availability>.booking-state-note,.unified-calendar__availability>.slot-grid{animation:none}}
