:root{--safe-area-inset-top:env(safe-area-inset-top,0px);--safe-area-inset-right:env(safe-area-inset-right,0px);--safe-area-inset-bottom:env(safe-area-inset-bottom,0px);--safe-area-inset-left:env(safe-area-inset-left,0px);--toast-bottom-offset:88px;--help-bottom-offset:80px;--lesson-prompt-bottom:80px}@media (min-width:1024px){:root{--toast-bottom-offset:16px;--help-bottom-offset:24px;--lesson-prompt-bottom:0px}}@media (max-width:1023px){.btn,a[role=button],button,input[type=button],input[type=submit]{min-height:44px;min-width:44px;padding:12px 16px}.tap-target{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}.mobile-spacing{padding:16px;gap:16px}.mobile-card{border-radius:0;padding:16px;margin-bottom:16px}.bottom-nav-container{padding-bottom:calc(16px + var(--safe-area-inset-bottom))}.mobile-header-container{padding-top:calc(16px + var(--safe-area-inset-top))}a[role=button],button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none}body{-webkit-overflow-scrolling:touch}input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=url],select,textarea{font-size:16px;min-height:44px;padding:12px 16px}table{font-size:14px}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.swipeable{touch-action:pan-y;-webkit-overflow-scrolling:touch}.pull-to-refresh{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:1000;pointer-events:none}}@media (max-width:1023px) and (orientation:landscape){.mobile-header-container{padding-top:calc(8px + var(--safe-area-inset-top))}.bottom-nav-container{padding-bottom:calc(8px + var(--safe-area-inset-bottom))}}@media (max-width:640px){.mobile-card{padding:12px;border-radius:0}.mobile-spacing{padding:12px;gap:12px}}@media (max-width:375px){.mobile-card{padding:8px}.mobile-spacing{padding:8px;gap:8px}}@media (max-width:1023px){input[type=checkbox],input[type=radio]{width:20px;height:20px;min-width:20px;min-height:20px;accent-color:var(--theme-primary,#3B82F6);cursor:pointer}label:has(input[type=checkbox]),label:has(input[type=radio]){min-height:44px;display:flex;align-items:center;gap:10px;cursor:pointer}}@media (max-width:1023px){.has-bottom-nav{padding-bottom:calc(72px + var(--safe-area-inset-bottom))}}@media (max-width:768px){.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px}.table-responsive table{min-width:600px}.scroll-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px}.scroll-rail>*{scroll-snap-align:start;flex-shrink:0;width:280px}.scroll-rail-bleed{margin:0 -16px;padding:0 16px}}@media (max-width:1023px){.sticky-action-bar{position:sticky;bottom:0;left:0;right:0;background:white;border-top:1px solid #e5e7eb;padding:12px 16px calc(12px + var(--safe-area-inset-bottom));z-index:30;box-shadow:0 -2px 8px rgba(0,0,0,.08)}}@media (max-width:640px){.mobile-sheet{position:fixed;bottom:0;left:0;right:0;max-height:85vh;border-radius:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--safe-area-inset-bottom);z-index:50}.mobile-sheet-handle{width:36px;height:4px;background:#d1d5db;border-radius:2px;margin:8px auto 16px}}.text-fluid-hero{font-size:clamp(2rem,5vw + 1rem,3.5rem);line-height:1.1}.text-fluid-title{font-size:clamp(1.5rem,3vw + .5rem,2.5rem);line-height:1.2}.text-fluid-subtitle{font-size:clamp(1.125rem,2vw + .25rem,1.5rem);line-height:1.4}.safe-area-top{padding-top:var(--safe-area-inset-top)}.safe-area-bottom{padding-bottom:var(--safe-area-inset-bottom)}.safe-area-left{padding-left:var(--safe-area-inset-left)}.safe-area-right{padding-right:var(--safe-area-inset-right)}.h-safe-area-inset-bottom{height:var(--safe-area-inset-bottom)}.h-safe-area-inset-top{height:var(--safe-area-inset-top)}:root{--color-navy-900:#14243f;--color-navy-800:#1a2d52;--color-navy-700:#1F3864;--color-navy-600:#2b4a80;--color-navy-100:#dbe2ee;--color-navy-50:#f0f3f8;--color-on-navy:#ffffff;--color-on-navy-muted:#C7D2E4;--color-primary-900:#003f24;--color-primary-800:#005b32;--color-primary-700:#007a3d;--color-primary-600:#008a45;--color-primary-500:#009e52;--color-primary-300:#86d9a0;--color-primary-200:#b8e9c6;--color-primary-100:#e6f5ec;--color-primary-50:#f2faf6;--color-accent-lime:#8cc63f;--color-accent-lime-soft:#eef8e6;--color-text-900:#0f172a;--color-text-800:#1e293b;--color-text-700:#374151;--color-text-600:#4B5563;--color-text-500:#6B7280;--color-bg:#ffffff;--color-bg-soft:#f8fafc;--color-surface:#ffffff;--color-surface-muted:#f9fbfa;--color-border:#E5E7EB;--color-border-strong:#D1D5DB;--color-alert:#B45309;--color-success:#008a45;--color-warning:#f59e0b;--color-danger:#dc2626;--color-info:#2563eb;--color-success-bg:#e6f5ec;--color-warning-bg:#fff7e6;--color-danger-bg:#feecec;--color-info-bg:#eef4ff;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:0;--radius-md:0;--radius-lg:0;--radius-xl:0;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(15,23,42,0.06);--shadow-md:0 4px 12px rgba(15,23,42,0.08);--shadow-lg:0 12px 28px rgba(15,23,42,0.12);--public-container:1280px;--content-max-width:1440px;--app-header-height:72px;--z-modal:60;--z-floating:55;--z-chat-panel:60;--z-toast:100;--z-chat-trigger:110;--theme-primary:var(--color-primary-700);--theme-secondary:var(--color-primary-800);--theme-accent:var(--color-accent-lime);--theme-structure:var(--color-navy-700);--app-green:var(--color-primary-700);--app-green-deep:var(--color-primary-800);--app-green-soft:var(--color-primary-50);--app-green-label:var(--color-primary-800);--app-navy:var(--color-navy-700);--app-topbar-height:var(--app-header-height);--app-sidebar-width:260px}.rounded{border-radius:0}.btn{min-height:44px;padding:0 18px;border-radius:var(--radius-md);font-size:14px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease}.btn-primary{background:var(--color-primary-700);color:#fff;border:1px solid var(--color-primary-800);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--color-primary-800)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-outline{background:#fff;color:var(--color-primary-800);border:1px solid var(--color-primary-700)}.btn-outline:hover{background:var(--color-primary-50)}.btn-secondary{background:#fff;color:var(--color-primary-800);border:1px solid var(--color-border-strong)}.btn-warning{background:var(--color-warning-bg);color:#9a5a00;border:1px solid #fbcb7b}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-padding-sm{padding:var(--space-4)}.card-padding-md{padding:var(--space-5)}.card-padding-lg{padding:var(--space-6)}.input-field,.select-field,.textarea-field{width:100%;min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:#fff;color:var(--color-text-900);font-size:14px;padding:0 14px;transition:border-color .16s ease,box-shadow .16s ease}.input-field:focus,.select-field:focus,.textarea-field:focus{outline:none;border-color:var(--color-primary-700);box-shadow:0 0 0 3px rgba(0,122,61,.12)}.input-field::placeholder{color:var(--color-text-500)}a.btn-primary-link,a.btn-primary-link:hover{color:#fff!important}.public-header{background:transparent;border-bottom:1px solid transparent;box-shadow:none;transition:transform .26s cubic-bezier(.4,0,.2,1),color .2s ease,background-color .2s ease,border-color .2s ease;will-change:transform}.brand-halo{position:relative;display:inline-flex;isolation:isolate}.brand-halo:before{content:"";position:absolute;inset:-26%;z-index:-1;border-radius:9999px;background:radial-gradient(circle,rgba(250,204,21,.6) 0,rgba(250,204,21,.32) 45%,rgba(250,204,21,0) 72%);filter:blur(5px);pointer-events:none}.public-header--hidden{transform:translateY(-100%)}.public-header--on-dark .public-header__link,.public-header--on-dark .public-header__menu-btn,.public-header--on-dark .public-header__signin{color:#fff}.public-header--on-dark .public-header__link:hover,.public-header--on-dark .public-header__signin:hover{color:#fff;background:linear-gradient(0deg,rgba(255,255,255,.2) 0,rgba(255,255,255,0))}.public-header--on-dark .public-header__link--active{color:#fff;background:linear-gradient(0deg,rgba(255,255,255,.3) 0,rgba(255,255,255,.14) 55%,rgba(255,255,255,0))}.public-header--on-dark .public-header__account-name,.public-header--on-dark .public-header__account-role,.public-header--on-dark .public-header__link,.public-header--on-dark .public-header__signin,.public-header--on-dark .public-header__wordmark{text-shadow:0 1px 3px rgba(0,0,0,.45)}.public-header--on-dark .public-header__link:focus-visible,.public-header--on-dark .public-header__menu-btn:focus-visible,.public-header--on-dark .public-header__signin:focus-visible{outline:2px solid #fff;outline-offset:2px}.public-header__icon{color:var(--color-text-700)}.public-header__icon:hover{color:var(--color-primary-700);background:var(--color-primary-50)}.public-header__account-name{color:var(--color-text-900)}.public-header__account-role{color:var(--color-text-500)}.public-header--on-dark .public-header__account-name,.public-header--on-dark .public-header__account-role,.public-header--on-dark .public-header__icon{color:#fff}.public-header--on-dark .public-header__account-role{color:rgba(255,255,255,.8)}.public-header--on-dark .public-header__icon:hover{color:#fff;background:rgba(255,255,255,.16)}.public-header--solid{background:#fff;border-bottom-color:var(--color-border);box-shadow:var(--shadow-sm)}.public-header__cta{border-radius:6px;background:var(--color-primary-700);border-color:var(--color-primary-700);box-shadow:none;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.public-header__cta--compact{min-height:32px;padding:0 14px;font-size:13px}.public-header__cta:hover{background:var(--color-primary-800);border-color:var(--color-primary-800)}.public-header__cta:active{background:var(--color-primary-900);border-color:var(--color-primary-900)}.public-header__cta:focus-visible{outline:2px solid var(--color-primary-700);outline-offset:2px}.public-header--on-dark .public-header__cta{border-color:rgba(255,255,255,.4)}.public-header--on-dark .public-header__cta:hover{border-color:rgba(255,255,255,.7)}.public-header--on-dark .public-header__cta:focus-visible{outline-color:#fff}.public-header__avatar-link{display:inline-flex;box-shadow:0 0 0 2px rgba(255,255,255,.92);transition:box-shadow .15s ease}.public-header--on-dark .public-header__avatar-link{box-shadow:0 0 0 2px rgba(255,255,255,.75)}.public-header__avatar-link:hover{box-shadow:0 0 0 2px var(--color-primary-700)}.public-header--on-dark .public-header__avatar-link:hover{box-shadow:0 0 0 2px #fff}.public-header__avatar-link:focus-visible{outline:2px solid var(--color-primary-700);outline-offset:3px}.public-header--on-dark .public-header__avatar-link:focus-visible{outline-color:#fff}@media (prefers-reduced-motion:reduce){.public-header{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}}.public-header__link{color:var(--color-text-700)}.public-header__link:hover{color:var(--color-primary-700);background:var(--color-primary-50)}.public-header__link--active{background:var(--color-primary-50)}.public-header__link--active,.public-header__signin{color:var(--color-primary-800)}.public-header__signin:hover{color:var(--color-primary-700)}.public-header__menu-btn{color:var(--color-text-800)}.public-header__mobile-panel{background:#fff;border-color:var(--color-border)}.public-footer--dark{background:var(--color-primary-900);color:#fff}.public-footer--light,.public-footer__light{background:#fff;border-top:1px solid var(--color-border)}.public-footer--contact .public-footer__contact-bar a{text-decoration:none}.app-content--public{padding-top:0}.app-content--public main>:first-child{margin-top:0}.programme-marquee{overflow:hidden;padding:22px 0 36px;margin:-22px 0 -36px;-webkit-mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.35) 4%,#000 14%,#000 86%,rgba(0,0,0,.35) 96%,transparent);mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.35) 4%,#000 14%,#000 86%,rgba(0,0,0,.35) 96%,transparent)}.programme-marquee__track{display:flex;gap:24px;width:max-content;animation:programme-drift var(--marquee-duration,48s) linear infinite}.programme-marquee__set{display:flex;gap:24px}.programme-marquee__track--reverse{animation-direction:reverse}.programme-marquee--static{overflow-x:auto;-webkit-mask-image:none;mask-image:none;scrollbar-width:none}.programme-marquee--static::-webkit-scrollbar{display:none}.programme-marquee--static .programme-marquee__track{min-width:100%;padding-inline:1rem}.programme-marquee--static .programme-marquee__set{margin-inline:auto}@media (min-width:640px){.programme-marquee--static .programme-marquee__track{padding-inline:1.5rem}}@media (min-width:1024px){.programme-marquee--static .programme-marquee__track{padding-inline:2rem}}.programme-marquee:focus-within .programme-marquee__track,.programme-marquee:hover .programme-marquee__track,.programme-marquee[data-paused=true] .programme-marquee__track{animation-play-state:paused}@keyframes programme-drift{0%{transform:translateZ(0)}to{transform:translate3d(calc(var(--marquee-shift, 0px) * -1),0,0)}}@media (prefers-reduced-motion:reduce){.programme-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none;scrollbar-width:none}.programme-marquee::-webkit-scrollbar{display:none}.programme-marquee__track{animation:none}}*{scrollbar-width:thin;scrollbar-color:transparent transparent}:focus-within,:hover{scrollbar-color:rgba(15,23,42,.24) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-corner,::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:transparent;background-clip:content-box;border:3px solid transparent;border-radius:9999px;transition:background-color .18s ease}:focus-within::-webkit-scrollbar-thumb,:hover::-webkit-scrollbar-thumb{background-color:rgba(15,23,42,.24)}::-webkit-scrollbar-thumb:hover{background-color:rgba(15,23,42,.42)}.app-sidebar :focus-within,.app-sidebar :hover,.app-sidebar:focus-within,.app-sidebar:hover{scrollbar-color:rgba(255,255,255,.28) transparent}.app-sidebar :focus-within::-webkit-scrollbar-thumb,.app-sidebar :hover::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.28)}.app-sidebar ::-webkit-scrollbar-thumb:hover{background-color:rgba(255,255,255,.45)}body:hover,html:hover{scrollbar-color:transparent transparent}body:hover::-webkit-scrollbar-thumb,html:hover::-webkit-scrollbar-thumb{background-color:transparent}html.is-scrolling,html.is-scrolling :hover,html.is-scrolling body{scrollbar-color:rgba(15,23,42,.24) transparent}html.is-scrolling :hover::-webkit-scrollbar-thumb,html.is-scrolling body::-webkit-scrollbar-thumb,html.is-scrolling::-webkit-scrollbar-thumb{background-color:rgba(15,23,42,.24)}html ::-webkit-scrollbar-thumb:active,html ::-webkit-scrollbar-thumb:hover,html::-webkit-scrollbar-thumb:active,html::-webkit-scrollbar-thumb:hover{background-color:rgba(15,23,42,.42)}html.is-scrolling .app-sidebar ::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.28)}@media (prefers-reduced-motion:reduce){::-webkit-scrollbar-thumb{transition:none;background-color:rgba(15,23,42,.24)}*{scrollbar-color:rgba(15,23,42,.24) transparent}}@keyframes pop-panel-down{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:none}}.pop-panel{transform-origin:top right;animation:pop-panel-down .17s cubic-bezier(.2,.8,.25,1);box-shadow:0 1px 2px rgba(15,23,42,.06),0 18px 44px -22px rgba(15,23,42,.55)}.pop-panel--left{transform-origin:top left}@media (prefers-reduced-motion:reduce){.pop-panel{animation:none}}html[data-capturing] [data-capture-hide],html[data-capturing] [data-fab]{visibility:hidden!important}.fab-shadow{box-shadow:0 1px 2px rgba(28,28,24,.05),0 4px 8px -2px rgba(28,28,24,.07),0 12px 24px -6px rgba(28,28,24,.1),0 24px 48px -12px rgba(28,28,24,.12)}.fab-shadow-hover-always,.fab-shadow-hover:hover{box-shadow:0 2px 4px rgba(28,28,24,.06),0 8px 16px -4px rgba(28,28,24,.09),0 20px 36px -8px rgba(28,28,24,.13),0 36px 64px -16px rgba(28,28,24,.15)}@keyframes fab-pulse-soft{0%,to{opacity:1}50%{opacity:.5}}.fab-pulse-soft{animation:fab-pulse-soft 2s cubic-bezier(.4,0,.6,1) infinite}@media (prefers-reduced-motion:reduce){[data-fab] button{transition-duration:.01ms!important;transition-delay:0s!important;transform:none!important}.fab-pulse-soft{animation:none}}@font-face{font-family:primaryFont;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");font-display:swap;font-weight:400 700}@font-face{font-family:primaryFont Fallback;src:local("Arial");ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.00%;size-adjust:107.89%}.__className_3941b2{font-family:primaryFont,primaryFont Fallback}.__variable_3941b2{--font-body:"primaryFont","primaryFont Fallback"}@font-face{font-family:displayFont;src:url(/_next/static/media/fa3e259cafa8f47e-s.p.woff2) format("woff2");font-display:swap;font-weight:400}@font-face{font-family:displayFont Fallback;src:local("Arial");ascent-override:102.23%;descent-override:33.06%;line-gap-override:0.00%;size-adjust:101.35%}.__className_d83ff2{font-family:displayFont,displayFont Fallback;font-weight:400}.__variable_d83ff2{--font-display:"displayFont","displayFont Fallback"}@font-face{font-family:mypdDisplayFont;src:url(/_next/static/media/a65324f02aa278dc-s.p.woff2) format("woff2");font-display:swap;font-weight:500 700}@font-face{font-family:mypdDisplayFont Fallback;src:local("Arial");ascent-override:111.20%;descent-override:54.05%;line-gap-override:0.00%;size-adjust:96.95%}.__className_58e464{font-family:mypdDisplayFont,mypdDisplayFont Fallback}.__variable_58e464{--font-mypd-display:"mypdDisplayFont","mypdDisplayFont Fallback"}@font-face{font-family:mypdBodyFont;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");font-display:swap;font-weight:400 800}@font-face{font-family:mypdBodyFont Fallback;src:local("Arial");ascent-override:103.02%;descent-override:35.97%;line-gap-override:0.00%;size-adjust:98.13%}.__className_a60df6{font-family:mypdBodyFont,mypdBodyFont Fallback}.__variable_a60df6{--font-mypd-body:"mypdBodyFont","mypdBodyFont Fallback"}