@font-face{font-family:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand: #7022e6;--brand-600: #5f16cc;--brand-700: #4d119f;--brand-ink: #342052;--brand-50: #f7f3fc;--brand-100: #eee6fa;--brand-200: #d9c9ef;--accent: #f0a82f;--ok: #17864a;--ok-bg: #eaf6ef;--warn: #a96b07;--warn-bg: #fbf2df;--danger: #ca3e48;--danger-600: #ad2f38;--danger-bg: #fbecee;--bg: #f5f2f8;--surface: #fffefc;--text: #251c34;--muted: #756b88;--border: #e9e2f0;--border-strong: #d8cde4;--radius-sm: 10px;--radius: 16px;--radius-lg: 28px;--shadow-sm: 0 1px 2px rgba(45, 27, 69, .06);--shadow: 0 18px 55px rgba(54, 30, 88, .1);--ring: 0 0 0 4px rgba(112, 34, 230, .14);--ui: "Manrope Variable", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--display: var(--ui)}*{box-sizing:border-box}html{min-width:320px;overflow-x:hidden;background:var(--bg);scrollbar-gutter:stable}body{min-width:320px;min-height:100vh;margin:0;color:var(--text);font-family:var(--ui);font-size:15px;line-height:1.55;background:radial-gradient(900px 520px at 8% -12%,rgba(112,34,230,.12),transparent 62%),linear-gradient(145deg,#f8f5fb,#f3eff7);-webkit-font-smoothing:antialiased;font-synthesis:none;overflow-x:hidden}img{display:block}button,input{font:inherit}a{color:var(--brand-600);font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--brand-700)}.page{min-height:100vh;padding:32px 20px 64px}.center{display:flex;flex-direction:column;align-items:center}.card{width:100%;max-width:460px;padding:32px;border:1px solid rgba(216,205,228,.75);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);animation:surface-in .36s cubic-bezier(.2,.75,.25,1) both}.card-wide{max-width:1180px}.auth-page{justify-content:center;padding-bottom:10vh}.auth-card{min-height:0}@keyframes surface-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.brand{display:inline-flex;align-items:center;gap:12px;border-radius:16px;color:inherit;text-decoration:none}.brand-button{padding:0;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer}.brand:hover{color:inherit}.brand:focus-visible{outline:3px solid rgba(217,255,99,.82);outline-offset:6px}.brand-tile{display:grid;flex:0 0 auto;place-items:center;border-radius:13px;background:linear-gradient(145deg,#7d2cf0,#5813b9);box-shadow:0 8px 20px #531b9c3d;transition:transform .18s ease,box-shadow .18s ease}.brand:hover .brand-tile{transform:translateY(-2px)}.brand-tile img{width:68%;height:68%}.brand-text{display:flex;flex-direction:column;line-height:1.05}.brand-name{color:var(--brand-ink);font-family:var(--display);font-size:23px;font-weight:800;letter-spacing:-.02em}.brand-sub{margin-top:2px;color:var(--muted);font-size:11.5px;font-weight:700;letter-spacing:.015em}.brand-header{display:flex;justify-content:center;margin-bottom:20px}h1,h2{color:var(--text);font-family:var(--display);text-wrap:balance}h1{margin:0 0 8px;font-size:clamp(26px,4vw,32px);font-weight:750;line-height:1.12;letter-spacing:-.02em}h2{margin:0 0 12px;font-size:20px;font-weight:750;line-height:1.2}.subtitle{margin:0 0 26px;color:var(--muted);font-size:14.5px;line-height:1.65}.otp-login>.subtitle{margin-bottom:22px}.otp-login>form{margin:0}label{display:block;margin-bottom:7px;color:var(--brand-ink);font-size:13px;font-weight:700}.field{margin-bottom:18px}.field-help{margin:7px 2px 0;color:var(--muted);font-size:12px;line-height:1.45}.field-help-error{color:#b4232f}.field-help-warning{color:#8a5a00;font-weight:650}.optional{color:var(--muted);font-weight:500}input[type=text],input[type=tel],input[type=email],input[type=number]{width:100%;min-height:48px;padding:12px 14px;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;background:#fff;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}input::placeholder{color:#aaa1b8}input[type=text]:focus,input[type=tel]:focus,input[type=email]:focus,input[type=number]:focus{border-color:var(--brand);box-shadow:var(--ring)}.otp-input{font-family:var(--display);font-size:25px!important;font-weight:750;letter-spacing:9px;text-align:center}.phone-input{display:flex;align-items:center;min-height:48px;padding:0 14px;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.phone-input:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.phone-input .prefix{padding-right:3px;color:var(--text);-webkit-user-select:none;user-select:none}.phone-input input{flex:1;min-width:0;padding:12px 0;border:0;background:transparent;box-shadow:none}.phone-input input:focus{border:0;box-shadow:none}.phone-input:has(input:autofill){background:#f3efff}.phone-input:has(input:-webkit-autofill){background:#f3efff}.phone-input input:autofill{background:#f3efff;box-shadow:0 0 0 1000px #f3efff inset!important;color:var(--text);caret-color:var(--text)}.phone-input input:-webkit-autofill,.phone-input input:-webkit-autofill:hover,.phone-input input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px #f3efff inset!important;caret-color:var(--text)}.checkbox-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px}.checkbox-row input{flex:0 0 auto;width:19px;height:19px;margin-top:2px;accent-color:var(--brand)}.checkbox-row input:focus-visible{outline:3px solid rgba(112,34,230,.24);outline-offset:2px;box-shadow:none}.checkbox-row span{color:var(--muted);font-size:13px;line-height:1.55}.link-inline{padding:0;border:0;border-radius:0;background:none;color:var(--brand-600);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}button{min-height:44px;padding:11px 18px;border:1.5px solid transparent;border-radius:var(--radius-sm);font-weight:750;cursor:pointer;transition:transform .12s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease}button:hover:not(:disabled){transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.52}.btn-primary{width:100%;background:var(--brand);color:#fff;box-shadow:0 8px 20px #531b9c33}.btn-primary:hover:not(:disabled){background:var(--brand-600);box-shadow:0 10px 24px #531b9c42}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-600)}.btn-ghost{border-color:var(--border-strong);background:transparent;color:var(--brand-ink)}.btn-ghost:hover:not(:disabled){border-color:var(--brand-200);background:var(--brand-50)}.btn-link{min-height:44px;padding:4px 0;border:0;background:none;color:var(--brand-600);font-weight:700}.btn-sm{min-height:38px;padding:7px 13px;font-size:13px}.btn-block{width:100%}.alert{margin-bottom:18px;padding:12px 14px;border:1px solid transparent;border-radius:var(--radius-sm);font-size:13.5px;line-height:1.55}.alert-error{border-color:#f0c6ca;background:var(--danger-bg);color:#962f37}.alert-info{border-color:var(--brand-200);background:var(--brand-50);color:var(--brand-700)}.alert-warn{border-color:#edd5a8;background:var(--warn-bg);color:var(--warn)}.alert-ok{border-color:#bce0ca;background:var(--ok-bg);color:#116c3b}.muted{color:var(--muted);font-size:13px}.small{font-size:12px}.no-margin{margin:0}.push-right{margin-left:auto}.center-text{text-align:center}.loading{padding:28px;color:var(--muted);text-align:center}.summary{margin:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.summary-row{display:flex;justify-content:space-between;gap:20px;padding:12px 2px;border-bottom:1px solid var(--border)}.summary-row:last-child{border-bottom:0}.summary-row .k{color:var(--muted);font-size:13px}.summary-row .v{color:var(--brand-ink);font-weight:750;text-align:right}.summary-placeholder-line{display:block;width:42%;height:11px;border-radius:999px;background:var(--brand-100)}.summary-placeholder-line-2{width:56%}.summary-placeholder-line-3{width:48%}.summary-placeholder-line-4{width:34%}.state-mascot{width:124px;height:108px;margin:-2px auto 12px}.state-mascot img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 17px rgba(57,22,104,.12))}.status-mark{position:relative;width:62px;height:62px;margin:4px auto 18px;border-radius:50%}.status-success{border:1px solid #bce0ca;background:var(--ok-bg)}.status-success:after{content:"";position:absolute;top:20px;left:20px;width:20px;height:10px;border-bottom:3px solid var(--ok);border-left:3px solid var(--ok);transform:rotate(-45deg)}.status-mark.status-warning{border:1px solid #edd5a8;background:var(--warn-bg)}.status-mark.status-warning:after{content:"!";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--warn);font-family:var(--display);font-size:29px;font-weight:800}.toast-region{position:fixed;right:20px;bottom:max(20px,env(safe-area-inset-bottom));z-index:1200;display:flex;flex-direction:column;gap:10px;width:min(380px,calc(100vw - 32px));pointer-events:none}.toast{display:flex;align-items:center;gap:10px;width:100%;min-height:64px;padding:10px 10px 10px 15px;border:1px solid var(--border-strong);border-left-width:4px;border-radius:var(--radius-sm);background:#fff;color:var(--text);box-shadow:0 16px 40px #2a194933;pointer-events:auto;animation:toast-enter .18s ease-out both}.toast p{flex:1;margin:0;overflow-wrap:anywhere;font-size:13.5px;line-height:1.5}.toast-error{border-left-color:var(--danger)}.toast-warning{border-left-color:var(--warn)}.toast-success{border-left-color:var(--ok)}.toast-info{border-left-color:var(--brand)}.toast-close{display:grid;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:23px;box-shadow:none}.toast-close:hover{background:var(--brand-50);color:var(--brand-ink)}@keyframes toast-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.page{padding:16px 12px 40px}.card{padding:26px 20px;border-radius:22px}.toast-region{right:16px;bottom:max(16px,env(safe-area-inset-bottom));left:16px;width:auto}.summary-row{gap:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.student-page{min-height:100svh;padding:0;background:#6b3df1}.student-stage{position:relative;display:grid;grid-template-columns:minmax(470px,54vw) minmax(430px,46vw);min-height:100svh;overflow:hidden;background:#6b3df1;isolation:isolate}.flow-panel-background{z-index:8;grid-column:2;grid-row:1;width:calc(100% + 30vw);min-width:0;min-height:100svh;border-radius:54px 0 0 54px;background:#fff;box-shadow:-24px 0 70px #23134c21;pointer-events:none;contain:paint;will-change:transform}.student-stage-journey .flow-panel-background,.student-stage-wide .flow-panel-background{border-radius:44px 0 0 44px}.student-stage-journey{grid-template-columns:minmax(330px,36vw) minmax(640px,64vw)}.student-stage-wide{grid-template-columns:minmax(280px,28vw) minmax(0,72vw)}.guidance-panel{position:relative;display:flex;grid-column:1;grid-row:1;flex-direction:column;min-width:0;min-height:100svh;overflow:hidden;padding:clamp(28px,4vw,58px);background:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),#6b3df1;background-size:48px 48px;color:#fff;isolation:isolate}.guidance-panel:before{position:absolute;top:16%;left:-21%;z-index:-1;width:57%;aspect-ratio:1;border:1px solid rgba(255,255,255,.24);border-radius:50%;content:"";animation:ring-drift 10s ease-in-out infinite}.poster-header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:24px;animation:poster-enter .52s cubic-bezier(.2,.75,.2,1) both}.poster-header:after{position:absolute;right:0;bottom:-24px;left:0;height:1px;background:linear-gradient(90deg,rgba(217,255,99,.92),rgba(255,255,255,.2) 52%,transparent);content:""}.guidance-panel .brand{gap:15px}.guidance-panel .brand-tile{border:2px solid #d9ff63;border-radius:15px;background:linear-gradient(145deg,#7b20ff,#531bb3);box-shadow:5px 5px #d9ff633d;transform:rotate(-2deg)}.guidance-panel .brand-tile img{width:72%;height:72%;transform:rotate(2deg)}.guidance-panel .brand:hover .brand-tile{box-shadow:7px 7px #d9ff634d;transform:translateY(-2px) rotate(-2deg)}.guidance-panel .brand-name,.guidance-panel .brand-sub{color:#fff}.guidance-panel .brand-name{font-size:clamp(22px,2.35vw,31px);font-weight:800;letter-spacing:-.045em;line-height:.98;text-shadow:0 3px 18px rgba(36,26,63,.18)}.guidance-panel .brand-sub{align-self:flex-start;margin-top:8px;padding:3px 7px 4px;background:#d9ff63;color:#241a3f;font-size:8.5px;letter-spacing:.14em;line-height:1;text-transform:uppercase}.poster-note{display:inline-flex;align-items:center;gap:9px;flex:0 0 auto;color:#fffc;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.poster-note:before{width:6px;height:6px;border-radius:50%;background:#d9ff63;box-shadow:0 0 0 5px #d9ff631f;content:""}.poster-copy{position:relative;z-index:3;width:min(100%,680px);margin-top:clamp(62px,11vh,130px);animation:poster-enter .6s 80ms cubic-bezier(.2,.75,.2,1) both}.poster-copy .eyebrow{margin:0 0 18px;color:#d9ff63;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.poster-copy h2{margin:0;color:#fff;font-family:var(--display);font-size:clamp(52px,6.2vw,98px);font-weight:800;letter-spacing:-.07em;line-height:.84}.poster-copy h2 span,.poster-copy h2 strong{display:block}.poster-copy h2 strong{position:relative;z-index:1;width:max-content;max-width:100%;margin-top:12px;padding:7px 14px 12px;color:#231943;font-size:.58em;font-style:normal;letter-spacing:-.055em;line-height:1}.poster-copy h2 strong:before{position:absolute;top:0;right:-9px;bottom:-2px;left:-9px;z-index:-1;background:#d9ff63;content:"";transform:rotate(-1.2deg)}.poster-copy>p:last-child{width:min(52%,380px);margin:28px 0 0;color:#ffffffc2;font-size:clamp(14px,1.2vw,17px);line-height:1.55;text-wrap:pretty}.journey-poster-copy{width:min(100%,520px)}.journey-poster-copy h2{font-size:clamp(48px,5vw,78px);line-height:.9}.journey-poster-copy h2 strong{font-size:.68em}.guidance-visual{position:absolute;right:clamp(-95px,-6vw,-34px);bottom:clamp(22px,4vh,54px);z-index:2;width:clamp(260px,29vw,510px);aspect-ratio:1;container-type:inline-size;pointer-events:none}.visual-disc{position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:50%;background:#f6be4f;box-shadow:inset -22px -28px #6531de1f;animation:disc-breathe 7s ease-in-out infinite}.visual-ring{position:absolute;top:-1%;right:-1%;bottom:-1%;left:-1%;border:1px solid rgba(255,255,255,.42);border-radius:50%;animation:ring-drift 8s .6s ease-in-out infinite reverse}.visual-label{position:absolute;top:-2%;right:17%;left:auto;z-index:4;width:clamp(78px,27cqw,106px);padding:clamp(7px,2.4cqw,10px) clamp(8px,2.8cqw,12px);background:#241a3f;color:#fff;font-size:clamp(7px,2.35cqw,10px);font-weight:800;line-height:1.25;transform:translateY(-12%) rotate(-6deg)}.guidance-visual img{position:absolute;right:15%;bottom:4%;z-index:3;width:68%;height:82%;object-fit:contain;filter:drop-shadow(0 24px 24px rgba(36,15,79,.22));transform-origin:50% 100%;animation:mascot-arrive .74s .18s cubic-bezier(.17,.89,.28,1.15) both,mascot-sway 6s 1s ease-in-out infinite}.student-stage:not(.student-stage-journey):not(.student-stage-mascot-ready) .poster-header,.student-stage:not(.student-stage-journey):not(.student-stage-mascot-ready) .poster-copy,.student-stage:not(.student-stage-journey):not(.student-stage-mascot-ready) .guidance-visual img,.student-stage:not(.student-stage-journey):not(.student-stage-mascot-ready) .visual-disc,.student-stage:not(.student-stage-journey):not(.student-stage-mascot-ready) .visual-ring,.student-stage:not(.student-stage-journey):not(.student-stage-mascot-ready) .poster-steps{animation-play-state:paused}.poster-steps{position:relative;z-index:5;display:flex;align-items:center;gap:12px;width:fit-content;margin-top:auto;padding-top:36px;color:#ffffffb8;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;animation:poster-enter .6s .2s cubic-bezier(.2,.75,.2,1) both}.poster-steps i{width:24px;height:1px;background:#ffffff6b}.flow-surface{position:relative;z-index:10;display:flex;flex-direction:column;min-width:0;min-height:100svh;padding:clamp(24px,3vw,44px) clamp(34px,6vw,96px) clamp(44px,6vw,84px);border-radius:54px 0 0 54px;background:#fff;color:var(--text);box-shadow:-24px 0 70px #23134c21;scrollbar-gutter:stable}@media(min-width:821px){.student-stage:not(.student-stage-journey) .poster-copy{z-index:6}.student-stage:not(.student-stage-journey) .guidance-visual{z-index:2}.flow-surface{grid-column:2;grid-row:1;background:transparent;box-shadow:none;will-change:transform}.student-stage:not(.student-stage-journey) .flow-topline{background:transparent}}.flow-header{position:relative;z-index:30;flex:0 0 auto;min-width:0}.flow-topline{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;flex:0 0 52px;padding:4px 0 14px;border-bottom:1px solid #e5dfe9;background:#fff;color:#847c91;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.flow-header-journey .flow-topline{background:#fff}.flow-home-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 2px;border:0;border-radius:0;background:transparent;color:#5b2bd7;font-size:9px;font-weight:800;letter-spacing:.13em;text-decoration:none;text-transform:uppercase;transition:color .18s ease}.flow-home-link>span{color:#5b2bd7;font-size:15px;line-height:.8;transition:transform .18s ease}.flow-home-link:hover{color:#4c20be}.flow-home-link:hover>span{transform:translate(-3px)}.flow-home-link:focus-visible{outline:3px solid rgba(112,34,230,.22);outline-offset:3px}.session-choice{width:100%}.session-choice .eyebrow{margin:0 0 14px;color:#5b2bd7;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.session-choice h1{margin-bottom:14px}.session-choice .subtitle{max-width:560px;margin-bottom:30px}.session-choice-actions{display:grid;gap:14px}.session-choice-primary,.session-choice-secondary{display:grid;width:100%;min-height:54px;place-items:center;border:2px solid #241a3f;border-radius:999px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.session-choice-primary{background:#241a3f;box-shadow:5px 5px #d9ff63;color:#fff}.session-choice-primary:hover{box-shadow:7px 7px #d9ff63;color:#fff;transform:translateY(-2px)}.session-choice-secondary{background:#fff;box-shadow:none;color:#241a3f}.session-choice-secondary:hover:not(:disabled){background:#f5f0ff;transform:translateY(-1px)}.session-choice-primary:focus-visible,.session-choice-secondary:focus-visible{outline:3px solid rgba(112,34,230,.24);outline-offset:3px}.session-choice-note{margin:18px 0 0;color:#847c91;font-size:11px;line-height:1.55}.identity-switch-dialog{width:min(560px,calc(100vw - 32px));max-width:none;padding:30px;border:0;border-radius:24px;background:#fff;box-shadow:0 28px 80px #1b112e4d;color:#241a3f}.identity-switch-dialog[open]{animation:privacy-dialog-in .2s cubic-bezier(.2,.75,.2,1) both}.identity-switch-dialog::backdrop{background:#1b112e99;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.identity-switch-dialog .eyebrow{margin:0 0 10px;color:#5b2bd7;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.identity-switch-dialog h2{margin:0 0 14px;font-size:clamp(24px,5vw,34px);line-height:1.08}.identity-switch-dialog p{margin:0;color:#6f667e;line-height:1.65}.identity-switch-warning{margin-top:16px!important;padding-top:16px;border-top:1px solid #e8e2ec;color:#493c5a!important;font-weight:700}.identity-switch-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:12px;margin-top:24px}@media(max-width:560px){.identity-switch-dialog{padding:24px;border-radius:20px}.identity-switch-actions{grid-template-columns:1fr}}.student-stage-journey,.student-stage-journey .guidance-panel{height:100svh;min-height:0}.student-stage-journey .flow-surface{height:100svh;min-height:0;overflow-x:hidden;overflow-y:auto;border-radius:44px 0 0 44px;overscroll-behavior:contain;scrollbar-color:#cfc3df transparent;scrollbar-width:thin}.flow-inner{display:flex;flex:1;flex-direction:column;justify-content:center;width:100%;max-width:520px;margin:auto;padding:44px 0 18px}.flow-scene{min-width:0;width:100%;backface-visibility:hidden}.student-stage-journey .flow-inner{justify-content:flex-start;max-width:760px;padding-top:clamp(34px,5vh,58px)}.student-stage-compact .flow-inner{justify-content:flex-start;padding-top:clamp(16px,2.5vh,28px);padding-bottom:clamp(20px,3vh,34px)}.student-stage-centered .flow-inner{align-items:center;justify-content:center;padding-top:clamp(28px,4vh,44px);padding-bottom:clamp(28px,4vh,44px)}.student-stage-centered .flow-scene{display:flex;justify-content:center}.student-stage-restoring .guidance-panel:before,.student-stage-restoring .poster-copy,.student-stage-restoring .guidance-visual,.student-stage-restoring .poster-steps,.student-stage-restoring .journey-road,.student-stage-restoring .flow-topline>*,.student-stage-restoring .flow-scene{visibility:hidden;animation:none}.student-restoring-status{position:absolute;z-index:50;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-size:14px;pointer-events:none}.student-restoring-status span{width:12px;height:12px;border:2px solid #d8cde5;border-top-color:var(--brand-600);border-radius:50%;animation:restoring-spin .7s linear infinite}@keyframes restoring-spin{to{transform:rotate(360deg)}}.confirmation-view{width:min(100%,620px);margin:0 auto;text-align:center}.cancellation-view{width:min(100%,660px);margin:0 auto}.cancellation-panel,.cancellation-result{width:100%}.cancellation-panel{text-align:left}.student-page .cancellation-view h1{max-width:660px;margin-right:auto;margin-bottom:12px;margin-left:auto;text-wrap:balance}.cancellation-view .subtitle{margin-right:auto;margin-bottom:22px;margin-left:auto}.cancellation-view .summary{margin:24px auto;text-align:left}.cancellation-warning{margin:18px 0 22px;text-align:left}.cancellation-actions{display:grid;gap:12px;margin-top:22px}.cancellation-button{width:100%;min-height:58px;border-radius:999px;font-size:clamp(16px,1.5vw,19px)}.not-found-view{width:min(100%,560px);margin:0 auto;text-align:center}.not-found-code{position:relative;width:max-content;margin:0 auto 24px;color:#6b3df1;font-family:var(--display);font-size:clamp(82px,9vw,132px);font-weight:800;letter-spacing:-.085em;line-height:.76;animation:not-found-code-in .58s .1s cubic-bezier(.16,1,.3,1) both}.not-found-code:after{position:absolute;right:5%;bottom:-13px;left:10%;height:8px;background:#d9ff63;content:"";transform:rotate(-1deg)}.not-found-eyebrow{margin:0 0 14px;color:#5b2bd7;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.student-page .not-found-view h1{max-width:520px;margin-right:auto;margin-left:auto}.not-found-view .subtitle{margin-right:auto;margin-left:auto}.not-found-home{width:min(100%,420px)}@keyframes not-found-code-in{0%{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}.student-page .confirmation-view h1{max-width:none;margin-right:auto;margin-bottom:12px;margin-left:auto}.confirmation-view .subtitle{margin-right:auto;margin-bottom:22px;margin-left:auto}.confirmation-view .summary{margin:0 auto;text-align:left}.confirmation-mark{width:78px;height:78px;margin:0 auto 20px;border-radius:50%;background:#effbf3;box-shadow:0 12px 28px #188b4d21}.confirmation-mark svg,.cancelled-mark svg{display:block;width:100%;height:100%;overflow:visible}.confirmation-mark circle,.confirmation-mark path,.cancelled-mark circle,.cancelled-mark path{fill:none;stroke-linecap:round;stroke-linejoin:round}.confirmation-mark circle,.confirmation-mark path{stroke:#16864a}.confirmation-mark circle{stroke-width:2.5;stroke-dasharray:189;stroke-dashoffset:189;animation:confirmation-ring .9s cubic-bezier(.2,.72,.2,1) .3s forwards}.confirmation-mark path{stroke-width:4.5;stroke-dasharray:42;stroke-dashoffset:42;animation:confirmation-check .68s cubic-bezier(.2,.72,.2,1) 1.05s forwards}.cancelled-mark{width:78px;height:78px;margin:0 auto 20px;border-radius:50%;background:#fff0f1;box-shadow:0 12px 28px #a0303a21}.cancelled-mark circle,.cancelled-mark path{stroke:#a0303a}.cancelled-mark circle{stroke-width:2.5;stroke-dasharray:189;stroke-dashoffset:189;animation:confirmation-ring .9s cubic-bezier(.2,.72,.2,1) .3s forwards}.cancelled-mark path{stroke-width:4.5;stroke-dasharray:34;stroke-dashoffset:34}.cancelled-mark path:first-of-type{animation:cancellation-cross .52s cubic-bezier(.2,.72,.2,1) .98s forwards}.cancelled-mark path:last-of-type{animation:cancellation-cross .52s cubic-bezier(.2,.72,.2,1) 1.16s forwards}@keyframes confirmation-ring{to{stroke-dashoffset:0}}@keyframes confirmation-check{0%{stroke-dashoffset:42;transform:scale(.92);transform-origin:center}70%{stroke-dashoffset:0;transform:scale(1.04);transform-origin:center}to{stroke-dashoffset:0;transform:scale(1);transform-origin:center}}@keyframes cancellation-cross{0%{stroke-dashoffset:34;transform:scale(.94);transform-origin:center}70%{stroke-dashoffset:0;transform:scale(1.05);transform-origin:center}to{stroke-dashoffset:0;transform:scale(1);transform-origin:center}}.student-stage-wide .flow-inner{max-width:940px}.flow-inner>*{animation:flow-content-in .42s cubic-bezier(.16,1,.3,1) both}.student-page h1{max-width:500px;margin-bottom:13px;font-size:clamp(34px,4.3vw,58px);font-weight:800;letter-spacing:-.055em;line-height:.96}.otp-title-row{position:relative;display:block;max-width:500px;margin-bottom:13px}.student-page .otp-title-row h1{margin-bottom:0}.student-page .cancellation-view h1{max-width:640px;margin-bottom:16px;font-size:clamp(34px,3vw,46px);letter-spacing:-.035em;line-height:1.12}.student-page .cancellation-panel h1,.cancellation-panel .subtitle{margin-right:0;margin-left:0}.cancellation-panel .subtitle{margin-bottom:28px}.student-page .subtitle{max-width:520px;margin-bottom:32px;font-size:15px;line-height:1.6}.otp-login{width:100%}.otp-login form{display:grid;width:100%;justify-items:center}.otp-login .otp-title-row,.otp-login>.subtitle,.otp-login .field,.otp-login .turnstile-container,.otp-login form>.alert,.otp-login .consent-road,.otp-login .consent-stack,.otp-login form>.btn-primary,.otp-login form>.otp-query-button{width:100%;max-width:940px;margin-right:auto;margin-left:auto}.otp-login .otp-title-row h1,.otp-login>.subtitle{max-width:min(100%,560px);margin-right:0;margin-left:0}.student-page label{margin-bottom:8px;color:#302644;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.student-page .field{margin-bottom:20px}.student-page input[type=text],.student-page input[type=tel],.student-page input[type=email],.student-page input[type=number],.student-page .phone-input{min-height:56px;border:1.5px solid #bdb3c7;border-radius:0;background:#fff;box-shadow:none}.student-page input[type=text]:focus,.student-page input[type=tel]:focus,.student-page input[type=email]:focus,.student-page input[type=number]:focus,.student-page .phone-input:focus-within{border-color:#6b3df1;box-shadow:0 0 0 3px #6b3df11f}.student-page .checkbox-row input:focus-visible{outline-color:#6b3df152;box-shadow:none}.consent-stack{display:grid;gap:0;margin:6px 0 16px}.consent-section{overflow:hidden;border:1px solid #e4d8ef;border-radius:20px;background:linear-gradient(180deg,#fff,#fdfbff);box-shadow:0 12px 30px #2a1d450e}.consent-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:11px;align-items:center;margin:0;padding:10px 15px;border-bottom:1px solid #ede5f3;background:#ffffffb8;transition:background-color .16s ease}.consent-row:hover{background:#f8f3ffdb}.consent-section .consent-row:last-child{border-bottom:0}.consent-row>input[type=checkbox]{display:grid;width:22px;height:22px;margin:0;border:1.5px solid #93899f;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;cursor:pointer;place-content:center;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.consent-row>input[type=checkbox]:before{width:10px;height:6px;border-bottom:2px solid #fff;border-left:2px solid #fff;content:"";transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform .14s ease}.consent-row>input[type=checkbox]:checked{border-color:#6b3df1;background:#6b3df1}.consent-row>input[type=checkbox]:checked:before{transform:translateY(-1px) rotate(-45deg) scale(1)}.consent-row>input[type=checkbox]:focus-visible{outline:3px solid rgba(107,61,241,.2);outline-offset:2px}.consent-copy{display:block;min-width:0}.consent-road{width:100%;margin-top:0}.consent-road .journey-road-intro{margin-bottom:4px}.otp-login .subtitle{margin-bottom:22px}.otp-login .field{margin-bottom:14px}.otp-login .btn-primary{min-height:54px}.otp-login .otp-query-button{margin-top:9px}.student-page .consent-copy{margin:0;color:#4d435d;font-size:11.7px;font-weight:650;letter-spacing:0;line-height:1.42;text-transform:none;cursor:pointer}.student-page .consent-copy label{display:inline;margin:0;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;text-transform:none;cursor:pointer}.consent-document-link{display:inline;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#5b2bd7;font:inherit;font-weight:900;line-height:inherit;text-align:left;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.consent-document-link:hover:not(:disabled){background:transparent;color:#3f179f;transform:none}.consent-document-link:focus-visible{outline:3px solid rgba(107,61,241,.2);outline-offset:2px}.commercial-consent-row{grid-template-columns:24px minmax(0,1fr) auto;border-bottom:0;background:#f8f3ffb8}.commercial-consent-row:hover,.commercial-consent-row:has(input:checked),.commercial-consent-row:has(input:indeterminate){background:#f1e9ffd1}.commercial-consent-count{display:block;margin-top:4px;color:#7551d4;font-size:9.5px;font-weight:850;letter-spacing:.02em;line-height:1.2}.commercial-consent-toggle{display:inline-flex;min-height:30px;align-items:center;justify-content:center;padding:6px 10px;border:1px solid rgba(107,61,241,.28);border-radius:999px;background:#6b3df114;color:#5b2bd7;font-size:9.8px;font-weight:900;letter-spacing:.02em;white-space:nowrap}.commercial-consent-toggle:hover:not(:disabled),.commercial-consent-toggle[aria-expanded=true]{border-color:#6b3df17a;background:#6b3df1;color:#fff;transform:none}.commercial-consent-toggle:focus-visible{outline:3px solid rgba(107,61,241,.22);outline-offset:3px}.commercial-consent-options{display:grid;gap:10px;min-height:0;padding:18px 22px;overflow-y:auto;overscroll-behavior:contain}.commercial-consent-option{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;min-height:0;padding:10px 11px;border:1px solid rgba(224,213,236,.9);border-radius:14px;background:#ffffffdb;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.commercial-consent-option:hover{border-color:#6b3df159;background:#fff}.commercial-consent-option:has(input:checked){border-color:#6b3df180;background:#6b3df113}.commercial-consent-option input[type=checkbox]{display:grid;width:20px;height:20px;margin:0;border:1.5px solid #93899f;border-radius:7px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;cursor:pointer;place-content:center;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.commercial-consent-option input[type=checkbox]:before{width:9px;height:5px;border-bottom:2px solid #fff;border-left:2px solid #fff;content:"";transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform .14s ease}.commercial-consent-option input[type=checkbox]:checked{border-color:#6b3df1;background:#6b3df1}.commercial-consent-option input[type=checkbox]:checked:before{transform:translateY(-1px) rotate(-45deg) scale(1)}.commercial-consent-row>input[type=checkbox]:indeterminate{border-color:#6b3df1;background:#6b3df1}.commercial-consent-row>input[type=checkbox]:indeterminate:before{width:10px;height:0;border-bottom:2px solid #fff;border-left:0;transform:scale(1)}.commercial-consent-option input[type=checkbox]:focus-visible{outline:3px solid rgba(107,61,241,.2);outline-offset:2px}.commercial-consent-option-copy{display:grid;gap:3px;margin:0;color:#2f2445;letter-spacing:0;line-height:1.32;text-transform:none;cursor:pointer}.commercial-consent-option-copy strong{color:#2c2046;font-size:10.9px;font-weight:900}.commercial-consent-option-copy>span{color:#6f647f;font-size:10.2px;font-weight:650}.commercial-consent-dialog{width:min(560px,calc(100vw - 32px));max-width:none;max-height:none;padding:0;border:0;border-radius:24px;background:transparent;color:var(--text);overflow:visible}.commercial-consent-dialog[open]{animation:privacy-dialog-in .18s ease-out both}.commercial-consent-dialog::backdrop{background:#1b112e94;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:privacy-backdrop-in .16s ease-out both}.commercial-consent-sheet{display:flex;max-height:min(720px,calc(100svh - 40px));flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:24px;background:#fff;box-shadow:0 30px 80px #1b112e4d}.commercial-consent-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 22px 18px;border-bottom:1px solid #e8e2ec}.commercial-consent-sheet-header h2{margin:0 0 7px;color:#241a3f;font-size:25px;font-weight:850;letter-spacing:-.035em;line-height:1.08}.commercial-consent-sheet-header>div>span{display:block;max-width:400px;color:#756a81;font-size:11px;font-weight:650;line-height:1.45}.process-info-button{position:absolute;top:5px;right:0;z-index:2;display:flex;width:fit-content;align-items:center;gap:7px;margin:0;padding:6px 10px 6px 7px;border:0;border-radius:999px;background:#6b3df114;color:#5b2bd7;font-size:10.8px;font-weight:900;letter-spacing:.02em;box-shadow:none}.process-info-button span{display:grid;width:17px;height:17px;place-items:center;border-radius:50%;background:#6b3df1;color:#fff;font-size:10px;font-weight:900;line-height:1;box-shadow:0 5px 12px #6b3df12e}.process-info-button:hover:not(:disabled){background:#6b3df11f;color:#4c20be;transform:none}@media(max-width:560px){.process-info-button{top:3px;padding:6px 8px 6px 6px;font-size:9.8px}.process-info-button span{width:16px;height:16px;font-size:9px}.commercial-consent-toggle{min-height:32px;padding-inline:12px;font-size:10px}.commercial-consent-option{grid-template-columns:20px minmax(0,1fr);gap:8px;padding:11px}.commercial-consent-option input[type=checkbox]{width:20px;height:20px}.commercial-consent-option-copy strong{font-size:11px}.commercial-consent-option-copy>span{font-size:10px;line-height:1.35}.commercial-consent-options{gap:6px;padding:14px 16px}.commercial-consent-sheet-header{padding:22px 16px 15px}}@keyframes commercial-consent-sheet-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}.process-info-panel .privacy-content{display:grid;gap:18px}.process-info-list{display:grid;gap:12px;margin:16px 0 18px;padding-left:24px;color:#4d435d;font-size:14px;line-height:1.55}.process-info-list li::marker{color:#6b3df1;font-weight:900}.student-page .phone-input input,.student-page .phone-input input:focus{min-height:53px;border:0;box-shadow:none}.student-page .btn-primary{min-height:58px;border-radius:999px;background:#241a3f;color:#fff;box-shadow:none;font-size:14px;letter-spacing:-.01em}.otp-query-button{margin-top:12px}.otp-session-notice{display:flex;align-items:flex-start;gap:12px;margin-top:14px;padding:13px 14px;border-left:3px solid #6b3df1;background:#f5f1ff;color:#302647;animation:otp-session-notice-in .26s ease-out both}.otp-session-notice-icon{display:grid;flex:0 0 32px;width:32px;height:32px;place-items:center;border-radius:50%;background:#d9ff63;color:#281d43}.otp-session-notice-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.otp-session-notice-copy{display:grid;gap:3px;min-width:0;font-size:12.5px;line-height:1.45}.otp-session-notice-copy strong{color:#281d43;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.otp-session-notice-copy>span{color:#655b77}@keyframes otp-session-notice-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.otp-session-notice{animation:none}}.booking-info-actions{display:grid;gap:12px;width:100%;margin-top:18px}.booking-info-actions .lookup-cancel-button{width:100%;margin-top:0}.booking-preparation-info-button{display:grid;width:100%;min-height:52px;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:11px;margin:0;padding:10px 15px 10px 12px;border:1px solid #ded4ec;border-radius:14px;background:#f9f7fc;color:#382957;font-size:13px;font-weight:800;line-height:1.3;text-align:left;box-shadow:none}.booking-preparation-info-button:hover:not(:disabled){border-color:#bca7df;background:#f3effa;color:#4c20be;box-shadow:none;transform:none}.booking-preparation-info-button:focus-visible{outline:3px solid rgba(107,61,241,.24);outline-offset:2px}.booking-preparation-info-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#6b3df1;color:#fff;font-size:13px;font-weight:900;line-height:1}.booking-preparation-info-arrow{color:#765d9d;font-size:24px;font-weight:500;line-height:1;text-align:right}.booking-cancel-dialog .btn-danger{min-height:54px;border-radius:999px}.student-page .btn-primary:hover:not(:disabled){background:#6b3df1;box-shadow:none;transform:translateY(-2px) scale(1.005)}.student-page .btn-primary:focus-visible{outline:3px solid #d9ff63;outline-offset:3px}.student-page .link-inline,.student-page .btn-link{color:#5b2bd7}.student-page .checkbox-row span{font-size:12.5px}.student-page .alert{border-radius:0}.privacy-dialog{width:min(680px,calc(100vw - 32px));max-width:none;max-height:none;padding:0;border:0;border-radius:28px;background:transparent;color:var(--text);overflow:visible}.privacy-dialog[open]{animation:privacy-dialog-in .22s cubic-bezier(.2,.75,.2,1) both}.privacy-dialog::backdrop{background:#1b112e94;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:privacy-backdrop-in .18s ease-out both}.privacy-panel{display:flex;max-height:min(760px,calc(100svh - 48px));flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:28px;background:#fff;box-shadow:0 32px 90px #1b112e52}.privacy-header{position:relative;display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:24px;padding:30px 32px 25px;border-bottom:1px solid #e8e2ec}.privacy-header:before{position:absolute;top:0;left:32px;width:72px;height:5px;border-radius:0 0 999px 999px;background:#d9ff63;content:""}.privacy-kicker{margin:0 0 8px;color:#6b3df1;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.privacy-header h2{margin:0;color:#241a3f;font-size:clamp(25px,4vw,34px);font-weight:800;letter-spacing:-.045em;line-height:1.05}.privacy-close{display:grid;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:12px;background:transparent;color:#5f566a;box-shadow:none;place-items:center}.privacy-close svg{width:22px;height:22px;overflow:visible;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2}.privacy-close:hover:not(:disabled){background:#f7f3fb;color:#3f179f;transform:none}.privacy-close:focus-visible{outline:2px solid #6b3df1;outline-offset:2px}.privacy-content{padding:0 32px;overflow-y:auto;overscroll-behavior:contain}.appointment-preparation-dialog{width:min(620px,calc(100vw - 32px))}.appointment-preparation-header h2{max-width:470px}.appointment-preparation-content{min-height:0;padding:8px 32px 0;overflow-y:auto;overscroll-behavior:contain}.appointment-preparation-list{margin:0;padding:0;list-style:none;counter-reset:preparation-point}.appointment-preparation-list li{position:relative;padding:17px 0 17px 42px;border-bottom:1px solid #eee8f2;color:#4d435d;font-size:14px;font-weight:650;line-height:1.55;counter-increment:preparation-point}.appointment-preparation-list li:last-child{border-bottom:0}.appointment-preparation-list li:before{position:absolute;top:17px;left:0;display:grid;width:27px;height:27px;border-radius:9px;background:#f0e9ff;color:#5b2bd7;content:counter(preparation-point,decimal-leading-zero);font-size:9px;font-weight:900;line-height:1;place-items:center}.appointment-preparation-actions{flex:0 0 auto;padding:18px 32px 28px}.appointment-preparation-actions .btn-primary{min-height:52px;border-radius:999px;box-shadow:none}.privacy-document{margin:0 0 24px;padding:0;color:#6f6579;font-family:inherit;font-size:13px;line-height:1.65}.privacy-document h1,.privacy-document h2,.privacy-document h3,.privacy-document h4,.privacy-document h5,.privacy-document h6{margin:22px 0 10px;color:#241a3f;font-size:14px;font-weight:850;letter-spacing:-.01em;line-height:1.35;text-transform:none}.privacy-document h1:first-child,.privacy-document h2:first-child,.privacy-document h3:first-child{margin-top:0}.privacy-document p{margin:0 0 13px;white-space:pre-wrap}.privacy-document table{display:block;width:100%;min-width:560px;margin:14px 0 22px;overflow-x:auto;border:1px solid #e8e2ec;border-radius:14px;border-spacing:0;border-collapse:collapse;background:#fff;color:#4d435d;font-size:12px;line-height:1.45}.privacy-document th,.privacy-document td{padding:12px 14px;border-bottom:1px solid #eee8f2;border-left:1px solid #eee8f2;text-align:left;vertical-align:top}.privacy-document th:first-child,.privacy-document td:first-child{border-left:0}.privacy-document tr:last-child td{border-bottom:0}.privacy-document th{background:#f4eefb;color:#4b238f;font-weight:850}@keyframes privacy-dialog-in{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes privacy-backdrop-in{0%{opacity:0}to{opacity:1}}.slots-full{display:grid;width:min(100%,620px);margin:0 auto;justify-items:center}.slots-full h1,.slots-full>.subtitle{margin-right:auto;margin-left:auto}.slots-full h1{max-width:620px}.slots-full>.subtitle{max-width:560px}.slots-full>.btn-primary{width:min(100%,520px)}.slots-full-season-ended{width:min(100%,700px)}.season-ended-shell{position:relative;display:grid;min-height:100svh;padding:clamp(18px,3vw,42px);overflow:hidden;background:#6b3df1;isolation:isolate;place-items:center}.season-ended-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:48px 48px}.season-ended-grid:before,.season-ended-grid:after{position:absolute;border:1px solid rgba(255,255,255,.2);border-radius:50%;content:""}.season-ended-grid:before{top:-22vw;left:-14vw;width:48vw;height:48vw}.season-ended-grid:after{right:-18vw;bottom:-30vw;width:58vw;height:58vw}.season-ended-surface{display:flex;flex-direction:column;width:min(960px,100%);min-height:min(880px,calc(100svh - clamp(36px,6vw,84px)));padding:clamp(26px,4vw,52px) clamp(24px,6vw,82px) clamp(36px,5vw,64px);border-radius:clamp(30px,4vw,54px);background:#fff;box-shadow:0 34px 90px #23134c4d;animation:season-surface-enter .62s cubic-bezier(.16,1,.3,1) both}.season-ended-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:clamp(18px,3vw,30px);border-bottom:1px solid #e4dced}.season-ended-header>span{padding:7px 10px 6px;border-radius:2px;background:#d9ff63;box-shadow:0 0 0 5px #d9ff6329;color:#2d1d4e;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.season-ended-surface .season-ended-page{display:grid;grid-template-rows:minmax(0,1fr);align-items:center;justify-items:center;flex:1;padding:clamp(34px,5vh,60px) 0 clamp(8px,2vh,24px)}.season-ended-hero{display:grid;justify-items:center;width:100%}.season-ended-surface .owl-badge{animation:mascot-arrive .74s .12s cubic-bezier(.17,.89,.28,1.15) both,mascot-sway 6s 1s ease-in-out infinite}.season-ended-surface .owl-badge:before{background:#d9ff63;box-shadow:0 0 0 10px #d9ff631f,0 18px 42px #6b3df121;animation:season-neon-breathe 3.2s 1.1s ease-in-out infinite}.season-ended-page .season-ended-kicker{animation:season-copy-enter .52s .16s cubic-bezier(.16,1,.3,1) both}.season-ended-page h1{animation:season-copy-enter .62s .31s cubic-bezier(.16,1,.3,1) both}.season-ended-page>.subtitle{animation:season-copy-enter .62s .42s cubic-bezier(.16,1,.3,1) both}.season-ended-page .season-yearline{animation:season-copy-enter .62s .53s cubic-bezier(.16,1,.3,1) both}.season-ended-page .season-yearline i{background:#6d34ed;animation:season-line-reveal .7s .62s cubic-bezier(.22,1,.36,1) both}.season-ended-page .season-yearline i:after{background:#d9ff63;box-shadow:0 0 0 7px #d9ff6338,0 0 22px #d9ff63b8}.season-ended-page .season-yearline span:last-child strong{position:relative;z-index:1;display:inline-block;width:max-content;justify-self:end;background-image:linear-gradient(to top,#d9ff63 38%,transparent 38%);background-repeat:no-repeat;background-position:left bottom;background-size:0% 100%;animation:season-text-highlight .44s 1.34s cubic-bezier(.16,1,.3,1) forwards}.season-ended-page .season-yearline span:last-child strong:after{content:none}@keyframes season-surface-enter{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes season-copy-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes season-neon-travel{0%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes season-highlight{to{transform:rotate(-1.5deg) scaleX(1)}}@keyframes season-text-highlight{0%{background-size:0% 100%}to{background-size:100% 100%}}@keyframes season-neon-breathe{0%,to{box-shadow:0 0 0 8px #d9ff631a,0 18px 42px #6b3df121}50%{box-shadow:0 0 0 14px #d9ff632e,0 22px 48px #6b3df12b}}.season-ended-kicker{margin:0 auto 18px;color:#6d34ed;font-size:11px;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.slots-full-season-ended .owl-badge{margin-bottom:18px}.slots-full-season-ended h1{max-width:700px;font-size:clamp(44px,4.5vw,68px);letter-spacing:-.06em;line-height:.97;text-wrap:balance}.slots-full-season-ended>.subtitle{max-width:460px;margin-bottom:28px;font-size:18px;text-wrap:balance}.season-yearline{display:grid;grid-template-columns:auto minmax(72px,180px) auto;width:min(100%,500px);margin:clamp(34px,4.8vh,54px) auto 0;align-items:center;gap:16px;color:#2d1d4e}.season-yearline span{display:grid;gap:2px;text-align:left}.season-yearline span:last-child{text-align:right}.season-yearline strong{font-family:var(--display);font-size:28px;font-weight:800;letter-spacing:-.045em;line-height:1}.season-yearline small{color:#81768f;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.season-yearline i{position:relative;height:2px;overflow:visible;background:#ddd2ef;transform-origin:left center;animation:season-line-reveal .7s .18s cubic-bezier(.22,1,.36,1) both}.season-yearline i:before,.season-yearline i:after{position:absolute;top:50%;width:9px;height:9px;border:2px solid #6d34ed;border-radius:50%;background:#fff;content:"";transform:translateY(-50%)}.season-yearline i:before{left:-1px;background:#fff}.season-yearline i:after{right:-1px;background:#d9ff63;box-shadow:0 0 0 5px #d9ff6333;animation:season-dot-breathe 2.6s .9s ease-in-out infinite}.season-ended-page .season-yearline i:after{background:#d9ff63}.slots-full-overloaded{width:min(100%,640px);align-content:start}.slots-full-overloaded .owl-badge{width:118px;height:108px;margin-bottom:16px}.slots-full-overloaded h1{max-width:540px;letter-spacing:-.055em}.slots-full-overloaded>.subtitle{max-width:440px;margin-bottom:28px;font-size:17px}.busy-explanation{position:relative;display:grid;width:min(100%,520px);margin:0 auto;gap:14px;padding:22px 24px 24px;border:1px solid rgba(109,52,237,.16);border-radius:28px;background:linear-gradient(135deg,#d9ff6324,#6d34ed14),#ffffffdb;box-shadow:0 22px 60px #3b1f6714;color:var(--text);text-align:center}.busy-explanation h2{margin:0;color:var(--text);font-size:17px;line-height:1.3}.busy-explanation p{margin:0;color:var(--muted);font-size:14px;line-height:1.58}.busy-check-button{width:min(100%,360px);margin:2px auto 0}.busy-check-button:disabled{opacity:.72;cursor:not-allowed;transform:none}.slots-full .owl-badge,.come-tomorrow .owl-badge.night,.state-mascot{position:relative;width:156px;height:142px;margin:0 auto 22px}.slots-full .owl-badge:before,.come-tomorrow .owl-badge.night:before,.state-mascot:before{position:absolute;top:5%;right:5%;bottom:5%;left:5%;border-radius:50%;background:#f6be4f;content:""}.slots-full .owl-badge img,.come-tomorrow .owl-badge.night img,.state-mascot img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 15px rgba(57,22,104,.14))}.queue-box{display:inline-block;min-width:180px;margin:2px auto 22px;padding:20px 28px;border:2px solid #241a3f;background:#d9ff63;transform:rotate(-1deg)}.queue-num{color:#241a3f;font-family:var(--display);font-size:68px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.06em;line-height:.9}.queue-label{margin-top:8px;color:#4b415e;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.wait-reserve{display:grid;width:min(100%,620px);margin:0 auto;justify-items:center}.wait-reserve .owl-badge{width:118px;height:108px;margin-bottom:14px}.wait-reserve h1{max-width:580px;margin-bottom:10px;font-size:clamp(38px,3.7vw,52px);line-height:.98}.wait-reserve>.subtitle{max-width:560px;margin-bottom:18px}.wait-reserve .queue-box{min-width:158px;margin-bottom:16px;padding:15px 24px 17px}.wait-reserve .queue-num{font-size:58px}.wait-reserve>.btn-primary{width:min(100%,480px);margin:2px auto 16px}.queue-meta{display:grid;min-height:0;align-content:start;gap:6px;margin:2px auto 12px;max-width:560px}.queue-meta p{margin:0}.queue-tomorrow{color:#675d76;font-size:13px}.queue-progress-copy{font-size:13px}.queue-box-compact{min-width:150px;padding:14px 22px 16px}.queue-box-compact .queue-num{font-size:54px}.calendly-inline-widget{--calendly-scale: .9;--calendly-viewport-size: 111.112%;height:auto;flex:1 1 0;width:100%;min-width:320px;min-height:0;border-radius:0;opacity:1;transition:opacity .26s ease}.calendly-inline-widget iframe{width:var(--calendly-viewport-size)!important;height:var(--calendly-viewport-size)!important;border:0;transform:scale(var(--calendly-scale));transform-origin:top left}.student-stage-wide{height:100svh;min-height:0;overflow:hidden}.student-stage-wide .guidance-panel{min-height:100svh}.student-stage-wide .flow-surface{height:100svh;min-height:0;padding:18px clamp(24px,3vw,50px);overflow:hidden;border-radius:44px 0 0 44px}.student-stage-wide .flow-topline{min-height:46px;padding:2px 0 10px}.student-stage-wide .journey-road{width:min(100%,1080px);margin-top:16px}.student-stage-wide .road-heading{margin-bottom:18px}.student-stage-wide .road-traveler{width:58px;height:58px}.student-stage-wide .road-labels{height:28px;margin-top:14px}.student-stage-wide .flow-inner{flex:1;width:100%;max-width:1180px;min-height:0;margin:0 auto;padding:12px 0 0;overflow:hidden}.student-stage-wide .flow-scene,.schedule-view{height:100%;min-height:0}.schedule-view{display:flex;flex-direction:column}.schedule-header{display:flex;flex:0 0 auto;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:12px}.schedule-edit{display:inline-flex;min-height:44px;flex:0 0 auto;align-items:center;gap:8px;padding:4px 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#5b2bd7;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.schedule-edit span{font-size:16px;transition:transform .18s ease}.schedule-edit:hover:not(:disabled){color:#3f179f;transform:none}.schedule-edit:hover:not(:disabled) span{transform:translate(-3px)}.schedule-edit:focus-visible{outline:3px solid rgba(107,61,241,.2);outline-offset:3px}.schedule-copy h1{margin-bottom:6px;font-size:clamp(32px,3vw,46px)}.schedule-copy .subtitle{margin:0;font-size:13px;line-height:1.45}.calendly-embed{position:relative;display:flex;flex:1;flex-direction:column;width:100%;min-height:0;overflow:hidden}.calendly-loading .calendly-inline-widget,.calendly-error .calendly-inline-widget{opacity:0;pointer-events:none}.calendly-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;background:#fff;opacity:1;pointer-events:none;transition:opacity .22s ease,visibility 0s linear .22s}.calendly-ready .calendly-placeholder,.calendly-error .calendly-placeholder{visibility:hidden;opacity:0}.calendly-placeholder-sheet{position:relative;width:min(100%,620px);height:min(100%,760px);border:1px solid #e5deef;background:radial-gradient(circle,#eee8f8 0 9px,transparent 10px) 50% 43% / 80px 80px,#fff;box-shadow:0 8px 24px #241a3f0f}.calendly-placeholder-title,.calendly-placeholder-month,.calendly-placeholder-days{position:absolute;left:50%;display:block;border-radius:999px;background:#eee8f8;transform:translate(-50%)}.calendly-placeholder-title{top:58px;width:230px;height:22px}.calendly-placeholder-month{top:150px;width:128px;height:14px}.calendly-placeholder-days{top:208px;width:min(78%,430px);height:1px;background:#e5deef}.calendly-loader-track{position:absolute;top:285px;left:50%;width:168px;height:7px;overflow:hidden;border-radius:999px;background:#e9e0f8;transform:translate(-50%)}.calendly-loader-track i{display:block;width:54px;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5420d2,#7b43f1 68%,#d9ff63);animation:calendly-loader-travel 1.15s cubic-bezier(.45,0,.55,1) infinite alternate;will-change:transform}.calendly-placeholder-sheet strong,.calendly-placeholder-sheet small{position:absolute;left:50%;display:block;width:max-content;max-width:80%;color:#241a3f;text-align:center;transform:translate(-50%)}.calendly-placeholder-sheet strong{top:318px;font-size:15px;font-weight:800}.calendly-placeholder-sheet small{top:346px;color:#7e748c;font-size:12px}@keyframes calendly-loader-travel{0%{transform:translateZ(0)}to{transform:translate3d(114px,0,0)}}@media(min-width:821px)and (max-height:820px){.calendly-inline-widget{--calendly-scale: .86;--calendly-viewport-size: 116.28%}.student-stage-wide .flow-surface{padding-top:12px;padding-bottom:12px}.student-stage-wide .road-heading{display:none}.student-stage-wide .journey-road{margin-top:10px}.student-stage-wide .road-track{height:25px}.student-stage-wide .road-labels{height:24px;margin-top:10px}.student-stage-wide .flow-inner{padding-top:8px}.schedule-header{margin-bottom:8px}.schedule-copy h1{font-size:30px}.schedule-copy .subtitle{display:none}}@media(min-width:821px)and (max-height:1100px){.student-stage:not(.student-stage-journey) .guidance-visual{right:clamp(-76px,-5vw,-30px);bottom:clamp(-18px,-1vh,10px);width:clamp(230px,22vw,390px)}}@keyframes poster-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes mascot-arrive{0%{opacity:0;transform:translateY(28px) scale(.92) rotate(0)}to{opacity:1;transform:translateY(0) scale(1) rotate(-1deg)}}@keyframes mascot-sway{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1.4deg) translateY(-5px)}}@keyframes disc-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes ring-drift{0%,to{transform:translateZ(0)}50%{transform:translate3d(12px,-8px,0)}}@keyframes flow-content-in{0%{opacity:.08;transform:translate3d(0,9px,0)}to{opacity:1;transform:translateY(0)}}@keyframes season-line-reveal{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes season-dot-breathe{0%,to{box-shadow:0 0 0 5px #d9ff6333}50%{box-shadow:0 0 0 9px #d9ff6314}}@media(max-width:1120px){.student-stage{grid-template-columns:minmax(390px,46vw) minmax(500px,54vw)}.student-stage-journey{grid-template-columns:minmax(300px,34vw) minmax(0,66vw)}.student-stage-wide{grid-template-columns:minmax(250px,24vw) minmax(0,76vw)}.poster-copy h2{font-size:clamp(52px,6vw,74px)}.poster-copy h2 strong{font-size:.53em}.poster-copy>p:last-child{display:none}}@media(max-width:820px){.season-ended-shell{padding:10px}.season-ended-grid{background-size:34px 34px}.season-ended-surface{min-height:calc(100svh - 20px);padding:22px 20px max(30px,env(safe-area-inset-bottom));border-radius:28px}.season-ended-header{padding-bottom:18px}.season-ended-header .brand-name{font-size:19px}.season-ended-header .brand-sub{font-size:9px}.season-ended-header>span{display:none}.season-ended-surface .season-ended-page{padding-top:clamp(30px,5vh,46px);padding-bottom:clamp(12px,3vh,28px)}.season-ended-hero{align-self:center}.flow-panel-background{display:none}.student-stage,.student-stage-wide{display:block;min-height:100svh}.guidance-panel{min-height:348px;padding:22px 22px 44px;background-size:36px 36px}.poster-header{align-items:flex-start}.poster-note{margin-top:5px}.poster-copy{width:76%;margin-top:54px}.poster-copy .eyebrow{margin-bottom:12px;font-size:9px}.poster-copy h2{font-size:clamp(44px,11vw,68px)}.poster-copy h2 strong{margin-top:8px;padding:6px 9px 9px;font-size:.53em}.poster-copy>p:last-child,.poster-steps,.visual-label{display:none}.guidance-visual{right:-54px;bottom:1px;width:230px}.flow-surface{min-height:calc(100svh - 316px);margin-top:-32px;padding:25px 22px max(52px,env(safe-area-inset-bottom));border-radius:34px 34px 0 0;box-shadow:0 -18px 50px #23134c29}.flow-topline{padding-bottom:14px}.flow-inner{max-width:560px;padding:38px 0 8px}.student-stage-wide .guidance-panel{min-height:156px}.student-stage-journey .guidance-panel{height:156px;min-height:156px}.student-stage-wide .poster-copy,.student-stage-wide .guidance-visual,.student-stage-wide .poster-note,.student-stage-journey .poster-copy,.student-stage-journey .guidance-visual,.student-stage-journey .poster-note{display:none}.student-stage-wide .flow-surface,.student-stage-journey .flow-surface{min-height:calc(100svh - 126px);margin-top:-30px}.student-stage-journey{height:100svh;min-height:0;overflow:hidden}.student-stage-journey .flow-surface{height:calc(100svh - 126px);overflow-y:auto;border-radius:34px 34px 0 0}.student-stage-wide .flow-inner,.student-stage-journey .flow-inner{max-width:none;padding-top:28px}.student-stage-wide{height:100svh;min-height:0;overflow:hidden}.student-stage-wide .guidance-panel{display:none}.student-stage-wide .flow-surface{height:100svh;min-height:0;margin:0;padding:14px 14px max(14px,env(safe-area-inset-bottom));border-radius:0}.student-stage-wide .flow-inner{flex:1;min-height:0;padding-top:6px;overflow:hidden}.student-stage-wide .flow-topline{min-height:44px;padding:0 0 6px}.wait-reserve .owl-badge{width:92px;height:84px;margin-bottom:10px}.wait-reserve h1{font-size:clamp(34px,8.8vw,44px)}.wait-reserve>.subtitle{margin-bottom:18px}.wait-reserve .queue-box{min-width:144px;padding:13px 20px 15px}.wait-reserve .queue-num{font-size:50px}.queue-meta{min-height:0}.schedule-header{align-items:center;margin-bottom:6px}.schedule-copy h1{margin:0;font-size:clamp(25px,7vw,33px);line-height:1}.schedule-copy .subtitle{display:none}.schedule-edit{min-height:40px;font-size:9px}.calendly-inline-widget{--calendly-scale: .84;--calendly-viewport-size: 119.048%;width:100%;min-width:320px;margin:0}.calendly-embed{width:calc(100% + 28px);margin-left:-14px}.privacy-dialog,.commercial-consent-dialog{inset:auto 0 0;width:100%;margin:0;border-radius:26px 26px 0 0}.commercial-consent-dialog[open]{animation:commercial-consent-sheet-in .22s cubic-bezier(.2,.75,.2,1) both}.commercial-consent-sheet,.privacy-panel{max-height:calc(100svh - 18px);border-right:0;border-bottom:0;border-left:0;border-radius:26px 26px 0 0}.privacy-header{padding:27px 22px 21px}.privacy-header:before{left:22px}.privacy-content{padding:0 22px}.appointment-preparation-content{padding:6px 22px 0}.appointment-preparation-list li{padding:15px 0 15px 39px;font-size:13px}.appointment-preparation-list li:before{top:15px}.appointment-preparation-actions{padding:16px 22px max(20px,env(safe-area-inset-bottom))}}@media(max-width:480px){.guidance-panel{min-height:318px;padding:18px 17px 40px}.guidance-panel .brand-tile{width:40px!important;height:40px!important}.guidance-panel .brand-name{font-size:18px}.guidance-panel .brand-sub,.poster-note{font-size:8px}.poster-copy{width:82%;margin-top:44px}.poster-copy h2{font-size:clamp(38px,10.5vw,50px)}.guidance-visual{right:-63px;width:196px}.flow-surface{min-height:calc(100svh - 286px);padding-right:18px;padding-left:18px;border-radius:28px 28px 0 0}.flow-topline>.flow-brand{display:none}.flow-inner{padding-top:32px}.student-page h1{font-size:clamp(34px,10vw,43px)}.student-page .cancellation-view h1{font-size:clamp(31px,8vw,40px);line-height:1.04}.student-page .subtitle{margin-bottom:26px;font-size:14px}.season-ended-kicker{margin-bottom:14px;font-size:9px}.slots-full-season-ended .owl-badge{width:128px;height:116px;margin-bottom:14px}.slots-full-season-ended h1{font-size:clamp(36px,10.6vw,44px)}.slots-full-season-ended>.subtitle{margin-bottom:24px}.season-yearline{grid-template-columns:auto minmax(44px,1fr) auto;gap:10px}.season-yearline strong{font-size:23px}.season-yearline small{font-size:7px}.steps{margin-bottom:34px}.step-label{font-size:8px}}@media(prefers-reduced-motion:reduce){.guidance-panel:before,.poster-header,.poster-copy,.guidance-visual img,.visual-disc,.visual-ring,.poster-steps,.flow-inner>*,.not-found-code{animation:none!important}.student-stage{transition:none!important}.privacy-dialog[open],.privacy-dialog::backdrop{animation:none!important}.season-yearline i,.season-ended-surface,.season-ended-surface .owl-badge,.season-ended-surface .owl-badge:before,.season-ended-hero,.season-ended-page .season-ended-kicker,.season-ended-page h1,.season-ended-page>.subtitle,.season-ended-page .season-yearline,.season-ended-page .season-yearline span:last-child strong,.season-ended-page .season-yearline span:last-child strong:after,.season-yearline i:after{animation:none!important}.season-ended-page .season-yearline span:last-child strong{background-size:100% 100%}}.season-ended-page .season-yearline i:before{background:#fff!important}.season-ended-page .season-yearline i:after{background:#d9ff63!important;background-color:#d9ff63!important}
