@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-400-normal-C5_t9oOD.woff2)format("woff2"),url(/assets/dm-serif-display-latin-400-normal-_kVFYEpx.woff)format("woff")}@font-face{font-family:DM Serif Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-400-italic-DpcbibHm.woff2)format("woff2"),url(/assets/dm-serif-display-latin-400-italic-BgxzcTJK.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2)format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2)format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff)format("woff")}:root{--pink:#eececb;--rose:#a55f69;--ivory:#fff9f6;--ink:#30252a;--wine:#7a414c;--muted:#69565d;--border:#dec4c3;--pale:#f8eeeb;--paper:#fffdfb;--gold:#eacdb0;--shadow:0 16px 45px #30252a0d;--serif:"DM Serif Display", Georgia, serif;--sans:"Manrope", "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.8}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}svg{flex-shrink:0}p{color:var(--muted);margin:0 0 22px}h1,h2,h3{margin:0 0 24px;font-weight:400;line-height:1.15}h1,h2{font-family:var(--serif)}h1{letter-spacing:-1.9px;font-size:clamp(44px,4.6vw,68px)}h2{letter-spacing:-1px;font-size:clamp(34px,3.2vw,47px)}h3{font-size:19px;font-weight:600}em{color:var(--wine);font-weight:400}ul{padding:0;list-style:none}li{align-items:flex-start;gap:11px;margin-bottom:13px;display:flex}li svg{color:var(--wine);margin-top:5px}:focus-visible{outline:3px solid var(--wine);outline-offset:5px}section[id]{scroll-margin-top:110px}section[tabindex]:focus{outline:none}::selection{background:var(--pink);color:var(--ink)}.container{width:min(1160px,100% - 80px);margin-inline:auto}.section{padding-block:95px}.eyebrow{letter-spacing:2px;color:var(--wine);margin-bottom:22px;font-size:11px;font-weight:700}.button{background:var(--wine);min-height:51px;color:var(--ivory);border:1px solid var(--wine);border-radius:7px;justify-content:center;align-items:center;gap:18px;padding:14px 23px;font-size:13px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:var(--ink);border-color:var(--ink)}.button:active{transform:translateY(1px)}.button svg,.text-link svg{transition:transform .2s}.button:hover svg,.text-link:hover svg{transform:translate(3px,-2px)}.button:disabled{opacity:.5;cursor:not-allowed}.text-link{min-height:44px;color:var(--wine);align-items:center;gap:12px;font-size:13px;font-weight:700;display:inline-flex}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.skip-link{background:var(--ink);color:var(--ivory);z-index:100;padding:12px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:10px}.section.revealed{animation:.55s both reveal}@keyframes reveal{0%{opacity:.35;transform:translateY(16px)}to{opacity:1;transform:none}}@media (width<=600px){.container{width:calc(100% - 40px)}.section{padding-block:64px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.header .student-login-link{border:1px solid var(--wine);min-height:42px;color:var(--wine);border-radius:6px;flex-shrink:0;order:2;justify-content:center;align-items:center;padding:10px 16px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.header .student-login-link:hover{background:var(--pink)}.header .student-auth-links{flex-shrink:0;order:2;align-items:center;gap:8px;display:flex}.header .student-auth-links .student-login-link{order:0}.header .student-signup-link{border:1px solid var(--wine);background:var(--wine);color:#fff;border-radius:6px;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.header .student-signup-link:hover{background:#69343f}.header .nav-auth{display:none}.header .student-avatar-link,.header .student-session-loading{border-radius:50%;flex-shrink:0;order:2;width:42px;height:42px}.header .student-avatar-link{color:#fff;justify-content:center;align-items:center;font-size:14px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.header .student-avatar-link:hover{box-shadow:0 0 0 4px var(--pink)}.header .student-avatar-link:focus-visible{outline:2px solid var(--wine);outline-offset:4px}.header .student-session-loading{background:var(--pink)}.header .menu-toggle{order:3}@media (width<=1100px){.header .nav-row,.header .navigation{gap:14px}}@media (width<=600px){.header .student-avatar-link,.header .student-session-loading{margin-left:auto}.header .student-login-link{min-height:40px;padding:8px 10px;font-size:11px}.header .student-auth-links,.header>.nav-row>.student-login-link{margin-left:auto}.header .student-auth-links .student-signup-link{display:none}.header .navigation.open .nav-auth{border-top:1px solid var(--border);gap:10px;margin-top:12px;padding-top:16px;display:grid}.header .nav-auth a{border:1px solid var(--wine);color:var(--wine);border-radius:6px;justify-content:center;align-items:center;display:flex}.header .nav-auth .nav-auth-primary{background:var(--wine);color:#fff}.header .nav-row{gap:10px}.header .brand{font-size:18px}.header .brand span{letter-spacing:1.5px;font-size:8px}}.header .brand{flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.header .brand-mark{object-fit:contain;width:50px;height:46px;display:block}.header .brand .brand-copy{font:400 21px/1.1 var(--serif);letter-spacing:-.02em;color:var(--wine);margin:0;display:block}.header .brand .brand-copy small{font:600 8px/1.4 var(--sans);letter-spacing:.16em;margin-top:5px;display:block}@media (width<=600px){.header .brand{gap:7px}.header .brand-mark{width:37px;height:36px}.header .brand .brand-copy{letter-spacing:-.03em;font-size:17px}.header .brand .brand-copy small{letter-spacing:.1em;font-size:7px}}@media (width<=380px){.header .brand-mark{width:33px;height:32px}.header .brand .brand-copy{font-size:15px}.header .brand .brand-copy small{display:none}}@media (width<=340px){.header .brand{gap:5px}.header .brand-mark{width:30px;height:30px}.header .brand .brand-copy{font-size:14px}.header .menu-toggle{flex-shrink:0}}.react-international-phone-country-selector{position:relative}.react-international-phone-country-selector-button{height:var(--react-international-phone-height,36px);box-sizing:border-box;border:1px solid var(--react-international-phone-country-selector-border-color,var(--react-international-phone-border-color,gainsboro));appearance:button;background-color:var(--react-international-phone-country-selector-background-color,var(--react-international-phone-background-color,white));cursor:pointer;text-transform:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.react-international-phone-country-selector-button:hover{background-color:var(--react-international-phone-country-selector-background-color-hover,whitesmoke)}.react-international-phone-country-selector-button--hide-dropdown{cursor:auto}.react-international-phone-country-selector-button--hide-dropdown:hover{background-color:#0000}.react-international-phone-country-selector-button__button-content{justify-content:center;align-items:center;display:flex}.react-international-phone-country-selector-button__flag-emoji{margin:0 4px}.react-international-phone-country-selector-button__flag-emoji--disabled{opacity:.75}.react-international-phone-country-selector-button__dropdown-arrow{border-top:var(--react-international-phone-country-selector-arrow-size,4px) solid var(--react-international-phone-country-selector-arrow-color,#777);border-right:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;border-left:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;margin-right:4px;transition:all .1s ease-out}.react-international-phone-country-selector-button__dropdown-arrow--active{transform:rotateX(180deg)}.react-international-phone-country-selector-button__dropdown-arrow--disabled{border-top-color:var(--react-international-phone-disabled-country-selector-arrow-color,#999)}.react-international-phone-country-selector-button--disabled,.react-international-phone-country-selector-button--disabled:hover{background-color:var(--react-international-phone-disabled-country-selector-background-color,var(--react-international-phone-disabled-background-color,whitesmoke))}.react-international-phone-country-selector-button--disabled{cursor:auto}.react-international-phone-flag-emoji{width:var(--react-international-phone-flag-width,24px);height:var(--react-international-phone-flag-height,24px);box-sizing:border-box}.react-international-phone-country-selector-dropdown{z-index:1;top:var(--react-international-phone-dropdown-top,44px);left:var(--react-international-phone-dropdown-left,0);background-color:var(--react-international-phone-dropdown-item-background-color,var(--react-international-phone-background-color,white));width:300px;max-height:200px;box-shadow:var(--react-international-phone-dropdown-shadow,2px 2px 16px #00000040);color:var(--react-international-phone-dropdown-item-text-color,var(--react-international-phone-text-color,#222));flex-direction:column;margin:0;padding:4px 0;list-style:none;display:flex;position:absolute;overflow-y:scroll}.react-international-phone-country-selector-dropdown__preferred-list-divider{height:1px;margin:var(--react-international-phone-dropdown-preferred-list-divider-margin,0);background:var(--react-international-phone-dropdown-preferred-list-divider-color,var(--react-international-phone-border-color,gainsboro));border:none}.react-international-phone-country-selector-dropdown__list-item{min-height:var(--react-international-phone-dropdown-item-height,28px);box-sizing:border-box;align-items:center;padding:2px 8px;display:flex}.react-international-phone-country-selector-dropdown__list-item-flag-emoji{margin-right:8px}.react-international-phone-country-selector-dropdown__list-item-country-name{font-size:var(--react-international-phone-dropdown-item-font-size,14px);text-overflow:ellipsis;white-space:nowrap;margin-right:8px;overflow:hidden}.react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-dropdown-item-dial-code-color,gray);font-size:var(--react-international-phone-dropdown-item-font-size,14px)}.react-international-phone-country-selector-dropdown__list-item:hover{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,whitesmoke));cursor:pointer}.react-international-phone-country-selector-dropdown__list-item--selected,.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color,whitesmoke);color:var(--react-international-phone-selected-dropdown-item-text-color,var(--react-international-phone-text-color,#222))}.react-international-phone-country-selector-dropdown__list-item--selected .react-international-phone-country-selector-dropdown__list-item-dial-code,.react-international-phone-country-selector-dropdown__list-item--focused .react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-selected-dropdown-item-dial-code-color,var(--react-international-phone-dropdown-item-dial-code-color,gray))}.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,whitesmoke))}.react-international-phone-dial-code-preview{border:1px solid var(--react-international-phone-dial-code-preview-border-color,var(--react-international-phone-border-color,gainsboro));background-color:var(--react-international-phone-dial-code-preview-background-color,var(--react-international-phone-background-color,white));color:var(--react-international-phone-dial-code-preview-text-color,var(--react-international-phone-text-color,#222));font-size:var(--react-international-phone-dial-code-preview-font-size,var(--react-international-phone-font-size,13px));justify-content:center;align-items:center;margin-right:-1px;padding:0 8px;display:flex}.react-international-phone-dial-code-preview--disabled{background-color:var(--react-international-phone-dial-code-preview-disabled-background-color,var(--react-international-phone-disabled-background-color,whitesmoke));color:var(--react-international-phone-dial-code-preview-disabled-text-color,var(--react-international-phone-disabled-text-color,#666))}.react-international-phone-input-container{display:flex}.react-international-phone-input-container .react-international-phone-country-selector-button{border-radius:var(--react-international-phone-border-radius,4px);border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-1px}.react-international-phone-input-container .react-international-phone-input{height:var(--react-international-phone-height,36px);box-sizing:border-box;border:1px solid var(--react-international-phone-border-color,gainsboro);border-radius:var(--react-international-phone-border-radius,4px);background-color:var(--react-international-phone-background-color,white);color:var(--react-international-phone-text-color,#222);font-family:inherit;font-size:var(--react-international-phone-font-size,13px);border-top-left-radius:0;border-bottom-left-radius:0;margin:0;padding:0 8px;overflow:visible}.react-international-phone-input-container .react-international-phone-input:focus{outline:none}.react-international-phone-input-container .react-international-phone-input--disabled{background-color:var(--react-international-phone-disabled-background-color,whitesmoke);color:var(--react-international-phone-disabled-text-color,#666)}.topbar{background:var(--pink);color:var(--wine);text-align:center;letter-spacing:1px;padding:8px 20px;font-size:11px;font-weight:600}.topbar span{padding:0 30px}.header{z-index:20;background:var(--ivory);border-bottom:1px solid #0000;transition:box-shadow .2s,border-color .2s;position:sticky;top:0}.header.scrolled{border-color:var(--border);box-shadow:var(--shadow)}.nav-row{justify-content:space-between;align-items:center;gap:25px;min-height:100px;display:flex}.brand{font-family:var(--serif);white-space:nowrap;font-size:25px;line-height:1.2}.brand span{font-family:var(--sans);letter-spacing:2.6px;color:var(--wine);margin-top:8px;font-size:10px;display:block}.navigation{align-items:center;gap:25px;font-size:12px;font-weight:600;display:flex}.navigation a{padding-block:12px}.navigation a:hover{color:var(--wine)}.navigation .nav-contact{border:1px solid var(--border);border-radius:6px;align-items:center;gap:18px;padding:10px 19px;display:flex}.menu-toggle{display:none}.hero{grid-template-columns:1.12fr 1fr;align-items:center;gap:35px;padding-block:55px 70px;display:grid}.hero-copy{animation:.6s both reveal}.hero .eyebrow{align-items:center;gap:11px;font-size:11px;display:flex}.small-line{background:var(--wine);width:28px;height:1px}.hero h1{max-width:610px}.hero h1 em{display:block}.hero-description{max-width:480px;font-size:15px;line-height:1.9}.hero-actions{align-items:center;gap:26px;margin-top:30px;display:flex}.hero-note{color:var(--muted);align-items:center;gap:13px;margin-top:36px;font-size:12px;line-height:1.7;display:flex}.mini-mark{border:1px solid var(--border);width:39px;height:39px;font-family:var(--serif);color:var(--wine);border-radius:50%;place-items:center;font-size:16px;display:grid}.hero-art{min-width:0;animation:.65s .12s both reveal}.hero-image{object-fit:contain;object-position:center;border-radius:190px 190px 18px 18px;width:100%;height:auto;max-height:680px;display:block}.illustration{pointer-events:none;padding-bottom:45px;position:relative}.illustration>svg{width:100%;display:block}.art-bg{fill:var(--pink)}.art-ring{stroke:var(--rose);stroke-width:1px;opacity:.35}.art-route{stroke:var(--wine);stroke-width:1.5px;stroke-dasharray:6 7}.art-paper{fill:var(--paper);stroke:var(--border);stroke-width:1.5px}.art-line{stroke:var(--wine);stroke-width:1.5px}.art-passport{fill:var(--wine)}.art-gold-line{stroke:var(--gold);stroke-width:1px}.art-hello{font:italic 44px var(--serif);fill:var(--wine)}.destination{background:var(--paper);border:1px solid var(--border);width:265px;box-shadow:var(--shadow);border-radius:9px;padding:19px 22px;position:absolute;bottom:52px;right:-5px;transform:rotate(-4deg)}.destination>span{letter-spacing:1.3px;color:var(--wine);font-size:8px}.destination strong{font-family:var(--serif);border-bottom:1px dashed var(--border);justify-content:space-between;margin:5px 0;padding-bottom:8px;font-size:24px;font-weight:400;display:flex}.destination div{color:var(--muted);font-size:11px}.step-note{font:italic 18px var(--serif);color:var(--wine);position:absolute;bottom:12px;right:45px}.portrait{aspect-ratio:1/1.12;object-fit:cover;border-radius:190px 190px 18px 18px;width:100%;height:auto;display:block}.attributes{border-block:1px solid var(--border);padding:21px 0}.attributes .container{justify-content:space-between;gap:20px;display:flex}.attributes span{color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.attributes svg{color:var(--wine)}.identification{grid-template-columns:1fr 1.15fr;gap:95px;display:grid}.identification>div>p{max-width:370px}.editorial-note{font:italic 23px/1.5 var(--serif);color:var(--wine);max-width:330px;margin-top:35px;display:block}.situations article{border-bottom:1px solid var(--border);gap:23px;padding:23px 0;display:flex}.situations article:first-child{padding-top:0}.number{font-family:var(--serif);color:var(--wine);font-size:22px}.situations h3{margin-bottom:9px;font-size:17px;line-height:1.5}.situations p{margin:0;font-size:14px}.programs{background:var(--pale)}.center-heading{text-align:center;max-width:580px;margin:0 auto 45px}.center-heading p:last-child{max-width:460px;margin:0 auto}.program-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;display:grid}.program{border:1px solid var(--border);border-radius:18px;flex-direction:column;align-items:flex-start;padding:clamp(22px,2.6vw,38px);transition:box-shadow .2s,transform .2s;display:flex}.program:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.travel-program,.speaking-program{background:var(--pink)}.service-prices{width:100%;margin:20px 0}.service-price-option{border-top:1px solid var(--border);flex-direction:column;gap:7px;padding:16px 0;text-decoration:none;display:flex}.service-price-option strong{color:var(--wine);font-size:clamp(1.5rem,2.2vw,2rem)}.service-price-option small{font-size:.72rem;font-weight:500}.price-action{color:var(--wine);text-underline-offset:4px;font-size:.8rem;text-decoration:underline}.mentoring-program{background:var(--ivory)}.speaking-program{background:var(--pink)}.program-top{width:100%;color:var(--wine);justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.program-top span{letter-spacing:2px;font-size:11px}.program .eyebrow{margin-bottom:15px;font-size:11px}.program h3{font:clamp(27px, 2.5vw, 36px)/1.18 var(--serif);letter-spacing:-.7px}.pill{color:var(--wine);border:1px solid var(--rose);border-radius:30px;margin-bottom:24px;padding:4px 12px;font-size:12px}.program>p:not(.eyebrow){font-size:14px}.program ul{margin:0 0 22px;font-size:14px}.program .scenarios-list{border-top:1px solid var(--rose);width:100%;padding-top:15px;font-size:12px!important}.program .button{width:100%;margin-top:auto;font-size:13px}.travel-program .button{white-space:nowrap;gap:8px;padding-inline:10px;font-size:11px}.travel-program .button svg{flex:none}.outline{color:var(--wine);background:0 0}.outline:hover{color:var(--ivory)}.choose-help{text-align:center;margin-top:28px}.choose-help p{margin-bottom:3px;font-size:13px}@media (width<=1100px){.program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.speaking-program{grid-column:1/-1}.program h3{font-size:clamp(28px,3.2vw,34px)}}.section-heading{justify-content:space-between;align-items:end;gap:45px;margin-bottom:40px;display:flex}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:310px;margin-bottom:4px;font-size:14px}.travel-module{border:1px solid var(--border);border-radius:16px;overflow:hidden}.tabs{border-bottom:1px solid var(--border);background:var(--pale);gap:15px;padding:0 20px;display:flex}.tabs button{min-height:65px;color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;flex:1;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.tabs button[aria-selected=true]{color:var(--wine);border-bottom-color:var(--wine);font-weight:700}.tabs button:hover{background:var(--pink)}.tabs button:focus-visible{outline-offset:-5px}.travel-panel{grid-template-columns:1fr 1fr;align-items:center;gap:50px;min-height:350px;padding:45px;display:grid}.scenario-icon{color:var(--wine);margin-bottom:18px;display:inline-flex}.scenario-copy{animation:.3s reveal}.scenario-copy .eyebrow{margin-bottom:12px;font-size:11px}.scenario-copy h3{font:27px/1.3 var(--serif);margin-bottom:14px}.scenario-copy>p:last-child{margin:0;font-size:14px}.phrase{background:var(--pale);border-radius:10px;flex-direction:column;justify-content:center;min-height:250px;padding:30px;animation:.3s reveal;display:flex}.phrase .eyebrow{font-size:11px}.phrase blockquote{font:italic 28px/1.35 var(--serif);color:var(--wine);margin:15px 0}.phrase p{margin:0;font-size:13px}.phrase-line{background:var(--rose);width:35px;height:1px;margin-top:22px}.caption{text-align:right;margin-top:12px;font-size:12px}.approach{background:var(--ink);color:var(--ivory)}.approach .eyebrow,.approach em,.approach p{color:var(--pink)}.approach-doodle{font:100px/1 var(--serif);color:var(--pink);margin-right:30px}.principles{grid-template-columns:repeat(4,1fr);gap:35px;margin-top:60px;display:grid}.principles article{border-top:1px solid var(--rose);padding-top:24px}.principles article>span{font:25px var(--serif);color:var(--pink)}.principles h3{margin:20px 0 12px;font-size:17px;line-height:1.5}.principles p{margin:0;font-size:14px}.about{grid-template-columns:1fr 1.1fr;align-items:center;gap:85px;display:grid}.about-visual{background:var(--pink);text-align:center;border-radius:140px 140px 12px 12px;padding:36px}.about-visual.about-visual-photo{background:0 0;padding:0;overflow:hidden}.about-visual-photo .portrait{aspect-ratio:auto;object-fit:contain;border-radius:0;width:100%;height:auto;display:block}.about>div>p{font-size:14px}.about .about-intro{color:var(--ink);font-size:18px}.fit{background:var(--pale)}.fit-grid{grid-template-columns:1.3fr 1fr;align-items:center;gap:100px;display:grid}.fit h2{font-size:38px}.fit li{font-size:14px}.fit aside{border-left:1px solid var(--border);padding-left:45px}.fit aside>svg{color:var(--wine);margin-bottom:20px}.fit aside h3{font:27px/1.3 var(--serif)}.fit aside p{margin:0;font-size:14px}.faq{grid-template-columns:.8fr 1.2fr;gap:65px;display:grid}.faq>div>p{font-size:14px}.faq-item{border-bottom:1px solid var(--border)}.faq-item:first-child{border-top:1px solid var(--border)}.faq-item h3{margin:0}.faq-item button{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;justify-content:space-between;align-items:center;gap:20px;min-height:74px;padding:20px 0;font-size:14px;font-weight:600;line-height:1.6;display:flex}.faq-item button svg{color:var(--wine);transition:transform .2s}.faq-item button[aria-expanded=true] svg{transform:rotate(45deg)}.faq-answer{animation:.3s reveal}.faq-answer p{padding-right:35px;font-size:14px}.contact{background:var(--wine);text-align:center;color:var(--ivory)}.contact .eyebrow,.contact em,.contact p{color:var(--pink)}.contact>.container>p:not(.eyebrow){max-width:550px;margin:0 auto 25px;font-size:14px}.contact .light{background:var(--ivory);color:var(--wine)}.contact .light:hover{background:var(--pink)}.contact a:focus-visible{outline-color:var(--ivory)}.contact small{color:var(--pink);margin-top:20px;font-size:12px;display:block}.contact-notice{border:1px solid var(--pink);border-radius:7px;width:fit-content;padding:14px 22px}.selected-interest{font-weight:700}.contact-layout{text-align:left;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,100px);display:grid}.contact-copy h2{font-size:clamp(38px,4.4vw,68px);line-height:1.1}.contact-copy>p:not(.eyebrow){max-width:510px;line-height:1.7}.contact .lead-form{background:var(--paper);color:var(--ink);border-radius:16px;flex-direction:column;padding:clamp(24px,4vw,48px);display:flex;box-shadow:0 22px 60px #1f0c1329}.contact .lead-form p{color:var(--muted)}.contact .lead-form .lead-form-kicker{color:var(--rose);letter-spacing:.16em;margin:0 0 10px;font-size:11px;font-weight:800}.lead-form h3{font-family:var(--serif);margin:0;font-size:clamp(30px,3vw,42px);line-height:1.15}.contact .lead-form .lead-form-intro{margin:10px 0 28px;font-size:14px}.lead-form-names{grid-template-columns:1fr 1fr;gap:14px;display:grid}.lead-form-names>div{min-width:0}.lead-form label{margin:0 0 7px;font-size:13px;font-weight:700;display:block}.lead-form input:not([type=hidden]),.lead-form .react-international-phone-input{border:1px solid var(--border);width:100%;height:46px;color:var(--ink);font:inherit;background:#fff;border-radius:7px;outline:none;padding:0 13px;font-size:14px}.lead-form input:focus-visible,.lead-form .react-international-phone-country-selector-button:focus-visible{border-color:var(--rose);box-shadow:0 0 0 3px #a55f6929}.lead-form input[aria-invalid=true]{border-color:#ae3343}.lead-form>input,.lead-form>.react-international-phone-input-container,.lead-form-names{margin-bottom:18px}.lead-form .react-international-phone-input-container{width:100%;display:flex}.lead-form .react-international-phone-input-container .react-international-phone-input{border-radius:0 7px 7px 0;flex:1;min-width:0}.lead-form .react-international-phone-country-selector-button{border-color:var(--border);border-radius:7px 0 0 7px;height:46px}.contact .lead-form .lead-form-hint{margin:-10px 0 20px;font-size:11px}.contact .lead-form .lead-field-error,.contact .lead-form .lead-submit-error{color:#a52c3d;margin:-10px 0 14px;font-size:12px}.lead-submit{background:var(--wine);width:100%;min-height:50px;color:var(--ivory);font:inherit;cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:12px;font-size:14px;font-weight:700;transition:background .2s;display:flex}.lead-submit:hover{background:var(--rose)}.lead-submit:disabled{opacity:.65;cursor:wait}.contact .lead-form .lead-form-privacy{text-align:center;margin:14px 0 0;font-size:11px}.contact .lead-form .lead-form-privacy a{color:var(--wine);text-underline-offset:2px;font-weight:600;text-decoration:underline}.lead-success{text-align:center;align-items:center;gap:15px}.lead-success svg{color:var(--rose)}.contact .lead-success p{margin:0;line-height:1.6}.footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:35px;padding-top:50px;display:flex}.footer>div:first-child{flex:0 330px;min-width:0}.footer .footer-logo{white-space:normal;width:min(100%,330px);display:block}.footer .footer-logo img{width:100%;height:auto;display:block}.footer p{align-items:center;gap:7px;margin:18px 0 0;font-size:12px;display:flex}.footer nav{gap:25px;font-size:13px;display:flex}.footer nav a{padding:12px 0}.footer nav .footer-withdrawal{border:1px solid var(--wine);color:var(--wine);border-radius:999px;padding:10px 16px;font-weight:700}.footer nav .footer-withdrawal:hover,.footer nav .footer-withdrawal:focus-visible{background:var(--wine);color:var(--paper)}.footer-bottom{width:100%;color:var(--muted);border-top:1px solid var(--border);justify-content:space-between;padding:23px 0;font-size:12px;display:flex}.testimonial-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:25px;display:grid}.testimonial-grid blockquote{background:var(--pale);border-radius:12px;margin:0;padding:25px}@media (width>=1500px){.hero{padding-block:80px 90px}}@media (width<=1000px){.contact-layout{grid-template-columns:1fr}.contact-copy{max-width:650px}.navigation{gap:14px;font-size:11px}.brand{font-size:22px}.container{width:calc(100% - 48px)}.hero{gap:15px}.hero-actions{flex-wrap:wrap;gap:15px}.identification{gap:45px}.about{gap:40px}.program{padding:28px}.program h3{font-size:30px}.fit-grid{gap:40px}.tabs{gap:0;padding:0}.travel-panel{gap:25px;padding:30px}.faq{gap:30px}}@media (width<=850px){.nav-row{min-height:82px}.menu-toggle{border:1px solid var(--wine);width:44px;height:44px;color:var(--wine);background:0 0;border-radius:6px;place-items:center;display:grid}.navigation{background:var(--ivory);border-bottom:1px solid var(--border);box-shadow:var(--shadow);padding:16px 24px;display:none;position:absolute;top:100%;left:0;right:0}.navigation.open{flex-direction:column;align-items:stretch;gap:0;display:flex}.navigation a{min-height:44px;font-size:14px}}@media (width<=767px){.topbar{letter-spacing:.3px;font-size:10px}.topbar span{padding:0 9px}.hero{grid-template-columns:1fr;padding-block:40px}.hero-copy{max-width:550px}.hero h1{font-size:clamp(44px,8vw,64px)}.hero-description{font-size:15px}.hero-art{width:min(100%,450px);margin:10px auto 0}.hero-image{border-radius:160px 160px 16px 16px;max-height:none}.attributes .container{flex-wrap:wrap;justify-content:center;gap:15px 25px}.attributes span{font-size:12px}.identification,.about,.fit-grid,.faq{grid-template-columns:1fr;gap:40px}.identification>div>p{max-width:100%}.editorial-note{max-width:none;margin-top:22px}.program-grid{grid-template-columns:1fr}.program{padding:30px}.program h3{max-width:600px;font-size:clamp(28px,7vw,34px)}.program .button{margin-top:20px}.section-heading{display:block}.section-heading>p{max-width:100%;margin-top:22px}.tabs{flex-wrap:wrap;justify-content:center;gap:4px;padding:10px}.tabs button{flex:0 auto;min-height:44px;padding:8px 12px;font-size:12px}.tabs button svg{width:16px}.travel-panel{grid-template-columns:1fr;gap:24px;min-height:520px;padding:25px}.scenario-copy h3{font-size:26px}.phrase{min-height:245px;padding:25px}.principles{grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.approach-doodle{display:none}.about-visual{width:100%;max-width:440px;margin:auto}.fit aside{border-left:0;border-top:1px solid var(--border);padding:25px 0 0}.faq h2 br{display:none}.footer nav{flex-wrap:wrap}.contact h2 br{display:none}}@media (width<=600px){.lead-form-names{grid-template-columns:1fr}.container{width:calc(100% - 40px)}.hero-actions{align-items:flex-start;gap:15px}.hero-actions .button{font-size:13px}.destination{max-width:75%;bottom:42px;right:0}.step-note{font-size:16px;right:10px}.program{padding:25px}.program h3{font-size:31px}.principles h3{font-size:15px}.footer-bottom{gap:20px;font-size:11px}.topbar{padding-inline:8px}.about-visual{padding:30px 25px}}.whatsapp-float{z-index:1000;border:1px solid var(--wine);background:var(--wine);color:var(--ivory);border-radius:999px;align-items:center;gap:10px;padding:13px 18px;font-size:14px;font-weight:700;text-decoration:none;transition:background .18s,transform .18s,box-shadow .18s;animation:3s ease-in-out infinite whatsapp-float;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #38222733}.whatsapp-float svg{width:22px;height:22px}.whatsapp-float:hover{background:var(--rose);transform:translateY(-3px);box-shadow:0 12px 28px #38222742}.whatsapp-float:focus-visible{outline:3px solid var(--rose);outline-offset:4px}@keyframes whatsapp-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.whatsapp-float{transition:none;animation:none}}@media (width<=600px){.whatsapp-float{padding:13px;bottom:16px;right:16px}.whatsapp-float span{display:none}}.whatsapp-cta-section{padding-top:20px}.whatsapp-cta-card{border:1px solid var(--border);background:var(--wine);color:var(--ivory);text-align:center;border-radius:18px;padding:24px 30px 18px}.whatsapp-cta-card .eyebrow{color:var(--ivory);margin:0 0 18px;font-size:12px;font-weight:700}.whatsapp-cta-card h2{max-width:1000px;color:var(--ivory);font:700 clamp(22px, 2.2vw, 28px)/1.35 var(--sans);margin:0 auto 20px}.whatsapp-cta-card h2 em{color:#f3c9cb}.whatsapp-cta-card>p:not(.eyebrow){max-width:900px;color:var(--ivory);margin:0 auto 20px}.whatsapp-cta-button{min-width:min(375px,100%);color:var(--ivory);border:1px solid #fff9f6b3;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:15px 22px;font-weight:700;text-decoration:none;transition:background .18s,transform .18s;display:inline-flex}.whatsapp-cta-button:hover{background:#fff9f61f;transform:translateY(-2px)}.whatsapp-cta-button:focus-visible{outline:3px solid var(--ivory);outline-offset:4px}.booking-shell{max-width:1160px;color:var(--color-ink,#263c36);margin:auto;padding:24px}.booking-shell input,.booking-shell select,.booking-shell textarea{color:#223d34;font:inherit;background:#fff;border:1px solid #a5b7ad;border-radius:6px;max-width:100%;padding:10px}.calendar-legend{flex-wrap:wrap;gap:18px;margin:16px 0;font-size:.85rem;display:flex}.schedule-calendar{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:6px;margin:20px 0;display:grid}.schedule-calendar.view-day,.schedule-calendar.view-agenda{grid-template-columns:1fr}.schedule-day{background:#fff;border:1px solid #d8dfd7;border-radius:8px;min-width:0;overflow:hidden}.schedule-day h3{text-align:center;background:#f3eee8;margin:0;padding:10px 6px;font-size:.85rem}.schedule-times{flex-direction:column;gap:5px;max-height:460px;padding:5px;display:flex;overflow:auto}.booking-shell .schedule-times button{width:100%;min-width:0;padding:9px 3px;font-size:.85rem}.booking-shell .schedule-times small{font-size:.65rem}.booking-shell .slot.selected{color:#fff;background:#254e40;box-shadow:inset 0 0 0 2px #c5d9ba}.selection-summary{border-top:1px solid #d8dfd7;margin-top:20px;padding-top:15px}.selection-summary ul,.selection-summary ol{max-height:320px;overflow:auto}.selection-summary li{margin:8px 0}.calendar-event{text-align:left;overflow-wrap:anywhere;flex-direction:column;gap:6px;width:calc(100% - 8px);margin:4px;display:flex;padding:10px 6px!important;font-size:.78rem!important}.calendar-event.status-confirmed{background:#245849}.calendar-event.status-held{background:#775516}.calendar-event.status-awaiting_payment{background:#526582}.calendar-event.status-blocked,.calendar-event.status-cancelled,.calendar-event.status-released{background:#696969}.calendar-event.status-external{background:#5d6b80}.admin-calendar .schedule-day{min-height:150px}@media (width<=950px){.schedule-calendar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=620px){.schedule-calendar{grid-template-columns:1fr}.schedule-times{grid-template-columns:repeat(3,minmax(0,1fr));max-height:260px;display:grid}.booking-card{padding:16px!important}.booking-shell{padding:14px}}.booking-header,.booking-header nav,.booking-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.booking-header{padding:12px 0 40px}.booking-shell h1{margin:16px 0;font-size:clamp(2.4rem,6vw,4.5rem);line-height:1.1}.booking-shell h2{margin:0 0 20px;font-size:1.7rem}.booking-shell h3{margin:12px 0;font-size:1.1rem}.booking-shell p{margin:12px 0;line-height:1.7}.booking-shell a{text-underline-offset:4px;text-decoration:underline}.booking-shell button{color:#fff;cursor:pointer;font:inherit;background:#315b4e;border:1px solid #315b4e;border-radius:8px;padding:12px 18px}.booking-shell button:disabled{opacity:.55;cursor:not-allowed}.booking-shell button.secondary{color:#315b4e;background:0 0}.booking-shell button:focus-visible,.booking-shell input:focus-visible,.booking-shell select:focus-visible{outline-offset:3px;outline:3px solid #cb8b47}.booking-card{background:#fffdf8;border:1px solid #d8dfd7;border-radius:16px;margin:28px 0;padding:28px}.booking-steps{flex-wrap:wrap;gap:10px;margin:30px 0;padding:0;list-style:none;display:flex}.booking-steps li{border-bottom:2px solid #ddd;align-items:center;gap:8px;padding:9px;display:flex}.booking-steps li[aria-current]{border-color:#315b4e;font-weight:700}.booking-steps span{text-align:center;border:1px solid;border-radius:50%;width:25px;height:25px}.booking-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.booking-shell .service-option{text-align:left;color:inherit;background:#fff;border-color:#d5dacf;padding:24px}.booking-shell .selected{outline-offset:1px;background:#edf4eb;outline:3px solid #315b4e}.calendar-options{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:24px 0;display:grid}.booking-shell .slot{text-align:left;color:inherit;background:#f6f8f0;flex-direction:column;gap:10px;display:flex}.booking-shell .slot:disabled{color:#555;background:#efefed}.group-option,.cycle{border:1px solid #d5dacf;border-radius:8px;padding:16px}.booking-form{gap:16px;max-width:500px;margin:18px 0;display:grid}.booking-shell label{flex-direction:column;gap:8px;display:flex}.booking-shell input,.booking-shell select,.booking-shell textarea{font:inherit;background:#fff;border:1px solid #9aa99e;border-radius:6px;min-width:0;max-width:100%;padding:12px}.booking-shell textarea{min-height:100px}.booking-error{background:#ffede5;border:1px solid #b34d35;justify-content:space-between;gap:18px;padding:18px;display:flex}.checkout-summary{background:#edf4eb;border-radius:12px;margin:24px 0;padding:24px}.checkout-total{font-size:2rem}.booking-shell .booking-checkbox{flex-direction:row;align-items:flex-start;margin:24px 0}.booking-checkbox input{width:22px;height:22px}.booking-agenda{gap:10px;max-height:450px;margin:20px 0;display:grid;overflow:auto}.booking-agenda article{border-bottom:1px solid #ddd;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px;display:flex}.booking-shell .reservation-row{text-align:left;width:100%;color:inherit;background:0 0;margin:10px 0;display:block}.booking-shell footer{padding:30px 0}.booking-shell details{margin:16px 0}.booking-shell summary{cursor:pointer;font-weight:700}.booking-shell table{border-collapse:collapse;min-width:600px;font-size:.85rem}.booking-shell th,.booking-shell td{text-align:left;overflow-wrap:anywhere;border-bottom:1px solid #ddd;max-width:260px;padding:10px}.booking-table{max-height:600px;overflow:auto}.booking-table th,.booking-table button{white-space:nowrap}.admin-tabs{gap:8px;margin:20px 0;display:flex;overflow:auto}.admin-tabs button{white-space:nowrap}.admin-form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.booking-status{background:#edf4eb;padding:16px}.booking-shell code{font-size:.8rem}.booking-shell .admin-form-grid .wide{grid-column:1/-1}.booking-demo-banner{background:#fff0cf;border:2px solid #936719;border-radius:12px;padding:20px 24px}.booking-demo-banner strong{font-size:1.2rem}.booking-demo-banner p{margin-bottom:0}@media (width<=600px){.booking-shell{padding:16px}.booking-card{padding:18px}.booking-header{align-items:flex-start}.booking-steps{font-size:.8rem}.booking-steps li{padding:5px}.booking-controls{align-items:stretch}.booking-controls>*{width:100%}.booking-shell h2{font-size:1.5rem}}.calendar-event.status-open{background:#6c5a78}.booking-shell .booking-legal-note{margin:0 0 14px;font-size:12px;line-height:1.6}.booking-shell .booking-legal-note a{color:var(--wine);text-underline-offset:2px;font-weight:600;text-decoration:underline}.finance-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.finance-year{align-items:center;gap:10px;display:flex}.finance-year strong{text-align:center;font-variant-numeric:tabular-nums;min-width:3.2em}.finance-alert{background:#fbf3e6;border:1px solid #ecdcbf;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:14px 18px;display:flex}.finance-alert p{margin:0}.finance-tiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:0 0 32px;display:grid}.finance-tiles div{border:1px solid var(--workspace-border);background:#fff;border-radius:12px;padding:16px 18px}.finance-tiles dt{color:var(--workspace-muted);font-size:.75rem}.finance-tiles dd{font-variant-numeric:tabular-nums;margin:6px 0 4px;font-size:1.35rem;font-weight:700}.finance-tiles small{color:var(--workspace-muted);font-size:.72rem}.finance-tiles .finance-net{background:#f6ece9;border-color:#e1c9c3}.finance-tiles .finance-net dd{color:var(--workspace-accent)}.finance-panel h3{margin:0 0 12px}.finance-table tbody tr.empty td,.finance-table tbody tr.empty th{color:#aa9ea3}.finance-table tbody tr.selected{background:#f8efec}.finance-table th[scope=row]{text-align:left;font-weight:600}.finance-table tfoot th,.finance-table tfoot td{border-top:2px solid var(--workspace-border);font-weight:700}.workspace-shell .finance-table button.finance-month{color:var(--workspace-accent);font:inherit;text-transform:capitalize;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.workspace-shell .finance-table button.finance-month:disabled{color:inherit;cursor:default;text-decoration:none}.finance-detail-heading{justify-content:space-between;align-items:center;gap:12px;margin:32px 0 12px;display:flex}.finance-detail-heading h3{margin:0}.finance-help{border:1px solid var(--workspace-border);border-radius:12px;margin-top:28px;padding:14px 18px}.finance-help summary{cursor:pointer;font-weight:600}.finance-help li{color:var(--workspace-ink);margin:10px 0;line-height:1.6}@media (width<=650px){.finance-alert{flex-direction:column;align-items:stretch}.finance-tiles{grid-template-columns:1fr 1fr}.finance-tiles dd{font-size:1.05rem}}.booking-shell .sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.workspace-shell,.student-workspace{--workspace-ink:#332c31;--workspace-muted:#766a70;--workspace-accent:#844956;--workspace-border:#e8deda;color:var(--workspace-ink);font-family:Manrope,Segoe UI,sans-serif}.workspace-shell.embedded{max-width:none;margin:0;padding:0}.workspace-heading,.section-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.workspace-heading h1,.student-workspace h1{letter-spacing:-.035em;margin:6px 0 12px;font-family:DM Serif Display,Georgia,serif;font-size:clamp(2rem,3vw,2.8rem);font-weight:400}.workspace-shell p,.student-workspace p{line-height:1.65}.workspace-heading p,.section-heading p{color:var(--workspace-muted);margin:4px 0}.workspace-shell .eyebrow,.student-workspace .eyebrow{letter-spacing:.15em;color:var(--workspace-accent);font-size:.65rem;font-weight:700}.workspace-badge,.status-pill{color:#72444e;white-space:nowrap;background:#f2e4e1;border-radius:20px;padding:6px 11px;font-size:.75rem;display:inline-block}.workspace-shell .booking-card,.student-workspace .booking-card{border:1px solid var(--workspace-border);background:#fffdfb;border-radius:16px;margin:0 0 24px;padding:26px;box-shadow:0 4px 20px #53353e04}.workspace-shell h2,.student-workspace h2{margin:0 0 10px;font-size:1.2rem;line-height:1.4}.workspace-shell label,.student-workspace label{margin:0;font-size:.83rem;font-weight:500}.workspace-shell input,.workspace-shell select,.workspace-shell textarea,.student-workspace input,.student-workspace select,.student-workspace textarea{color:var(--workspace-ink);background:#fff;border:1px solid #d8c9c5;border-radius:8px;min-height:42px}.workspace-shell button,.student-workspace button{background:var(--workspace-accent);font:inherit;border-radius:8px;min-height:42px;padding:11px 16px;font-size:.83rem;line-height:1.4}.workspace-shell button.secondary,.student-workspace button.secondary{color:#75414c;background:#fffdfb;border:1px solid #d8c9c5}.workspace-shell .text-action,.student-workspace .text-action{color:var(--workspace-accent);background:0 0;border:0;min-height:0;padding:8px 4px;font-weight:600}.workspace-shell button.compact{min-height:32px;padding:6px 10px}.workspace-shell .booking-controls,.student-workspace .booking-controls{gap:12px;margin:16px 0}.workspace-shell .booking-status,.student-workspace .booking-status{color:#355545;background:#edf4ef;border:1px solid #d6e6da;border-radius:10px;padding:16px}.workspace-shell .admin-tabs{border-bottom:1px solid var(--workspace-border);gap:6px;margin:18px 0;padding:4px}.workspace-shell .admin-tabs:empty{display:none}.workspace-shell .admin-tabs button{color:var(--workspace-muted);background:0 0;border-radius:8px 8px 0 0}.workspace-shell .admin-tabs button[aria-pressed=true]{color:var(--workspace-accent);box-shadow:inset 0 -2px var(--workspace-accent);background:#f4e9e5}.workspace-shell .booking-table table,.student-workspace .booking-table table{width:100%;font-size:.8rem}.workspace-shell .booking-table th,.student-workspace .booking-table th{color:#78626b;background:#f6f0ed;padding:15px 14px;font-size:.7rem;font-weight:600}.workspace-shell .booking-table td,.student-workspace .booking-table td{color:var(--workspace-ink);padding:18px 14px;line-height:1.6}.booking-table td small{color:#82747a;margin-top:4px;font-size:.72rem;display:block}.money-cell{white-space:nowrap;font-variant-numeric:tabular-nums}.workspace-empty{text-align:center;color:var(--workspace-muted);border:1px dashed var(--workspace-border);border-radius:12px;padding:50px 22px}.quiet-note{color:var(--workspace-muted);margin:14px 0;font-size:.78rem}.view-switch{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px;display:flex}.view-switch a{color:var(--workspace-accent);margin-left:auto;font-size:.8rem}.view-switch button{color:var(--workspace-muted);border:1px solid var(--workspace-border);background:0 0}.view-switch button.active{color:#fff;background:#844956;border-color:#844956}.google-calendar-frame{border:0;border-radius:12px;width:100%;height:700px;margin-top:20px}.availability-layout{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);align-items:start;gap:22px;display:grid}.working-day{border-top:1px solid var(--workspace-border);align-items:flex-start;gap:16px;padding:20px 0;display:flex}.workspace-shell .day-toggle{flex-direction:row;align-items:center;gap:9px;min-width:118px;padding-top:9px;display:flex}.workspace-shell input[type=checkbox],.student-workspace input[type=checkbox]{accent-color:#844956;width:17px;height:17px;min-height:0}.day-intervals{flex:1;gap:8px;min-width:0;display:grid}.time-interval{align-items:center;gap:10px;display:flex}.time-interval label{flex:1;min-width:0}.time-interval input{width:100%;min-width:0}.working-day>.text-action{white-space:nowrap;font-size:.75rem}.form-footer{border-top:1px solid var(--workspace-border);justify-content:space-between;align-items:center;gap:20px;margin-top:22px;padding-top:20px;display:flex}.exception-list{margin-top:20px;padding:0;list-style:none}.exception-list li{border-top:1px solid var(--workspace-border);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:.8rem;display:flex}.receipt-search{align-items:end;gap:12px;margin:24px 0;display:flex}.receipt-search label{width:320px;max-width:100%}.receipt-search input{width:100%}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.calendar-toolbar h2{text-transform:capitalize;margin:0}.calendar-toolbar .booking-controls{margin:0}.calendar-filters{align-items:end;gap:12px;margin:0 0 20px;display:flex}.calendar-filters label{flex:1}.calendar-legend{color:var(--workspace-muted);font-size:.75rem}.calendar-legend i{border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.calendar-legend .confirmed{background:#57866b}.calendar-legend .held{background:#bb9047}.calendar-legend .blocked{background:#9b8e97}.calendar-legend .external{background:#7a8ba3}.calendar-scroll{border:1px solid var(--workspace-border);border-radius:12px;overflow:auto}.time-calendar{grid-template-columns:55px repeat(var(--calendar-days), minmax(115px, 1fr));min-width:780px;display:grid}.time-calendar.day{min-width:300px}.time-column{background:repeating-linear-gradient(#0000 0 47px,#efe8e5 47px 48px);border-right:1px solid #eee6e3;height:1152px;position:relative}.time-column:last-child{border:0}.time-column time{color:#95848c;font-size:.65rem;position:absolute;left:8px}.time-day-header{text-align:center;border-right:1px solid #eee6e3;border-bottom:1px solid var(--workspace-border);z-index:2;background:#fffdfb;padding:12px 6px;font-size:.76rem;position:sticky;top:0}.time-day-header.today{color:#844956;background:#f5e6e1;font-weight:700}.workspace-shell .time-calendar .calendar-event{color:#234b38;background:#e0efe4;border-left:3px solid #57866b;border-radius:6px;justify-content:flex-start;align-items:flex-start;gap:1px;width:calc(100% - 8px);min-height:23px;margin:0 4px;line-height:1.35;position:absolute;overflow:hidden;padding:6px 8px!important;font-size:.67rem!important}.workspace-shell .calendar-event.status-held{color:#80602c;background:#faf0d9;border-color:#bb9047}.workspace-shell .calendar-event.status-awaiting_payment{color:#485c83;background:#e8ecf6;border-color:#7385b1}.workspace-shell .calendar-event.status-blocked,.workspace-shell .calendar-event.status-cancelled,.workspace-shell .calendar-event.status-released{color:#776773;background:#eee9ed;border-color:#9b8e97}.workspace-shell .calendar-event.status-external{color:#4f5f78;background:repeating-linear-gradient(135deg,#eef1f6,#eef1f6 6px,#e3e8f0 6px 12px);border-color:#7a8ba3}.workspace-shell .calendar-event span{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:100%;overflow:hidden}.calendar-month{grid-template-columns:repeat(7,minmax(0,1fr));min-width:750px;display:grid}.month-day{border-bottom:1px solid #eee6e3;border-right:1px solid #eee6e3;min-height:125px;padding:8px}.month-day>strong{text-align:right;margin-bottom:10px;font-size:.78rem;display:block}.workspace-shell .month-day button{text-align:left;color:#75414c;background:#f3e5df;width:100%;min-height:28px;margin:4px 0;padding:5px 7px;font-size:.68rem;display:block}.calendar-detail{z-index:80;background:#2c20294d;justify-content:flex-end;display:flex;position:fixed;inset:0}.calendar-detail>section{background:#fffdfb;width:min(460px,100%);height:100%;padding:32px;overflow:auto;box-shadow:-12px 0 60px #35252d1f}.calendar-detail .booking-form{margin:25px 0}.student-workspace{max-width:1120px;padding:28px 28px 48px}.student-workspace .booking-header{border-bottom:1px solid var(--workspace-border);margin-bottom:40px;padding-bottom:22px}.student-workspace .booking-header .brand{color:#67414d;font-family:Georgia,serif;font-size:1.25rem;font-weight:600}.student-workspace .student-nav{flex-wrap:wrap;gap:6px;display:flex}.student-workspace .student-nav button{color:#817279;background:0 0;min-height:38px;padding:9px 13px}.student-workspace .student-nav button[aria-current=page]{color:#75414c;background:#f3e4df}.student-workspace .booking-steps{border:0;gap:15px;margin:25px 0 32px;padding:0;display:flex}.student-workspace .booking-steps li{color:#8b7d82;background:0 0;border-bottom:2px solid #e8deda;border-radius:0;flex:1;padding:12px 0;font-size:.77rem}.student-workspace .booking-steps li[aria-current=step]{color:#844956;border-color:#844956;font-weight:700}.student-workspace .booking-steps span{color:#765b65;background:#efe6e2;margin-right:8px}.student-workspace .booking-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.student-workspace button.service-option{color:#392e34;text-align:left;min-height:200px;box-shadow:none;background:#fffdfb;border:1px solid #dfd0cb;border-radius:13px;padding:25px}.student-workspace button.service-option:hover{background:#fcf3ee;border-color:#b77d86}.student-workspace .service-option h3{margin-bottom:20px;font-family:Georgia,serif;font-size:1.25rem}.student-workspace .service-option strong{color:#844956;margin:12px 0;font-size:1.25rem;display:block}.student-workspace .service-option p{color:#827078;font-size:.8rem}.chosen-service{background:#f3e6df;border:1px solid #e4d1cb;border-radius:13px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:20px 24px;display:flex}.chosen-service strong{font-size:1rem;display:block}.chosen-service>div{justify-items:start;gap:5px;min-width:0;display:grid}.chosen-service .pill{border:1px solid #b77987;border-radius:999px;margin:3px 0;padding:4px 10px;line-height:1.2;display:inline-flex}.chosen-service span{color:#856773;font-size:.8rem}.student-workspace .booking-form{gap:16px;max-width:460px}.student-workspace .booking-form input{width:100%}.student-workspace .schedule-day h3{color:#75414c;background:#f3e6df;padding:14px 6px}.student-workspace .schedule-times button{color:#75414c;background:#fffdfb;border:1px solid #e0d3cc}.student-workspace .slot.selected{color:#fff;box-shadow:none;background:#844956;border-color:#844956}.student-workspace .reservation-row{color:#573e47;text-align:left;background:#fffdfb;border:1px solid #e0d3cc;border-radius:12px;flex-wrap:wrap;justify-content:space-between;gap:12px;width:100%;margin:12px 0;padding:22px;display:flex}.student-workspace details{border-top:1px solid #e8deda;padding:16px 0}.student-workspace details>summary{cursor:pointer;color:#75505c;margin-bottom:12px;font-size:.85rem}.payment-success{color:#315940;background:#e9f3e9;border:1px solid #caddca;border-radius:14px;margin:0 0 24px;padding:24px}.payment-success h2{margin-bottom:10px}.payment-success button{margin-top:14px}.student-workspace .booking-agenda article{background:#faf5f0;border:1px solid #e6d7d0;border-radius:10px;padding:18px}@media (width<=1150px){.availability-layout{grid-template-columns:1fr}.workspace-heading .workspace-badge{display:none}}@media (width<=650px){.student-workspace .receipts-panel .booking-table{max-height:none;overflow:visible}.student-workspace .receipts-panel table{min-width:0;display:block}.student-workspace .receipts-panel thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.student-workspace .receipts-panel tbody{gap:16px;display:grid}.student-workspace .receipts-panel tr{border:1px solid var(--workspace-border);border-radius:12px;grid-template-columns:1fr 1fr;gap:10px;padding:16px;display:grid}.student-workspace .receipts-panel td{border:0;max-width:none;padding:0}.student-workspace .receipts-panel td:first-child,.student-workspace .receipts-panel td:nth-child(2),.student-workspace .receipts-panel td:last-child{grid-column:1/-1}.student-workspace .receipts-panel td button{width:100%}.workspace-shell .booking-card,.student-workspace .booking-card{padding:20px 16px}.workspace-heading,.section-heading{flex-direction:column;align-items:flex-start;gap:12px}.working-day{flex-wrap:wrap;gap:8px}.workspace-shell .day-toggle{min-width:100%;padding:0}.working-day>.text-action{margin-left:auto}.time-interval{gap:6px}.workspace-shell .booking-controls{flex-wrap:wrap;display:flex}.workspace-shell .booking-controls button{width:auto}.calendar-filters{flex-wrap:wrap}.calendar-filters label{min-width:130px}.receipt-search{flex-wrap:wrap}.form-footer{flex-direction:column;align-items:flex-start}.student-workspace{padding:16px}.student-workspace .booking-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:28px}.student-workspace .student-nav{gap:3px;width:100%}.student-workspace .student-nav button{flex:1;padding:9px;font-size:.75rem}.student-workspace .booking-steps{gap:8px}.student-workspace .booking-steps li{font-size:.68rem}.student-workspace .booking-steps span{display:none}.chosen-service{padding:16px}.student-workspace .booking-controls button,.workspace-shell .section-heading button{width:auto}.google-calendar-frame{height:600px}}.student-workspace .step-heading p{color:var(--workspace-muted);margin:0 0 20px}.plan-options{gap:18px;margin-bottom:24px;display:grid}.choice-group{border:0;min-width:0;margin:0;padding:0}.choice-group legend{margin-bottom:10px;padding:0;font-size:.83rem;font-weight:600}.choice-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.student-workspace .choice-card{border:1px solid var(--workspace-border);cursor:pointer;background:#fffdfb;border-radius:12px;flex-direction:row;align-items:flex-start;gap:12px;padding:14px 16px;transition:border-color .15s,background-color .15s}.student-workspace .choice-card input{min-height:0;accent-color:var(--workspace-accent);margin:3px 0 0}.student-workspace .choice-card span{gap:2px;display:grid}.student-workspace .choice-card small{color:var(--workspace-muted);font-weight:400}.student-workspace .choice-card.selected{border-color:var(--workspace-accent);box-shadow:inset 0 0 0 1px var(--workspace-accent);background:#fbf1ee;outline:none}.segmented{background:#f4ebe7;border-radius:12px;flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.student-workspace .segmented label{color:#75414c;cursor:pointer;border-radius:9px;flex-direction:row;align-items:center;padding:9px 14px}.student-workspace .segmented input{opacity:0;pointer-events:none;position:absolute}.student-workspace .segmented label.selected{background:#fff;outline:none;font-weight:700;box-shadow:0 1px 3px #53353e1f}.student-workspace .segmented label:has(input:focus-visible){outline:2px solid var(--workspace-accent);outline-offset:2px}.student-workspace .choice-card:has(input:focus-visible){outline:2px solid var(--workspace-accent);outline-offset:2px}.schedule-layout{align-items:start;gap:24px;display:grid}.schedule-layout.with-panel{grid-template-columns:minmax(0,1fr) 320px}.schedule-main{min-width:0;min-height:320px}.week-nav{align-items:center;gap:10px;margin-bottom:16px;display:flex}.student-workspace .week-nav button{width:42px;padding:0;font-size:1.2rem}.week-nav strong{text-align:center;min-width:130px}.week-nav .status-pill{margin-left:auto}.day-strip{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;margin-bottom:20px;display:grid}.student-workspace .day-chip{border:1px solid var(--workspace-border);color:var(--workspace-ink);background:#fffdfb;border-radius:12px;justify-items:center;gap:1px;padding:10px 6px;transition:border-color .15s,background-color .15s;display:grid;position:relative}.student-workspace .day-chip:hover:not(:disabled){border-color:#b77d86}.day-chip-weekday{text-transform:capitalize;color:var(--workspace-muted);font-size:.72rem}.day-chip strong{font-size:.95rem}.student-workspace .day-chip small{color:var(--workspace-muted);font-size:.68rem}.student-workspace .day-chip[aria-pressed=true]{background:var(--workspace-accent);border-color:var(--workspace-accent);color:#fff}.student-workspace .day-chip[aria-pressed=true] small,.student-workspace .day-chip[aria-pressed=true] .day-chip-weekday{color:#f6e7ea}.student-workspace .day-chip:disabled{opacity:.45;cursor:not-allowed}.day-chip-dot{background:#4f8a6b;border-radius:50%;width:8px;height:8px;position:absolute;top:7px;right:7px;box-shadow:0 0 0 2px #fff}.time-group+.time-group{margin-top:18px}.time-group h4{letter-spacing:.08em;text-transform:uppercase;color:var(--workspace-muted);margin:0 0 8px;font-size:.72rem}.time-chips{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.student-workspace .time-chip{color:#75414c;font-variant-numeric:tabular-nums;background:#fffdfb;border:1px solid #e0d3cc;font-weight:600;transition:border-color .15s,background-color .15s}.student-workspace .time-chip:hover{border-color:var(--workspace-accent);background:#fbf1ee}.student-workspace .time-chip.selected{background:var(--workspace-accent);border-color:var(--workspace-accent);color:#fff;outline:none}.slot-empty,.slot-loading p{color:var(--workspace-muted);margin:8px 0 16px}.slot-skeleton{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.slot-skeleton span{background:linear-gradient(90deg,#f4ebe7 25%,#faf4f1 50%,#f4ebe7 75%) 0 0/200% 100%;border-radius:12px;height:66px;animation:1.2s linear infinite slot-shimmer}@keyframes slot-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.slot-skeleton span{animation:none}}.schedule-main>.text-action{margin-top:16px}.selection-panel{border:1px solid var(--workspace-border);background:#fbf5f2;border-radius:14px;gap:10px;padding:20px;display:grid;position:sticky;top:20px}.selection-panel h3{margin:0;font-size:1.05rem}.student-workspace .selection-panel p,.selection-panel .quiet-note{margin:0}.selection-meta{color:var(--workspace-muted);font-size:.8rem}.selection-progress{background:#ecdfda;border-radius:6px;height:6px;overflow:hidden}.selection-progress span{background:var(--workspace-accent);height:100%;transition:width .2s;display:block}.selection-count{font-size:.8rem;font-weight:600}.selected-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.selected-list li{background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.85rem;display:flex}.selection-hint{color:#75414c;font-size:.8rem}.preview-box{border-top:1px solid var(--workspace-border);padding-top:10px}.preview-box h4{margin:0 0 6px;font-size:.85rem}.preview-box ol{margin:0 0 10px;padding-left:18px;font-size:.8rem;line-height:1.7}.preview-box li.conflict{color:#a3333d;font-weight:600}.preview-price strong{color:var(--workspace-accent);font-size:1.15rem}.student-workspace .selection-continue{width:100%;margin-top:4px}@media (width<=900px){.schedule-layout.with-panel{grid-template-columns:1fr}.selection-panel{position:static}}@media (width<=650px){.week-nav{flex-wrap:wrap}.week-nav .status-pill{margin-left:0}.day-strip{scroll-snap-type:x proximity;padding-bottom:4px;display:flex;overflow-x:auto}.student-workspace .day-chip{scroll-snap-align:start;flex:0 0 84px}.time-chips{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented{flex-wrap:nowrap;display:flex}.student-workspace .segmented label{text-align:center;flex:1;justify-content:center;padding:9px 8px}}.receipt-modal{z-index:90;background:#2c20294d;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.receipt-modal>section{background:#fffdfb;border-radius:12px;width:min(480px,100%);max-height:100%;padding:32px;overflow:auto;box-shadow:0 12px 60px #35252d33}.receipt-summary{grid-template-columns:auto 1fr;gap:8px 16px;margin:20px 0;display:grid}.receipt-summary dt{font-weight:600}.receipt-summary dd{margin:0}.receipt-summary small{display:block}.student-workspace .booking-recap{border:1px solid var(--workspace-border);border-left:3px solid var(--workspace-accent);background:#fbf5f2;border-radius:10px;gap:4px;margin:16px 0;padding:14px 16px;font-size:.88rem;display:grid}.student-workspace .booking-recap span{color:var(--workspace-muted)}.workspace-shell .calendar-event.status-open{color:#6c5a78;background:#f6f2f8;border-color:#a893b6;border-left-style:dashed}.student-import{max-width:980px;margin-inline:auto}.import-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.import-steps{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0;padding:0;list-style:none;display:flex}.import-steps li{color:#655c55;border:1px solid #ded9d2;border-radius:999px;padding:.5rem .85rem}.import-steps li[aria-current]{color:#493a24;background:#f3e6cf;border-color:#a98b58;font-weight:700}.import-fields{border:0;gap:1rem;min-width:0;margin:0 0 1.5rem;padding:0;display:grid}.import-fields legend{margin:1rem 0;font-weight:700}.import-fields label{gap:.4rem;font-weight:600;display:grid}.import-fields input,.import-fields select,.import-fields textarea{box-sizing:border-box;color:#302d29;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #cfc7bc;border-radius:10px;padding:.65rem .8rem}.import-fields input[readonly]{background:#f2f0ed}.import-fields textarea{resize:vertical;min-height:90px}.import-fields button{justify-self:start}.import-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.import-summary{grid-template-columns:minmax(130px,1fr) 3fr;gap:.75rem 1rem;display:grid}.import-summary dt{font-weight:700}.import-summary dd{overflow-wrap:anywhere;margin:0}.import-fields .import-check{flex-direction:row;align-items:flex-start;gap:.6rem;display:flex}.import-check input{flex-shrink:0;width:20px;min-height:20px}.import-matches{gap:.5rem;display:grid}.import-record{border-top:1px solid #ded9d2;padding:1rem 0}.import-record h4{margin:.5rem 0}.import-record .booking-controls{flex-wrap:wrap}.payment-choice{border:1px solid #ded9d2;border-radius:12px;gap:.5rem;min-width:0;margin:0;padding:.75rem 1rem 1rem;display:grid}.import-fields .payment-choice legend{margin:0;padding:0 .35rem}.import-fields .payment-choice label{cursor:pointer;border:1px solid #e6e1da;border-radius:10px;flex-direction:row;align-items:center;gap:.6rem;min-height:44px;padding:0 .75rem;font-weight:500;display:flex}.import-fields .payment-choice label:has(input:checked){background:#faf3e6;border-color:#a98b58}.import-fields .payment-choice label:has(input:disabled){opacity:.55;cursor:not-allowed}.import-fields .payment-choice input{flex-shrink:0;width:20px;min-height:20px;margin:0}.payment-outcome{color:#24452a;background:#eef4ee;border:1px solid #c8dcc9;border-radius:10px;margin:0;padding:.75rem 1rem}.payment-outcome[data-outcome=review],.payment-outcome[data-outcome=incomplete]{color:#5a4417;background:#fbf3e2;border-color:#e7d3a8}.register-payment{background:#fff;border:1px solid #ded9d2;border-radius:12px;margin-top:1rem;padding:1rem}.register-payment h4{margin:0 0 1rem}.payment-notes{color:#655c55;white-space:pre-line;margin-top:.25rem;display:block}.payment-review{margin:.75rem 0 0}.invitation-page{max-width:600px;margin:6vh auto;padding:2rem}@media (width<=640px){.import-grid{grid-template-columns:1fr}.import-summary{grid-template-columns:1fr;gap:.35rem}.import-summary dd{margin-bottom:.65rem}.import-heading{flex-wrap:wrap}.invitation-page{margin:1rem;padding:1rem}}.workspace-shell .service-editor,.workspace-shell .group-editor form{max-width:1120px}.workspace-shell .service-editor .admin-form-grid,.workspace-shell .group-editor .admin-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 20px;margin-top:20px}.workspace-shell .service-editor label:not(.booking-checkbox),.workspace-shell .group-editor label:not(.booking-checkbox){justify-content:space-between;min-width:0;line-height:1.5}.workspace-shell .service-editor input,.workspace-shell .service-editor select,.workspace-shell .group-editor input,.workspace-shell .group-editor select{box-sizing:border-box;width:100%}.workspace-shell .service-editor textarea{resize:vertical;min-height:140px;line-height:1.65}.workspace-shell .service-editor input[readonly]{color:#645555;background:#f7f3f0}.workspace-shell .service-editor .booking-checkbox,.workspace-shell .group-editor .booking-checkbox{gap:10px;margin:12px 0;line-height:1.6}.workspace-shell .service-editor input[type=checkbox],.workspace-shell .group-editor input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin-top:3px}.group-dates{border:1px solid #e2d4ce;border-radius:12px;min-width:0;margin:28px 0 20px;padding:20px}.group-dates legend{padding:0 8px;font-weight:600}.workspace-shell .booking-table td:first-child{overflow-wrap:normal;min-width:150px}.workspace-shell .booking-table .booking-controls{justify-content:flex-start;gap:8px;margin:0}.group-summary{background:#f7f1ed;border-radius:10px;padding:16px;line-height:1.6}.workspace-shell .group-editor .booking-error{margin:20px 0}@media (width<=1100px){.workspace-shell .service-editor .admin-form-grid,.workspace-shell .group-editor .admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.workspace-shell .service-editor .admin-form-grid,.workspace-shell .group-editor .admin-form-grid{grid-template-columns:minmax(0,1fr)}.group-dates{padding:14px}}.admin-panel{--workspace-ink:#392e34;--workspace-muted:#78666f;--workspace-accent:#814754;--workspace-border:#e8dfd9}.admin-panel main,.admin-panel .booking-card{min-width:0}.admin-panel .workspace-heading{align-items:flex-start;margin-bottom:28px}.admin-panel .workspace-heading .eyebrow{color:#986472;letter-spacing:.14em;margin:0 0 12px;font-size:.59rem}.admin-panel .workspace-heading h1{color:#49313e;letter-spacing:-.03em;margin:0 0 12px;font:400 clamp(2rem,3vw,2.65rem)/1.15 DM Serif Display,Georgia,serif}.admin-panel .workspace-heading p:not(.eyebrow){max-width:68ch;font-size:.85rem;line-height:1.8}.admin-panel.workspace-shell .booking-card{border:1px solid var(--workspace-border);background:#fffdfb;border-radius:18px;padding:26px;box-shadow:0 4px 22px #5c394405}.admin-panel.workspace-shell h2{letter-spacing:-.025em;color:#49313e;font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:700}.admin-panel h3{letter-spacing:normal;font-size:.93rem}.admin-panel .booking-card>p,.admin-panel .section-heading p:not(.eyebrow){color:var(--workspace-muted);font-size:.82rem;line-height:1.8}.admin-panel button{border-color:#814754;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;transition:background .15s,border-color .15s;display:inline-flex}.admin-panel button.secondary{color:#784956;background:#fffdfb;border-color:#ddcfc8}.admin-panel button.secondary:hover:not(:disabled){background:#f5eae4;border-color:#c5a5a9}.admin-panel .text-action{border-color:#0000}.admin-panel :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline-offset:3px;outline:3px solid #b47b8a}.admin-panel input:not([type=checkbox]):not([type=radio]),.admin-panel select,.admin-panel textarea{color:#49313e;background:#fffdfb;border:1px solid #dccdc6;border-radius:9px;min-height:44px;font-size:.85rem}.admin-panel input::placeholder{color:#8d7d84}.admin-panel label{color:#66505b;font-size:.77rem;font-weight:600}.admin-panel .booking-status,.admin-panel .booking-error{border-radius:12px;font-size:.82rem;line-height:1.7}.admin-panel p.booking-status,.admin-panel p.booking-error{align-items:flex-start;gap:10px;display:flex}.admin-panel .booking-status svg,.admin-panel .booking-error svg{flex-shrink:0;margin-top:2px}.admin-panel .booking-error{color:#9c3b44;background:#fff2ef;border:1px solid #eacdc7;padding:16px}.admin-panel .admin-section-actions{justify-content:flex-start;gap:10px;margin:0 0 22px}.admin-panel .admin-section-actions>button:last-child{margin-left:auto}.admin-panel .admin-tabs{background:#eee7e2;border:1px solid #e9ded7;border-radius:12px;flex-wrap:wrap;gap:6px;margin:0 0 24px;padding:6px;display:flex}.admin-panel .admin-tabs:empty{display:none}.admin-panel.workspace-shell .admin-tabs button{color:#7c6571;background:0 0;border:0;border-radius:8px;padding:11px 16px;font-size:.76rem}.admin-panel.workspace-shell .admin-tabs button[aria-pressed=true]{color:#814754;background:#fffdfb;font-weight:700;box-shadow:0 2px 7px #5c39440a}.admin-records-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;display:flex}.admin-panel .admin-records-heading h2{margin:0 0 8px}.admin-records-heading p{color:var(--workspace-muted);margin:0;font-size:.8rem;line-height:1.8}.admin-record-count{white-space:nowrap;color:#866b77;background:#f8f1ec;border:1px solid #e7dcd5;border-radius:20px;padding:6px 10px;font-size:.67rem}.admin-table-toolbar{background:#f8f4f0;border:1px solid #ede3dc;border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 20px;padding:16px;display:flex}.admin-panel .admin-table-search{width:350px;max-width:100%;font-size:.7rem}.admin-search-control{display:block;position:relative}.admin-search-control>svg{color:#9d7886;pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.admin-panel .admin-search-control input{width:100%;min-height:44px;padding-left:39px}.admin-table-toolbar>p{color:#8a727d;margin:0 0 10px auto;font-size:.67rem}.admin-panel .booking-table{border:1px solid #eadfd8;border-radius:12px;max-width:100%;overflow:auto}.admin-panel .booking-table th{color:#80626f;letter-spacing:.01em;white-space:normal;background:#f7f1ec;padding:14px 16px;font-size:.65rem;font-weight:700}.admin-panel .booking-table td{vertical-align:middle;color:var(--workspace-ink);border-color:#ede3dd;padding:20px 16px;font-size:.78rem}.admin-panel .booking-table tbody tr:hover{background:#fdf6f1}.admin-panel .booking-table tbody tr:last-child td{border-bottom:0}.admin-panel .booking-table .admin-record-name{color:#573a47;font-weight:700}.admin-panel .booking-table .money-cell{font-weight:600}.admin-panel .booking-table .booking-controls{gap:7px}.admin-panel .booking-table button{white-space:nowrap;min-height:38px;padding:9px 12px;font-size:.72rem}.admin-panel .booking-table .admin-row-actions>button{margin:3px}.admin-state{color:#78666f;white-space:nowrap;background:#efeae6;border-radius:20px;align-items:center;gap:6px;padding:5px 10px;font-size:.66rem;font-weight:600;display:inline-flex}.admin-state:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.admin-state[data-state=published],.admin-state[data-state=active],.admin-state[data-state=paid],.admin-state[data-state=approved],.admin-state[data-state=completed],.admin-state[data-state=accepted]{color:#496b50;background:#eaf1e5}.admin-state[data-state=held],.admin-state[data-state=pending],.admin-state[data-state=due],.admin-state[data-state=in_process]{color:#8c682f;background:#fbf0dc}.admin-state[data-state=cancelled],.admin-state[data-state=suspended],.admin-state[data-state=rejected],.admin-state[data-state=failed]{color:#9b4d53;background:#f8e8e3}.admin-panel button.admin-danger-action{color:#a2545a;background:#fff9f6;border-color:#e5cbc6}.admin-panel button.admin-danger-action:hover:not(:disabled){background:#fbe9e3}.admin-panel .admin-table-footer{border-top:1px solid #eee3dc;justify-content:flex-start;align-items:center;gap:12px;margin:18px 0 0;padding-top:20px}.admin-table-footer>span{color:#8a727d;font-size:.68rem}.admin-panel .admin-table-footer>.admin-export{margin-left:auto;font-size:.72rem}.admin-panel .admin-records-empty{background:#fcf7f3;justify-items:center;gap:12px;margin-top:20px;padding:38px 24px;display:grid}.admin-records-empty svg{color:#b48b94}.admin-panel .admin-records-empty h3{margin:0;font-weight:600}.admin-panel .admin-records-empty p{max-width:50ch;margin:0;font-size:.82rem}.admin-panel .admin-loading-card{padding:48px 28px}.admin-loading-card>div{color:#814754;justify-items:center;gap:16px;display:grid}.admin-loading-card strong{font-size:.94rem}.admin-loading-card p{color:#8a727d;text-align:center;font-size:.8rem}.admin-panel .admin-editor-card{border-top:3px solid #b98a94}.admin-form-heading{border-bottom:1px solid #e9ddd6;align-items:center;gap:12px;margin-bottom:6px;padding:0 0 14px;display:flex}.admin-form-heading>span{color:#9a6877;background:#f3e6df;border-radius:10px;place-items:center;width:36px;height:36px;font-size:.71rem;display:grid}.admin-panel .admin-form-heading h3{margin:0 0 5px}.admin-form-heading p{color:#8a727d;margin:0;font-size:.74rem}.admin-panel .service-policies{background:#fbf7f2;border:1px solid #e8dcd4;border-radius:12px;padding:18px}.admin-panel .service-policies summary{color:#805260;cursor:pointer;font-size:.85rem;font-weight:600}.admin-panel .service-policies p{color:#8a727d;margin-top:10px;font-size:.78rem}.admin-panel .service-editor label.booking-checkbox{background:#fffaf6;border:1px solid #eaded6;border-radius:10px;margin:0;padding:15px;font-size:.76rem}.admin-panel .view-switch{gap:8px;margin-bottom:22px}.admin-panel .view-switch button{border-radius:10px;min-height:44px;font-size:.75rem}.admin-panel .view-switch a{text-underline-offset:4px;font-size:.73rem;text-decoration:underline}.admin-panel .calendar-toolbar h2{text-transform:none;margin-bottom:8px}.admin-panel .calendar-toolbar .quiet-note{margin:0;font-size:.74rem}.admin-panel .calendar-toolbar .booking-controls{gap:7px}.admin-panel .calendar-toolbar button{padding:10px 12px;font-size:.72rem}.admin-agenda-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0;display:grid}.admin-agenda-summary>div{background:#faf6f1;border:1px solid #e9dfd7;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:18px;display:grid}.admin-agenda-summary svg{color:#976b78}.admin-agenda-summary strong{color:#61414f;font-size:1.6rem;font-weight:600;line-height:1.3}.admin-agenda-summary span{color:#806b75;grid-column:1/-1;font-size:.7rem}.admin-panel .calendar-filters{background:#f6f0eb;border-radius:12px;gap:14px;padding:18px}.admin-panel .calendar-filters label{min-width:0;font-size:.7rem}.admin-panel .calendar-filters input,.admin-panel .calendar-filters select{width:100%}.admin-panel .calendar-legend{gap:12px;font-size:.69rem}.admin-panel .calendar-legend span:last-child{margin-left:auto}.admin-panel .calendar-scroll{background:#fffdfb;border-radius:12px}.admin-panel .time-header{color:#76515f;background:#f8f1eb}.admin-panel .calendar-event{border-radius:8px;box-shadow:0 2px 5px #55333e08}.admin-panel.workspace-shell .time-calendar .calendar-event{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px;min-height:0;padding:5px 7px;font-size:.68rem;line-height:1.3;display:flex}.admin-panel .time-calendar .calendar-event>span:last-child{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.admin-panel .admin-calendar-empty{background:#faf6f1;justify-items:center;gap:12px;margin-top:20px;display:grid}.admin-calendar-empty svg{color:#b48b94}.admin-calendar-empty p{margin:0;font-size:.86rem}.admin-calendar-empty small{font-size:.75rem}.admin-panel .calendar-detail>section{border-left:1px solid #e8d9d2;padding:28px}.admin-panel .calendar-detail h3{margin-top:24px;font-size:1.1rem;line-height:1.5}.admin-panel .calendar-detail p{color:#78666f;font-size:.8rem;line-height:1.8}.admin-panel .working-day{padding:18px 0}.admin-panel .working-day:has(input[type=checkbox]:checked) .day-toggle{color:#814754}.admin-panel .time-interval{background:#f9f3ee;border-radius:9px;padding:7px}.admin-panel .day-toggle{min-width:105px;font-size:.77rem}.admin-panel .form-footer{padding-top:22px}.admin-panel .form-footer button{flex-shrink:0}.admin-panel .availability-layout .booking-card>.eyebrow{margin-bottom:12px;font-size:.6rem}.admin-panel .receipt-search{background:#f8f3ee;border:1px solid #ece1da;border-radius:12px;padding:18px}.admin-panel .finance-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-panel .finance-tiles>div{background:#fcf8f3;border-color:#e9ddd6;border-radius:14px;padding:20px}.admin-panel .finance-tiles .finance-net{background:#683e4e;border-color:#683e4e}.admin-panel .finance-tiles .finance-net dt,.admin-panel .finance-tiles .finance-net small{color:#e7cfd2}.admin-panel .finance-tiles .finance-net dd{color:#fff5ed}.admin-panel .finance-year{background:#f5ece6;border-radius:10px;padding:4px}.admin-panel .finance-help{background:#f9f3ed}.admin-panel .finance-help summary{color:#805260;font-size:.83rem}.admin-panel .finance-help li{font-size:.8rem}.admin-panel .finance-table th[scope=row]{background:#fcf8f4}.admin-panel .finance-table{table-layout:auto;min-width:1350px}.admin-panel .finance-table :is(th,td){white-space:nowrap;overflow-wrap:normal;word-break:normal}.admin-panel .finance-table thead th{z-index:1;background:#f7f1ec;position:sticky;top:0}.admin-panel .finance-scroll-hint{margin:-4px 0 16px;font-size:.73rem}.admin-panel .finance-table tbody tr.selected td,.admin-panel .finance-table tbody tr.selected th{background:#f2e6df}.admin-panel .finance-table tbody tr.empty td,.admin-panel .finance-table tbody tr.empty th{color:#8d7b84}.admin-panel .admin-spin{animation:1s linear infinite admin-panel-spin}@keyframes admin-panel-spin{to{transform:rotate(360deg)}}@media (width<=1200px){.admin-panel .availability-layout{grid-template-columns:minmax(0,1fr)}.admin-panel .calendar-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-table-toolbar>p{flex-basis:100%;margin:0}.admin-panel .admin-table-footer>.admin-export{margin-left:0}}@media (width>=651px){.admin-panel .receipts-panel table{min-width:1050px}.admin-panel .receipts-panel :is(th,td){overflow-wrap:normal}.admin-panel .receipts-panel td[data-label=Alumno]{min-width:190px}}@media (width<=650px){.admin-panel .workspace-heading{margin-bottom:22px}.admin-panel .workspace-heading h1{font-size:2rem}.admin-panel .workspace-heading p:not(.eyebrow){font-size:.81rem}.admin-panel .admin-section-actions{gap:8px}.admin-panel .admin-section-actions button{font-size:.75rem}.admin-panel .admin-tabs{flex-wrap:nowrap;max-width:100%;overflow-x:auto}.admin-panel .admin-tabs button{white-space:nowrap;flex-shrink:0;padding:10px 13px;font-size:.73rem}.admin-records-heading{flex-direction:column;gap:12px}.admin-table-toolbar{padding:12px}.admin-panel .admin-table-search{width:100%}.admin-panel input:not([type=checkbox]):not([type=radio]),.admin-panel select,.admin-panel textarea{font-size:1rem}.admin-panel .admin-records-table{border:0;border-radius:0;max-height:none;overflow:visible}.admin-panel .admin-records-table table,.admin-panel .admin-records-table tbody{display:block}.admin-panel .admin-records-table table{min-width:0}.admin-panel .admin-records-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.admin-panel .admin-records-table tr{background:#fffcf9;border:1px solid #e8dcd5;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:14px;padding:18px;display:grid}.admin-panel.workspace-shell .admin-records-table td{white-space:normal;overflow-wrap:anywhere;border:0;min-width:0;padding:0;display:block}.admin-panel .admin-records-table td:first-child{grid-column:1/-1;min-width:0}.admin-panel .admin-records-table td[data-label]:before{content:attr(data-label);color:#8a727d;margin-bottom:5px;font-size:.61rem;font-weight:500;display:block}.admin-panel .admin-records-table td[data-label=email],.admin-panel .admin-records-table td[data-label=Correo\ electrónico],.admin-panel .admin-records-table td[data-label=Acciones]{grid-column:1/-1}.admin-panel .admin-records-table td[data-label=Acciones]:empty{display:none}.admin-panel .receipts-panel .booking-table{max-height:none;overflow:visible}.admin-panel .receipts-panel td:is([data-label=Alumno],[data-label=Propuesta],[data-label=Correo],[data-label=Documento]){grid-column:1/-1}.admin-panel .receipts-panel td button{width:100%}.admin-panel .admin-table-footer{gap:12px 8px}.admin-table-footer>span{flex-basis:100%;order:-1}.admin-panel .admin-table-footer .admin-export{width:100%}.admin-panel .admin-agenda-summary{gap:7px}.admin-agenda-summary>div{gap:7px;padding:12px 10px}.admin-agenda-summary svg{width:17px}.admin-agenda-summary strong{font-size:1.3rem}.admin-agenda-summary span{font-size:.61rem;line-height:1.6}.admin-panel .calendar-toolbar .booking-controls{justify-content:flex-start}.admin-panel .calendar-filters{gap:12px;padding:12px}.admin-panel .calendar-legend span:last-child{width:100%;margin-left:0}.admin-panel .view-switch{gap:8px}.admin-panel .view-switch a{flex-basis:100%;margin:8px 0}.admin-panel .working-day{flex-wrap:wrap;gap:12px}.admin-panel .day-intervals{flex-basis:100%}.admin-panel .working-day>.text-action{margin-left:auto}.admin-panel .form-footer{flex-direction:column;align-items:stretch;gap:12px}.admin-panel .receipt-search{flex-wrap:wrap;padding:14px}.admin-panel .receipt-search label{width:100%}.admin-panel .finance-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-panel .finance-tiles>div{padding:14px 12px}.admin-panel .finance-tiles dt{font-size:.7rem}.admin-panel .finance-tiles dd{overflow-wrap:anywhere;font-size:1rem}}@media (prefers-reduced-motion:reduce){.admin-panel button{transition:none}.admin-panel .admin-spin{animation:none}}.admin-server-search button{align-self:flex-end}.admin-inline-filter{color:var(--workspace-ink);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;font-size:.8rem;display:flex}.admin-inline-filter span{color:var(--workspace-muted);font-size:.72rem}.admin-technical{color:var(--workspace-muted);flex-basis:100%;font-size:.72rem}.admin-technical code,.student-case-technical code{-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.student-case-heading{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:16px;display:flex}.student-case-heading h2{margin:4px 0}.student-case-enrollment{border:1px solid var(--workspace-border);border-radius:12px;margin:0 0 14px;padding:14px 16px}.student-case-enrollment>header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.student-case-enrollment h3{margin:0}.student-case-cycle{border-top:1px solid var(--workspace-border);margin-top:10px;padding-top:10px}.student-case-cycle ul{margin:6px 0 8px;padding-left:18px;font-size:.85rem}.student-case-technical{color:var(--workspace-muted);margin-top:10px;font-size:.75rem}.student-home-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;display:grid}.student-home-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:-8px 0 20px;display:flex}.student-home-summary>span{color:#78646e;flex-wrap:wrap;align-items:center;gap:7px;font-size:.8rem;display:inline-flex}.student-home-summary>span>svg{color:#986472;margin-right:3px}.student-home-summary strong{color:#51353f}.student-dashboard .student-home-summary button{align-items:center;gap:8px;min-height:44px;font-size:.78rem;display:inline-flex}.student-dashboard .student-home-grid .booking-card{margin:0;padding:30px}.student-home .eyebrow{color:#90616e;letter-spacing:.13em;margin:0 0 24px;font-size:.63rem}.student-home-icon{color:#814754;background:#efdfdb;border-radius:18px;margin-bottom:24px;padding:18px;display:inline-flex}.student-dashboard .student-next-class{background:linear-gradient(145deg,#fffdfa,#f7eee8)}.student-dashboard .student-home .student-next-class h2{font-family:DM Serif Display,Georgia,serif;font-size:1.7rem;font-weight:400}.student-next-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}.student-next-heading .eyebrow{margin:0}.student-class-confirmed{color:#f8ece7;white-space:nowrap;border:1px solid #ffffff35;border-radius:20px;align-items:center;gap:5px;padding:4px 8px;font-size:.61rem;display:inline-flex}.student-dashboard .student-next-class[data-confirmed=true]{background:radial-gradient(at 100% 0,#a46c7c60,#0000 65%),#683e4e;border-color:#683e4e;box-shadow:0 10px 24px #683e4e16}.student-next-class[data-confirmed=true] .eyebrow{color:#e6c9ce}.student-next-class[data-confirmed=true] .student-home-icon{color:#fff4ec;background:#ffffff15;border:1px solid #ffffff20}.student-dashboard .student-next-class[data-confirmed=true] h2{color:#fff8f2;font-size:clamp(1.8rem,2.4vw,2.2rem);line-height:1.2}.student-next-class[data-confirmed=true] p{color:#e6cfd4}.student-next-class[data-confirmed=true] .student-next-date{color:#fff7f0}.student-next-date,.student-next-duration{align-items:center;gap:9px;display:flex}.student-dashboard .student-next-class[data-confirmed=true] .button{color:#683e4e;background:#fff4e9;border-color:#fff4e9;border-radius:10px;font-weight:700}.student-dashboard .student-next-class[data-confirmed=true] .secondary{color:#fff4e9;background:0 0;border-color:#d4afb96b;border-radius:10px}.student-dashboard .student-next-class[data-confirmed=true] .text-action{color:#f3dfe0}.student-dashboard .student-next-class[data-confirmed=true] .button:hover{background:#f0dfd0}.student-dashboard .student-next-class[data-confirmed=true] .secondary:hover{background:#ffffff10}.student-next-class[data-confirmed=true] .student-home-note{border-color:#ffffff30}.student-next-class[data-confirmed=true] :focus-visible{outline-color:#fff4e9}.student-next-class p{color:#78626d;font-size:.83rem;line-height:1.8}.student-next-class .student-next-date{color:#51353f;font-size:1.06rem;font-weight:600}.student-home-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:26px;display:flex}.student-home-actions .button{align-items:center;gap:9px;min-height:44px;padding:12px 18px;font-size:.8rem;display:inline-flex}.student-home-actions .text-action{text-align:left;flex-basis:100%;font-size:.76rem}.student-home-note{border-top:1px solid #e6d7d1;padding-top:16px}.student-home-pending h2>span{background:#f1e4df;border-radius:20px;margin-left:8px;padding:5px 9px;font-size:.8rem}.student-home-pending ul{margin:0;padding:0;list-style:none}.student-home-pending li{border-top:1px solid #ecdfd9;gap:12px;padding:20px 0;display:flex}.student-home-pending li>svg{color:#a2744e;flex-shrink:0;margin-top:4px}.student-home-pending h3{margin:0 0 8px;font-size:.9rem}.student-home-pending li strong{font-size:.78rem;font-weight:500}.student-home-pending p,.student-home-help p{color:#806b74;font-size:.8rem;line-height:1.8}.student-home-pending small{color:#846d75;font-size:.7rem;display:block}.student-home-pending button{margin-top:12px;font-size:.78rem}.student-home-clear{text-align:center;color:#4d6b53;background:#f5f8f1;border:1px dashed #d9e1d5;border-radius:14px;margin-top:24px;padding:30px 22px}.student-home-clear h3{margin-top:18px}.student-home-help{background:#f2ebe5;border:1px solid #e9ded7;border-radius:16px;align-items:center;gap:18px;margin-top:24px;padding:24px;display:flex}.student-home-help>svg{color:#885866;flex-shrink:0}.student-home-help h2{letter-spacing:normal;margin:0;font-family:Manrope,sans-serif;font-size:.95rem}.student-home-help p{margin:6px 0 0}.student-home-help a{white-space:nowrap;color:#814754;align-items:center;gap:8px;margin-left:auto;font-size:.8rem;display:flex}.student-help-link{color:#814754;align-items:center;gap:10px;padding:22px 14px;font-size:.75rem;display:flex}.student-home-warning{background:#fff6e8;border:1px solid #e2c9ac;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:20px;font-size:.85rem;display:flex}.student-home-warning p{margin-bottom:0}.student-confirmation-summary{background:#edf2e9;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:20px 0;padding:20px;display:flex}.student-confirmation-summary p{font-size:.83rem}.student-confirmation-summary small{color:#62715e;flex-basis:100%;font-size:.72rem}.student-home-loading{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.student-home-loading .student-home-icon{margin:0}.student-home-loading strong{font-size:.9rem}.student-home-loading p{margin:5px 0 0;font-size:.8rem}.student-loading-lines{gap:12px;width:100%;padding-top:15px;display:grid}.student-loading-lines span{background:#f0e8e2;border-radius:5px;height:14px}.student-loading-lines span:nth-child(2){width:75%}.student-loading-lines span:last-child{width:45%}.student-dashboard .student-guest-home{background:radial-gradient(at top,#f4e3db,#0000 65%),#fffdfb;padding:50px 28px}.student-dashboard .student-guest-home h2{font-family:DM Serif Display,Georgia,serif;font-size:2rem;font-weight:400}@media (width<=1100px){.student-home-grid{grid-template-columns:1fr}.student-home-help{flex-wrap:wrap}.student-home-help a{margin-left:0}}@media (width<=520px){.student-dashboard .student-home-grid .booking-card{padding:24px 20px}.student-home-warning{flex-direction:column;align-items:start}.student-home-actions>button,.student-home-actions>a{justify-content:center;width:100%}}@media (width<=380px){.student-next-heading{flex-direction:column;align-items:flex-start;gap:8px}}.student-dashboard{--workspace-ink:#342b30;--workspace-muted:#73646c;--workspace-border:#e9e0dc;--workspace-accent:#814754;max-width:1264px;min-height:100vh;padding:0 40px 36px}.student-dashboard .booking-header{border-bottom:1px solid var(--workspace-border);flex-flow:row;align-items:center;gap:24px;min-height:104px;margin:0 0 38px;padding:22px 0;display:flex}.student-dashboard .booking-header .brand{color:#49363d;white-space:nowrap;align-items:center;gap:11px;font-family:DM Serif Display,Georgia,serif;font-size:1.25rem;font-weight:400;text-decoration:none;display:inline-flex}.student-dashboard .booking-header .brand>span{font:inherit;letter-spacing:normal;color:inherit;margin:0}.student-dashboard .booking-header .brand>.student-brand-mark{color:#fff8f3;background:#814754;border-radius:15px 15px 15px 4px;place-items:center;width:42px;height:46px;font-size:1.75rem;display:grid}.student-dashboard .booking-header .brand>.student-brand-logo{object-fit:contain;background:0 0;border-radius:0}.student-dashboard .brand small{letter-spacing:.14em;color:#88727a;font:600 .55rem/1.8 Manrope,sans-serif;display:block}.student-dashboard .student-nav{background:#efe8e4;border-radius:13px;flex-wrap:nowrap;gap:4px;margin-left:auto;padding:5px;display:flex}.student-dashboard .student-nav button{white-space:nowrap;color:#75636b;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-size:.79rem;display:flex}.student-dashboard .student-nav button[aria-current=page]{color:#713c49;background:#fffdfa;font-weight:700;box-shadow:0 2px 6px #49363d0d}.student-dashboard .student-nav button:hover:not([aria-current]){background:#e7ddda}.student-header-user{align-items:center;gap:9px;font-size:.78rem;display:flex}.student-header-user>span:first-child{color:#75414c;background:#eddbd9;border-radius:50%;place-items:center;width:35px;height:35px;font-weight:700;display:grid}.student-header-user>span:last-child{overflow-wrap:anywhere;max-width:100px}.student-header-user small{color:#88767c;font-size:.65rem;display:block}.student-dashboard main{min-width:0}.student-dashboard .workspace-heading{margin:0 0 28px}.student-dashboard .workspace-heading .eyebrow{color:#986472;letter-spacing:.16em;margin:0 0 12px;font-size:.63rem}.student-dashboard .workspace-heading h1{margin:0 0 12px;font-size:clamp(2rem,3.3vw,2.75rem);line-height:1.18}.student-dashboard .workspace-heading p:not(.eyebrow){color:#796c72;max-width:65ch;margin:0;font-size:.9rem}.student-dashboard .workspace-badge{color:#60624d;white-space:nowrap;background:#f0eee5;border:1px solid #e3e0d3;border-radius:30px;align-items:center;gap:7px;padding:9px 12px;font-size:.73rem;display:inline-flex}.student-dashboard .booking-card{background:#fffdfb;border:1px solid #e8dfda;border-radius:20px;margin:24px 0;padding:28px;box-shadow:0 4px 22px #4a313904}.student-dashboard .booking-card h2{letter-spacing:-.025em;margin:0 0 18px;font-family:Manrope,sans-serif;font-size:1.15rem;font-weight:700}.student-dashboard .booking-steps{background:#fffdfb;border:1px solid #e8dfda;border-radius:15px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 24px;padding:15px 18px;display:grid}.student-dashboard .booking-steps li{color:#96868c;border:0;align-items:center;gap:9px;padding:4px 12px;font-size:.76rem;display:flex}.student-dashboard .booking-steps li+li{border-left:1px solid #ece5e2}.student-dashboard .booking-steps li>span{color:#8a767f;background:#f2eeeb;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;margin:0;font-size:.72rem;display:inline-grid}.student-dashboard .booking-steps li[aria-current=step]{color:#814754}.student-dashboard .booking-steps li[aria-current=step]>span{color:#fff;background:#814754;box-shadow:0 0 0 4px #f5eaea}.student-dashboard .booking-steps li.step-complete{color:#597361}.student-dashboard .booking-steps .step-complete>span{color:#4b6e54;background:#e7eee5}.student-dashboard .chosen-service{background:#f1e7e2;border:1px solid #e6d8d3;border-radius:15px;margin-bottom:20px;padding:18px 22px}.student-dashboard .chosen-service strong{font-size:.95rem}.student-dashboard .chosen-service button{flex-shrink:0;font-size:.75rem}.student-dashboard .booking-grid{gap:16px}.student-dashboard button.service-option{background:#fffcf9;border:1px solid #e5d9d4;border-radius:16px;flex-direction:column;align-items:start;min-height:290px;padding:24px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex;position:relative}.student-dashboard button.service-option:hover{background:#fff9f5;border-color:#b9858e;box-shadow:0 6px 18px #8147540c}.student-service-icon{color:#814754;background:#f1e4e2;border-radius:14px;place-items:center;width:44px;height:44px;margin-bottom:18px;display:inline-grid}.student-dashboard .service-option h3{margin:0 0 12px;font-family:DM Serif Display,Georgia,serif;font-size:1.3rem;font-weight:400}.student-dashboard .service-option p{color:#77696f;margin:0 0 12px;line-height:1.65}.student-dashboard .service-option strong{margin:6px 0 12px;font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:700}.student-dashboard .student-service-action{border-top:1px solid #ecdfda;width:100%;margin-top:auto;padding-top:16px;font-size:.78rem;font-weight:700}.student-dashboard .student-section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.student-section-heading .eyebrow{letter-spacing:.12em;color:#9c7380;margin:0 0 8px;font-size:.6rem}.student-dashboard .student-section-heading h2{margin:0}.student-dashboard .student-section-heading>button,.student-empty-state>button{justify-content:center;align-items:center;gap:10px;display:inline-flex}.student-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.student-overview>div{background:#f9f5f1;border:1px solid #eee4de;border-radius:13px;grid-template-columns:1fr auto;align-items:center;gap:9px;padding:18px;display:grid}.student-overview svg{color:#96717a}.student-overview strong{grid-area:1/2;font-size:1.65rem;font-weight:600}.student-overview span{color:#7d6c74;grid-column:1/-1;font-size:.76rem}.student-reservation-list{gap:12px;display:grid}.student-dashboard .reservation-row{background:#fffdfa;border:1px solid #e9dfd9;border-radius:14px;flex-wrap:nowrap;align-items:center;gap:16px;margin:0;padding:20px}.student-dashboard .reservation-row:hover{background:#fcf6f2;border-color:#ba8c95}.student-reservation-icon{color:#956474;background:#f3e9e4;border-radius:12px;flex-shrink:0;place-items:center;width:45px;height:45px;display:grid}.student-reservation-info{gap:5px;min-width:0;display:grid}.student-reservation-info strong{color:#443039;font-size:.92rem}.student-reservation-info>span{color:#7e6e75;font-size:.78rem}.student-reservation-info small{color:#8e7c83;font-size:.7rem}.student-reservation-side{justify-items:end;gap:13px;margin-left:auto;display:grid}.student-state{color:#72646b;white-space:nowrap;background:#ede9e6;border-radius:30px;padding:5px 11px;font-size:.67rem;display:inline-flex}.student-state[data-state=active],.student-state[data-state=completed]{color:#4f7157;background:#e9f0e7}.student-state[data-state=held]{color:#8a6b34;background:#f9efd9}.student-state[data-state=cancelled],.student-state[data-state=suspended]{color:#995a59;background:#f4e4e1}.student-reservation-link{color:#814754;align-items:center;gap:6px;font-size:.72rem;display:inline-flex}.student-dashboard .student-signout{margin-top:24px;font-size:.75rem}.student-empty-state{text-align:center;justify-items:center;padding:36px 20px;display:grid}.student-empty-icon{color:#956777;background:#f2e6e2;border-radius:22px;place-items:center;width:68px;height:68px;margin-bottom:18px;display:grid}.student-dashboard .student-empty-state h3{margin:0 0 10px;font-size:1.15rem}.student-dashboard .student-empty-state p{color:#837079;max-width:48ch;margin:0 0 8px;font-size:.85rem}.student-empty-state>button{margin-top:16px}.student-dashboard .student-account-card{max-width:760px}.student-dashboard .student-account-card .booking-form{max-width:520px;margin-top:24px}.student-profile-card{background:#f9f2ee;border:1px solid #ecddd6;border-radius:15px;align-items:center;gap:16px;margin:20px 0;padding:24px;display:flex}.student-profile-avatar{color:#814754;background:#ead4d4;border-radius:50%;flex-shrink:0;place-items:center;width:60px;height:60px;font-family:DM Serif Display,Georgia,serif;font-size:1.8rem;display:grid}.student-profile-card>div{gap:7px;min-width:0;display:grid}.student-profile-card strong{font-size:1rem}.student-profile-card>div>span{color:#806b76;overflow-wrap:anywhere;font-size:.83rem}.student-profile-card small{color:#5c7960;align-items:center;gap:5px;font-size:.7rem;display:inline-flex}.student-dashboard .student-account-note{color:#8c7b81;border-top:1px solid #eee2dd;align-items:center;gap:9px;margin-top:24px;padding-top:20px;font-size:.75rem;display:flex}.student-account-note svg{flex-shrink:0}.student-dashboard .receipts-panel .section-heading>div>p:not(.eyebrow){color:#806f78;font-size:.84rem}.student-dashboard .receipts-panel .booking-table{border:1px solid #e9dfda;border-radius:14px}.student-dashboard .receipts-panel thead th{color:#8c6d7a;letter-spacing:.02em;background:#f5eee9;font-size:.68rem}.student-dashboard .receipts-panel td{padding:18px 14px;font-size:.82rem}.student-dashboard .receipts-panel td small{color:#8a7881;margin-top:4px;font-size:.72rem}.student-dashboard .receipts-panel .money-cell{font-weight:700}.student-dashboard .receipts-panel .workspace-empty{background:#fcf8f5;border:1px dashed #e5d3cd;border-radius:14px;padding:40px 24px}.student-dashboard .student-back{margin:0 0 20px}.student-dashboard .booking-agenda{gap:14px}.student-dashboard .booking-agenda article{background:#fcf8f4;border-radius:14px}.student-dashboard footer{color:#9b8790;border-top:1px solid #eadfd9;justify-content:center;align-items:center;gap:6px;margin-top:32px;padding:24px 0 8px;font-size:.72rem;display:flex}.student-dashboard footer a{color:#825e6c}.student-skip{z-index:100;background:#fff;padding:12px;position:absolute;top:-100px;left:12px}.student-skip:focus{top:12px}@media (width<=1100px){.student-dashboard{padding-left:28px;padding-right:28px}.student-header-user{display:none}.student-dashboard .booking-header{gap:16px}.student-dashboard .student-nav button{padding:10px 12px}}@media (width<=800px){.student-dashboard{padding:0 22px 28px}.student-dashboard .booking-header{flex-wrap:wrap;gap:20px;margin-bottom:28px;padding:20px 0}.student-dashboard .student-nav{order:3;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin:0;display:grid}.student-header-user{margin-left:auto;display:flex}.student-dashboard .booking-steps{padding:12px 8px}.student-dashboard .booking-steps li{gap:7px;padding:4px 8px;font-size:.68rem}.student-dashboard .booking-card{padding:24px}}@media (width<=520px){.student-dashboard{padding:0 16px 24px}.student-dashboard .booking-header{margin-bottom:24px;padding-top:18px}.student-dashboard .booking-header .brand{font-size:1.1rem}.student-dashboard .student-nav button{flex-direction:column;gap:5px;min-height:58px;padding:9px 2px;font-size:.65rem}.student-dashboard .workspace-heading h1{max-width:18ch;font-size:2rem}.student-dashboard .workspace-heading p:not(.eyebrow){font-size:.82rem}.student-dashboard .workspace-badge,.student-header-user>span:last-child{display:none}.student-dashboard .booking-steps{padding:12px 4px}.student-dashboard .booking-steps li{text-align:center;flex-direction:column;padding:2px 4px;font-size:.61rem;line-height:1.5}.student-dashboard .booking-card{border-radius:16px;margin:20px 0;padding:20px 16px}.student-dashboard .chosen-service{flex-direction:column;align-items:start;gap:12px;padding:16px}.student-dashboard .chosen-service button{min-height:40px}.student-dashboard button.service-option{min-height:0;padding:22px}.student-dashboard .student-section-heading{flex-direction:column;align-items:start;gap:14px}.student-overview{gap:7px}.student-overview>div{gap:8px;padding:12px 10px}.student-overview strong{font-size:1.35rem}.student-overview svg{width:16px}.student-overview span{font-size:.63rem}.student-dashboard .reservation-row{flex-wrap:wrap;gap:12px;padding:16px}.student-reservation-icon{border-radius:10px;width:36px;height:36px}.student-reservation-info{flex:1}.student-reservation-side{justify-content:space-between;align-items:center;width:100%;margin:2px 0 0;display:flex}.student-profile-card{gap:12px;padding:18px 14px}.student-profile-avatar{width:44px;height:44px;font-size:1.5rem}.student-dashboard .student-empty-state{padding:24px 4px}.student-dashboard .receipts-panel .booking-table{border:0}.student-dashboard .receipts-panel td{padding:0}.student-dashboard .receipts-panel td[data-label]:before{content:attr(data-label);color:#9a7c88;letter-spacing:.04em;margin-bottom:5px;font-size:.61rem;font-weight:500;display:block}}@media (prefers-reduced-motion:reduce){.student-dashboard button{transition:none}}.student-dashboard{background:#f8f5f2;max-width:none;margin:0;padding:40px 40px 24px 296px}.student-dashboard .booking-header{z-index:30;background:#fffaf6;border:0;border-right:1px solid #e9dfda;flex-direction:column;align-items:stretch;gap:36px;width:256px;height:100dvh;margin:0;padding:32px 20px 24px;position:fixed;inset:0 auto 0 0;overflow-y:auto}.student-dashboard .booking-header .brand{gap:10px;font-size:1.16rem}.student-dashboard .booking-header .brand>.student-brand-mark{flex-shrink:0;width:38px;height:42px}.student-sidebar-body{flex-direction:column;flex:1;min-height:0;display:flex}.student-nav-caption{letter-spacing:.16em;color:#987c86;margin:0 14px 14px;font-size:.6rem}.student-dashboard .student-nav{background:0 0;flex-direction:column;align-items:stretch;gap:8px;width:100%;margin:0;padding:0;display:flex}.student-dashboard .student-nav button{text-align:left;border-radius:10px;flex-direction:row;justify-content:flex-start;gap:12px;min-height:50px;padding:14px;font-size:.84rem}.student-dashboard .student-nav button[aria-current=page]{color:#fffaf6;background:#814754;box-shadow:0 4px 10px #81475418}.student-sidebar-note{color:#88646e;background:#f5ebe5;border-radius:14px;margin-top:38px;padding:20px 16px}.student-sidebar-note strong{color:#64434e;margin-top:12px;font-size:.8rem;display:block}.student-sidebar-note p{margin:8px 0 0;font-size:.74rem;line-height:1.8}.student-home-link{color:#856c76;align-items:center;gap:10px;margin:auto 0 0;padding:28px 14px 18px;font-size:.75rem;text-decoration:none;display:flex}.student-dashboard .student-header-user{border-top:1px solid #e9dfda;gap:10px;margin:0;padding:18px 12px 0;display:flex}.student-dashboard .student-header-user>span:last-child{display:block}.student-dashboard main,.student-dashboard>footer{max-width:1200px;margin-left:auto;margin-right:auto}.student-dashboard .workspace-heading{border-bottom:1px solid #e9dfda;padding-bottom:24px}.student-dashboard .workspace-heading h1{font-size:clamp(1.8rem,2.7vw,2.4rem)}.student-dashboard .student-menu-toggle{display:none}@media (width>=801px) and (width<=1100px){.student-dashboard{padding:30px 24px 24px 240px}.student-dashboard .booking-header{width:216px;padding:28px 14px}.student-dashboard .booking-header .brand{gap:8px;font-size:1rem}.student-dashboard .brand small{font-size:.48rem}.student-dashboard .booking-card{padding:22px}.student-dashboard .planner-layout{grid-template-columns:minmax(0,1fr)}.student-dashboard .planner-summary{position:static}}@media (width<=800px){.student-dashboard{padding:0 20px 24px}.student-dashboard .booking-header{border-bottom:1px solid #e9dfda;border-right:0;flex-flow:wrap;justify-content:space-between;align-items:center;gap:18px;width:auto;height:auto;margin:0 -20px 28px;padding:18px 20px;position:relative;inset:auto;overflow:visible}.student-dashboard .student-menu-toggle{color:#814754;background:#f3e9e4;border:1px solid #e7d8d1;border-radius:10px;align-items:center;gap:8px;min-height:44px;padding:10px 12px;font-size:.75rem;display:inline-flex}.student-sidebar-body{flex-basis:100%;display:none}.student-dashboard .booking-header[data-expanded=true] .student-sidebar-body{display:flex}.student-dashboard .student-nav{order:initial}.student-sidebar-note{display:none}.student-home-link{padding-top:22px}.student-dashboard .workspace-heading{padding-bottom:20px}}@media (width<=520px){.student-dashboard{padding-left:16px;padding-right:16px}.student-dashboard .booking-header{margin-left:-16px;margin-right:-16px;padding:16px}}.individual-planner{margin-top:24px}.planner-intro{justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px;display:flex}.planner-kicker{color:var(--workspace-accent);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;font-weight:700}.student-workspace .planner-intro h3{margin:6px 0 8px;font-size:1.3rem}.student-workspace .planner-intro p{color:var(--workspace-muted);margin:0;font-size:.88rem}.planner-progress{white-space:nowrap;color:#75414c;background:#f2e5e4;border-radius:30px;align-items:center;gap:7px;padding:10px 14px;font-size:.78rem;display:inline-flex}.planner-layout{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;gap:24px;display:grid}.planner-picker{min-width:0;scroll-margin-top:20px}.planner-picker:focus{outline:none}.planner-month-header{align-items:center;gap:12px;margin-bottom:18px;display:flex}.student-workspace .planner-month-header>button{flex-shrink:0;place-items:center;width:44px;height:44px;min-height:44px;padding:0;display:grid}.planner-month-label{text-align:center;flex:1;font-size:1.05rem}.planner-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.planner-weekday{text-align:center;color:var(--workspace-muted);padding:0 0 10px;font-size:.73rem}.student-workspace .planner-day{color:#75414c;background:#fffdfa;border:1px solid #e2d6d3;border-radius:10px;place-items:center;min-height:56px;padding:8px 2px 16px;font-size:.95rem;font-weight:600;display:grid;position:relative}.student-workspace .planner-day:disabled{opacity:1;color:#b0a5a9;background:#f8f5f3;border-color:#0000}.student-workspace .planner-day[aria-pressed=true]{border-color:var(--workspace-accent);box-shadow:inset 0 0 0 1px var(--workspace-accent);background:#f6e9e8}.student-workspace .planner-day.has-selection{color:#fff;background:#844956;border-color:#844956}.student-workspace .planner-day[aria-current=date]>span{text-underline-offset:4px;text-decoration:underline}.student-workspace .planner-day.outside-plan>span{-webkit-text-decoration:line-through #cbb4b4;text-decoration:line-through #cbb4b4}.planner-plan-window{color:var(--workspace-muted);margin:-10px 0 18px;font-size:.78rem}.planner-day>i{background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;bottom:7px}.planner-day-mark{position:absolute;bottom:4px}.planner-legend{color:var(--workspace-muted);flex-wrap:wrap;gap:10px 16px;margin:14px 0 22px;font-size:.7rem;display:flex}.planner-legend>span{align-items:center;gap:5px;display:inline-flex}.planner-legend i{background:var(--workspace-accent);border-radius:50%;width:5px;height:5px}.planner-times{border-top:1px solid var(--workspace-border);padding-top:20px}.planner-time-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.planner-time-heading h4{margin:6px 0 0;font-size:1rem}.planner-picker .time-chips{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}.planner-picker .time-chip{justify-content:center;align-items:center;gap:4px;min-height:44px;padding:10px 4px;font-size:.82rem;display:inline-flex}.planner-picker>.text-action{margin-top:20px}.planner-complete{text-align:center;background:#fcf8f5;border:1px dashed #cbb4b4;border-radius:16px;justify-items:center;padding:28px 18px;display:grid}.planner-complete>svg{color:#37614c;box-sizing:content-box;background:#e6eee5;border-radius:50%;padding:9px}.planner-complete h4{margin:14px 0 6px}.student-workspace .planner-complete p{color:var(--workspace-muted);margin:0;font-size:.85rem}.planner-summary{border:1px solid var(--workspace-border);background:#fbf5f2;border-radius:18px;gap:15px;min-width:0;padding:22px;display:grid;position:sticky;top:20px}.planner-summary-title{align-items:center;gap:9px;display:flex}.student-workspace .planner-summary-title h3{margin:0;font-size:1.05rem}.student-workspace .planner-summary p{margin:0}.planner-class-list{gap:8px;max-height:380px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.planner-class-list li{background:#fff;border:1px solid #0000;border-radius:10px;align-items:start;gap:9px;padding:12px;font-size:.8rem;line-height:1.5;display:flex}.planner-class-list small{color:var(--workspace-muted);margin-top:3px;display:block}.planner-class-number{color:#75414c;background:#f3e7e6;border-radius:50%;flex-shrink:0;place-items:center;width:23px;height:23px;font-size:.7rem;font-weight:700;display:grid}.planner-class-list .planner-next-class{color:var(--workspace-muted);background:0 0;border:1px dashed #d6c6c5}.planner-class-list .class-editing{border-color:#844956}.planner-class-list .class-conflict{background:#fff4f3;border-color:#b33a45}.planner-conflict-label{color:#a32432;font-size:.75rem;display:block}.planner-class-actions{gap:12px;margin-top:5px;display:flex}.student-workspace .planner-class-actions button{min-height:32px;padding:2px 0;font-size:.73rem}.planner-recurring-controls{gap:6px;display:grid}.planner-recurring-controls button{align-items:center;gap:6px;display:inline-flex}.planner-list-title{font-size:.8rem;font-weight:700}.planner-period-note{color:var(--workspace-muted);font-size:.75rem}.planner-price{border-top:1px solid var(--workspace-border);gap:3px;padding-top:16px;display:grid}.planner-price strong{color:#844956;font-size:1.3rem}.planner-price span{color:var(--workspace-muted);font-size:.75rem}.planner-actions>span{margin-bottom:6px;font-size:.75rem;display:block}.planner-summary .quiet-note{color:var(--workspace-muted);font-size:.7rem}.planner-notice{color:#75414c;background:#f9ece8;border-radius:10px;padding:12px;font-size:.8rem}.planner-notice button{margin-top:10px}.schedule-methods .choice-card strong{font-size:.87rem}.schedule-methods .choice-card small{font-size:.78rem}@media (width<=1000px){.planner-layout{grid-template-columns:minmax(0,1fr) minmax(240px,.75fr);gap:18px}.planner-summary{padding:16px}.planner-intro{flex-direction:column;gap:12px}}@media (width<=760px){.planner-layout{grid-template-columns:1fr;gap:24px}.planner-summary{position:static}.planner-class-list{max-height:none}.individual-planner{padding-bottom:100px}.planner-actions{z-index:40;padding:10px 16px max(12px, env(safe-area-inset-bottom));background:#fffcf9;border-top:1px solid #e4d4d3;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #39282d0a}.planner-actions>span{text-align:center}.planner-actions button{margin:0}.planner-month-grid{gap:4px}.student-workspace .planner-day{border-radius:8px;min-height:48px}.planner-month-label{font-size:.95rem}.planner-intro h3{max-width:26ch}.planner-class-actions{gap:18px}.student-workspace .planner-class-actions button{min-height:40px}}.booking-issue-backdrop{z-index:1000;background:#26181c73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.booking-issue-dialog{color:#39282d;background:#fffaf7;border:1px solid #e3c7ca;border-radius:18px;width:min(100%,440px);max-height:calc(100dvh - 40px);padding:28px;overflow-y:auto;box-shadow:0 20px 60px #0000002e}.booking-issue-dialog h2{margin:0 0 12px;font-size:1.5rem}.booking-issue-dialog p{margin:0 0 24px;line-height:1.6}.booking-issue-actions{flex-wrap:wrap;gap:10px;display:flex}.booking-issue-actions button{color:#fff;font:inherit;cursor:pointer;background:#814754;border:1px solid #814754;border-radius:8px;padding:12px 18px}.booking-issue-actions .secondary{color:#814754;background:0 0}.booking-issue-actions button:focus-visible{outline-offset:3px;outline:3px solid #39282d}.student-dashboard .booking-card.student-account-card{border-radius:24px;max-width:1080px;overflow:hidden;box-shadow:0 12px 40px #51313e06;padding:0!important}.student-account-card.is-guest{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);display:grid}.student-account-welcome{color:#653e4b;background:radial-gradient(at 0 0,#f4dfd5,#0000 70%),#f0e2dc;border-right:1px solid #e9d8d0;flex-direction:column;align-items:flex-start;padding:40px 32px;display:flex}.account-welcome-tag{letter-spacing:.14em;align-items:center;gap:8px;font-size:.59rem;font-weight:700;display:inline-flex}.student-workspace .account-welcome-title{letter-spacing:-.04em;color:#56323e;margin:36px 0 20px;font-family:DM Serif Display,Georgia,serif;font-size:clamp(2rem,3.1vw,3rem);line-height:1.14}.account-welcome-title em{color:#935c6b;font-weight:400}.student-workspace .account-welcome-description{color:#795e66;max-width:32ch;margin:0;font-size:.86rem;line-height:1.85}.account-benefits{gap:24px;margin:0;padding:32px 0;list-style:none;display:grid}.account-benefits li{align-items:flex-start;gap:12px;display:flex}.account-benefits svg{color:#946673;margin-top:3px}.account-benefits strong{font-size:.8rem;font-weight:700;display:block}.account-benefits span{color:#795e66;margin-top:4px;font-size:.75rem;line-height:1.7;display:block}.account-welcome-signature{border-top:1px solid #dcc8c1;align-items:center;gap:12px;width:100%;margin-top:auto;padding-top:24px;font-family:DM Serif Display,Georgia,serif;font-size:1.05rem;display:flex}.account-welcome-signature>img{object-fit:contain;flex-shrink:0;width:38px;height:42px}.account-welcome-signature small{color:#795e66;margin-top:2px;font:400 .66rem/1.6 Manrope,sans-serif;display:block}.student-account-content{min-width:0;padding:40px}.student-workspace .account-eyebrow{letter-spacing:.14em;color:#986472;margin:0 0 12px;font-size:.62rem;font-weight:700}.student-dashboard .student-account-content>h2{margin:0 0 12px;font-family:DM Serif Display,Georgia,serif;font-size:clamp(1.7rem,2.1vw,2.15rem);font-weight:400;line-height:1.2}.student-workspace .student-account-description,.student-workspace .student-profile-description{color:#78656d;margin:0;font-size:.84rem;line-height:1.8}.student-dashboard .student-account-card .booking-form{max-width:none;margin:26px 0 0}.student-dashboard .student-account-note{color:#78656d;border-top:0;align-items:flex-start;margin:18px 0 0;padding-top:0;font-size:.72rem}.student-account-note svg{margin-top:2px}.student-dashboard .student-account-card.is-signed-in{max-width:900px}.student-account-card.is-signed-in .student-account-content{border-top:4px solid #b88791}.student-dashboard .student-account-shortcuts{gap:10px;margin:24px 0;display:grid}.student-dashboard .student-account-shortcuts button{color:#814754;text-align:left;background:#fffdfa;border:1px solid #eaded8;border-radius:12px;align-items:center;gap:16px;padding:18px;display:flex}.student-account-shortcuts button>span{flex:1}.student-account-shortcuts strong{color:#49363e;font-size:.87rem;display:block}.student-account-shortcuts small{color:#78656d;margin-top:4px;font-size:.76rem;font-weight:400;display:block}.student-dashboard .student-account-shortcuts button:hover{background:#faf1eb;border-color:#bc909a}.student-dashboard .student-account-logout{font-size:.78rem}@media (width>=801px) and (width<=1150px){.student-account-content{padding:30px 24px}.student-account-welcome{padding:32px 24px}.student-workspace .account-welcome-title{font-size:2rem}}@media (width<=1100px){.student-account-card.is-guest{grid-template-columns:1fr}.student-account-welcome{display:none}.student-account-content{padding:28px}}@media (width<=520px){.student-dashboard .booking-card.student-account-card{border-radius:18px}.student-account-content{padding:26px 22px}.student-dashboard .student-account-content>h2{font-size:1.7rem}}.booking-shell.student-gate{color:#78656d;place-items:center;min-height:100vh;display:grid}.student-gate p[role=status]{align-items:center;gap:10px;display:flex}.student-gate .booking-card{text-align:center;max-width:460px}.student-gate-spinner{animation:.9s linear infinite student-gate-spin}@keyframes student-gate-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.student-gate-spinner{animation:none}}.google-sign-in{gap:10px;margin-bottom:18px;display:grid}a.google-button[href]{color:#1f1f1f;width:100%;min-height:50px;font-family:var(--sans,inherit);background:#fff;border:1px solid #747775;border-radius:10px;justify-content:center;align-items:center;gap:12px;padding:0 16px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .15s,box-shadow .15s;display:flex}a.google-button[href]:hover{background:#f8f9fa;box-shadow:0 1px 3px #3c40434d}a.google-button[href]:focus-visible{outline:3px solid var(--rose,#a55f69);outline-offset:2px}a.google-button[href][aria-disabled=true]{cursor:progress;opacity:.7}.google-legal{color:var(--muted,#69565d);text-align:center;margin:0;font-size:.78rem;line-height:1.5}.google-legal a{color:var(--wine,#7a414c)}.google-divider{color:var(--muted,#69565d);align-items:center;gap:12px;margin:4px 0 0;font-size:.8rem;display:flex}.google-divider:before,.google-divider:after{content:"";background:var(--border,#dec4c3);flex:1;height:1px}.google-spinner{animation:.9s linear infinite google-spin}@keyframes google-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.google-spinner{animation:none}}.google-complete,.google-complete-status{border:1px solid var(--border,#dec4c3);background:var(--paper,#fffdfb);color:var(--ink,#30252a);border-radius:12px;gap:12px;margin:0 0 18px;padding:18px;display:grid}.google-complete-status{align-items:center;gap:10px;display:flex}.google-complete p{color:var(--muted,#69565d);overflow-wrap:anywhere;margin:0}.google-complete fieldset{border:0;gap:14px;min-width:0;margin:0;padding:0;display:grid}.google-complete label{gap:6px;font-weight:600;display:grid}.google-complete input{border:1px solid var(--border,#dec4c3);width:100%;min-height:48px;color:inherit;font:inherit;background:#fff;border-radius:10px;padding:10px 14px}.google-complete p.google-complete-problem{color:var(--wine,#7a414c);font-weight:600}.google-complete .google-complete-submit{background:var(--wine,#7a414c);color:#fff;min-height:50px;font:inherit;cursor:pointer;border:0;border-radius:10px;font-weight:700}.google-complete .google-complete-cancel{color:var(--wine,#7a414c);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:center;text-decoration:underline}
