@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2039e8342bda6056-s.1hiu0hj9qpr9g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fabcf92ba1ccea36-s.p.1w_qz2ahumqmz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bebas Neue Fallback;src:local(Arial);ascent-override:117.32%;descent-override:39.11%;line-gap-override:0.0%;size-adjust:76.72%}.bebas_neue_f091c89c-module__lZuDgW__className{font-family:Bebas Neue,Bebas Neue Fallback;font-style:normal;font-weight:400}.bebas_neue_f091c89c-module__lZuDgW__variable{--font-display:"Bebas Neue", "Bebas Neue Fallback"}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--og-black:#090909;--og-deep:#0a0a0a;--og-purple:#cc48ef;--og-purple-soft:#e9a6fa;--og-header-h:5.75rem;font-family:Inter,system-ui,Arial,sans-serif}*{box-sizing:border-box}html{background:var(--og-deep)}body{background:var(--og-deep);color:#e5e5e5;min-height:100vh;margin:0}a{color:inherit}main{max-width:1200px;margin:0 auto;padding:2rem clamp(1rem,4vw,1.75rem) 3rem}main.landing{max-width:none;padding:0;padding-top:var(--og-header-h);background:var(--og-deep);color:#f7f7f7;margin:0;overflow-x:clip}main.appShell{background:radial-gradient(ellipse 120% 80% at 100% 0%, #1a0f22 0%, var(--og-deep) 42%, #050505 100%);color:#f0f0f0;box-sizing:border-box;width:100%;max-width:none;min-height:100vh;margin:0;padding:clamp(1.25rem,4vw,2rem) 0 3rem}main.appShell--login{background:radial-gradient(ellipse 100% 75% at 90% -5%, #cc48ef33 0%, transparent 42%), radial-gradient(ellipse 85% 55% at 5% 105%, #8a20a829 0%, transparent 48%), radial-gradient(ellipse 120% 85% at 100% 0%, #321a3d 0%, #120a18 35%, var(--og-deep) 58%, #050308 100%)}main.appShell--login .appTopBar{border-bottom-color:#cc48ef61}main.appShell>*{box-sizing:border-box;width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:clamp(1rem,4vw,1.75rem);padding-right:clamp(1rem,4vw,1.75rem)}.appTopBar{border-bottom:1px solid #cc48ef40;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.1rem;display:flex}.appTitle{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#fff;margin:0;font-size:clamp(1.65rem,4.5vw,2.25rem);line-height:1.05}.appTopBarActions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.appShell .card{color:#e5e5e5;background:linear-gradient(165deg,#141018 0%,#111 45%,#0f0f0f 100%);border:1px solid #cc48ef1f;border-radius:14px;margin:0 0 1.25rem;padding:1.15rem 1.25rem;box-shadow:0 12px 40px #00000059}.appShell .card .card{background:#0808088c;border-color:#cc48ef1a;margin-top:.85rem;margin-bottom:0}.appShell .card h2,.appShell .card>h3:first-of-type{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--og-purple);margin-top:0;font-size:1.1rem}.appShell .card h3{color:var(--og-purple-soft);margin:1.25rem 0 .5rem;font-size:1rem}.appShell .card h3:first-of-type{margin-top:0}.appShell .card .card h3{color:#f5f5f5;letter-spacing:normal;text-transform:none;margin-top:0;font-family:inherit;font-size:1.05rem}.appShell label{color:#c4c4c4;font-size:.9rem}.appShell input,.appShell textarea{color:#fff;background:#0d0d0d;border:1px solid #3a3a3a;border-radius:10px}.appShell input:focus,.appShell textarea:focus{border-color:#cc48efa6;outline:none;box-shadow:0 0 0 2px #cc48ef33}.appShell form button[type=submit]{background:linear-gradient(135deg, var(--og-purple) 0%, #8a20a8 100%);color:#fff;border:1px solid #cc48ef59;border-radius:10px;min-height:48px;margin-top:.35rem;padding:.65rem 1.25rem;font-weight:700;box-shadow:0 8px 20px #cc48ef40}@media (hover:hover){.appShell form button[type=submit]:hover{filter:brightness(1.06)}}.appBtnGhost{min-height:44px;color:var(--og-purple-soft);background:0 0;border:2px solid #cc48ef8c;border-radius:10px;padding:.5rem 1rem;font-weight:600}@media (hover:hover){.appBtnGhost:hover{color:#fff;background:#cc48ef1f}}.appLoginIntro{color:#b0b0b0;margin:0 0 1rem;line-height:1.5}.appAlert{color:#fda4af;margin:0;padding:.5rem 0;font-size:.95rem}main.appShell--admin>.adminShellInner,main.appShell--customer>.customerShellInner{max-width:1280px}.customerProfileStack{flex-direction:column;gap:1.25rem;display:flex}.customerProfileStack .adminClassRowTitle{margin-bottom:0}.customerPdfLink{align-self:flex-start;align-items:center;margin-top:0;text-decoration:none;display:inline-flex}.customerNoPdf{margin-top:0;margin-bottom:0}.customerEnrollAction{flex-shrink:0;align-items:center;display:flex}.customerEnrollStatus{text-align:right;max-width:12rem;margin:0}.customerWeekCalendar{flex-direction:column;gap:clamp(.9rem,2vw,1.35rem);display:flex}.customerWeekCalendarRange{letter-spacing:.04em;text-transform:uppercase;color:var(--og-purple-soft);margin:0 0 .15rem;font-size:clamp(.95rem,1.6vw,1.05rem);font-weight:600}.customerWeekCalendarEmpty{margin:0}.customerWeekCalendarBody{padding-bottom:.25rem}.weekScheduleShell{-webkit-overflow-scrolling:touch;background:linear-gradient(165deg,#18142273 0%,#0e0c14b8 100%);border:1px solid #cc48ef24;border-radius:14px;overflow:auto visible;box-shadow:0 8px 28px #00000059,0 0 0 1px #0003}.weekScheduleHeader,.weekScheduleBody{grid-template-columns:repeat(7,minmax(5.75rem,1fr));min-width:52rem;display:grid}.weekScheduleDayHead{letter-spacing:.04em;text-transform:uppercase;color:#e6e6f5fa;text-align:center;border-bottom:1px solid #cc48ef1f;border-right:1px solid #ffffff0f;margin:0;padding:.65rem .4rem;font-size:clamp(.78rem,1.4vw,.9rem);font-weight:800;line-height:1.3}.weekScheduleDayHead:last-child{border-right:none}.weekScheduleBody{align-items:stretch}.weekScheduleTrack{background:linear-gradient(#0e0c1459 0%,#0e0c1426 100%);border-right:1px solid #ffffff0f;flex-direction:column;gap:.5rem;min-width:0;min-height:3rem;margin:0;padding:.55rem .35rem .75rem;display:flex}.weekScheduleTrack:last-child{border-right:none}.weekScheduleEvent{text-align:left;box-sizing:border-box;cursor:pointer;border-radius:10px;flex-direction:column;align-items:stretch;gap:.28rem;width:100%;margin:0;padding:clamp(.45rem,1.5vw,.6rem) clamp(.5rem,1.6vw,.7rem);display:flex;position:relative;overflow:hidden}.weekScheduleEventName{color:#fff;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:clamp(.82rem,1.4vw,.95rem);font-weight:600;line-height:1.3;display:block;overflow:hidden}.weekScheduleEventTime{font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#c8c8daf2;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.72rem,1.25vw,.82rem);font-weight:700;display:block;overflow:hidden}.weekScheduleEvent.customerWeekCalendarSlot{width:100%}.customerWeekCalendarSlot{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#121018eb;border:1px solid #0000;border-radius:12px;margin:0;padding:clamp(.55rem,1.5vw,.7rem) clamp(.65rem,1.8vw,.85rem);transition:border-color .15s,box-shadow .15s,background .15s}.customerWeekCalendarSlot--enrolled{background:linear-gradient(145deg,#581c8759 0%,#181420f2 100%);border-color:#c084fc8c;box-shadow:0 0 0 1px #a855f71f}.customerWeekCalendarSlot--available{background:linear-gradient(145deg,#064e3b47 0%,#101618f5 100%);border-color:#34d39959}.customerWeekCalendarSlot--atCapacity{background:linear-gradient(145deg,#78350f38 0%,#181416f5 100%);border-color:#fbbf2459}@media (hover:hover){.customerWeekCalendarSlot:hover{border-color:#ffffff2e}.customerWeekCalendarSlot--enrolled:hover{border-color:#d8b4fea6}.customerWeekCalendarSlot--available:hover{border-color:#6ee7b780}.customerWeekCalendarSlot--atCapacity:hover{border-color:#fcd34d8c}}.customerWeekCalendarSlotTime{font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#d2d2e1fa;font-size:clamp(.78rem,1.4vw,.86rem);font-weight:700;display:block}.customerWeekCalendarSlotName{color:#fff;margin-top:.28rem;font-size:clamp(.88rem,1.6vw,1rem);font-weight:600;line-height:1.35;display:block}.customerWeekCalendarLegend{flex-wrap:wrap;gap:1rem 1.65rem;margin-top:.35rem;display:flex}.customerWeekCalendarLegendItem{color:#bebed0fa;align-items:center;gap:.5rem;font-size:clamp(.84rem,1.4vw,.92rem);display:inline-flex}.customerWeekCalendarLegendItem:before{content:"";border-radius:5px;flex-shrink:0;width:.75rem;height:.75rem}.customerWeekCalendarLegendItem--enrolled:before{background:#a855f78c;border:1px solid #d8b4fe73}.customerWeekCalendarLegendItem--available:before{background:#34d39959;border:1px solid #34d39973}.customerWeekCalendarLegendItem--atCapacity:before{background:#fbbf2459;border:1px solid #fcd34d73}.customerWeekCalendarModalEnroll{border-top:1px solid #ffffff0f;margin:1rem 0 0;padding-top:.75rem}.customerWeekCalendarModalEnroll .customerEnrollStatus{text-align:left;max-width:none}.customerWeekCalendarDialog .adminModalActions{margin-top:1rem}.adminTopBar{margin-bottom:1.25rem}.adminBody{align-items:flex-start;gap:clamp(1rem,3vw,2rem);display:flex}.adminSidebar{background:linear-gradient(175deg,#1a1222eb 0%,#0c0c0ee0 100%);border:1px solid #cc48ef24;border-radius:14px;flex-direction:column;flex:none;gap:.35rem;min-width:11.5rem;padding:.65rem .5rem;display:flex;box-shadow:0 10px 32px #00000059}.adminNavLink{color:#e9d3f5e0;border:1px solid #0000;border-radius:10px;padding:.65rem .9rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .18s,color .18s,border-color .18s;display:block}@media (hover:hover){.adminNavLink:hover{color:#fff;background:#cc48ef14}}.adminNavLink--active{color:#fff;background:#cc48ef29;border-color:#cc48ef59}.adminContent{flex:1;min-width:0}.adminPage{flex-direction:column;gap:1.5rem;display:flex}.adminPageHeader{margin:0}.adminPageTitle{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#fff;margin:0 0 .25rem;font-size:clamp(1.35rem,3.5vw,1.75rem);line-height:1.1}.adminPageLead{color:#b4afbcf2;margin:0;font-size:.95rem;line-height:1.45}.adminPageHeader--withAction{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.adminPageHeader--withAction .adminFormSubmit{flex-shrink:0;align-self:center}.adminPanel{background:linear-gradient(165deg,#141018 0%,#111 48%,#0f0f0f 100%);border:1px solid #cc48ef24;border-radius:16px;padding:1.25rem 1.35rem;box-shadow:0 14px 44px #00000061}.adminPanelHeading{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--og-purple-soft);margin:0 0 1rem;font-size:1rem}.adminForm{flex-direction:column;gap:1rem;max-width:48rem;display:flex}.adminForm--compact{max-width:none}.adminFormRow{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}@media (max-width:640px){.adminFormRow{grid-template-columns:1fr}.adminBody{flex-direction:column}.adminSidebar{flex-flow:wrap;width:100%;min-width:0}.adminNavLink{text-align:center;flex:auto;min-width:7rem}}.adminField{flex-direction:column;gap:.35rem;display:flex}.adminField label{letter-spacing:.04em;text-transform:uppercase;color:#c4b9d2f2;font-size:.82rem;font-weight:600}.adminFieldLabelStatic{letter-spacing:.04em;text-transform:uppercase;color:#c4b9d2f2;margin:0 0 .35rem;font-size:.82rem;font-weight:600}.adminPdfLinkWrap{margin:0 0 .5rem}.adminPdfActions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:0 0 .75rem;display:flex}.adminPdfLink{color:var(--og-purple-soft);text-underline-offset:3px;font-weight:600;text-decoration:underline}@media (hover:hover){.adminPdfLink:hover{color:#fff}}.adminPdfRemoveBtn{color:#fecaca;cursor:pointer;background:#dc262626;border:1px solid #f8717173;border-radius:8px;padding:.35rem .75rem;font-size:.85rem;font-weight:600}.adminPdfRemoveBtn:disabled{opacity:.55;cursor:not-allowed}@media (hover:hover){.adminPdfRemoveBtn:hover:not(:disabled){color:#fff;background:#dc262647}}.adminForm .adminField input,.adminForm .adminField textarea,.adminForm .adminField select{color:#f5f5f5;background:#08080ad9;border:1px solid #ffffff1a;border-radius:12px;padding:.65rem .85rem;font-size:1rem}.adminForm .adminField select{cursor:pointer;appearance:none;background-image:linear-gradient(45deg,#0000 50%,#cc48efcc 50%),linear-gradient(135deg,#cc48efcc 50%,#0000 50%);background-position:calc(100% - 1.15rem) 1.1rem,calc(100% - .85rem) 1.1rem;background-repeat:no-repeat;background-size:5px 5px;padding-right:2rem}.adminForm .adminField input:focus,.adminForm .adminField textarea:focus,.adminForm .adminField select:focus{border-color:#cc48ef8c;outline:none;box-shadow:0 0 0 3px #cc48ef1f}.adminFormSubmit{background:linear-gradient(135deg, var(--og-purple) 0%, #8a20a8 100%);color:#fff;cursor:pointer;border:1px solid #cc48ef66;border-radius:12px;align-self:flex-start;min-height:48px;margin-top:.15rem;padding:.65rem 1.35rem;font-size:.95rem;font-weight:700;box-shadow:0 8px 22px #cc48ef47}.adminFormSubmit--secondary{color:var(--og-purple-soft);box-shadow:none;background:0 0;border-color:#cc48ef73}@media (hover:hover){.adminFormSubmit:hover{filter:brightness(1.07)}.adminFormSubmit--secondary:hover{background:#cc48ef1a}}.adminUserList,.adminClassList{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.adminUserCard{background:linear-gradient(155deg,#cc48ef29 0%,#120c1c8c 38%,#08070ed1 100%),#0e0a1699;border:1px solid #cc48ef57;border-radius:14px;margin:0;padding:1rem 1.1rem;box-shadow:0 12px 36px #00000047,0 0 40px #cc48ef0f}.adminClassCard{background:linear-gradient(160deg,#cc48ef1a 0%,#06060ab8 42%,#060608c7 100%),#0c0a128c;border:1px solid #cc48ef3d;border-radius:14px;margin:0;padding:1rem 1.1rem;box-shadow:0 12px 32px #00000038}.adminUserRow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.adminUserRowInfo{flex:1;min-width:min(100%,14rem)}.adminUserRowName{color:#fff;margin:0 0 .2rem;font-size:1.05rem;font-weight:600;line-height:1.25}.adminUserRowEmail{color:#d5d0e6;word-break:break-word;margin:0;font-size:.92rem}.adminUserRowEditBtn{flex-shrink:0;min-height:42px;padding:.5rem 1.1rem;font-size:.9rem}.adminClassRow{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.adminClassRowBody{flex:1;min-width:min(100%,16rem)}.adminClassRowTitle{color:#fff;margin:0 0 .35rem;font-size:1.08rem;font-weight:600}.adminClassRowMeta{color:#d3cfe0;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:0 0 .5rem;font-size:.9rem;display:flex}.adminClassRowMeta.customerProfileMeta{gap:.55rem .65rem;margin:0}.adminClassRowChip{letter-spacing:.04em;text-transform:uppercase;color:var(--og-purple-soft);background:#cc48ef1a;border:1px solid #cc48ef38;border-radius:8px;padding:.15rem .45rem;font-size:.78rem;font-weight:600;display:inline-block}.adminClassRowTime{font-variant-numeric:tabular-nums}.adminClassRowDesc{color:#cecae0;margin:0;font-size:.92rem;line-height:1.45}.adminClassTrainer{color:#ded9eb;margin:0 0 .5rem;font-size:.9rem}.adminClassEnrollmentTriggerRow{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:.85rem;display:flex}.adminClassEnrollmentSummary{font-variant-numeric:tabular-nums;color:#ded9eb;font-size:.88rem;font-weight:600}.adminClassEnrollmentOpenBtn{min-height:38px;padding:.45rem .95rem;font-size:.84rem}.adminEnrollmentModalClassName{color:#fff;margin:0 0 1rem;font-size:1rem;font-weight:600}.adminEnrollmentModalSection{border-bottom:1px solid #ffffff14;margin:0 0 1.35rem;padding-bottom:1.25rem}.adminEnrollmentModalSection:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.adminEnrollmentModalSectionTitle{letter-spacing:.05em;text-transform:uppercase;color:var(--og-purple-soft);margin:0 0 .65rem;font-size:.82rem;font-weight:700}.adminEnrollmentModalForm{flex-wrap:wrap;align-items:flex-end;gap:1rem 1.25rem;display:flex}.adminEnrollmentModalActions{margin-top:.85rem}.adminClassEnrollmentHint{margin:0 0 .75rem;font-size:.88rem}.adminClassEnrollmentField{flex-direction:column;flex:1;gap:.4rem;min-width:min(100%,16rem);display:flex}.adminClassEnrollmentFieldLabel{letter-spacing:.04em;color:#bcb6cdf2;margin:0;font-size:.78rem;font-weight:600}.adminClassEnrollmentSelect{width:100%;min-height:40px;font:inherit;color:#f2f2f2;cursor:pointer;appearance:none;background-color:#08080ad9;background-image:linear-gradient(45deg,#0000 50%,#cc48efbf 50%),linear-gradient(135deg,#cc48efbf 50%,#0000 50%),none;background-position:calc(100% - 1rem),calc(100% - .7rem),0 0;background-repeat:no-repeat;background-size:5px 5px,5px 5px,100% 100%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #ffffff1f;border-radius:10px;padding:.5rem 2rem .5rem .75rem;font-size:.9rem}.adminClassEnrollmentSelect:focus{border-color:#cc48ef8c;outline:none;box-shadow:0 0 0 3px #cc48ef1f}.adminEnrollmentBtn{letter-spacing:.02em;cursor:pointer;background:linear-gradient(135deg, var(--og-purple) 0%, #8a20a8 100%);color:#fff;border:1px solid #cc48ef73;border-radius:9px;justify-content:center;align-items:center;min-height:36px;padding:.4rem .95rem;font-family:inherit;font-size:.82rem;font-weight:600;transition:filter .15s,box-shadow .15s;display:inline-flex;box-shadow:0 4px 14px #cc48ef33}.adminEnrollmentBtn--danger{color:#fca5a5;box-shadow:none;background:0 0;border-color:#f8717166}@media (hover:hover){.adminEnrollmentBtn:hover{filter:brightness(1.06)}.adminEnrollmentBtn--danger:hover{color:#fecaca;background:#f871711a;border-color:#f871718c}}.adminEnrollmentBtn:focus-visible{outline-offset:2px;outline:2px solid #cc48efbf}.adminEnrollmentBtn--danger:focus-visible{outline-color:#f87171bf}.adminUserCardTop{margin-bottom:.75rem}.adminRoleBadge{letter-spacing:.06em;text-transform:uppercase;color:var(--og-purple-soft);background:#cc48ef1f;border:1px solid #cc48ef40;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700;display:inline-block}.adminRoleBadge--admin{color:#c4b5fd;background:#8b5cf624;border-color:#8b5cf64d}.adminUserForm{flex-direction:column;gap:.85rem;display:flex}.adminUserReadonlyName{color:#fff;margin:0 0 .25rem;font-size:1.05rem;font-weight:600}.adminUserReadonlyEmail{color:#c8c8d2f2;margin:0 0 .35rem;font-size:.95rem}.adminMuted{color:#9696a5f2;margin:0;font-size:.85rem;line-height:1.4}.adminModal{width:min(32rem,100%);max-width:calc(100vw - 2rem);color:inherit;background:0 0;border:none;border-radius:18px;margin:auto;padding:0}.adminModal::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040208b8}.adminModalInner{background:linear-gradient(165deg,#141018 0%,#111 48%,#0f0f0f 100%);border:1px solid #cc48ef33;border-radius:18px;padding:1.35rem 1.45rem 1.45rem;box-shadow:0 24px 56px #0000008c,0 0 0 1px #00000059}.adminModalTitle{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#fff;margin:0 0 .35rem;font-size:1.2rem}.adminModalKicker{color:var(--og-purple-soft);letter-spacing:.04em;text-transform:uppercase;margin:0 0 1rem;font-size:.88rem;font-weight:600}.adminModalActions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:.25rem;display:flex}.adminModalError{white-space:pre-wrap;word-break:break-word;color:#fecaca;background:#dc26261f;border:1px solid #f8717159;border-radius:10px;flex:100%;margin:0;padding:.65rem .85rem;font-size:.9rem}.adminModal .adminForm{max-width:none}.adminClassManageModal{width:min(52rem,100vw - 2rem);max-width:calc(100vw - 2rem)}.adminClassManageModalInner{flex-direction:column;gap:1rem;max-height:min(90vh,56rem);padding:1.65rem 1.85rem 1.75rem;display:flex;overflow-y:auto}.adminClassManageModal .adminModalTitle{font-size:clamp(1.15rem,2.8vw,1.42rem);line-height:1.2}.adminClassManageModal .adminModalKicker{margin-bottom:.5rem}.adminClassManageModal .adminClassTrainer{font-size:.95rem}.adminClassManageModal .adminClassRowDesc{font-size:.98rem;line-height:1.5}.adminClassManageModal .adminMuted{font-size:.9rem;line-height:1.45}.adminClassManageSection{border-top:1px solid #ffffff14;margin:0;padding-top:1.2rem}.adminClassManageSectionTitle{letter-spacing:.04em;text-transform:uppercase;color:var(--og-purple-soft);margin:0 0 1rem;font-size:.98rem;font-weight:800}.adminClassManageForm{flex-direction:column;gap:.2rem;display:flex}.adminClassManageForm .adminField{margin-bottom:.85rem}.adminClassManageForm .adminField label{margin-bottom:.35rem;font-size:.92rem}.adminClassManageForm .adminFormRow{gap:1rem}.adminClassManageForm input,.adminClassManageForm select,.adminClassManageForm textarea{padding:.55rem .65rem;font-size:.95rem}.adminClassManageForm textarea{min-height:5.5rem;line-height:1.45}.adminClassManageFormActions{margin-top:1.1rem}.adminClassManageModalInner .adminEnrollmentModalSection{margin-bottom:1.5rem;padding-bottom:1.35rem}.adminClassManageModalInner .adminEnrollmentModalSectionTitle{margin-bottom:.85rem;font-size:.92rem}.adminClassManageModalInner .adminClassEnrollmentFieldLabel{font-size:.88rem}.adminClassManageModalInner .adminClassEnrollmentSelect{padding:.5rem .65rem;font-size:.95rem}.adminClassManageFooterActions{border-top:1px solid #ffffff14;margin-top:.25rem;padding-top:1.15rem}main.appShell--login .loginBrand{flex-direction:column;gap:.15rem;display:flex}.loginBrandLink{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#fff;font-size:clamp(1.35rem,4vw,1.65rem);text-decoration:none}@media (hover:hover){.loginBrandLink:hover{color:var(--og-purple-soft)}}.loginLayout{flex:1;justify-content:center;align-items:center;min-height:min(70vh,560px);padding:1rem 0 2rem;display:flex}.loginCard{background:linear-gradient(160deg,#cc48ef1f 0%,#120a1ae0 38%,#08070ef0 100%),linear-gradient(155deg,#1a0e22f7 0%,#0c0a12fc 55%,#08070c 100%);border:1px solid #cc48ef52;border-radius:24px;width:100%;max-width:440px;padding:clamp(1.75rem,5vw,2.5rem);position:relative;box-shadow:0 0 0 1px #00000073,0 28px 64px #00000080,0 0 72px #cc48ef24,0 0 1px #e9a6fa1f}.loginCard:before{content:"";-webkit-mask-composite:xor;pointer-events:none;opacity:.95;background:linear-gradient(135deg,#e9a6fa8c,#cc48ef59,#8a20a838 45%,#0000 62%);border-radius:24px;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.loginCardTitle{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#fff;z-index:1;margin:0 0 .5rem;font-size:clamp(1.5rem,4vw,1.85rem);position:relative}.loginCardLead{color:#cfc7e2;z-index:1;margin:0 0 1.75rem;font-size:.95rem;line-height:1.55;position:relative}.loginForm{z-index:1;flex-direction:column;gap:1.25rem;display:flex;position:relative}.loginFormFields{flex-direction:column;gap:1.25rem;display:flex}.loginField{flex-direction:column;gap:.45rem;display:flex}.loginFieldLabel{letter-spacing:.04em;text-transform:uppercase;color:var(--og-purple-soft);font-size:.82rem;font-weight:600}.loginFieldControl{background:linear-gradient(#cc48ef14 0%,#0000 42%),#06050cb8;border:1px solid #cc48ef38;border-radius:14px;align-items:stretch;gap:0;min-height:52px;padding:0;transition:border-color .2s,box-shadow .2s,background .2s;display:flex;overflow:hidden}.loginFieldControl:focus-within{background:linear-gradient(#cc48ef1f 0%,#0000 50%),#080610e0;border-color:#cc48ef9e;box-shadow:0 0 0 3px #cc48ef33,0 10px 28px #0006,0 0 28px #cc48ef1f}.loginFieldIcon{color:#e9a6fae0;background:#cc48ef0f;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;width:3rem;display:flex;box-shadow:inset -1px 0 #cc48ef33}.loginFieldInput{color:#fff;background:0 0;border:none;outline:none;flex:1;min-width:0;padding:.65rem 1rem .65rem .9rem;font-size:1rem}.loginFieldInput::placeholder{color:#ffffff47;letter-spacing:normal;font-weight:400}.loginFormError{color:#fecaca;background:#dc26261f;border:1px solid #f8717159;border-radius:10px;margin:-.25rem 0 0;padding:.65rem .85rem;font-size:.9rem}.loginFormSubmit{letter-spacing:.06em;text-transform:uppercase;cursor:pointer;color:#fff;background:linear-gradient(135deg, var(--og-purple) 0%, #8a20a8 100%);border:none;border-radius:14px;width:100%;min-height:52px;margin-top:.25rem;font-size:1rem;font-weight:800;transition:filter .2s,transform .15s;box-shadow:0 12px 32px #cc48ef59}@media (hover:hover){.loginFormSubmit:hover{filter:brightness(1.08)}}.loginFormSubmit:active{transform:scale(.99)}.loginBackHome{text-align:center;z-index:1;margin:1.5rem 0 0;font-size:.9rem;position:relative}.loginBackHome a{color:var(--og-purple-soft);font-weight:600;text-decoration:none}@media (hover:hover){.loginBackHome a:hover{text-decoration:underline}}.visuallyHidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin:1rem 0;padding:1rem}.stack{gap:.75rem;display:grid}form{gap:.5rem;display:grid}input,textarea,button,select{font:inherit;border:1px solid #d1d5db;border-radius:8px;padding:.6rem .7rem}button{cursor:pointer;color:#fff;background:#111827}.nav{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.landingHeader{z-index:50;-webkit-backdrop-filter:blur(10px);background:#090909e0;border-bottom:1px solid #2a2a2a;position:fixed;top:0;left:0;right:0}@supports not ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.landingHeader{background:#090909}}.landingHeaderInner{box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;max-width:1200px;min-height:3.5rem;margin:0 auto;padding:.85rem clamp(1rem,4vw,1.75rem);display:flex}.landingLogo{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.04em;color:#fff;text-transform:uppercase;font-size:clamp(1.35rem,4vw,1.75rem);text-decoration:none}.landingHeaderActions{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;display:flex}.langSwitch{background:#00000059;border:1px solid #3f3f3f;border-radius:999px;gap:2px;padding:3px;display:inline-flex}.langSwitch--landing{background:#ffffff0f;border-color:#cc48ef59}.langSwitch--light{background:#f3f4f6;border-color:#d1d5db}.langSwitch__btn{appearance:none;min-width:44px;min-height:40px;font:inherit;letter-spacing:.06em;cursor:pointer;color:inherit;background:0 0;border:none;border-radius:999px;margin:0;padding:.45rem .85rem;font-size:.8rem;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.langSwitch--landing .langSwitch__btn{color:#d1d5db}.langSwitch--landing .langSwitch__btn:focus-visible{outline:2px solid var(--og-purple);outline-offset:2px}.langSwitch--landing .langSwitch__btn--active{background:linear-gradient(135deg, var(--og-purple) 0%, #8a20a8 100%);color:#fff;box-shadow:0 2px 12px #cc48ef59}.langSwitch--light .langSwitch__btn{color:#4b5563}.langSwitch--light .langSwitch__btn:focus-visible{outline:2px solid var(--og-purple);outline-offset:2px}.langSwitch--light .langSwitch__btn--active{color:#111827;background:#fff;box-shadow:0 1px 3px #00000014}@media (hover:hover){.langSwitch--landing .langSwitch__btn:not(.langSwitch__btn--active):hover{color:#fff;background:#ffffff14}.langSwitch--light .langSwitch__btn:not(.langSwitch__btn--active):hover{color:#111827;background:#ffffffb3}}.landingHeaderCta{color:#fff;background:linear-gradient(135deg, var(--og-purple) 0%, #8a20a8 100%);border:1px solid #cc48ef73;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:.55rem 1.1rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 6px 18px #cc48ef47}.landingHeaderCta--account{color:#e8e4f5;box-shadow:none;background:#ffffff0f;border:1px solid #cc48ef6b;gap:.45rem;font-weight:600}.landingHeaderAccountIcon{color:var(--og-purple-soft);flex-shrink:0}@media (hover:hover){.landingHeaderCta--account:hover{color:#fff;background:#cc48ef24;border-color:#cc48ef8c}.landingHeaderCta--account:hover .landingHeaderAccountIcon{color:#f0e8ff}}.landingHero{scroll-margin-top:calc(var(--og-header-h) + .5rem);background:radial-gradient(ellipse 120% 80% at 85% 15%, #3a1445 0%, var(--og-deep) 45%, #050505 100%);border-bottom:1px solid #242424}.landingHeroInner{align-items:center;gap:clamp(1.75rem,4vw,2.5rem);max-width:1200px;margin:0 auto;padding:clamp(2rem,6vw,4rem) clamp(1rem,4vw,1.75rem) clamp(2.5rem,7vw,4.5rem);display:grid}@media (min-width:1024px){.landingHeroInner{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2.5rem}}.landingHeroTitle{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.02em;text-transform:uppercase;color:#fff;margin:.35rem 0 .75rem;font-size:clamp(2.6rem,9vw,4.75rem);line-height:.95}.landingHeroLead{color:#c8c8c8;max-width:42rem;margin:0;font-size:clamp(1rem,2.5vw,1.15rem);line-height:1.55}.landingTrustChips{flex-wrap:wrap;gap:.5rem;margin:1.15rem 0 0;padding:0;list-style:none;display:flex}.landingTrustChips li{color:#e5e5e5;background:#ffffff0f;border:1px solid #333;border-radius:999px;padding:.4rem .75rem;font-size:.82rem}.landingCtaRow{flex-direction:column;align-items:stretch;gap:.75rem;margin-top:1.35rem;display:flex}@media (min-width:480px){.landingCtaRow{flex-flow:wrap;align-items:center}}.primaryCta{color:#fff;background:linear-gradient(135deg, var(--og-purple) 0%, #8a20a8 100%);border:1px solid #cc48ef59;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.35rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 10px 22px #cc48ef59}.secondaryCta{min-height:48px;color:var(--og-purple-soft);background:#cc48ef14;border:2px solid #cc48efa6;border-radius:10px;justify-content:center;align-items:center;padding:.75rem 1.35rem;font-weight:700;text-decoration:none;display:inline-flex}@media (hover:hover){.secondaryCta:hover{color:#fff;background:#cc48ef29}.landingCard:hover{border-color:#cc48ef73;transform:translateY(-3px)}.landingPlanCard:hover{border-color:#cc48ef66;transform:translateY(-2px)}}.landingHeroVisual{background:#0d0d0d;border:1px solid #2f2f2f;border-radius:20px;min-height:220px;position:relative;overflow:hidden;box-shadow:0 20px 50px #00000080}@media (min-width:1024px){.landingHeroVisual{min-height:280px}}.landingHeroPhoto{object-fit:cover;object-position:center}.landingHeroGlow{z-index:1;pointer-events:none;background:linear-gradient(200deg,#090909d1 0%,#09090926 42%,#cc48ef33 100%),radial-gradient(circle at 72% 30%,#cc48ef38 0%,#0000 52%);position:absolute;inset:0}.landingHeroGlow:after{content:"";background:repeating-linear-gradient(-18deg,#0000,#0000 18px,#ffffff06 18px 19px);position:absolute;inset:0}.landingStats{background:#0f0f0f;border-bottom:1px solid #242424}.landingStatsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem;max-width:1200px;margin:0 auto;padding:1.35rem clamp(1rem,4vw,1.75rem);display:grid}.landingStat{text-align:center}.landingStatValue{font-family:var(--font-display), Impact, sans-serif;color:var(--og-purple);letter-spacing:.03em;font-size:clamp(1.75rem,5vw,2.35rem);display:block}.landingStatLabel{color:#a3a3a3;margin-top:.25rem;font-size:.85rem;line-height:1.35;display:block}@media (min-width:768px){.landingStatsGrid{grid-template-columns:repeat(4,minmax(0,1fr));padding-top:1.75rem;padding-bottom:1.75rem}}.landingSection{scroll-margin-top:calc(var(--og-header-h) + .75rem);background:var(--og-deep);border-bottom:1px solid #222;padding:clamp(2.25rem,5vw,3.5rem) 0}.landingSection--dark{background:linear-gradient(#080808 0%,#0c0c0c 100%)}.landingSectionInner{max-width:1200px;margin:0 auto;padding:0 clamp(1rem,4vw,1.75rem)}.landingSectionTitle{font-family:var(--font-display), Impact, sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--og-purple);margin:0 0 1.25rem;font-size:clamp(1.65rem,4vw,2.25rem)}.landingVisitLead{color:#a8a8a8;max-width:42rem;margin:0 0 1.5rem;font-size:.98rem;line-height:1.55}.landingVisitLayout{align-items:start;gap:clamp(1.5rem,4vw,2.25rem);display:grid}@media (min-width:768px){.landingVisitLayout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.landingVisitText{grid-area:1/2}.landingVisitMap{grid-area:1/1}}.landingVisitAddress{color:#d4d4d4;flex-direction:column;gap:.2rem;margin:0 0 1.35rem;font-size:1.02rem;font-style:normal;line-height:1.5;display:flex}.landingVisitAddressLine{display:block}.landingVisitHours{margin:0 0 1rem}.landingVisitHoursTitle{letter-spacing:.08em;text-transform:uppercase;color:var(--og-purple-soft);margin:0 0 .65rem;font-size:.82rem;font-weight:700}.landingVisitHoursList{gap:.5rem;margin:0;padding:0;display:grid}.landingVisitHoursRow{border-bottom:1px solid #ffffff0f;grid-template-columns:minmax(0,1.15fr) auto;align-items:baseline;gap:.75rem 1rem;padding:.45rem 0;display:grid}.landingVisitHoursRow:last-child{border-bottom:none}.landingVisitHoursRow dt{color:#e0dce8;margin:0;font-size:.92rem;font-weight:600}.landingVisitHoursRow dd{font-variant-numeric:tabular-nums;color:#b0acb8;text-align:right;margin:0;font-size:.92rem}@media (max-width:480px){.landingVisitHoursRow{grid-template-columns:1fr;gap:.15rem}.landingVisitHoursRow dd{text-align:left}}.landingVisitMapLinkWrap{margin:.75rem 0 0}.landingVisitMapLink{color:var(--og-purple-soft);text-underline-offset:3px;font-size:.95rem;font-weight:600;text-decoration:underline}@media (hover:hover){.landingVisitMapLink:hover{color:#fff}}.landingMapFrame{aspect-ratio:16/11;background:#0a0a0a;border:1px solid #cc48ef47;border-radius:16px;min-height:280px;max-height:420px;overflow:hidden;box-shadow:0 12px 36px #00000059}.landingMapIframe{border:0;width:100%;height:100%;min-height:280px;display:block}.landingGrid{gap:1rem;display:grid}.landingGrid--services{grid-template-columns:1fr}@media (min-width:640px){.landingGrid--services{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.landingGrid--services{grid-template-columns:repeat(3,minmax(0,1fr))}}.landingGrid--plans{grid-template-columns:1fr;align-items:stretch}@media (min-width:640px){.landingGrid--plans{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.landingGrid--plans{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}}.landingCard{background:#111;border:1px solid #262626;border-radius:14px;padding:0;transition:border-color .2s,transform .2s;overflow:hidden}.landingCardMedia{aspect-ratio:16/10;background:#1a1a1a;min-height:140px;position:relative}.landingCardPhoto{object-fit:cover;object-position:center}.landingCardBody{padding:1rem 1.15rem 1.15rem}.landingCardBody h3{margin:0 0 .5rem;font-size:1.05rem}.landingCardBody p{color:#bdbdbd;margin:0;font-size:.95rem;line-height:1.5}.landingPlanCard{background:#111;border:1px solid #262626;border-radius:14px;padding:1.15rem;transition:border-color .2s,transform .2s}.landingPlanCard h3{margin:0 0 .35rem}.landingPlanDetail{color:#bdbdbd;margin:0;font-size:.92rem;line-height:1.45}.landingPlanCard--featured{background:linear-gradient(160deg,#1a0f20 0%,#111 45%,#141414 100%);border-color:#cc48efa6;position:relative;box-shadow:0 0 0 1px #cc48ef40,0 18px 40px #cc48ef2e}@media (min-width:1024px){.landingPlanCard--featured{z-index:1;transform:scale(1.03)}}.landingPlanCard--featured:before{content:"PRO";letter-spacing:.12em;color:var(--og-deep);background:var(--og-purple);border-radius:6px;padding:.2rem .5rem;font-size:.65rem;font-weight:800;position:absolute;top:.75rem;right:.85rem}.landingTrainerCard{background:#111;border:1px solid #262626;border-radius:18px;max-width:70rem;margin-left:auto;margin-right:auto;padding:clamp(1.25rem,3vw,2rem)}.landingTrainerLayout{align-items:start;gap:clamp(1.5rem,4vw,2.75rem);display:grid}@media (min-width:768px){.landingTrainerLayout{grid-template-columns:auto 1fr}}.trainerPhotoColumn{justify-content:center;display:flex}@media (min-width:768px){.trainerPhotoColumn{justify-content:flex-start}}.trainerPhotoWrap{aspect-ratio:1;background:#1a1a1a;border:3px solid #cc48efc7;border-radius:50%;width:clamp(240px,72vw,420px);max-width:100%;overflow:hidden;box-shadow:0 14px 44px #cc48ef47,0 0 0 1px #ffffff0a}.trainerPhotoLarge{object-fit:cover;object-position:center 22%;width:100%;height:100%}.trainerTextColumn{min-width:0}.trainerNameHeading{color:#f5f5f5;margin:0 0 .35rem;font-size:clamp(1.35rem,3vw,1.85rem);font-weight:700;line-height:1.15}.trainerBio{color:#c4c4c4;max-width:42rem;margin:1rem 0 0;font-size:1.02rem;line-height:1.65}.trainerCredentials{border-top:1px solid #ffffff14;margin-top:1.5rem;padding-top:1.25rem}.trainerCredentialsHeading{letter-spacing:.1em;text-transform:uppercase;color:var(--og-purple-soft);margin:0 0 .85rem;font-size:.78rem;font-weight:700}.trainerTitleChips{flex-wrap:wrap;gap:.5rem .65rem;margin:0;padding:0;list-style:none;display:flex}.trainerTitleChip{color:#f2ecfaf5;background:#cc48ef24;border:1px solid #cc48ef61;border-radius:999px;margin:0;padding:.38rem .85rem;font-size:.86rem;font-weight:600;line-height:1.35}.landingFooter{background:linear-gradient(#070707 0%,#050505 100%);border-top:1px solid #cc48ef2e;padding:clamp(2rem,5vw,2.75rem) clamp(1rem,4vw,1.75rem) 1.5rem}.landingFooterInner{flex-direction:column;gap:1.75rem;max-width:1200px;margin:0 auto;display:flex}.landingFooterMain{align-items:start;gap:clamp(1.5rem,4vw,2rem);display:grid}@media (min-width:768px){.landingFooterMain{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) auto;align-items:center}}.landingFooterBrand{text-align:left}.landingFooterBrandName{font-family:var(--font-display), Impact, system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#fff;margin:0 0 .45rem;font-size:1.25rem}.landingFooterTagline{color:#a8a3b5;max-width:22rem;margin:0;font-size:.98rem;line-height:1.5}.landingFooterNav{justify-content:center;justify-self:stretch;width:100%;display:flex}.landingFooterNavList{grid-template-rows:repeat(3,auto);grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-flow:column;justify-content:center;place-items:start;gap:.5rem 1.5rem;width:min(100%,22rem);margin:0;padding:0;list-style:none;display:grid}.landingFooterNavLink{color:var(--og-purple);font-size:.92rem;font-weight:600;line-height:1.35;text-decoration:none;transition:color .15s}@media (hover:hover){.landingFooterNavLink:hover{color:var(--og-purple-soft)}}.landingFooterNavLink:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #cc48efbf}.landingFooterCtaCol{justify-self:stretch}@media (min-width:768px){.landingFooterCtaCol{justify-self:end}}.landingFooterCta{text-align:center;width:100%;margin:0}@media (min-width:768px){.landingFooterCta{width:auto;min-width:10.5rem}}.landingFooterLegal{text-align:center;border-top:1px solid #ffffff0f;padding-top:1.25rem}.landingFooterCopy{color:#6b6b6b;margin:0;font-size:.82rem;line-height:1.45}.cardIcon{width:36px;height:36px;color:var(--og-purple);background:#cc48ef1f;border:1px solid #cc48ef59;border-radius:10px;justify-content:center;align-items:center;margin-bottom:.55rem;display:inline-flex}.priceTag{color:var(--og-purple);margin-top:.2rem;margin-bottom:.5rem;font-weight:800}.trainerRole{color:#b8b3c4;margin:0;font-size:.95rem;font-weight:500}
