.gm-module-1{--gm-accent:#284c64}.leadership-lesson{padding-bottom:150px}.leadership-steps{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.leadership-steps button{border:1px solid #bac7ce;background:#fff;color:#284c64;padding:10px 14px;border-radius:7px}.leadership-steps [aria-current=step]{background:#284c64;color:#fff}.leadership-steps button:disabled{opacity:.45}.leadership-narration{background:#f4f2ed;border:1px solid #ddd5c8;border-radius:14px;padding:16px}.leadership-cinema{position:relative;overflow:hidden;margin:0;aspect-ratio:1.5;border-radius:10px;background:#253d49}.leadership-camera{position:absolute;inset:0;background-size:300% 200%;will-change:transform}.leadership-cinema figcaption{position:absolute;bottom:0;left:0;right:0;padding:45px 22px 20px;background:linear-gradient(transparent,rgba(9,24,33,.94));color:#fff;display:grid;gap:8px}.leadership-cinema figcaption span{text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;color:#edc69a}.leadership-cinema figcaption strong{font-size:clamp(1rem,2vw,1.5rem);line-height:1.25}.leadership-caption{min-height:125px;padding:20px 8px}.leadership-caption strong{color:#284c64}.leadership-caption p{margin-bottom:0;line-height:1.65}.leadership-narration audio{width:100%}.leadership-speed{display:flex;justify-content:flex-end;gap:10px;align-items:center;margin:14px 0}.leadership-narration nav{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.leadership-narration nav button{font-size:.8rem;border:1px solid #c6cdd1;background:#fff;padding:9px;border-radius:6px}.leadership-narration nav [aria-current=step]{background:#284c64;color:#fff}.leadership-narration details{padding:18px;background:white;border-radius:8px}.leadership-narration summary{cursor:pointer;font-weight:600}.leadership-practice-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;margin-bottom:24px}.leadership-practice-layout .leadership-cinema{aspect-ratio:1}.leadership-practice-layout p{line-height:1.8}.leadership-quiz .gm-decision{margin:24px 0}.gm-module-1 .gm-main{min-width:0}.gm-module-1 .gm-save-actions{flex-wrap:wrap}.gm-module-1 .gm-final{padding-bottom:150px}@media(max-width:800px){.leadership-practice-layout{grid-template-columns:1fr}.leadership-cinema{aspect-ratio:1.2}.leadership-practice-layout .leadership-cinema{aspect-ratio:1.4}.leadership-caption{min-height:0}.leadership-steps{gap:6px}.leadership-steps button{padding:8px;font-size:.8rem}}@media(prefers-reduced-motion:reduce){.leadership-camera{transform:none!important;will-change:auto}}
.leadership-cinema{aspect-ratio:1;max-width:540px;margin-inline:auto}.cinema-self-assessment,.cinema-former-peers,.cinema-standards,.cinema-first-thirty{aspect-ratio:2/3;max-width:380px}.leadership-practice-layout .leadership-cinema{width:100%;aspect-ratio:inherit}.leadership-practice-layout .cinema-role,.leadership-practice-layout .cinema-credibility{aspect-ratio:1}.leadership-practice-layout .cinema-self-assessment,.leadership-practice-layout .cinema-former-peers,.leadership-practice-layout .cinema-standards,.leadership-practice-layout .cinema-first-thirty{aspect-ratio:2/3}
.gm-module-2{--gm-accent:#315b49}.gm-module-2 .gm-main{min-width:0}.gm-module-2 .gm-save-actions{flex-wrap:wrap}.gm-module-2 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-2{aspect-ratio:1}.gm-module-2 .leadership-narration{background:#eef3ed}.gm-module-2 .leadership-steps [aria-current=step],.gm-module-2 .leadership-narration nav [aria-current=step]{background:#315b49;color:white}

.gm-module-3{--gm-accent:#285b67}.gm-module-3 .gm-main{min-width:0}.gm-module-3 .gm-save-actions{flex-wrap:wrap}.gm-module-3 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-3{aspect-ratio:1}.gm-module-3 .leadership-narration{background:#eaf5f5}.gm-module-3 .leadership-steps [aria-current=step],.gm-module-3 .leadership-narration nav [aria-current=step]{background:#285b67;color:white}
.gm-module-4{--gm-accent:#85513a}.gm-module-4 .gm-main{min-width:0}.gm-module-4 .gm-save-actions{flex-wrap:wrap}.gm-module-4 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-4{aspect-ratio:1}.gm-module-4 .leadership-narration{background:#f6eee7}.gm-module-4 .leadership-steps [aria-current=step],.gm-module-4 .leadership-narration nav [aria-current=step]{background:#85513a;color:white}
.gm-module-5{--gm-accent:#5e693a}.gm-module-5 .gm-main{min-width:0}.gm-module-5 .gm-save-actions{flex-wrap:wrap}.gm-module-5 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-5{aspect-ratio:1}.gm-module-5 .leadership-narration{background:#f7f6e8}.gm-module-5 .leadership-steps [aria-current=step],.gm-module-5 .leadership-narration nav [aria-current=step]{background:#5e693a;color:white}
.gm-module-6{--gm-accent:#695178}.gm-module-6 .gm-main{min-width:0}.gm-module-6 .gm-save-actions{flex-wrap:wrap}.gm-module-6 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-6{aspect-ratio:1}.gm-module-6 .leadership-narration{background:#f2eef7}.gm-module-6 .leadership-steps [aria-current=step],.gm-module-6 .leadership-narration nav [aria-current=step]{background:#695178;color:white}
.gm-module-7{--gm-accent:#874737}.gm-module-7 .gm-main{min-width:0}.gm-module-7 .gm-save-actions{flex-wrap:wrap}.gm-module-7 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-7{aspect-ratio:1}.gm-module-7 .leadership-narration{background:#f7eeea}.gm-module-7 .leadership-steps [aria-current=step],.gm-module-7 .leadership-narration nav [aria-current=step]{background:#874737;color:white}
.gm-module-8{--gm-accent:#783e56}.gm-module-8 .gm-main{min-width:0}.gm-module-8 .gm-save-actions{flex-wrap:wrap}.gm-module-8 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-8{aspect-ratio:1}.gm-module-8 .leadership-narration{background:#f5edf0}.gm-module-8 .leadership-steps [aria-current=step],.gm-module-8 .leadership-narration nav [aria-current=step]{background:#783e56;color:white}
.gm-module-9{--gm-accent:#27666c}.gm-module-9 .gm-main{min-width:0}.gm-module-9 .gm-save-actions{flex-wrap:wrap}.gm-module-9 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-9{aspect-ratio:1}.gm-module-9 .leadership-narration{background:#edf6f4}.gm-module-9 .leadership-steps [aria-current=step],.gm-module-9 .leadership-narration nav [aria-current=step]{background:#27666c;color:white}
.gm-module-10{--gm-accent:#365b87}.gm-module-10 .gm-main{min-width:0}.gm-module-10 .gm-save-actions{flex-wrap:wrap}.gm-module-10 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-10{aspect-ratio:1}.gm-module-10 .leadership-narration{background:#edf2f8}.gm-module-10 .leadership-steps [aria-current=step],.gm-module-10 .leadership-narration nav [aria-current=step]{background:#365b87;color:white}
.gm-module-11{--gm-accent:#6a5838}.gm-module-11 .gm-main{min-width:0}.gm-module-11 .gm-save-actions{flex-wrap:wrap}.gm-module-11 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-11{aspect-ratio:1}.gm-module-11 .leadership-narration{background:#f4f1e9}.gm-module-11 .leadership-steps [aria-current=step],.gm-module-11 .leadership-narration nav [aria-current=step]{background:#6a5838;color:white}
.gm-module-12{--gm-accent:#914e3c}.gm-module-12 .gm-main{min-width:0}.gm-module-12 .gm-save-actions{flex-wrap:wrap}.gm-module-12 .gm-final{padding-bottom:150px}.leadership-practice-layout .module-12{aspect-ratio:1}.gm-module-12 .leadership-narration{background:#f8efe9}.gm-module-12 .leadership-steps [aria-current=step],.gm-module-12 .leadership-narration nav [aria-current=step]{background:#914e3c;color:white}
.lesson-case-workshop{margin:2rem 0;padding:clamp(1rem,3vw,2rem);border:2px solid var(--gm-accent);background:#fff;border-radius:10px}.lesson-case-workshop h2{margin-top:.5rem}.lesson-case-workshop label{display:block;margin:1.5rem 0}.case-records{max-width:100%;overflow:auto;overscroll-behavior-x:contain}.case-records table{width:100%;border-collapse:collapse;font-size:1rem}.case-records caption{text-align:left;font-weight:700;padding:1rem 0}.case-records th,.case-records td{padding:.8rem;text-align:left;vertical-align:top;border-bottom:1px solid #b9c6cc;overflow-wrap:anywhere}.case-records thead{background:#102338;color:#fff}.case-records tbody th{width:30%;background:var(--gm-tint)}.case-change{padding:1rem;border-left:4px solid var(--gm-accent);background:var(--gm-tint);margin-top:1rem}.case-debrief{margin-top:1.5rem;border-top:1px solid #b9c6cc;padding-top:1rem}.case-debrief summary,.project-template summary{font-weight:700;cursor:pointer}.project-template{padding:1.25rem;border:1px solid #b9c6cc;background:var(--gm-tint);margin:1.5rem 0}.project-template li{margin:1rem 0}.gm-course .gm-account-save,.gm-course .gm-save-notice{position:static}.gm-course .gm-main{min-width:0}.gm-course .gm-main,.gm-course .gm-main *{overflow-wrap:break-word}.gm-course .gm-account-save{font-size:.875rem}.gm-course .gm-journey-links a,.gm-course .leadership-steps button,.gm-course .leadership-narration nav button{font-size:.875rem}.gm-course .leadership-cinema figcaption span{font-size:.875rem}.gm-course textarea[readonly]{background:#f4f6f7}.lesson-motion-notes{padding:1rem;background:#102338;color:#fff;margin:1rem 0;border-radius:8px}.lesson-motion-notes>p{margin:.5rem 0}.lesson-motion-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:1rem 0}.lesson-motion-track>div{border-top:4px solid #7b8c97;padding:.75rem;opacity:.65}.lesson-motion-track>div.active{border-color:#eac985;opacity:1;background:#233d51}.lesson-motion-track span{display:block;font-size:.875rem;color:#eac985}.lesson-motion-track strong{font-size:1rem;display:block;line-height:1.4}.lesson-motion-track .active{animation:case-focus .35s ease-out}.motion-progress{height:4px;background:#71818d}.motion-progress span{display:block;height:100%;background:#eac985;transition:width .2s linear}.scene-display-toggle{display:flex;align-items:center;gap:.75rem;margin:.75rem 0;font-size:.875rem}@keyframes case-focus{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:650px){.lesson-motion-track{grid-template-columns:1fr}.case-records th,.case-records td{padding:.65rem}.gm-course .gm-account-save{flex-wrap:wrap}.gm-course .gm-topbar>*{max-width:100%}.gm-course .gm-save-actions button{min-height:44px}}@media(prefers-reduced-motion:reduce){.lesson-motion-track .active{animation:none}.motion-progress span{transition:none}}@media print{.case-debrief>*{display:block!important}.lesson-case-workshop{break-inside:auto;border-color:#222}.case-records{overflow:visible}.case-records tr{break-inside:avoid}.lesson-motion-notes{display:none}}

.packet-reader{max-width:1000px;margin:auto;padding:2rem}.packet-reader nav{display:flex;flex-wrap:wrap;gap:1rem}.packet-reader pre{font:1rem/1.7 system-ui,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}.packet-reader h1{font:2rem/1.2 Georgia,serif}@media print{.packet-reader nav{display:none}.packet-reader{padding:0;color:#000;background:#fff;max-width:none}.packet-reader pre{font-size:11pt}.packet-reader~*{display:none}}

@media print{#tmt-maitre-d{display:none!important}}

.depth-lesson{margin:2rem 0;border:2px solid var(--gm-accent);border-radius:12px;padding:clamp(1rem,3vw,2rem);background:#fffdf8}.depth-lesson h2{font-family:Georgia,serif}.depth-scene{background:#102338;color:#f8f0e2;padding:1.25rem;margin:1rem 0;border-radius:12px}.depth-scene-title{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.depth-scene-title span{color:#eac985}.depth-evidence-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0}.depth-evidence-path>div{background:#fffdf8;color:var(--depth-color);border-radius:10px;padding:.7rem;opacity:.55;border:3px solid transparent;text-align:center}.depth-evidence-path>div.active{opacity:1;border-color:#eac985;animation:case-focus .4s ease-out}.depth-evidence-path svg{width:100%;height:78px}.depth-evidence-path span{display:block;font-weight:700}.depth-scene-evidence{min-height:3em}.depth-timeline{height:4px;background:#66798a}.depth-timeline span{height:100%;display:block;background:#eac985;transition:width .2s linear}.depth-lesson audio{width:100%;margin:.5rem 0}.depth-chapters{display:flex;gap:.5rem;flex-wrap:wrap}.depth-chapters button{min-height:44px}.depth-chapters button[aria-current=step]{background:#102338;color:white}.depth-caption{min-height:3em}.depth-worked{margin-top:1rem;padding:1rem;border-top:1px solid #c8c6bf}.depth-worked summary{font-weight:700;cursor:pointer}.depth-teaching{padding:1rem;margin-top:1.5rem;border-left:4px solid var(--gm-accent);background:var(--gm-tint)}.depth-source{font-size:.875rem}.depth-module-5 .depth-scene{border-top:6px solid #b29455}.depth-module-8 .depth-scene{border-left:8px solid #6faab8}.depth-module-11 .depth-scene{border-top:6px solid #c98a70}.depth-module-12 .depth-evidence-path{gap:1.5rem}@media(max-width:600px){.depth-evidence-path{gap:.3rem}.depth-evidence-path>div{padding:.3rem}.depth-evidence-path svg{height:55px}.depth-evidence-path span{font-size:.8rem}.depth-teaching{padding:.7rem}}@media(prefers-reduced-motion:reduce){.depth-evidence-path>div.active{animation:none}.depth-timeline span{transition:none}}
.foundation-cinema.hospitality-animation{position:relative;isolation:isolate;aspect-ratio:16/9;height:auto;min-height:0;background:#17382f;overflow:hidden;border-radius:12px}
.foundation-camera{position:absolute;inset:0;background-repeat:no-repeat;transform-origin:center;will-change:transform}
.foundation-manager-walk{position:absolute;bottom:3%;width:19%;transition:none;filter:drop-shadow(2px 5px 3px #16221a35)}
.foundation-manager-sprite{width:100%;aspect-ratio:362/543;background-image:url('/illustrations/foundations/cinematic/manager-poses.png');background-size:400% 200%;background-repeat:no-repeat}
.foundation-scene-label{position:absolute;left:0;right:0;bottom:0;padding:42px 22px 22px;color:white;background:linear-gradient(transparent,#08271ddd);text-shadow:0 1px 4px #0008}
.foundation-scene-label span{display:block;font-size:.75rem;font-weight:700;letter-spacing:.1em;margin-bottom:5px;color:#f5d791}
.foundation-scene-label strong{display:block;font-size:clamp(1rem,2vw,1.5rem);line-height:1.25;max-width:90%}
.foundation-scene-progress{position:absolute;bottom:8px;left:22px;right:22px;display:flex;gap:5px}
.foundation-scene-progress i{flex:1;height:3px;background:#ffffff45;overflow:hidden}.foundation-scene-progress b{display:block;height:100%;background:#f0ce7c;transform-origin:left}
.foundation-cinema.compact{border-radius:8px}.foundation-cinema.compact .foundation-scene-label{padding:35px 14px 18px}.foundation-cinema.compact .foundation-scene-label strong{font-size:1rem}.foundation-cinema.compact .foundation-scene-progress{left:14px;right:14px;bottom:6px}
.manager-opening .motion-stage:has(.foundation-cinema){height:auto;min-height:0;background:#0d3023}.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption{position:relative;background:#0d3023;padding:18px 22px}.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption>span{display:none}.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption strong{font-size:1.05rem}.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption p{font-size:1rem;margin-bottom:0}.manager-opening .motion-stage:has(.foundation-cinema)>.motion-timeline{display:none}
.lesson-scene-chapters{display:flex;gap:7px;overflow-x:auto;padding:14px 18px;border-top:1px solid #dce5df;background:#f4f7f4}.lesson-scene-chapters button{flex:0 0 auto;max-width:230px;border:1px solid #cbd9d1;border-radius:7px;padding:9px 12px;color:#173d2c;background:white;text-align:left;font:inherit;font-size:.875rem;line-height:1.3}.lesson-scene-chapters button[aria-current="step"]{background:#173d2c;color:white;border-color:#173d2c}.lesson-scene-chapters button:focus-visible{outline:3px solid #c19033;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.foundation-camera{transform:none!important}.foundation-manager-walk{left:36%!important}.foundation-manager-sprite{background-position:0 100%!important}}
@media(max-width:520px){.foundation-scene-label{padding:30px 12px 20px}.foundation-scene-label span{font-size:.6875rem}.foundation-scene-progress{left:12px;right:12px}.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption{padding:14px}.lesson-scene-chapters{padding:12px}.foundation-manager-walk{width:23%}}
.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption{inset:auto;width:auto;transform:none}
.lesson-media .narration-speed select{color:#143c2b;background:#fff}
.manager-opening .motion-stage:has(.foundation-cinema)::after{display:none}
.manager-opening .motion-stage.playing .foundation-cinema{animation:none}
.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption{max-width:none;color:#fff}
.manager-opening .motion-stage:has(.foundation-cinema) .motion-caption{animation:none;opacity:1}
/* Leave room to scroll lesson controls clear of the floating learning guide. */
.manager-lesson#main-content{padding-bottom:180px}
:root { --navy:#103823; --navy-2:#184d35; --ink:#173324; --muted:#637d71; --cream:#f4f8f4; --paper:#fffdf9; --line:#ddd8ce; --gold:#c99a4b; --green:#2d705d; }
* { box-sizing:border-box; }
html { background:var(--cream); }
body { margin:0; color:var(--ink); background:var(--cream); font-family:Arial,Helvetica,sans-serif; }
button { font:inherit; }
.academy-shell { min-height:100vh; display:grid; grid-template-columns:252px 1fr; }
.main-sidebar,.lesson-rail { background:var(--navy); color:white; padding:28px 22px 20px; display:flex; flex-direction:column; position:sticky; top:0; height:100vh; }
.brand { display:flex; align-items:center; gap:12px; padding:0 4px 24px; border-bottom:1px solid rgba(255,255,255,.14); }
.brand-mark { width:39px; height:39px; border:1px solid var(--gold); display:grid; place-items:center; font-family:Georgia,serif; color:var(--gold); letter-spacing:-.04em; }
.brand strong { display:block; font-family:Georgia,serif; font-size:15px; font-weight:500; }
.brand small { display:block; margin-top:4px; color:#b8ccc4; letter-spacing:.18em; text-transform:uppercase; font-size:9px; }
.brand-button { width:100%; background:none; color:white; border:0; text-align:left; cursor:pointer; }
.main-nav { padding:28px 0; flex:1; }.main-nav p { color:#80a292; font-size:9px; letter-spacing:.2em; margin:20px 12px 9px; }
.main-nav button,.main-nav a { width:100%; border:0; background:transparent; color:#bdd0c8; text-align:left; padding:12px; border-radius:8px; cursor:pointer; margin:2px 0; text-decoration:none; display:block; }
.main-nav button span,.main-nav a span { display:inline-grid; width:25px; color:#93b1a4; }.main-nav button.active,.main-nav button:hover,.main-nav a:hover { color:white; background:rgba(255,255,255,.08); }.main-nav button.active span { color:var(--gold); }
.sidebar-user { display:flex; gap:10px; align-items:center; border-top:1px solid rgba(255,255,255,.14); padding-top:18px; }.sidebar-user>span,.learner-chip>span { width:34px; height:34px; border-radius:50%; background:var(--gold); color:var(--navy); display:grid; place-items:center; font-size:11px; font-weight:700; }
.sidebar-user div { min-width:0; flex:1; }.sidebar-user strong,.sidebar-user small { display:block; overflow:hidden; text-overflow:ellipsis; }.sidebar-user strong { font-size:12px; }.sidebar-user small { color:#91ada1; font-size:10px; margin-top:3px; }.sidebar-user button { background:none; color:#9cafad; border:0; }
.dashboard { padding:46px 5vw 64px; max-width:1500px; width:100%; margin:0 auto; }.dashboard-topbar { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:30px; }.sign-out-link { color:var(--muted); border:1px solid var(--line); background:var(--paper); padding:10px 14px; text-decoration:none; font-size:11px; font-weight:700; }
.eyebrow { display:block; font-size:9px; letter-spacing:.2em; font-weight:800; color:#778d83; margin-bottom:9px; }.dashboard h1,.course-topbar h1 { margin:0; font-family:Georgia,serif; font-weight:500; font-size:clamp(30px,4vw,44px); letter-spacing:-.035em; }.dashboard-topbar p { color:var(--muted); margin:9px 0 0; max-width:650px; line-height:1.6; }.notification { width:38px; height:38px; border:1px solid var(--line); background:var(--paper); border-radius:50%; color:var(--gold); }
.resume-card { min-height:300px; background:var(--navy); color:white; display:grid; grid-template-columns:1.15fr .85fr; border-radius:3px; overflow:hidden; box-shadow:0 16px 40px rgba(18,43,31,.12); }.resume-content { padding:44px 48px; position:relative; z-index:1; }
.pill { display:inline-block; color:#cce9dd; background:rgba(90,185,151,.16); border:1px solid rgba(118,210,176,.35); font-size:8px; letter-spacing:.18em; font-weight:800; padding:7px 9px; border-radius:20px; }.course-label { color:var(--gold); font-size:10px; letter-spacing:.22em; font-weight:800; margin:25px 0 9px; }.resume-card h2 { font-family:Georgia,serif; font-size:34px; font-weight:500; margin:0; }.resume-card p:not(.course-label) { color:#b8cec5; }
.progress-row { display:flex; align-items:center; gap:14px; max-width:470px; margin:24px 0; }.progress-track,.rail-progress { height:4px; background:rgba(255,255,255,.15); flex:1; }.progress-track span,.rail-progress span { height:100%; background:var(--gold); display:block; }.progress-row strong { font-size:11px; color:#d9e6e1; }
.primary-button { background:var(--gold); color:#103823; border:0; padding:13px 18px; border-radius:4px; font-weight:800; font-size:12px; cursor:pointer; }.hospitality-motif { position:relative; display:grid; place-items:center; background:radial-gradient(circle at 50% 50%,#256248,#12402b 62%,#103823 63%); overflow:hidden; }.hospitality-motif::before,.hospitality-motif::after { content:""; position:absolute; width:320px; height:320px; border:1px solid rgba(201,154,75,.2); border-radius:50%; }.hospitality-motif::after { width:220px; height:220px; }.motif-ring { width:118px; height:118px; border:1px solid var(--gold); border-radius:50%; display:grid; place-items:center; position:relative; z-index:1; }.motif-ring span { font-family:Georgia,serif; color:var(--gold); font-size:58px; }.hospitality-motif p { position:absolute; bottom:20px; right:25px; text-align:right; font-size:8px; letter-spacing:.22em; line-height:1.7; color:#80a696!important; }
.dashboard-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:24px; margin-top:42px; }.section-heading { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:15px; }.section-heading h2,.progress-panel h2 { font-family:Georgia,serif; font-weight:500; font-size:24px; margin:0; }.section-heading button { border:0; background:transparent; font-size:11px; font-weight:700; color:#527666; }
.course-card { background:var(--paper); border:1px solid var(--line); display:grid; grid-template-columns:210px 1fr; min-height:230px; }.course-art { background:#d8d0c0; padding:25px; display:flex; flex-direction:column; justify-content:space-between; color:var(--navy); background-image:linear-gradient(135deg,rgba(255,255,255,.5),transparent),repeating-linear-gradient(45deg,transparent,transparent 15px,rgba(16,56,35,.04) 15px,rgba(16,56,35,.04) 16px); }.course-art span { font-family:Georgia,serif; font-size:42px; color:rgba(16,56,35,.4); }.course-art strong { font-size:13px; letter-spacing:.12em; line-height:1.5; }.course-info { padding:26px; }.pill.neutral { background:#efebe3; border-color:#ddd5c8; color:#6d675c; }.course-info h3 { font-family:Georgia,serif; font-size:22px; font-weight:500; margin:16px 0 8px; }.course-info p { color:var(--muted); font-size:13px; line-height:1.55; }.course-meta { display:flex; gap:18px; font-size:10px; color:#6c8278; margin:18px 0; }.course-info button { background:none; border:0; padding:0; color:var(--navy-2); font-weight:800; font-size:11px; cursor:pointer; }
.progress-panel { background:var(--paper); border:1px solid var(--line); padding:27px; }.progress-orbit { width:120px; height:120px; border-radius:50%; display:grid; place-items:center; margin:24px auto; }.progress-orbit>div { width:102px; height:102px; background:var(--paper); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; }.progress-orbit strong { font-family:Georgia,serif; font-size:28px; }.progress-orbit small { color:var(--muted); font-size:9px; }.stat-row { border-top:1px solid #e8e3da; padding:13px 0; display:flex; justify-content:space-between; gap:20px; font-size:11px; }.stat-row span { color:var(--muted); }.stat-row strong { text-align:right; }
.course-shell { grid-template-columns:330px 1fr; background:#f4f8f4; }.lesson-rail { padding:24px 20px 18px; }.course-rail-heading { padding:26px 6px 18px; }.back-link { background:none; border:0; color:#b5cbc2; padding:0; cursor:pointer; font-size:11px; }.course-rail-heading p { color:var(--gold); font-size:9px; letter-spacing:.16em; margin-top:24px; }.course-rail-heading small { color:#8fada0; font-size:9px; display:block; margin-top:8px; }
.lesson-list { flex:1; overflow:auto; }.lesson-link { width:100%; display:flex; gap:12px; align-items:center; text-align:left; padding:11px 9px; border:0; border-left:2px solid transparent; background:transparent; color:#b6cac2; cursor:pointer; }.lesson-link.active { background:rgba(255,255,255,.07); border-left-color:var(--gold); color:white; }.lesson-state { width:29px; height:29px; border:1px solid #527565; border-radius:50%; display:grid; place-items:center; font-size:8px; flex:0 0 auto; }.lesson-state.complete { background:var(--green); border-color:var(--green); color:white; }.lesson-state.current { border-color:var(--gold); color:var(--gold); }.lesson-link strong,.lesson-link small { display:block; }.lesson-link strong { font-size:11px; }.lesson-link small { color:#789f90; font-size:9px; margin-top:4px; }.help-link { background:none; border:0; border-top:1px solid rgba(255,255,255,.12); padding:16px 0 0; text-align:left; color:#91aea2; font-size:10px; text-decoration:none; }
.lesson-stage { min-width:0; display:flex; flex-direction:column; min-height:100vh; }.course-topbar { min-height:105px; background:var(--paper); border-bottom:1px solid var(--line); padding:22px 4vw; display:flex; align-items:center; justify-content:space-between; }.course-topbar h1 { font-size:27px; }.learner-chip { display:flex; align-items:center; gap:10px; }.learner-chip strong,.learner-chip small { display:block; }.learner-chip strong { font-size:11px; }.learner-chip small { font-size:9px; color:var(--muted); margin-top:3px; }
.lesson-card { width:min(850px,calc(100% - 60px)); margin:38px auto; background:var(--paper); border:1px solid var(--line); padding:clamp(30px,6vw,66px); box-shadow:0 14px 35px rgba(31,52,43,.08); }.lesson-kicker { color:var(--gold); font-size:9px; letter-spacing:.2em; font-weight:800; }.lesson-card h2 { font-family:Georgia,serif; font-size:clamp(31px,4vw,45px); line-height:1.08; font-weight:500; max-width:580px; margin:16px 0; }.lesson-lede { color:#587367; font-size:16px; line-height:1.7; max-width:690px; }.journey-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin:36px 0; }.journey-grid>div { background:#f8f5ef; padding:22px; }.journey-grid span,.journey-grid strong { display:block; }.journey-grid span { color:var(--gold); font-size:9px; font-weight:800; }.journey-grid strong { margin-top:19px; font-family:Georgia,serif; font-size:19px; }.journey-grid p { color:var(--muted); font-size:11px; line-height:1.6; }.lesson-card blockquote { margin:32px 0; padding:0 0 0 22px; border-left:2px solid var(--gold); font-family:Georgia,serif; font-size:22px; color:var(--navy-2); }.reflection { background:#eaf0ec; border-left:3px solid var(--green); padding:20px 22px; }.reflection span { color:var(--green); font-size:8px; letter-spacing:.16em; font-weight:800; }.reflection p { margin:8px 0 0; font-size:12px; line-height:1.55; }
.lesson-footer { margin-top:auto; min-height:72px; padding:15px 4vw; border-top:1px solid var(--line); background:var(--paper); display:flex; justify-content:space-between; align-items:center; position:sticky; bottom:0; }.lesson-footer>span { color:#849990; font-size:9px; }.secondary-button { background:white; border:1px solid var(--line); color:var(--ink); padding:12px 16px; border-radius:4px; font-size:11px; font-weight:700; }.secondary-button:disabled { opacity:.4; }
.login-shell { min-height:100vh; display:grid; grid-template-columns:minmax(390px,.9fr) 1.1fr; background:var(--paper); }.login-story { background:var(--navy); color:white; padding:42px clamp(34px,6vw,88px); display:flex; flex-direction:column; min-height:100vh; position:relative; overflow:hidden; }.login-story::before,.login-story::after { content:""; position:absolute; width:520px; height:520px; border:1px solid rgba(201,154,75,.16); border-radius:50%; right:-240px; bottom:-180px; }.login-story::after { width:330px; height:330px; right:-145px; bottom:-85px; }.login-brand { color:white; text-decoration:none; width:max-content; position:relative; z-index:1; }.login-story-copy { margin:auto 0; max-width:550px; position:relative; z-index:1; }.eyebrow.gold { color:var(--gold); }.login-story-copy h1 { font-family:Georgia,serif; font-size:clamp(42px,5.5vw,74px); line-height:1.02; font-weight:500; letter-spacing:-.04em; margin:18px 0 24px; }.login-story-copy p { color:#b7ccc3; line-height:1.7; max-width:470px; }.login-note { color:#779f8e; font-size:8px; letter-spacing:.22em; position:relative; z-index:1; }.login-panel { display:grid; place-items:center; padding:36px; background:#f4f8f4; }.login-card { width:min(430px,100%); background:var(--paper); border:1px solid var(--line); padding:clamp(30px,5vw,56px); box-shadow:0 18px 48px rgba(27,46,37,.09); }.login-card h2 { font-family:Georgia,serif; font-size:36px; font-weight:500; margin:7px 0 12px; }.login-card>p { color:var(--muted); font-size:13px; line-height:1.65; margin-bottom:28px; }.login-card label { display:block; font-size:10px; font-weight:800; margin:17px 0 7px; }.login-card input { width:100%; height:46px; border:1px solid #d5d0c7; background:white; padding:0 13px; color:var(--ink); outline:none; }.login-card input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,154,75,.12); }.password-label { display:flex; justify-content:space-between; align-items:flex-end; }.password-label a,.login-support a,.login-preview a { color:var(--navy-2); font-size:10px; font-weight:700; }.login-button { width:100%; margin-top:24px; min-height:46px; }.form-message { background:#eaf0ec; border-left:3px solid var(--green); padding:12px!important; margin:14px 0!important; color:#315d50!important; font-size:10px!important; }.login-preview { margin-top:28px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:20px 0; }.login-preview span { font-size:8px; color:var(--gold); font-weight:800; letter-spacing:.16em; }.login-preview p { margin:8px 0; font-family:Georgia,serif; font-size:17px; }.login-support { display:block; text-align:center; color:var(--muted); margin-top:22px; }
@media (max-width:950px) { .academy-shell { grid-template-columns:78px 1fr; }.main-sidebar { padding:22px 13px; }.brand>span:not(.brand-mark),.main-nav button:not(.active) { font-size:0; }.main-nav button { text-align:center; }.main-nav button span { font-size:16px; width:auto; }.main-nav p,.sidebar-user div,.sidebar-user button { display:none; }.sidebar-user { justify-content:center; }.dashboard { padding-inline:4vw; }.dashboard-grid { grid-template-columns:1fr; }.progress-panel { display:none; }.course-shell { grid-template-columns:265px 1fr; } }
@media (max-width:700px) { .academy-shell,.course-shell { display:block; }.main-sidebar { height:64px; position:sticky; z-index:4; padding:11px 18px; flex-direction:row; align-items:center; }.main-sidebar .brand { border:0; padding:0; }.main-sidebar .brand>span:not(.brand-mark) { display:block; }.main-nav,.sidebar-user { display:none; }.dashboard { padding:30px 18px; }.dashboard-topbar p { font-size:13px; }.resume-card { grid-template-columns:1fr; }.resume-content { padding:34px 28px; }.hospitality-motif { display:none; }.course-card { grid-template-columns:1fr; }.course-art { min-height:155px; }.dashboard-grid { margin-top:28px; }.lesson-rail { position:static; height:auto; padding:14px 18px; }.lesson-rail .brand,.lesson-rail .course-rail-heading,.lesson-rail .lesson-list,.lesson-rail .help-link { display:none; }.course-topbar { padding:18px; }.learner-chip div { display:none; }.lesson-card { width:calc(100% - 24px); margin:12px auto; padding:28px 22px; }.journey-grid { grid-template-columns:1fr; }.lesson-footer { padding:12px; }.lesson-footer>span { display:none; } }
@media (max-width:820px) { .login-shell { grid-template-columns:1fr; }.login-story { min-height:360px; padding:28px; }.login-story-copy { margin:55px 0 35px; }.login-story-copy h1 { font-size:42px; }.login-note { display:none; }.login-panel { padding:24px 16px 42px; }.login-card { margin-top:-35px; position:relative; z-index:2; } }

/* BMS visual system */
:root { --navy:#062614; --navy-2:#0c3721; --ink:#153422; --muted:#668473; --cream:#f4f7fb; --paper:#ffffff; --line:#dcebe3; --gold:#f0b429; --green:#159768; }
html,body { background:#f4f7fb; font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
body { background-image:linear-gradient(rgba(18,86,55,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(18,86,55,.035) 1px,transparent 1px); background-size:64px 64px; }
.academy-shell { grid-template-columns:250px minmax(0,1fr); }
.main-sidebar,.lesson-rail { background:linear-gradient(180deg,#072b17,#062111); padding:20px 14px 14px; box-shadow:12px 0 30px rgba(4,35,18,.08); }
.brand { gap:10px; padding:0 6px 18px; }
.brand-mark { width:34px; height:34px; border:0; border-radius:8px; background:linear-gradient(145deg,#ffd257,#e7a814); color:#133a24; font-family:inherit; font-size:11px; font-weight:900; box-shadow:0 5px 15px rgba(240,180,41,.2); }
.brand strong { font-family:inherit; font-size:15px; font-weight:800; line-height:1.05; }
.brand small { color:var(--gold); font-size:8px; font-weight:900; letter-spacing:.17em; }
.sidebar-location { margin:18px 0 8px; min-height:58px; padding:11px; display:flex; align-items:center; gap:10px; border:1px solid rgba(255,255,255,.1); border-radius:10px; background:rgba(255,255,255,.04); }
.sidebar-location>span { width:30px; height:30px; display:grid; place-items:center; border-radius:7px; background:rgba(240,180,41,.12); color:var(--gold); }
.sidebar-location small,.sidebar-location strong { display:block; }.sidebar-location small { color:#7fa691; font-size:8px; margin-bottom:3px; }.sidebar-location strong { font-size:10px; line-height:1.25; }
.main-nav { padding:6px 0; }.main-nav p { margin:18px 10px 6px; color:#77a089; font-weight:800; }.main-nav button,.main-nav a { padding:10px 11px; border-radius:8px; font-size:12px; border-left:2px solid transparent; }
.main-nav button.active { background:linear-gradient(90deg,rgba(240,180,41,.13),rgba(255,255,255,.035)); border-left-color:var(--gold); }.main-nav button span,.main-nav a span { font-size:14px; color:#9ac0ab; }.main-nav button.active span { color:var(--gold); }
.sidebar-credit { padding:10px 7px 11px; border-top:1px solid rgba(255,255,255,.09); color:#729882; font-size:8px; line-height:1.45; margin:0; }
.sidebar-user { margin-top:0; padding:9px 8px; border:0; border-radius:9px; background:rgba(255,255,255,.045); }.sidebar-user>span,.learner-chip>span { border-radius:7px; background:var(--gold); }.sidebar-user strong { font-size:10px; }.sidebar-user small { font-size:8px; }
.workspace { min-width:0; }.workspace-bar { height:64px; padding:0 32px; display:flex; align-items:center; justify-content:space-between; background:white; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:5; }
.workspace-search { width:min(300px,42vw); height:38px; display:flex; gap:8px; align-items:center; padding:0 11px; border:1px solid #d8e9e0; border-radius:8px; background:#f8fafc; color:#7b9687; font-size:11px; text-align:left; }.workspace-search span { font-size:18px; }.workspace-search kbd { margin-left:auto; border:1px solid #d6e5dd; background:white; border-radius:4px; padding:2px 5px; color:#779383; font-size:8px; }
.workspace-bar>div { display:flex; gap:8px; align-items:center; }.workspace-bar>div>button,.workspace-bar>div>a { width:36px; height:36px; display:grid; place-items:center; border:1px solid #dcebe3; border-radius:8px; background:#f8fafc; color:#608370; text-decoration:none; font-size:12px; }.workspace-bar .workspace-avatar { background:var(--gold); border-color:var(--gold); color:#173d28; font-size:9px; font-weight:900; }
.dashboard { padding:34px clamp(24px,4vw,56px) 60px; max-width:1450px; }.dashboard-topbar { margin-bottom:24px; align-items:center; }.dashboard h1,.course-topbar h1 { font-family:inherit; font-weight:850; letter-spacing:-.045em; }.dashboard-topbar p { margin-top:7px; }.eyebrow { color:#7c9789; font-size:8px; font-weight:900; }.live-badge { display:flex; gap:7px; align-items:center; padding:8px 10px; border:1px solid #dcebe3; border-radius:20px; background:white; color:#648572; font-size:9px; font-weight:700; }.live-badge i { width:7px; height:7px; border-radius:50%; background:#2dcc88; box-shadow:0 0 0 4px rgba(45,204,136,.12); }
.resume-card { min-height:286px; border-radius:14px; background:radial-gradient(circle at 85% 5%,rgba(52,204,139,.16),transparent 38%),linear-gradient(135deg,#062719,#073824); border:1px solid rgba(52,204,139,.18); box-shadow:0 18px 40px rgba(7,39,25,.16); }.resume-content { padding:40px 44px; }.resume-card h2 { font-family:inherit; font-size:35px; font-weight:850; letter-spacing:-.04em; }.pill { color:#a7f2d1; background:rgba(52,204,139,.12); border-color:rgba(52,204,139,.3); }.course-label { color:#ffca3f; }.primary-button { background:linear-gradient(180deg,#ffc63b,#f0ae12); border-radius:7px; color:#173b28; box-shadow:0 7px 16px rgba(240,174,18,.18); }.hospitality-motif { background:transparent; }.motif-ring { border-color:#34cc8b; }.motif-ring span { color:#34cc8b; font-family:inherit; font-weight:900; }.hospitality-motif::before,.hospitality-motif::after { border-color:rgba(52,204,139,.14); }
.dashboard-grid { gap:20px; margin-top:30px; }.section-heading h2,.progress-panel h2 { font-family:inherit; font-weight:800; }.course-card,.progress-panel { border-radius:12px; overflow:hidden; box-shadow:0 8px 25px rgba(31,74,53,.05); }.course-art { background-color:#e7f3ed; background-image:linear-gradient(135deg,rgba(255,255,255,.75),transparent),linear-gradient(rgba(11,56,35,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(11,56,35,.05) 1px,transparent 1px); background-size:auto,24px 24px,24px 24px; }.course-info h3 { font-family:inherit; font-weight:800; letter-spacing:-.025em; }.course-info button { color:#0a6c4c; }.pill.neutral { color:#966d0b; background:#fff7de; border-color:#f1dda2; }.progress-orbit strong { font-family:inherit; font-weight:850; }
.course-shell { grid-template-columns:300px 1fr; background-color:#f4f7fb; background-image:linear-gradient(rgba(18,86,55,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(18,86,55,.035) 1px,transparent 1px); background-size:64px 64px; }.lesson-rail { padding:20px 14px 14px; }.course-rail-heading { padding:22px 8px 14px; }.course-rail-heading p { color:var(--gold); font-weight:900; }.lesson-link { border-radius:8px; margin:2px 0; }.lesson-link.active { background:linear-gradient(90deg,rgba(240,180,41,.13),rgba(255,255,255,.035)); border-left-color:var(--gold); }.lesson-state { border-radius:7px; }.lesson-state.complete { background:#159768; }.course-topbar { min-height:88px; padding:18px 3vw; }.course-topbar h1 { font-size:24px; }.lesson-card { border-radius:14px; padding:clamp(30px,5vw,58px); margin:30px auto; box-shadow:0 12px 32px rgba(31,74,53,.07); }.lesson-card h2 { font-family:inherit; font-weight:850; letter-spacing:-.045em; }.journey-grid>div { background:#f7f9fb; }.journey-grid strong,.lesson-card blockquote { font-family:inherit; }.journey-grid strong { font-weight:800; }.lesson-card blockquote { font-weight:750; }.reflection { background:#e9f7f1; }
.login-story { background-color:#062719; background-image:linear-gradient(rgba(52,204,139,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(52,204,139,.06) 1px,transparent 1px); background-size:64px 64px; }.login-story-copy h1 { font-family:inherit; font-weight:900; letter-spacing:-.055em; }.login-story-copy p { color:#bed1c8; }.login-card { border-radius:14px; }.login-card h2 { font-family:inherit; font-weight:850; letter-spacing:-.04em; }.login-preview p { font-family:inherit; font-weight:750; }
@media (max-width:950px) { .academy-shell { grid-template-columns:76px 1fr; }.sidebar-location,.sidebar-credit { display:none; }.brand>span:not(.brand-mark) { display:none; }.workspace-bar { padding-inline:18px; }.course-shell { grid-template-columns:250px 1fr; } }
@media (max-width:700px) { .academy-shell,.course-shell { display:block; }.main-sidebar { height:62px; }.main-sidebar .brand>span:not(.brand-mark) { display:block; }.workspace-bar { height:56px; padding:0 14px; }.workspace-search { width:55%; }.workspace-search kbd { display:none; }.dashboard { padding:25px 16px 45px; }.dashboard-topbar { align-items:flex-start; }.live-badge { display:none; }.resume-content { padding:32px 25px; }.resume-card h2 { font-size:30px; } }
.brand-logo { width:42px; height:42px; flex:0 0 auto; display:block; object-fit:contain; }
.motif-ring { width:142px; height:142px; border:0; border-radius:18px; overflow:hidden; box-shadow:0 12px 30px rgba(0,0,0,.18); }
.motif-ring .motif-logo { width:100%; height:100%; display:block; object-fit:cover; }
@media (max-width:950px) { .brand>span { display:none; } }
@media (max-width:700px) { .main-sidebar .brand>span { display:block; } }

/* Interactive Foundations learning experience */
.path-shell { background:#eef8f3; }
.path-workspace { min-width:0; min-height:100vh; }
.path-header { height:68px; padding:0 34px; display:flex; align-items:center; justify-content:space-between; position:sticky; top:0; z-index:4; background:rgba(255,255,255,.94); border-bottom:1px solid var(--line); backdrop-filter:blur(12px); }
.path-header>button { border:0; background:transparent; color:#527863; font-weight:800; cursor:pointer; }
.care-score { display:grid; grid-template-columns:auto auto; column-gap:7px; align-items:center; color:#173b28; }
.care-score>span { grid-row:1 / 3; color:var(--gold); font-size:25px; animation:carePulse 2.6s ease-in-out infinite; }
.care-score strong { font-size:15px; line-height:1; }.care-score small { color:#7d9889; font-size:7px; letter-spacing:.13em; margin-top:3px; }
.path-content { width:min(760px,calc(100% - 36px)); margin:34px auto 80px; }
.unit-banner { display:flex; justify-content:space-between; gap:30px; align-items:center; padding:30px 34px; color:white; border-radius:18px; background:radial-gradient(circle at 95% -10%,rgba(240,180,41,.35),transparent 34%),linear-gradient(135deg,#093f25,#062614); box-shadow:0 18px 45px rgba(6,38,20,.17); }
.unit-banner span { color:#f7c858; font-size:8px; font-weight:900; letter-spacing:.18em; }.unit-banner h1 { margin:8px 0 6px; font-size:30px; letter-spacing:-.04em; }.unit-banner p { color:#b8d5c7; margin:0; font-size:12px; }
.unit-banner>div:last-child { width:112px; height:112px; flex:0 0 auto; display:flex; flex-direction:column; align-items:center; justify-content:center; border:8px solid rgba(255,255,255,.14); border-top-color:var(--gold); border-radius:50%; }
.unit-banner>div:last-child strong { font-size:25px; }.unit-banner>div:last-child small { margin-top:4px; color:#aeccbd; font-size:6px; letter-spacing:.12em; }
.learning-path { position:relative; width:min(560px,100%); min-height:1050px; margin:34px auto 0; padding-top:15px; }
.learning-path::before { content:""; position:absolute; top:45px; bottom:98px; left:50%; width:7px; transform:translateX(-50%); border-radius:9px; background:repeating-linear-gradient(to bottom,#d3e6dc 0,#d3e6dc 12px,transparent 12px,transparent 22px); }
.path-stop { position:relative; min-height:132px; display:flex; align-items:flex-start; z-index:1; }
.path-stop.stop-0 { justify-content:center; }.path-stop.stop-1 { justify-content:flex-start; padding-left:19%; }.path-stop.stop-2 { justify-content:flex-end; padding-right:19%; }
.path-stop>button { width:76px; height:68px; position:relative; z-index:2; border:0; border-radius:50%; background:#bfd4c9; color:white; box-shadow:0 8px 0 #aac1b5,0 14px 24px rgba(26,69,49,.12); cursor:not-allowed; }
.path-stop>button span { width:52px; height:52px; display:grid; place-items:center; margin:auto; border:3px solid rgba(255,255,255,.6); border-radius:50%; font-size:21px; }
.path-stop.current>button { background:linear-gradient(180deg,#f6c64e,#e9a817); color:#163d28; box-shadow:0 8px 0 #bd8210,0 0 0 8px rgba(240,180,41,.14),0 16px 28px rgba(94,68,13,.2); cursor:pointer; animation:nodeBounce 2s ease-in-out infinite; }
.path-stop.done>button { background:linear-gradient(180deg,#2ec58c,#159768); box-shadow:0 8px 0 #0b6e4a,0 14px 24px rgba(21,151,104,.18); cursor:pointer; }
.path-popover { position:absolute; top:-2px; width:205px; padding:13px 15px; border:1px solid #dcebe3; border-radius:12px; background:white; box-shadow:0 10px 25px rgba(31,74,53,.07); opacity:.78; }
.stop-0 .path-popover { left:calc(50% + 58px); }.stop-1 .path-popover { left:calc(19% + 94px); }.stop-2 .path-popover { right:calc(19% + 94px); text-align:right; }
.path-stop.current .path-popover,.path-stop.done .path-popover { opacity:1; }.path-popover small { display:block; color:#8ba597; font-size:7px; letter-spacing:.12em; font-weight:900; }.path-popover strong { display:block; margin-top:5px; font-size:12px; }.path-popover p { margin:5px 0 0; color:#729280; font-size:9px; line-height:1.35; }
.path-finish { width:210px; height:64px; margin:15px auto; display:flex; gap:10px; align-items:center; justify-content:center; border:2px solid #d0e1d8; border-radius:15px; background:#e5f0ea; color:#8ca698; font-size:9px; letter-spacing:.12em; }
.path-finish span { font-size:20px; }.path-finish.unlocked { color:#173b28; border-color:#e5b43d; background:#fff4d4; }

.immersive-shell { grid-template-columns:255px minmax(0,1fr); background:#f5f7fa; }
.path-rail { height:100vh; position:sticky; top:0; padding:20px 14px; overflow:hidden; color:white; background:linear-gradient(180deg,#072b17,#062111); }
.mini-path-title { padding:24px 8px 12px; }.mini-path-title span { display:block; color:var(--gold); font-size:7px; letter-spacing:.17em; font-weight:900; }.mini-path-title strong { display:block; margin-top:5px; font-size:13px; }
.mini-path { display:flex; flex-direction:column; gap:4px; }.mini-node { width:100%; display:flex; align-items:center; gap:10px; padding:9px; border:0; border-radius:9px; background:transparent; color:#9bbdac; text-align:left; cursor:pointer; }
.mini-node i { width:31px; height:31px; display:grid; place-items:center; flex:0 0 auto; border:1px solid #46705a; border-radius:50%; font-style:normal; font-size:8px; }
.mini-node span strong,.mini-node span small { display:block; }.mini-node span strong { font-size:10px; }.mini-node span small { color:#6f9682; font-size:8px; margin-top:3px; }
.mini-node.active { color:white; background:rgba(240,180,41,.11); }.mini-node.active i { color:#173b28; border-color:var(--gold); background:var(--gold); box-shadow:0 0 0 4px rgba(240,180,41,.1); }
.mini-node.done i { color:white; border-color:#159768; background:#159768; }.mini-node.locked { opacity:.42; cursor:not-allowed; }
.immersive-stage { min-width:0; min-height:100vh; display:flex; flex-direction:column; }
.lesson-progress-bar { height:78px; padding:0 clamp(20px,4vw,54px); display:grid; grid-template-columns:42px 1fr 116px; gap:24px; align-items:center; background:white; border-bottom:1px solid var(--line); }
.lesson-progress-bar>button { width:38px; height:38px; border:0; background:transparent; color:#7b9889; font-size:25px; cursor:pointer; }.lesson-meter { height:13px; overflow:hidden; border-radius:10px; background:#e2ede7; }.lesson-meter span { display:block; height:100%; border-radius:10px; background:linear-gradient(90deg,#24ba81,#45d69d); box-shadow:0 0 14px rgba(36,186,129,.35); transition:width .5s cubic-bezier(.2,.8,.2,1); }
.activity-wrap { flex:1; display:grid; place-items:center; padding:34px; }
.activity-card { width:min(900px,100%); animation:activityIn .45s cubic-bezier(.2,.8,.2,1); }
.activity-card h1 { color:#153a26; font-size:clamp(30px,4vw,48px); line-height:1.08; letter-spacing:-.045em; margin:14px 0; }
.concept-activity { display:grid; grid-template-columns:.82fr 1.18fr; gap:46px; align-items:center; }.activity-kicker { color:#a8760a; font-size:8px; font-weight:900; letter-spacing:.18em; }.activity-copy>p { color:#628471; font-size:15px; line-height:1.7; }
.illustrated-concept-activity { width:min(1180px,100%); grid-template-columns:minmax(540px,1.25fr) minmax(340px,.75fr); gap:38px; }
.concept-pills { display:grid; gap:9px; margin-top:23px; }.concept-pills>div { display:grid; grid-template-columns:125px 1fr; gap:14px; padding:11px 14px; border:1px solid #dbebe3; border-radius:10px; background:white; }.concept-pills strong { color:#0d6f51; font-size:11px; }.concept-pills span { color:#6a8777; font-size:10px; }
.hospitality-animation { height:410px; position:relative; overflow:hidden; border-radius:28px; background:radial-gradient(circle at 50% 35%,#166a48,#084028 55%,#062614 56%); box-shadow:0 26px 55px rgba(6,38,20,.2); }
.scene-halo { position:absolute; left:50%; top:50%; border:1px solid rgba(240,180,41,.24); border-radius:50%; transform:translate(-50%,-50%); animation:halo 3s ease-in-out infinite; }.halo-one { width:270px; height:270px; }.halo-two { width:190px; height:190px; animation-delay:.5s; }
.scene-door { position:absolute; left:50%; top:90px; width:130px; height:220px; transform:translateX(-50%); border:5px solid #f0b429; border-bottom:0; border-radius:68px 68px 0 0; }.scene-door span { position:absolute; inset:12px 8px 0; transform-origin:left; background:linear-gradient(120deg,#135b3e,#0d432c); animation:doorOpen 3.4s ease-in-out infinite; }
.scene-person { position:absolute; bottom:72px; width:40px; height:90px; border-radius:24px 24px 11px 11px; background:#e9f7f1; animation:guestMove 3.4s ease-in-out infinite; }.scene-person::before { content:""; position:absolute; width:34px; height:34px; left:3px; top:-25px; border-radius:50%; background:#f0b429; }.person-one { left:48px; }.person-two { right:48px; animation-delay:.7s; }.scene-person i { display:none; }
.scene-tray { display:none; }.scene-route,.scene-signal,.scene-star { display:none; }
.scene-difference .scene-door,.scene-difference .scene-person,.scene-difference .scene-halo { display:none; }.scene-difference::before,.scene-difference::after { position:absolute; top:75px; width:125px; height:210px; display:grid; place-items:center; border-radius:26px; color:white; font-size:12px; font-weight:900; letter-spacing:.12em; }.scene-difference::before { content:"SERVICE"; left:30px; background:#15593b; border:2px solid #72ae94; }.scene-difference::after { content:"HOSPITALITY"; right:30px; background:#0c6048; border:2px solid #36c18d; }.scene-difference .scene-tray { display:grid; place-items:center; position:absolute; z-index:2; left:50%; top:50%; width:100px; height:100px; transform:translate(-50%,-50%); border-radius:50%; background:#f0b429; color:#103823; box-shadow:0 0 0 14px rgba(240,180,41,.12); animation:trayFloat 2s ease-in-out infinite; }.scene-tray span { font-size:38px; }
.scene-journey .scene-door,.scene-journey .scene-person,.scene-journey .scene-halo,.scene-team .scene-door,.scene-team .scene-person,.scene-team .scene-halo { display:none; }.scene-route { position:absolute; display:flex; justify-content:space-between; align-items:center; left:34px; right:34px; top:50%; }.scene-route::before { content:""; position:absolute; left:20px; right:20px; height:4px; background:linear-gradient(90deg,#f0b429,#36c18d); }.scene-route i { width:55px; height:55px; position:relative; z-index:2; border:8px solid #0a3c26; border-radius:50%; background:#f0b429; animation:routeNode 2.4s ease-in-out infinite; }.scene-route i:nth-child(2) { background:#36c18d; animation-delay:.3s; }.scene-route i:nth-child(3) { background:#eaf6f1; animation-delay:.6s; }
.scene-team .scene-route { display:flex; transform:rotate(-16deg); }.scene-team .scene-route i { border-radius:13px; background:#36c18d; }.scene-team .scene-route i:nth-child(2) { background:#f0b429; }.scene-team .scene-route i:nth-child(3) { background:#36c18d; }
.scene-standards .scene-door,.scene-standards .scene-person,.scene-standards .scene-route,.scene-standards .scene-halo { display:none; }.scene-standards .scene-star,.scene-finish .scene-star { display:grid; place-items:center; position:absolute; inset:0; color:#f0b429; font-size:110px; animation:standardGlow 2s ease-in-out infinite; }
.scene-recovery .scene-door,.scene-recovery .scene-person,.scene-recovery .scene-route { display:none; }.scene-recovery .scene-signal { display:flex; position:absolute; inset:0; align-items:center; justify-content:center; gap:16px; }.scene-signal i { width:24px; height:120px; border-radius:20px; background:#f0b429; animation:calmWave 1.4s ease-in-out infinite; }.scene-signal i:nth-child(2) { height:210px; background:#36c18d; animation-delay:.18s; }.scene-signal i:nth-child(3) { height:150px; animation-delay:.36s; }
.scene-finish .scene-door,.scene-finish .scene-person,.scene-finish .scene-route { display:none; }
.lesson-media { min-width:0; overflow:hidden; border-radius:28px; background:#062614; box-shadow:0 26px 55px rgba(6,38,20,.2); }.lesson-media>audio { display:none; }.motion-stage { height:360px; position:relative; overflow:hidden; }.motion-stage .hospitality-animation { height:100%; border-radius:0; box-shadow:none; }.motion-stage::after { content:""; position:absolute; inset:48% 0 0; background:linear-gradient(transparent,rgba(4,28,15,.95)); pointer-events:none; }.motion-stage.playing .hospitality-animation { animation:mediaFocus 8s ease-in-out infinite; }.motion-caption { max-width:90%; position:absolute; left:24px; right:24px; bottom:34px; z-index:2; color:white; animation:captionIn .45s ease-out; }.motion-caption span,.motion-caption strong,.motion-caption p { display:block; }.motion-caption span { color:#f0b429; font-size:8px; font-weight:900; letter-spacing:.17em; }.motion-caption strong { margin-top:7px; font-size:20px; }.motion-caption p { margin:5px 0 0; color:#c6dbd2; font-size:10px; line-height:1.55; }.motion-timeline { display:grid; grid-template-columns:repeat(auto-fit,minmax(18px,1fr)); gap:5px; position:absolute; left:24px; right:24px; bottom:16px; z-index:3; }.motion-timeline i { height:3px; border-radius:3px; background:rgba(255,255,255,.2); }.motion-timeline i.active { background:#efbd4c; }.narration-now { min-height:112px; padding:19px 22px; border-top:1px solid rgba(255,255,255,.09); color:#dcebe5; background:#092c1a; }.narration-now>span,.narration-now>strong { display:block; }.narration-now>span { color:#e6b64b; font-size:7px; font-weight:900; letter-spacing:.15em; }.narration-now>strong { margin-top:6px; font-family:Georgia,serif; font-size:17px; }.narration-now>p { margin:5px 0 0; color:#9fbdb0; font-size:9px; line-height:1.6; }.narration-now>div { height:3px; margin-top:13px; overflow:hidden; border-radius:3px; background:rgba(255,255,255,.12); }.narration-now>div i { height:100%; display:block; border-radius:3px; background:#efbd4c; transition:width .35s ease; }.narration-now.active { background:linear-gradient(135deg,#0a3520,#0b3926); }.media-controls { min-height:70px; display:grid; grid-template-columns:1fr auto auto auto; gap:7px; align-items:center; padding:12px 14px; border-top:1px solid rgba(255,255,255,.09); color:#e5f2ed; }.media-controls>div span,.media-controls>div small { display:block; }.media-controls>div span { color:#e6b64b; font-size:7px; font-weight:900; letter-spacing:.13em; }.media-controls>div small { margin-top:4px; color:#789a8b; font-size:7px; }.media-controls button { min-height:38px; display:flex; align-items:center; gap:6px; padding:0 10px; border:1px solid rgba(255,255,255,.14); border-radius:8px; color:#dcebe5; background:rgba(255,255,255,.06); font-size:8px; font-weight:850; cursor:pointer; }.media-controls button:first-of-type { color:#163b28; border-color:#d29d2e; background:#efbd4c; }.media-controls button:disabled { opacity:.4; cursor:not-allowed; }.media-controls button>span { width:12px; text-align:center; }.media-controls .narration-restart { color:#b9d1c7; background:transparent; }
.illustrated-lesson-scene { background:#072718; }.illustrated-lesson-scene img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; animation:illustratedSceneIn .55s ease-out both; }.motion-stage.playing .illustrated-lesson-scene img { animation:illustratedSceneIn .55s ease-out both,illustratedSceneDrift 8s ease-in-out both; }
.guest-journey-animation { background:linear-gradient(145deg,#082d1c 0%,#0b4b32 58%,#123c2a 100%); }
.guest-journey-room { position:absolute; inset:30px 30px 96px; border:1px solid rgba(255,255,255,.13); border-radius:20px; background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px); background-size:28px 28px; }
.guest-journey-room>span { position:absolute; color:#a7cbb9; font-size:7px; font-weight:900; letter-spacing:.12em; }
.room-door { left:-1px; top:34%; padding:8px 7px; border-left:4px solid #efbd4c; }.room-exit { right:-1px; bottom:24%; padding:8px 7px; border-right:4px solid #efbd4c; }.room-pass { right:28px; top:20px; padding:7px 13px; border:1px solid rgba(255,255,255,.18); border-radius:5px; }.room-table { width:62px; height:62px; border:2px solid rgba(198,219,210,.25); border-radius:50%; }.table-a { left:34%; top:24%; }.table-b { right:27%; bottom:18%; }
.guest-journey-track { position:absolute; left:24px; right:24px; bottom:24px; z-index:3; display:grid; grid-template-columns:repeat(6,1fr); gap:5px; }
.guest-journey-track::before { content:""; position:absolute; left:8%; right:8%; top:13px; height:2px; background:rgba(255,255,255,.18); }
.guest-journey-track>span { position:relative; display:grid; justify-items:center; gap:6px; color:#89aa9b; font-size:7px; font-weight:800; text-transform:uppercase; }
.guest-journey-track i { position:relative; z-index:2; width:28px; height:28px; display:grid; place-items:center; border:2px solid #567c69; border-radius:50%; background:#123c2a; font-style:normal; transition:.35s ease; }
.guest-journey-track span.complete i { color:#123c2a; border-color:#69d5a6; background:#69d5a6; }.guest-journey-track span.active { color:#ffd267; }.guest-journey-track span.active i { color:#173824; border-color:#efbd4c; background:#efbd4c; box-shadow:0 0 0 8px rgba(239,189,76,.14); transform:scale(1.1); }
.animated-guest,.animated-manager { position:absolute; z-index:2; display:grid; justify-items:center; transition:left .8s cubic-bezier(.2,.8,.2,1),top .8s cubic-bezier(.2,.8,.2,1); }
.animated-guest { left:10%; top:47%; }.animated-guest i { width:30px; height:30px; border:7px solid #f4d68a; border-radius:50%; background:#f8f0dc; box-shadow:0 16px 0 -2px #f8f0dc; animation:guestPulse 1.8s ease-in-out infinite; }.animated-manager { left:25%; top:31%; }.animated-manager i { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; color:#0b3824; background:#69d5a6; font-style:normal; box-shadow:0 8px 24px rgba(0,0,0,.25); animation:managerCoach 2s ease-in-out infinite; }.animated-guest b,.animated-manager b { margin-top:17px; color:#dcebe5; font-size:6px; letter-spacing:.13em; }
.guest-stage-2 .animated-guest { left:24%; top:42%; }.guest-stage-2 .animated-manager { left:34%; top:29%; }.guest-stage-3 .animated-guest { left:39%; top:43%; }.guest-stage-3 .animated-manager { left:50%; top:29%; }.guest-stage-4 .animated-guest { left:55%; top:48%; }.guest-stage-4 .animated-manager { left:63%; top:30%; }.guest-stage-5 .animated-guest { left:68%; top:46%; }.guest-stage-5 .animated-manager { left:57%; top:27%; }.guest-stage-6 .animated-guest { left:82%; top:50%; }.guest-stage-6 .animated-manager { left:70%; top:30%; }
.manager-impact { position:absolute; z-index:3; left:50%; top:34px; width:min(62%,360px); padding:13px 16px; border:1px solid rgba(255,255,255,.14); border-radius:12px; color:white; background:rgba(5,32,19,.82); box-shadow:0 14px 34px rgba(0,0,0,.2); animation:captionIn .45s ease-out; transform:translateX(-50%); }.manager-impact span,.manager-impact strong { display:block; }.manager-impact span { color:#efbd4c; font-size:7px; font-weight:900; letter-spacing:.16em; }.manager-impact strong { margin-top:5px; font-family:Georgia,serif; font-size:16px; }
.foundation-story { color:#eff8f4; background:#062919; }
.foundation-story::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 82% 18%,rgba(80,204,152,.15),transparent 27%),linear-gradient(145deg,rgba(255,255,255,.035),transparent 48%); }
.foundation-story-header { height:38px; position:absolute; z-index:4; left:20px; right:20px; top:13px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.12); }
.foundation-story-header span,.foundation-story-header b { color:#9fc3b2; font-size:7px; font-weight:900; letter-spacing:.16em; }
.foundation-story-header b { color:#efbd4c; }
.foundation-story-stage { position:absolute; z-index:1; inset:57px 20px 82px; animation:storyBeatIn .5s cubic-bezier(.2,.8,.2,1) both; }
.foundation-beat-rail { position:absolute; z-index:5; left:20px; right:20px; bottom:14px; display:grid; grid-template-columns:repeat(6,1fr); gap:4px; }
.foundation-beat-rail::before { content:""; position:absolute; left:5%; right:5%; top:10px; height:1px; background:rgba(255,255,255,.16); }
.foundation-beat-rail>span { min-width:0; position:relative; display:grid; justify-items:center; gap:4px; color:#6f9985; text-align:center; }
.foundation-beat-rail i { width:21px; height:21px; position:relative; z-index:2; display:grid; place-items:center; border:1px solid #456e5a; border-radius:50%; background:#0c3624; font-size:7px; font-style:normal; transition:.35s ease; }
.foundation-beat-rail b { max-width:68px; overflow:hidden; font-size:6px; font-weight:800; line-height:1.15; text-overflow:ellipsis; white-space:nowrap; }
.foundation-beat-rail .complete i { color:#07301d; border-color:#67d4a5; background:#67d4a5; }.foundation-beat-rail .active { color:#ffd269; }.foundation-beat-rail .active i { color:#173822; border-color:#efbd4c; background:#efbd4c; box-shadow:0 0 0 5px rgba(239,189,76,.13); transform:scale(1.08); }
.foundation-story article,.foundation-story .arrival-message,.foundation-story .prepare-verdict,.foundation-story .recovery-owner,.foundation-story .next-shift-card { border:1px solid rgba(255,255,255,.12); background:rgba(7,44,27,.78); }
.foundation-story article.active { border-color:#efbd4c; background:rgba(25,91,59,.9); box-shadow:0 0 0 3px rgba(239,189,76,.1); transform:translateY(-2px); }.foundation-story article.complete { border-color:rgba(103,212,165,.42); }
.foundation-story article span,.foundation-story article strong,.foundation-story article small { display:block; }.foundation-story article strong { font-size:8px; }.foundation-story article small { margin-top:2px; color:#9fc3b2; font-size:6px; line-height:1.35; }
.prepare-board { height:100%; display:grid; grid-template-columns:72px 1fr 112px; gap:12px; align-items:stretch; }
.prepare-route { display:grid; grid-template-rows:auto repeat(4,1fr); justify-items:center; padding:10px 5px; border:1px solid rgba(255,255,255,.12); border-radius:10px; background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px); background-size:100% 28px; }.prepare-route span { color:#9fc3b2; font-size:6px; font-weight:900; letter-spacing:.12em; }.prepare-route i { width:18px; height:18px; align-self:center; border:3px solid #efbd4c; border-radius:50%; background:#f9f2df; box-shadow:0 0 0 5px rgba(239,189,76,.1); }.prepare-route i:nth-of-type(2) { border-radius:4px; border-color:#67d4a5; }.prepare-route i:nth-of-type(3) { border-color:#83a99a; }.prepare-route i:nth-of-type(4) { border-radius:3px 3px 9px 9px; }
.prepare-checks { display:grid; grid-template-columns:repeat(2,1fr); gap:6px; }.prepare-checks article { display:flex; gap:7px; align-items:center; padding:7px; border-radius:8px; transition:.35s ease; }.prepare-checks article>span,.order-pipeline article>span,.recovery-path article>span,.farewell-timeline article>span { width:19px; height:19px; flex:0 0 auto; display:grid; place-items:center; border-radius:6px; color:#0d3423; background:#87ac9b; font-size:7px; font-weight:950; }.prepare-checks article.active>span,.order-pipeline article.active>span,.recovery-path article.active>span,.farewell-timeline article.active>span { background:#efbd4c; }.prepare-checks article.complete>span,.order-pipeline article.complete>span,.recovery-path article.complete>span,.farewell-timeline article.complete>span { background:#67d4a5; }
.prepare-verdict { display:flex; flex-direction:column; justify-content:center; padding:11px; border-radius:10px; }.prepare-verdict span { color:#9fc3b2; font-size:6px; font-weight:900; letter-spacing:.12em; }.prepare-verdict strong { margin-top:8px; color:#efbd4c; font:700 13px/1.15 Georgia,serif; }
.arrival-board { height:100%; display:grid; grid-template-rows:auto 1fr auto; gap:10px; }.arrival-capacity { justify-self:end; display:grid; grid-template-columns:auto auto; gap:3px 12px; align-items:center; padding:8px 11px; border:1px solid rgba(255,255,255,.13); border-radius:8px; background:#0a3825; }.arrival-capacity span { color:#9fc3b2; font-size:6px; letter-spacing:.12em; }.arrival-capacity strong { color:#efbd4c; font-size:12px; }.arrival-capacity small { grid-column:1/3; color:#82a996; font-size:6px; }
.arrival-flow { --arrival-progress:0%; position:relative; display:grid; grid-template-columns:repeat(6,1fr); align-items:center; }.arrival-line { height:3px; position:absolute; left:7%; right:7%; top:38%; background:linear-gradient(90deg,#67d4a5 var(--arrival-progress),rgba(255,255,255,.18) var(--arrival-progress)); }.arrival-flow>span { position:relative; z-index:2; display:grid; justify-items:center; gap:7px; color:#739a87; }.arrival-flow>span i { width:27px; height:27px; display:grid; place-items:center; border:2px solid #4a725f; border-radius:50%; background:#0b3422; font-size:7px; font-style:normal; }.arrival-flow>span b { font-size:6px; letter-spacing:.08em; }.arrival-flow>span.complete i { color:#08301e; border-color:#67d4a5; background:#67d4a5; }.arrival-flow>span.active { color:#efbd4c; }.arrival-flow>span.active i { color:#123a26; border-color:#efbd4c; background:#efbd4c; box-shadow:0 0 0 7px rgba(239,189,76,.12); }
.arrival-guest { position:absolute; z-index:3; left:var(--arrival-left); top:-5px; display:grid; justify-items:center; transition:left .8s cubic-bezier(.2,.8,.2,1); transform:translateX(-50%); }.arrival-guest i { width:18px; height:18px; border:4px solid #efbd4c; border-radius:50%; background:#f9f2df; box-shadow:0 11px 0 -2px #f9f2df; }.arrival-guest b { margin-top:12px; color:white; font-size:5px; }
.arrival-message { padding:8px 12px; border-radius:8px; }.arrival-message span { color:#9fc3b2; font-size:6px; font-weight:900; letter-spacing:.12em; }.arrival-message strong { display:block; margin-top:3px; color:#f8f1dc; font:700 11px Georgia,serif; }
.order-board { height:100%; display:grid; grid-template-columns:105px 1fr 120px; gap:10px; }.order-table,.order-ticket { border:1px solid rgba(255,255,255,.13); border-radius:11px; background:#0b3825; }.order-table { display:grid; align-content:center; justify-items:center; padding:10px; }.order-table>span,.order-ticket>span { color:#9fc3b2; font-size:6px; font-weight:900; letter-spacing:.12em; }.order-table>strong { margin:7px 0 13px; color:#efbd4c; font-size:9px; }.order-table>div { display:flex; gap:7px; }.order-table i { width:24px; height:24px; display:grid; place-items:center; border:2px solid #71a38c; border-radius:50%; color:#bdd6ca; font-size:6px; font-style:normal; }
.order-pipeline { display:grid; grid-template-columns:repeat(2,1fr); gap:5px; }.order-pipeline article,.recovery-path article,.farewell-timeline article { display:flex; gap:6px; align-items:center; padding:6px; border-radius:8px; transition:.35s ease; }.order-ticket { display:flex; flex-direction:column; justify-content:center; padding:11px; transform:rotate(1deg); }.order-ticket>b { margin-top:6px; color:#abc8ba; font-size:6px; }.order-ticket>strong { margin-top:12px; padding-top:8px; border-top:1px dashed rgba(255,255,255,.2); color:#efbd4c; font-size:7px; }.order-ticket.active { border-color:#67d4a5; animation:ticketAccepted .65s ease both; }
.meal-board { height:100%; display:grid; grid-template-columns:105px 1fr; grid-template-rows:1fr auto; gap:8px 12px; }.meal-pass { position:relative; display:flex; flex-direction:column; justify-content:center; padding:10px; overflow:hidden; border:1px solid rgba(255,255,255,.13); border-radius:10px; background:#0a3825; }.meal-pass span { color:#9fc3b2; font-size:6px; letter-spacing:.12em; }.meal-pass strong { margin-top:7px; color:#efbd4c; font-size:10px; }.meal-pass i { width:70%; height:3px; margin-top:12px; background:#67d4a5; box-shadow:25px 9px 0 #efbd4c,-8px 18px 0 #80a995; animation:passPulse 1.8s ease-in-out infinite; }
.meal-room { position:relative; display:grid; grid-template-columns:repeat(2,1fr); gap:7px; }.meal-room article { position:relative; z-index:2; padding:8px; border-radius:12px 12px 12px 4px; transition:.35s ease; }.meal-room article.active::after { content:"MANAGER SUPPORT"; position:absolute; right:6px; top:6px; color:#efbd4c; font-size:5px; font-weight:900; letter-spacing:.08em; }.manager-scan { position:absolute; inset:-8px; pointer-events:none; border-radius:50%; background:conic-gradient(from 25deg,transparent 0 305deg,rgba(103,212,165,.18) 330deg,transparent 350deg); animation:roomScan 4s linear infinite; }
.meal-loop { grid-column:1/3; display:flex; align-items:center; gap:7px; padding:6px 10px; border:1px solid rgba(255,255,255,.12); border-radius:8px; background:#0a3825; }.meal-loop span { color:#a9c7b9; font-size:6px; font-weight:900; letter-spacing:.1em; }.meal-loop i { color:#67d4a5; font-style:normal; }.meal-loop strong { margin-left:auto; color:#efbd4c; font-size:7px; }
.recovery-board { height:100%; display:grid; grid-template-columns:120px 1fr; grid-template-rows:1fr auto; gap:8px 12px; }.recovery-guest { display:flex; flex-direction:column; justify-content:center; padding:11px; border:1px solid rgba(255,255,255,.13); border-radius:11px; background:#0a3825; }.recovery-guest span,.recovery-owner span { color:#9fc3b2; font-size:6px; font-weight:900; letter-spacing:.1em; }.recovery-guest strong { margin-top:7px; color:#efbd4c; font:700 11px/1.15 Georgia,serif; }.recovery-guest>div { display:flex; gap:6px; margin-top:15px; }.recovery-guest i { width:30px; height:5px; border-radius:8px; background:#b9523f; transition:.4s ease; }.recovery-guest i.heard { background:#efbd4c; }.recovery-guest i.restored { background:#67d4a5; }
.recovery-path { display:grid; grid-template-columns:repeat(2,1fr); gap:5px; }.recovery-owner { grid-column:1/3; display:flex; align-items:center; justify-content:space-between; padding:7px 10px; border-radius:8px; }.recovery-owner strong { color:#efbd4c; font-size:7px; }
.farewell-board { height:100%; display:grid; grid-template-columns:1fr 112px; grid-template-rows:1fr auto; gap:8px 12px; }.farewell-timeline { display:grid; grid-template-columns:repeat(2,1fr); gap:5px; }.farewell-door { display:grid; align-content:center; justify-items:center; position:relative; overflow:hidden; border:1px solid rgba(255,255,255,.13); border-radius:60px 60px 10px 10px; background:#0a3825; }.farewell-door span { color:#9fc3b2; font-size:6px; letter-spacing:.12em; }.farewell-door i { width:50px; height:75px; margin:8px 0; border:3px solid #efbd4c; border-bottom:0; border-radius:27px 27px 0 0; background:#0b4a32; transform-origin:left; transition:.8s ease; }.farewell-door i.opening { transform:perspective(150px) rotateY(-48deg); }.farewell-door b { width:90px; color:#efbd4c; font-size:6px; line-height:1.3; text-align:center; }.next-shift-card { grid-column:1/3; display:flex; align-items:center; justify-content:space-between; padding:7px 10px; border-radius:8px; }.next-shift-card span { color:#9fc3b2; font-size:6px; font-weight:900; letter-spacing:.1em; }.next-shift-card strong { color:#a9c7b9; font-size:7px; }.next-shift-card.active { border-color:#efbd4c; background:#18563a; animation:storyBeatIn .5s ease both; }.next-shift-card.active strong { color:#efbd4c; }
@keyframes storyBeatIn { from { opacity:.45; transform:translateY(7px); } to { opacity:1; transform:none; } } @keyframes ticketAccepted { 50% { transform:rotate(-2deg) scale(1.03); } } @keyframes passPulse { 50% { transform:translateX(9px); opacity:.7; } } @keyframes roomScan { to { transform:rotate(360deg); } }
@media(max-width:700px) { .foundation-story-stage { inset:52px 12px 76px; }.foundation-story-header { left:12px; right:12px; }.foundation-beat-rail { left:10px; right:10px; }.foundation-beat-rail b { display:none; }.prepare-board { grid-template-columns:50px 1fr; }.prepare-verdict { display:none; }.order-board { grid-template-columns:80px 1fr; }.order-ticket { display:none; }.recovery-board { grid-template-columns:90px 1fr; }.farewell-board { grid-template-columns:1fr 78px; }.foundation-story article small { display:none; } }
@media(prefers-reduced-motion:reduce) { .foundation-story-stage,.order-ticket.active,.next-shift-card.active,.manager-scan,.meal-pass i { animation:none!important; }.arrival-guest,.farewell-door i { transition:none; } }
@keyframes guestPulse { 50% { transform:translateY(-5px); } } @keyframes managerCoach { 50% { transform:translateY(-4px) rotate(-2deg); } }
.coach-bubble { display:flex; gap:14px; align-items:center; margin-bottom:34px; }.coach-mark { width:54px; height:54px; flex:0 0 auto; display:grid; place-items:center; color:#173b28; border-radius:17px; background:var(--gold); font-weight:950; box-shadow:0 7px 0 #bd8210; }.coach-bubble small { color:#13845e; font-size:8px; letter-spacing:.15em; font-weight:900; }.coach-bubble p { margin:5px 0 0; color:#648673; font-size:11px; }
.challenge-activity { max-width:790px; }.challenge-activity h1 { font-size:clamp(29px,3.7vw,43px); margin-bottom:28px; }.answer-grid { display:grid; gap:12px; }.answer-grid button { min-height:68px; display:flex; gap:14px; align-items:center; padding:12px 18px; border:2px solid #d7e8e0; border-bottom-width:5px; border-radius:13px; background:white; color:#315441; text-align:left; cursor:pointer; font-weight:700; transition:transform .15s,border-color .15s,background .15s; }.answer-grid button:hover { transform:translateY(-2px); border-color:#9fc1b0; }.answer-grid button>span { width:36px; height:36px; flex:0 0 auto; display:grid; place-items:center; border:1px solid #cee1d8; border-radius:9px; background:#f6f8fa; color:#608571; }
.answer-grid button.selected { color:#075a40; border-color:#28b77f; background:#edfbf6; }.answer-grid button.selected>span,.answer-grid button.correct-answer>span { color:white; border-color:#159768; background:#159768; }
.application-activity { display:grid; grid-template-columns:.82fr 1.18fr; overflow:hidden; border:1px solid var(--line); border-radius:22px; background:white; box-shadow:0 20px 50px rgba(31,74,53,.09); }.reflection-visual { min-height:450px; position:relative; padding:22px; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; background:#072e1b; }.reflection-visual .hospitality-animation { position:absolute; inset:0; height:100%; border-radius:0; box-shadow:none; opacity:.78; }.reflection-visual>span { position:relative; z-index:2; color:#ffd266; font-size:8px; letter-spacing:.18em; font-weight:900; }.reflection-copy { padding:50px; }.reflection-copy h1 { font-size:37px; }.reflection-copy>p { color:#5e7f6d; line-height:1.6; }.reflection-copy label { display:block; margin:24px 0 8px; font-size:9px; font-weight:900; }.reflection-copy textarea { width:100%; resize:vertical; padding:14px; border:2px solid #d9e8e1; border-radius:11px; color:#264a36; font:inherit; outline:none; }.reflection-copy textarea:focus { border-color:#24b77e; box-shadow:0 0 0 4px rgba(36,183,126,.1); }.reflection-copy>small { display:block; margin-top:7px; color:#719280; font-size:9px; }
.celebration-activity { max-width:690px; text-align:center; }.celebration-activity h1 { margin-top:16px; }.celebration-activity>p { width:min(540px,100%); margin:0 auto; color:#638672; font-size:15px; line-height:1.7; }
.celebration-burst { width:180px; height:180px; position:relative; display:grid; place-items:center; margin:0 auto 22px; }.celebration-burst>span { width:105px; height:105px; display:grid; place-items:center; position:relative; z-index:2; border:10px solid #dcf7ed; border-radius:50%; background:#1eb47d; color:white; font-size:50px; box-shadow:0 14px 34px rgba(30,180,125,.25); animation:celebratePop .7s cubic-bezier(.2,1.6,.4,1); }.celebration-burst i { width:12px; height:28px; position:absolute; top:3px; left:84px; border-radius:8px; background:#f0b429; transform-origin:6px 87px; animation:confetti 1.8s ease-in-out infinite; }.celebration-burst i:nth-child(2) { transform:rotate(72deg); background:#1eb47d; }.celebration-burst i:nth-child(3) { transform:rotate(144deg); }.celebration-burst i:nth-child(4) { transform:rotate(216deg); background:#1eb47d; }.celebration-burst i:nth-child(5) { transform:rotate(288deg); }
.reward-row { display:grid; grid-template-columns:repeat(3,1fr); margin-top:32px; overflow:hidden; border:1px solid #dbebe3; border-radius:13px; background:white; }.reward-row>div { padding:18px; border-right:1px solid #dbebe3; }.reward-row>div:last-child { border:0; }.reward-row strong,.reward-row small { display:block; }.reward-row strong { color:#173b28; font-size:17px; }.reward-row small { margin-top:4px; color:#84a192; font-size:7px; letter-spacing:.12em; }
.activity-footer { min-height:98px; display:flex; align-items:center; justify-content:flex-end; gap:14px; padding:18px clamp(24px,6vw,80px); position:sticky; bottom:0; z-index:4; border-top:1px solid var(--line); background:rgba(255,255,255,.96); box-shadow:0 -8px 30px rgba(31,74,53,.05); backdrop-filter:blur(12px); }
.activity-back,.activity-next { min-width:120px; min-height:48px; padding:0 22px; border-radius:11px; font-weight:900; text-transform:uppercase; letter-spacing:.05em; font-size:10px; cursor:pointer; }.activity-back { margin-right:auto; border:2px solid #d6e7df; border-bottom-width:5px; background:white; color:#628471; }.activity-next { border:0; border-bottom:5px solid #0a6d4a; color:white; background:#159768; }.activity-next:disabled { border-bottom-color:#b8cac1; background:#d6e4dd; color:#94aca0; cursor:not-allowed; }
.activity-footer.correct { min-height:132px; border-top-color:#a8e3cd; background:#eafbf4; }.activity-footer.wrong { min-height:132px; border-top-color:#f3c3b9; background:#fff1ee; }.activity-footer.wrong .activity-next { border-bottom-color:#b64b37; background:#df654d; }
.feedback-message { flex:1; display:flex; gap:13px; align-items:center; }.feedback-message>span { width:48px; height:48px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:#159768; color:white; font-size:24px; }.wrong .feedback-message>span { background:#df654d; }.feedback-message strong { color:#126344; font-size:15px; }.wrong .feedback-message strong { color:#a9402f; }.feedback-message p { margin:5px 0 0; color:#557366; font-size:10px; }.wrong .feedback-message p { color:#805f59; }

@keyframes activityIn { from { opacity:0; transform:translateY(18px) scale(.985); } to { opacity:1; transform:none; } }
@keyframes nodeBounce { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-7px); } }
@keyframes carePulse { 0%,100% { transform:scale(1) rotate(0); } 50% { transform:scale(1.12) rotate(8deg); } }
@keyframes halo { 0%,100% { opacity:.45; transform:translate(-50%,-50%) scale(.94); } 50% { opacity:1; transform:translate(-50%,-50%) scale(1.06); } }
@keyframes doorOpen { 0%,25%,100% { transform:perspective(300px) rotateY(0); } 50%,75% { transform:perspective(300px) rotateY(-62deg); } }
@keyframes guestMove { 0%,100% { transform:translateX(-8px); } 50% { transform:translateX(15px); } }
@keyframes trayFloat { 0%,100% { transform:translate(-50%,-50%) translateY(0); } 50% { transform:translate(-50%,-50%) translateY(-12px); } }
@keyframes routeNode { 0%,100% { transform:scale(.9); } 50% { transform:scale(1.12); } }
@keyframes standardGlow { 0%,100% { transform:scale(.9) rotate(-5deg); text-shadow:0 0 0 rgba(240,180,41,0); } 50% { transform:scale(1.08) rotate(5deg); text-shadow:0 0 35px rgba(240,180,41,.65); } }
@keyframes calmWave { 0%,100% { transform:scaleY(.65); } 50% { transform:scaleY(1); } }
@keyframes mediaFocus { 0%,100% { transform:scale(1); } 50% { transform:scale(1.035); } }
@keyframes captionIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
@keyframes illustratedSceneIn { from { opacity:.2; filter:saturate(.8); } to { opacity:1; filter:saturate(1); } }
@keyframes illustratedSceneDrift { from { transform:scale(1.015); } to { transform:scale(1.055); } }
@keyframes celebratePop { from { transform:scale(.2) rotate(-30deg); opacity:0; } to { transform:none; opacity:1; } }
@keyframes confetti { 0%,100% { opacity:.45; margin-top:7px; } 50% { opacity:1; margin-top:-6px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.01ms!important; } }
@media (max-width:900px) {
  .immersive-shell { grid-template-columns:76px minmax(0,1fr); }.path-rail .brand>span,.mini-path-title,.mini-node span { display:none; }.mini-node { justify-content:center; }.path-rail { padding-inline:10px; }
  .concept-activity,.illustrated-concept-activity { grid-template-columns:1fr; }.hospitality-animation { height:250px; }.motion-stage { height:300px; }.application-activity { grid-template-columns:1fr; }.reflection-visual { min-height:210px; }.reflection-copy { padding:32px; }
}
@media (max-width:700px) {
  .path-shell { display:grid; grid-template-columns:0 1fr; }.path-shell>.main-sidebar { display:none; }.path-header { height:58px; padding:0 16px; }.path-content { width:calc(100% - 24px); margin-top:16px; }.unit-banner { padding:23px; }.unit-banner h1 { font-size:24px; }.unit-banner>div:last-child { width:82px; height:82px; border-width:6px; }.unit-banner>div:last-child strong { font-size:18px; }.unit-banner p { display:none; }
  .learning-path { min-height:1010px; }.path-stop.stop-1 { padding-left:7%; }.path-stop.stop-2 { padding-right:7%; }.stop-1 .path-popover { left:calc(7% + 82px); }.stop-2 .path-popover { right:calc(7% + 82px); }.path-popover { width:155px; }.stop-0 .path-popover { left:calc(50% + 46px); }
  .immersive-shell { display:block; }.path-rail { display:none; }.lesson-progress-bar { height:66px; grid-template-columns:34px 1fr 38px; gap:12px; padding:0 12px; }.lesson-progress-bar .care-score { width:38px; min-width:0; grid-template-columns:1fr; }.lesson-progress-bar .care-score small,.lesson-progress-bar .care-score strong { display:none; }.activity-wrap { padding:22px 14px 125px; align-items:start; }.activity-card h1 { font-size:31px; }.hospitality-animation { height:220px; border-radius:19px; }.lesson-media { border-radius:19px; }.motion-stage { height:260px; }.media-controls { grid-template-columns:1fr 1fr; }.media-controls>div { grid-column:1/3; }.media-controls button { justify-content:center; }.concept-activity { gap:24px; }.concept-pills>div { grid-template-columns:100px 1fr; }.coach-bubble { margin-bottom:22px; }.challenge-activity h1 { font-size:28px; }.answer-grid button { min-height:62px; }.reflection-copy { padding:26px 20px; }.reflection-copy h1 { font-size:30px; }.reward-row strong { font-size:13px; }.activity-footer { min-height:86px; padding:13px; position:fixed; left:0; right:0; }.activity-footer.correct,.activity-footer.wrong { min-height:160px; flex-wrap:wrap; }.feedback-message { flex-basis:100%; }.activity-back,.activity-next { min-width:105px; }.activity-footer.correct .activity-back,.activity-footer.wrong .activity-back { display:none; }
}

/* Academy account and cloud-save states */
.login-preview button { border:0; padding:0; background:transparent; color:var(--navy-2); font-size:10px; font-weight:800; cursor:pointer; }
.login-button:disabled { opacity:.65; cursor:wait; }
.academy-loading { min-height:100vh; display:grid; place-content:center; justify-items:center; gap:18px; color:#608370; background:#f4f7fb; }
.academy-loading img { width:86px; height:86px; object-fit:contain; animation:carePulse 2s ease-in-out infinite; }
.academy-loading p { font-size:11px; font-weight:800; letter-spacing:.08em; }
.workspace-bar>div>.workspace-avatar { width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--gold); border-radius:8px; background:var(--gold); color:#173d28; font-size:9px; font-weight:900; }
.live-badge.error { max-width:360px; color:#a9402f; border-color:#f3c3b9; background:#fff1ee; }
.live-badge.error i { background:#df654d; box-shadow:0 0 0 4px rgba(223,101,77,.12); }

/* Public Academy landing page */
.academy-landing { min-height:100vh; overflow:hidden; color:#173b28; background:#fbf8f1; }
.academy-landing a { color:inherit; text-decoration:none; }
.landing-nav { height:88px; display:flex; align-items:center; gap:42px; padding:0 clamp(24px,6vw,92px); position:relative; z-index:5; border-bottom:1px solid rgba(255,255,255,.12); color:#f8f0e2; background:#08311d; }
.landing-brand { display:flex; align-items:center; gap:11px; margin-right:auto; }
.landing-brand img { width:49px; height:49px; object-fit:contain; }
.landing-brand span,.landing-brand strong,.landing-brand small { display:block; }
.landing-brand strong { font-family:Georgia,serif; font-size:15px; font-weight:500; letter-spacing:.02em; }
.landing-brand small { margin-top:2px; color:#d9aa47; font-size:8px; font-weight:900; letter-spacing:.26em; text-transform:uppercase; }
.landing-nav nav { display:flex; gap:30px; }
.landing-nav nav a,.landing-login { color:#dbe8e3; font-size:10px; font-weight:800; }
.landing-nav nav a:hover,.landing-login:hover { color:#f0b429; }
.landing-actions { display:flex; align-items:center; gap:21px; }
.landing-join { padding:12px 18px; border:1px solid #d9aa47; border-radius:7px; color:#103a24; background:#f0b429; font-size:9px; font-weight:950; letter-spacing:.06em; text-transform:uppercase; }
.landing-hero { min-height:710px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr); gap:clamp(40px,7vw,110px); align-items:center; padding:80px clamp(24px,7vw,110px) 100px; color:#f8f0e2; background:radial-gradient(circle at 78% 38%,rgba(35,161,114,.18),transparent 30%),linear-gradient(135deg,#08311d 0%,#0b3822 62%,#0a342a 100%); }
.landing-kicker { display:block; color:#d8a93e; font-size:9px; font-weight:950; letter-spacing:.22em; }
.hero-copy h1 { max-width:790px; margin:22px 0 24px; font-family:Georgia,serif; font-size:clamp(42px,5vw,72px); font-weight:400; line-height:1.04; letter-spacing:-.035em; }
.hero-copy h1 em { color:#efc66c; font-weight:400; }
.hero-copy>p { max-width:650px; color:#bdd2c9; font-size:15px; line-height:1.75; }
.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:38px; }
.landing-primary { min-height:55px; display:inline-flex; align-items:center; justify-content:center; gap:22px; padding:0 25px; border-radius:9px; color:#103a24!important; background:#efb52d; box-shadow:0 7px 0 #b87e11; font-size:11px; font-weight:950; letter-spacing:.035em; }
.landing-primary:hover { transform:translateY(-2px); box-shadow:0 9px 0 #b87e11; }
.landing-secondary { color:#f8f0e2!important; border-bottom:1px solid rgba(248,240,226,.4); padding-bottom:4px; font-size:10px; font-weight:800; }
.hero-proof { display:flex; flex-wrap:wrap; gap:0; margin-top:48px; }
.hero-proof span { padding:0 22px; border-left:1px solid rgba(255,255,255,.15); color:#9fbdb0; font-size:9px; letter-spacing:.04em; }
.hero-proof span:first-child { padding-left:0; border:0; }
.hero-proof strong { margin-right:4px; color:#f7efe2; font-size:17px; }
.hero-course-preview { max-width:570px; position:relative; }
.preview-glow { width:420px; height:420px; position:absolute; top:50%; left:50%; border-radius:50%; background:rgba(28,179,123,.12); filter:blur(25px); transform:translate(-50%,-50%); }
.preview-card { position:relative; z-index:2; padding:27px 29px 30px; border:1px solid rgba(255,255,255,.15); border-radius:23px; color:#264b39; background:#fff; box-shadow:0 35px 80px rgba(0,0,0,.32); transform:rotate(1.5deg); }
.preview-top { display:flex; justify-content:space-between; color:#779184; font-size:8px; font-weight:900; letter-spacing:.12em; }
.preview-top strong { color:#159768; }
.preview-meter { height:6px; margin:10px 0 20px; overflow:hidden; border-radius:4px; background:#e8f0ed; }.preview-meter i { width:25%; height:100%; display:block; background:#1fb37f; }
.preview-scene { height:174px; display:flex; align-items:end; justify-content:center; gap:10px; position:relative; overflow:hidden; border-radius:16px; padding:18px; color:white; background:linear-gradient(145deg,#0a3924,#0d473f); }
.preview-scene>span { position:relative; z-index:2; padding:7px 9px; border:1px solid rgba(255,255,255,.22); border-radius:12px; font-size:7px; font-weight:900; letter-spacing:.12em; }
.preview-star { position:absolute; top:33px; left:50%; z-index:2; color:#f4bd3c; font-size:43px; transform:translateX(-50%); animation:standardGlow 2.4s ease-in-out infinite; }
.preview-rings { width:180px; height:180px; position:absolute; top:46%; left:50%; border:1px solid rgba(239,181,45,.27); border-radius:50%; transform:translate(-50%,-50%); box-shadow:0 0 0 31px rgba(239,181,45,.07),0 0 0 62px rgba(239,181,45,.035); }
.preview-card>small { display:block; margin-top:22px; color:#159768; font-size:7px; font-weight:950; letter-spacing:.18em; }.preview-card h2 { margin:8px 0 18px; font-family:Georgia,serif; font-size:23px; font-weight:500; line-height:1.16; }
.portal-access-preview { display:grid; place-items:center; }
.portal-preview-card { width:min(430px,100%); padding:36px; transform:none; text-align:center; }
.portal-preview-card>img { width:112px; height:112px; border-radius:16px; object-fit:cover; }
.portal-preview-card>p { margin:0 auto 23px; max-width:310px; color:#668074; font-size:11px; line-height:1.65; }
.portal-preview-card>a { display:block; text-decoration:none; }
.portal-login-link { min-height:48px; padding:15px 20px; border-radius:8px; color:#fff; background:#0a8c62; font-size:10px; font-weight:900; }
.portal-create-link { min-height:46px; margin-top:10px; padding:14px 20px; border:1px solid #cbd8d3; border-radius:8px; color:#174a32; font-size:10px; font-weight:850; }
.portal-help-link { margin-top:12px; min-height:44px; display:inline-flex; align-items:center; color:#527767; font-size:13px; font-weight:750; }
.preview-choice { display:flex; align-items:center; gap:12px; margin-top:9px; padding:11px; border:2px solid #e1e9e6; border-bottom-width:4px; border-radius:10px; color:#678475; font-size:9px; font-weight:700; }.preview-choice i { width:28px; height:28px; display:grid; place-items:center; border-radius:7px; background:#eef2f4; font-style:normal; }.preview-choice.selected { color:#0c6849; border-color:#33b986; background:#eefbf6; }.preview-choice.selected i { color:white; background:#159768; }
.preview-points { width:190px; display:grid; grid-template-columns:38px 1fr; gap:2px 10px; align-items:center; position:absolute; right:-30px; bottom:-40px; z-index:3; padding:15px; border:1px solid rgba(255,255,255,.22); border-radius:13px; color:#f8f0e2; background:#134a32; box-shadow:0 16px 35px rgba(0,0,0,.25); transform:rotate(-2deg); }.preview-points>span { width:38px; height:38px; display:grid; grid-row:1/3; place-items:center; border-radius:11px; color:#103a24; background:#f0b429; }.preview-points strong { font-size:10px; }.preview-points small { color:#9fbdb0; font-size:7px; }
.landing-trust { min-height:66px; display:flex; align-items:center; justify-content:center; gap:25px; padding:15px 24px; color:#688776; background:#efe8dc; font-size:8px; font-weight:950; letter-spacing:.14em; }.landing-trust i { width:4px; height:4px; border-radius:50%; background:#d3a135; }
.landing-course { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(55px,9vw,140px); padding:120px clamp(24px,8vw,130px); background:#fbf8f1; }
.landing-section-copy { align-self:start; position:sticky; top:40px; }.landing-section-copy h2,.experience-heading h2,.landing-about h2,.landing-final h2 { margin:17px 0 22px; font-family:Georgia,serif; font-size:clamp(36px,4vw,56px); font-weight:400; line-height:1.08; letter-spacing:-.025em; }.landing-section-copy p,.landing-about p { color:#688676; font-size:14px; line-height:1.8; }.landing-section-copy>a,.landing-about a { display:inline-block; margin-top:27px; color:#0c7956; border-bottom:1px solid #0c7956; padding-bottom:4px; font-size:10px; font-weight:900; }
.learning-outcomes article { display:grid; grid-template-columns:60px 1fr; gap:25px; padding:29px 0; border-top:1px solid #d9d4ca; }.learning-outcomes article:last-child { border-bottom:1px solid #d9d4ca; }.learning-outcomes article>span { color:#c39327; font-family:Georgia,serif; font-size:25px; }.learning-outcomes h3 { margin:0 0 8px; font-family:Georgia,serif; font-size:25px; font-weight:500; }.learning-outcomes p { margin:0; color:#6e877a; font-size:11px; line-height:1.7; }
.module-roadmap { padding:110px clamp(24px,7vw,110px) 120px; color:#f4eee4; background:#072817; }
.module-roadmap>header { max-width:850px; margin:0 auto 48px; text-align:center; }.module-roadmap>header h2 { margin:15px 0; font-size:clamp(38px,5vw,62px); line-height:1.02; letter-spacing:-.05em; }.module-roadmap>header p { max-width:720px; margin:0 auto; color:#aecabd; font-size:12px; line-height:1.75; }
.module-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; max-width:1320px; margin:auto; }.module-grid article { min-height:270px; padding:28px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:#0a3320; box-shadow:0 14px 34px rgba(0,0,0,.14); }.module-grid article>div { display:flex; align-items:center; justify-content:space-between; gap:14px; }.module-grid article>div span { color:#efbd4c; font-size:27px; font-weight:900; letter-spacing:-.04em; }.module-grid article>div small { color:#dfc98f; font-size:7px; font-weight:950; letter-spacing:.14em; text-align:right; }.module-grid h3 { margin:26px 0 13px; color:#fff; font-size:22px; line-height:1.15; letter-spacing:-.025em; }.module-grid p { margin:0; color:#aecabd; font-size:10px; line-height:1.7; }
.module-roadmap>footer { max-width:1320px; display:grid; grid-template-columns:auto 1fr; gap:18px 28px; margin:22px auto 0; padding:22px 25px; border:1px solid rgba(255,255,255,.12); border-radius:10px; color:#aecabd; background:#0a3320; font-size:9px; line-height:1.6; }.module-roadmap>footer strong { color:#efbd4c; }
.landing-pricing { padding:115px clamp(24px,7vw,110px) 120px; color:#173b28; background:#fff; }
.landing-pricing>header { width:min(740px,100%); margin:0 auto 45px; text-align:center; }.landing-pricing>header h2 { margin:16px 0 14px; font-size:clamp(36px,4vw,54px); line-height:1.08; letter-spacing:-.04em; }.landing-pricing>header p { margin:0; color:#688676; font-size:13px; line-height:1.75; }
.seat-packages { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; max-width:1320px; margin:auto; }.seat-packages article { min-height:390px; display:flex; flex-direction:column; position:relative; padding:29px 26px 25px; border:1px solid #dfece4; border-radius:12px; background:#f8fafb; box-shadow:0 12px 30px rgba(4,33,14,.055); }.seat-packages article>span { color:#9a7114; font-size:8px; font-weight:950; letter-spacing:.16em; }.seat-packages h3 { margin:13px 0 27px; color:#1b4330; font-size:24px; }.seat-packages article>div { padding:0 0 22px; border-bottom:1px solid #dfece4; }.seat-packages article>div strong,.seat-packages article>div small { display:block; }.seat-packages article>div strong { color:#103823; font-size:38px; letter-spacing:-.045em; }.seat-packages article>div small { margin-top:5px; color:#688676; font-size:8px; font-weight:800; }.seat-packages article>p { color:#638473; font-size:10px; line-height:1.65; }.seat-packages article>a { min-height:45px; display:flex; align-items:center; justify-content:center; margin-top:auto; border:1px solid #c89423; border-radius:8px; color:#173b28; background:#efbd4c; font-size:9px; font-weight:950; }.seat-packages article.recommended { border-color:#c99a32; background:#0b3822; box-shadow:0 16px 38px rgba(4,33,14,.18); }.seat-packages article.recommended>b { position:absolute; top:-12px; left:20px; padding:7px 10px; border-radius:6px; color:#173b28; background:#efbd4c; font-size:7px; letter-spacing:.1em; }.seat-packages article.recommended>span { color:#efc66c; }.seat-packages article.recommended h3,.seat-packages article.recommended>div strong { color:white; }.seat-packages article.recommended>div { border-color:rgba(255,255,255,.14); }.seat-packages article.recommended>div small,.seat-packages article.recommended>p { color:#afc8bd; }.landing-pricing>footer { max-width:1320px; display:grid; grid-template-columns:auto 1fr auto; gap:18px 24px; align-items:center; margin:20px auto 0; padding:20px 23px; border:1px solid #dfece4; border-radius:10px; color:#638473; background:#f8fafb; font-size:9px; }.landing-pricing>footer strong { color:#204c38; }.landing-pricing>footer a { color:#0c7956; font-weight:900; }
.landing-experience { padding:115px clamp(24px,8vw,130px) 130px; color:#f7efe2; background:#0b3822; }.experience-heading { display:flex; justify-content:space-between; gap:30px; align-items:start; }.experience-heading h2 { max-width:660px; margin-top:0; }.experience-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:48px; }.experience-steps article { min-height:330px; position:relative; padding:28px; border:1px solid rgba(255,255,255,.14); border-radius:16px; background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025)); }.experience-steps article>span { color:#739787; font-size:8px; font-weight:900; letter-spacing:.15em; }.step-icon { width:64px; height:64px; display:grid; place-items:center; margin:55px 0 34px; border:1px solid rgba(239,181,45,.45); border-radius:18px; color:#efb52d; background:rgba(239,181,45,.08); font-size:27px; }.experience-steps h3 { margin:0 0 12px; font-family:Georgia,serif; font-size:25px; font-weight:500; }.experience-steps p { color:#aec5bb; font-size:10px; line-height:1.75; }
.landing-about { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(55px,10vw,160px); align-items:center; padding:120px clamp(24px,10vw,155px); background:#ece3d6; }.about-mark { min-height:440px; display:grid; place-items:center; position:relative; border-radius:120px 120px 18px 18px; overflow:hidden; background:#0a3621; box-shadow:inset 0 0 80px rgba(0,0,0,.25); }.about-mark::before { content:""; width:280px; height:280px; position:absolute; border:1px solid rgba(239,181,45,.28); border-radius:50%; box-shadow:0 0 0 45px rgba(239,181,45,.07),0 0 0 90px rgba(239,181,45,.035); }.about-mark img { width:min(300px,74%); position:relative; z-index:2; }
.landing-final { padding:120px 24px; text-align:center; color:#f7efe2; background:radial-gradient(circle at 50% 30%,rgba(33,181,126,.15),transparent 30%),#072e1b; }.landing-final h2 { margin-bottom:16px; }.landing-final p { color:#adc5bb; }.landing-final .landing-primary { margin-top:28px; }.landing-final>small { display:block; margin-top:23px; color:#83a596; font-size:8px; letter-spacing:.06em; }
.landing-footer { display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:center; padding:46px clamp(24px,7vw,110px); color:#a8bfb5; background:#052114; }.landing-footer .landing-brand { color:#f8f0e2; }.landing-footer>p { margin:0; text-align:right; font-size:9px; }.landing-footer nav { display:flex; gap:25px; font-size:8px; font-weight:800; }.landing-footer nav a:hover { color:#efb52d; }.landing-footer>small { text-align:right; color:#678879; font-size:7px; }
@media (max-width:1000px) { .landing-nav nav { display:none; }.landing-hero { grid-template-columns:1fr; }.hero-copy { max-width:760px; }.hero-course-preview { width:min(570px,90%); margin:20px auto 0; }.landing-course { grid-template-columns:1fr; }.landing-section-copy { position:static; }.seat-packages { grid-template-columns:repeat(2,1fr); }.landing-about { grid-template-columns:1fr; }.about-mark { min-height:360px; }.landing-footer { grid-template-columns:1fr; }.landing-footer>p,.landing-footer>small { text-align:left; } }
@media (max-width:1000px) { .module-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:700px) { .landing-nav { height:72px; padding-inline:15px; }.landing-brand img { width:41px; height:41px; }.landing-brand strong { font-size:12px; }.landing-actions { gap:12px; }.landing-login { display:none; }.landing-join { padding:10px 13px; }.landing-hero { min-height:0; padding:65px 20px 85px; }.hero-copy h1 { font-size:42px; }.hero-copy>p { font-size:13px; }.hero-proof { gap:14px; }.hero-proof span { padding:0 12px; }.hero-course-preview { width:100%; }.preview-card { padding:20px; transform:none; }.preview-scene { height:145px; }.preview-card h2 { font-size:20px; }.preview-points { right:5px; bottom:-48px; }.landing-trust { flex-wrap:wrap; gap:12px 18px; padding:20px; }.landing-course,.module-roadmap,.landing-pricing,.landing-experience,.landing-about { padding:82px 20px; }.module-grid { grid-template-columns:1fr; }.module-grid article { min-height:0; }.module-roadmap>footer { grid-template-columns:1fr; }.seat-packages { grid-template-columns:1fr; }.seat-packages article { min-height:335px; }.landing-pricing>footer { grid-template-columns:1fr; }.experience-heading { display:block; }.experience-heading h2 { margin-top:17px; }.experience-steps { grid-template-columns:1fr; }.experience-steps article { min-height:270px; }.step-icon { margin:35px 0 25px; }.about-mark { min-height:300px; }.landing-final { padding:85px 20px; }.landing-footer nav { flex-wrap:wrap; } }

/* Professional learning-hub treatment */
.landing-primary { border:1px solid #d39d24; box-shadow:0 10px 24px rgba(0,0,0,.16); transition:transform .18s,box-shadow .18s; }.landing-primary:hover { transform:translateY(-1px); box-shadow:0 13px 28px rgba(0,0,0,.2); }
.preview-card,.preview-points { transform:none; }.preview-star { width:58px; height:58px; display:grid; place-items:center; top:28px; border:1px solid rgba(239,181,45,.45); border-radius:12px; color:#efc66c; background:rgba(7,46,27,.75); font-size:15px; font-weight:900; letter-spacing:.08em; animation:none; }.preview-points>span { border:1px solid #dfb048; background:transparent; color:#efc66c; font-size:9px; font-weight:900; letter-spacing:.08em; }
.hub-title span,.hub-title strong { display:block; }.hub-title span { color:#8aa698; font-size:7px; font-weight:900; letter-spacing:.16em; }.hub-title strong { margin-top:3px; color:#224a37; font-size:11px; }
.care-score { min-width:125px; }.care-score>span { width:34px; height:34px; display:grid; place-items:center; border:1px solid #d5a63b; border-radius:7px; color:#9a7114; background:#fff8e7; font-size:8px; font-weight:900; letter-spacing:.06em; animation:none; }.care-score strong { font-size:14px; }.care-score small { font-size:6px; }
.learning-path { width:min(920px,100%); min-height:0; display:grid; gap:12px; margin:28px auto 55px; padding:0; }.learning-path::before { display:none; }
.path-stop,.path-stop.stop-0,.path-stop.stop-1,.path-stop.stop-2 { min-height:94px; display:grid; grid-template-columns:74px 1fr; align-items:center; justify-content:stretch; padding:0; overflow:hidden; border:1px solid #dbe8e2; border-radius:12px; background:white; box-shadow:0 5px 16px rgba(31,74,53,.04); }
.path-stop.current { border-color:#c99a32; box-shadow:0 0 0 3px rgba(201,154,50,.11),0 8px 22px rgba(31,74,53,.06); }.path-stop.done { border-color:#b8d8cc; }
.path-stop>button,.path-stop.current>button,.path-stop.done>button { width:74px; height:100%; min-height:94px; border:0; border-right:1px solid #dbe8e2; border-radius:0; color:#6f8e7f; background:#f2f5f7; box-shadow:none; animation:none; cursor:not-allowed; }.path-stop.current>button { color:#173b28; border-right-color:#d7ac4d; background:#f0bd45; cursor:pointer; }.path-stop.done>button { color:#0b6849; border-right-color:#c4ded5; background:#e8f5f0; cursor:pointer; }
.path-stop>button span { width:auto; height:auto; border:0; border-radius:0; color:inherit; font-size:15px; font-weight:900; letter-spacing:.06em; }
.path-popover,.stop-0 .path-popover,.stop-1 .path-popover,.stop-2 .path-popover { width:auto; position:static; left:auto; right:auto; top:auto; padding:18px 22px; border:0; border-radius:0; opacity:1; background:transparent; box-shadow:none; pointer-events:auto; transform:none; }.path-popover small { color:#839e90; }.path-popover strong { margin-top:7px; color:#244a38; font-size:14px; }.path-popover p { margin-top:6px; }
.path-finish { width:100%; min-height:74px; position:static; left:auto; display:flex; flex-direction:row; gap:15px; align-items:center; justify-content:center; border:1px dashed #c9dad2; border-radius:12px; color:#8aa497; background:#f7f9fa; transform:none; }.path-finish>span { width:32px; height:32px; display:grid; place-items:center; border:1px solid #cbdcd4; border-radius:7px; font-size:12px; }.path-finish.unlocked { border-style:solid; border-color:#b8d8cc; color:#0b6849; background:#eaf6f1; }
.path-content { width:min(1060px,calc(100% - 40px)); }.unit-banner { border-radius:12px; box-shadow:0 10px 28px rgba(5,47,28,.14); }.unit-banner>div:last-child { border-width:3px; }
.mini-node i { border-radius:7px; box-shadow:none; }.mini-node.active i { animation:none; }.mini-node span strong { font-weight:750; }
.lesson-progress-bar { box-shadow:0 4px 16px rgba(31,74,53,.04); }.lesson-progress-bar .lesson-meter { height:7px; }
.hospitality-animation { border-radius:16px; box-shadow:0 18px 40px rgba(6,38,20,.16); }.scene-star { width:70px; height:70px; display:grid; place-items:center; inset:auto; top:50%; left:50%; color:#f2c76f; border:1px solid rgba(242,199,111,.45); border-radius:14px; font-size:16px; letter-spacing:.08em; animation:none; transform:translate(-50%,-50%); }.scene-tray span { font-size:10px; font-weight:900; letter-spacing:.08em; }
.answer-grid button { min-height:64px; border-width:1px; border-bottom-width:1px; border-radius:9px; box-shadow:0 3px 9px rgba(31,74,53,.03); }.answer-grid button:hover { transform:none; border-color:#96b7a8; box-shadow:0 5px 13px rgba(31,74,53,.07); }
.activity-back,.activity-next { min-height:46px; border-radius:7px; letter-spacing:.08em; }.activity-back { border-width:1px; }.activity-next { border-bottom-width:0; box-shadow:0 5px 13px rgba(11,109,74,.15); }
.completion-seal { width:250px; display:flex; align-items:center; gap:14px; margin:0 auto 30px; padding:14px 17px; border:1px solid #a9d8c7; border-radius:10px; color:#0c6e4d; background:#edf8f4; text-align:left; }.completion-seal span { width:39px; height:39px; display:grid; place-items:center; border-radius:8px; color:white; background:#17885f; font-size:20px; }.completion-seal small { font-size:8px; font-weight:900; letter-spacing:.14em; }.reward-row { border-radius:9px; }
.academy-loading img { animation:none; }
@media (max-width:700px) { .hub-title span { display:none; }.hub-title strong { font-size:10px; }.path-content { width:calc(100% - 24px); }.learning-path { min-height:0; }.path-stop,.path-stop.stop-0,.path-stop.stop-1,.path-stop.stop-2 { grid-template-columns:58px 1fr; min-height:88px; }.path-stop>button,.path-stop.current>button,.path-stop.done>button { width:58px; min-height:88px; }.path-popover,.stop-0 .path-popover,.stop-1 .path-popover,.stop-2 .path-popover { width:auto; padding:15px; }.path-popover strong { font-size:12px; }.path-popover p { font-size:8px; } }

/* Five-session Foundations completion regimen */
.regimen-summary { display:grid; grid-template-columns:repeat(3,1fr); margin-top:18px; overflow:hidden; border:1px solid #dce8e3; border-radius:10px; background:white; }.regimen-summary>div { display:flex; align-items:baseline; gap:9px; padding:15px 19px; border-right:1px solid #e2ebe7; }.regimen-summary>div:last-child { border:0; }.regimen-summary strong { color:#194732; font-size:18px; }.regimen-summary span { color:#779586; font-size:8px; font-weight:800; letter-spacing:.04em; }
.completion-plan { margin-top:34px; overflow:hidden; border:1px solid #d8e6e0; border-radius:13px; background:white; box-shadow:0 8px 25px rgba(31,74,53,.05); }.completion-plan>header { display:grid; grid-template-columns:1.1fr .9fr; gap:50px; align-items:end; padding:32px 34px 28px; border-bottom:1px solid #e0eae6; background:linear-gradient(135deg,#f8fafb,#f2f5f7); }.completion-plan h2 { margin:5px 0 0; color:#1b4330; font-size:25px; letter-spacing:-.025em; }.completion-plan>header>p { margin:0; color:#648575; font-size:10px; line-height:1.7; }
.completion-standard { display:flex; flex-wrap:wrap; gap:10px 22px; padding:16px 34px; border-bottom:1px solid #e4ede9; color:#668576; background:#fbfcfc; font-size:8px; }.completion-standard strong { color:#234c39; letter-spacing:.06em; text-transform:uppercase; }.completion-standard span::before { content:"✓"; margin-right:7px; color:#16835d; font-weight:900; }
.session-list { padding:0 34px; }.session-list article { display:grid; grid-template-columns:48px minmax(170px,.7fr) minmax(220px,1.3fr) 70px; gap:20px; align-items:center; min-height:105px; border-bottom:1px solid #e3ece8; }.session-list article:last-child { border:0; }.session-status { width:38px; height:38px; display:grid; place-items:center; border:1px solid #cbdcd4; border-radius:8px; color:#7b9689; background:#f5f7f8; font-size:10px; font-weight:900; }.session-list article.complete .session-status { color:#0d6c4d; border-color:#b7d8cb; background:#eaf6f1; }.session-list article.current .session-status { color:#173b28; border-color:#d4a43b; background:#efbf50; }.session-list article>div:nth-child(2)>span,.session-application small { color:#86a093; font-size:7px; font-weight:900; letter-spacing:.12em; }.session-list h3 { margin:5px 0; color:#224a38; font-size:13px; }.session-list article>div:nth-child(2)>p { margin:0; color:#759283; font-size:8px; }.session-application { padding-left:20px; border-left:1px solid #e2ebe7; }.session-application p { margin:5px 0 0; color:#608271; font-size:9px; line-height:1.55; }.session-list article>strong { justify-self:end; color:#92aa9d; font-size:8px; letter-spacing:.06em; text-transform:uppercase; }.session-list article.current>strong { color:#996f12; }.session-list article.complete>strong { color:#0d7653; }
.completion-plan>footer { display:grid; grid-template-columns:repeat(3,1fr) auto; gap:24px; align-items:center; padding:22px 34px; color:#d9e7e1; background:#0d402a; }.completion-plan>footer div strong,.completion-plan>footer div span { display:block; }.completion-plan>footer div strong { color:#8eaea0; font-size:7px; letter-spacing:.1em; text-transform:uppercase; }.completion-plan>footer div span { margin-top:5px; color:#edf5f2; font-size:9px; }.completion-plan>footer button { min-height:42px; padding:0 18px; border:1px solid #d3a33a; border-radius:7px; color:#163a28; background:#efbd4c; font-size:9px; font-weight:900; cursor:pointer; }
@media (max-width:900px) { .completion-plan>header { grid-template-columns:1fr; gap:14px; }.session-list article { grid-template-columns:44px 1fr 75px; padding:17px 0; }.session-application { grid-column:2/4; padding:10px 0 0; border-left:0; border-top:1px solid #edf0f2; }.completion-plan>footer { grid-template-columns:repeat(3,1fr); }.completion-plan>footer button { grid-column:1/4; } }
@media (max-width:700px) { .regimen-summary { grid-template-columns:1fr; }.regimen-summary>div { border-right:0; border-bottom:1px solid #e2ebe7; }.completion-plan>header,.session-list,.completion-standard,.completion-plan>footer { padding-left:18px; padding-right:18px; }.completion-plan>header { padding-top:24px; }.completion-standard { display:grid; }.session-list article { grid-template-columns:38px 1fr; gap:12px; }.session-list article>strong { grid-column:2; justify-self:start; }.session-application { grid-column:2; }.completion-plan>footer { grid-template-columns:1fr; }.completion-plan>footer button { grid-column:1; } }

/* Unified Manager's Table brand language */
.academy-landing { color:#112c1a; background:#eef6f2; font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.landing-nav,.landing-hero,.landing-experience,.landing-final,.landing-footer,.login-story,.main-sidebar,.lesson-rail {
  background-color:#062614;
  background-image:linear-gradient(rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(180deg,#072b17,#041f10);
  background-size:42px 42px,42px 42px,auto;
}
.landing-nav { border-bottom-color:rgba(255,255,255,.09); }
.landing-brand strong,.landing-section-copy h2,.experience-heading h2,.landing-about h2,.landing-final h2,.learning-outcomes h3,.preview-card h2 { font-family:inherit; font-weight:850; letter-spacing:-.04em; }
.landing-course,.landing-about,.login-panel,.workspace,.path-workspace,.immersive-stage { background-color:#eef6f2; background-image:linear-gradient(rgba(18,86,55,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(18,86,55,.025) 1px,transparent 1px); background-size:64px 64px; }
.landing-trust { color:#608370; background:#fff; border-bottom:1px solid #dfece4; box-shadow:0 5px 18px rgba(4,33,14,.035); }
.learning-outcomes { display:grid; gap:12px; }
.learning-outcomes article,.landing-about>div:last-child { border:1px solid #dfece4; border-radius:12px; background:#fff; box-shadow:0 12px 34px rgba(4,33,14,.055); }
.learning-outcomes article { padding:25px 27px; }
.learning-outcomes article:last-child { border-bottom:1px solid #dfece4; }
.landing-about>div:last-child { padding:clamp(28px,4vw,52px); }
.about-mark { border-radius:18px; }
.experience-steps article { border-radius:12px; box-shadow:0 12px 34px rgba(0,0,0,.1); }
.landing-final>img { width:112px; height:112px; display:block; margin:0 auto 22px; border-radius:12px; object-fit:cover; box-shadow:0 12px 30px rgba(0,0,0,.22); }
.landing-primary,.landing-join,.primary-button,.login-button { border-radius:9px; }
.login-card,.lesson-card,.course-card,.progress-panel,.completion-plan,.unit-banner { border-color:#dfece4; border-radius:12px; box-shadow:0 12px 34px rgba(4,33,14,.055); }
.login-panel { background-color:#eef6f2; }
.login-card input { border-color:#dfece4; border-radius:9px; }
.workspace-bar,.path-header,.course-topbar,.lesson-progress-bar { border-color:#dfece4; }

.academy-access-shell { min-height:100vh; display:grid; place-items:center; padding:28px; color:#112c1a; background-color:#062614; background-image:linear-gradient(rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(180deg,#072b17,#041f10); background-size:42px 42px,42px 42px,auto; }
.academy-access-shell>section { width:min(560px,100%); padding:clamp(30px,6vw,58px); text-align:center; border:1px solid #dfece4; border-radius:14px; background:#fff; box-shadow:0 24px 70px rgba(0,0,0,.3); }
.academy-access-shell img { width:108px; height:108px; display:block; margin:0 auto 22px; border-radius:12px; object-fit:cover; }
.academy-access-shell section>span { color:#9a7114; font-size:8px; font-weight:900; letter-spacing:.18em; }
.academy-access-shell h1 { margin:15px 0 12px; color:#153a28; font-size:clamp(28px,5vw,40px); letter-spacing:-.04em; }
.academy-access-shell p { max-width:430px; margin:0 auto; color:#688776; font-size:12px; line-height:1.7; }
.academy-access-shell section>div { display:flex; justify-content:center; gap:10px; margin-top:26px; }
.academy-access-shell a,.academy-access-shell button { min-height:43px; display:inline-flex; align-items:center; justify-content:center; padding:0 17px; border:1px solid #dfece4; border-radius:9px; color:#204c38; background:#f7f9fb; font-size:9px; font-weight:850; text-decoration:none; cursor:pointer; }
  .academy-access-shell a:first-child { color:#173b28; border-color:#d3a33a; background:#efbd4c; }
  .academy-access-shell button { margin-top:14px; border:0; color:#759283; background:transparent; }
  .academy-access-shell .password-card { text-align:left; }
  .password-card>img { margin-left:auto; margin-right:auto; }
  .password-card>span,.password-card>h1,.password-card>p { display:block; text-align:center; }
  .password-form { margin-top:24px; }
  .password-form>p { margin-bottom:22px; color:#688776; font-size:12px; line-height:1.7; text-align:left; }
  .password-form label { display:block; margin:16px 0 7px; color:#204c38; font-size:10px; font-weight:850; }
  .password-form input { width:100%; height:46px; padding:0 13px; border:1px solid #dfece4; border-radius:9px; color:#153a28; background:#fff; outline:none; }
  .password-form input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,154,75,.12); }
  .password-form .login-button { display:flex; width:100%; color:#173b28; border:1px solid #d3a33a; background:#efbd4c; }
  .password-form .auth-back-link { display:block; min-height:0; margin-top:20px; padding:0; border:0; color:#688776; background:transparent; text-align:center; }
@media (max-width:700px) { .learning-outcomes article { grid-template-columns:42px 1fr; gap:15px; padding:22px 18px; }.landing-about>div:last-child { padding:26px 20px; }.academy-access-shell section>div { flex-direction:column; }.academy-access-shell a { width:100%; } }

/* Foundations assessment, outcomes, and completion credential */
.course-outcomes { margin-top:34px; overflow:hidden; border:1px solid #d8e6e0; border-radius:13px; background:white; box-shadow:0 8px 25px rgba(31,74,53,.05); }
.course-outcomes>header { display:grid; grid-template-columns:1fr 1fr; gap:40px; padding:31px 34px 27px; border-bottom:1px solid #e1eae6; background:linear-gradient(135deg,#f8fafb,#f2f5f7); }
.course-outcomes h2 { margin:6px 0 0; color:#1b4330; font-size:25px; letter-spacing:-.025em; }.course-outcomes>header>p { margin:0; color:#648575; font-size:10px; line-height:1.7; }
.course-outcomes>div { display:grid; grid-template-columns:repeat(2,1fr); }.course-outcomes article { min-height:86px; display:grid; grid-template-columns:40px 1fr; gap:14px; align-items:center; padding:19px 27px; border-right:1px solid #e5ede9; border-bottom:1px solid #e5ede9; }.course-outcomes article:nth-child(even) { border-right:0; }.course-outcomes article:nth-last-child(-n+2) { border-bottom:0; }.course-outcomes article>span { width:32px; height:32px; display:grid; place-items:center; border-radius:7px; color:#946b10; background:#fff5d9; font-size:8px; font-weight:900; }.course-outcomes article p { margin:0; color:#456c5a; font-size:10px; line-height:1.55; }
.assessment-brief { padding:clamp(32px,6vw,62px); }.assessment-brief>h1 { max-width:680px; }.assessment-brief>p { max-width:760px; color:#648575; line-height:1.75; }.assessment-standards { display:grid; grid-template-columns:repeat(3,1fr); margin:30px 0; overflow:hidden; border:1px solid #dce8e3; border-radius:10px; }.assessment-standards div { padding:19px; text-align:center; border-right:1px solid #e2ebe7; }.assessment-standards div:last-child { border:0; }.assessment-standards strong,.assessment-standards span { display:block; }.assessment-standards strong { color:#174732; font-size:25px; }.assessment-standards span { margin-top:4px; color:#779586; font-size:8px; font-weight:800; }.assessment-brief ul { display:grid; grid-template-columns:repeat(2,1fr); gap:9px 24px; margin:0; padding:0; list-style:none; }.assessment-brief li { position:relative; padding:12px 12px 12px 35px; border:1px solid #e1eae6; border-radius:8px; color:#527765; font-size:9px; line-height:1.55; }.assessment-brief li::before { content:"✓"; position:absolute; left:13px; color:#15805a; font-weight:900; }
.final-assessment { width:min(980px,calc(100% - 24px)); padding:0; }.final-assessment>header { padding:34px 38px 28px; border-bottom:1px solid #e1eae6; }.final-assessment>header h1 { margin:9px 0 8px; }.final-assessment>header p { margin:0; color:#688978; font-size:11px; }.assessment-list>section { padding:29px 38px; border-bottom:1px solid #e2ebe7; }.assessment-list>section.passed { background:#fbfefc; }.assessment-list>section.missed { background:#fffaf3; }.assessment-question { display:grid; grid-template-columns:42px 1fr; gap:14px; align-items:start; }.assessment-question>span { width:34px; height:34px; display:grid; place-items:center; border-radius:7px; color:#6d8b7c; background:#eef2f5; font-size:8px; font-weight:900; }.assessment-question small { color:#9a7114; font-size:7px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }.assessment-question h2 { margin:5px 0 15px; color:#1e4633; font-size:17px; line-height:1.35; letter-spacing:-.02em; }.assessment-options { display:grid; gap:8px; padding-left:56px; }.assessment-options button { min-height:48px; display:grid; grid-template-columns:30px 1fr; gap:12px; align-items:center; padding:9px 13px; text-align:left; border:1px solid #dce9e3; border-radius:8px; color:#4d7160; background:#fff; font-size:9px; line-height:1.5; cursor:pointer; }.assessment-options button i { width:26px; height:26px; display:grid; place-items:center; border-radius:6px; color:#6c887a; background:#f0f3f5; font-style:normal; font-weight:900; }.assessment-options button.selected { border-color:#c89b38; box-shadow:0 0 0 2px rgba(200,155,56,.1); }.assessment-options button.correct { border-color:#68b796; color:#0f694c; background:#edf8f3; }.assessment-options button.correct i { color:white; background:#16865f; }.assessment-options button:disabled { cursor:default; opacity:1; }.assessment-explanation { margin:13px 0 0 56px; padding:11px 13px; border-left:3px solid #d0a343; color:#618171; background:#fff8e9; font-size:9px; line-height:1.55; }.passed .assessment-explanation { border-color:#2b9b73; background:#edf8f3; }.assessment-result { display:grid; grid-template-columns:120px 1fr; gap:22px; align-items:center; margin:28px 38px 36px; padding:22px; border:1px solid; border-radius:10px; }.assessment-result>strong { font-size:30px; text-align:center; }.assessment-result h2 { margin:0 0 5px; font-size:17px; }.assessment-result p { margin:0; font-size:9px; line-height:1.55; }.assessment-result.pass { color:#0d674a; border-color:#a9d7c6; background:#edf8f4; }.assessment-result.review { color:#7e5813; border-color:#e0c889; background:#fff8e7; }
.path-finish { cursor:not-allowed; }.path-finish.unlocked { cursor:pointer; }.path-finish.unlocked:hover { transform:translateY(-1px); box-shadow:0 7px 18px rgba(21,151,104,.1); }
.certificate-shell { min-height:100vh; padding:28px; color:#112c1a; background-color:#062614; background-image:linear-gradient(rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(180deg,#072b17,#041f10); background-size:42px 42px,42px 42px,auto; }.certificate-actions { width:min(980px,100%); display:flex; justify-content:space-between; margin:0 auto 18px; }.certificate-actions button { min-height:40px; padding:0 15px; border:1px solid rgba(255,255,255,.18); border-radius:8px; color:#dcede5; background:rgba(255,255,255,.06); font-size:9px; font-weight:850; cursor:pointer; }.certificate-actions button:last-child { color:#173b28; border-color:#d3a33a; background:#efbd4c; }.course-certificate { width:min(980px,100%); min-height:690px; display:flex; flex-direction:column; align-items:center; margin:auto; padding:48px clamp(28px,7vw,78px); position:relative; overflow:hidden; text-align:center; border:10px solid #fff; outline:1px solid #c9a54e; outline-offset:-22px; background:#fbf8f0; box-shadow:0 28px 80px rgba(0,0,0,.35); }.course-certificate::before,.course-certificate::after { content:""; width:250px; height:250px; position:absolute; border:1px solid rgba(194,153,58,.18); border-radius:50%; }.course-certificate::before { top:-150px; left:-110px; }.course-certificate::after { right:-110px; bottom:-150px; }.course-certificate>img { width:92px; height:92px; object-fit:contain; }.certificate-kicker { margin-top:18px; color:#9b7218; font-size:8px; font-weight:900; letter-spacing:.22em; }.course-certificate h1 { margin:11px 0 28px; color:#174730; font-size:clamp(34px,5vw,54px); letter-spacing:-.04em; }.course-certificate>p { margin:7px 0; color:#668274; font-size:11px; }.course-certificate h2 { margin:5px 0 9px; padding:0 30px 8px; border-bottom:1px solid #caa64d; color:#14442d; font-size:clamp(28px,4vw,43px); }.course-certificate h3 { margin:8px 0 27px; color:#1b5038; font-size:22px; }.certificate-standard { display:grid; grid-template-columns:repeat(3,1fr); width:min(650px,100%); border:1px solid #ddd7c9; }.certificate-standard span { padding:15px; color:#778d82; font-size:7px; border-right:1px solid #ddd7c9; }.certificate-standard span:last-child { border:0; }.certificate-standard strong { display:block; margin-bottom:4px; color:#174730; font-size:14px; }.certificate-copy { max-width:650px; line-height:1.7!important; }.course-certificate>footer { width:100%; display:grid; grid-template-columns:1fr 74px 1fr; gap:25px; align-items:end; margin-top:auto; padding-top:32px; }.course-certificate>footer>div:not(.certificate-seal) { padding-top:10px; border-top:1px solid #9caea6; }.course-certificate>footer strong,.course-certificate>footer span { display:block; }.course-certificate>footer strong { color:#21503b; font-size:10px; }.course-certificate>footer span { margin-top:4px; color:#7e9389; font-size:7px; }.certificate-seal { width:68px; height:68px; display:grid; place-items:center; border:2px solid #bd9131; border-radius:50%; color:#9a7018; font-size:13px; font-weight:900; box-shadow:inset 0 0 0 4px #fbf8f0,inset 0 0 0 5px #d9bd79; }
@media (max-width:760px) { .course-outcomes>header { grid-template-columns:1fr; gap:12px; }.course-outcomes>div { grid-template-columns:1fr; }.course-outcomes article,.course-outcomes article:nth-child(even),.course-outcomes article:nth-last-child(-n+2) { border-right:0; border-bottom:1px solid #e5ede9; }.course-outcomes article:last-child { border-bottom:0; }.assessment-brief ul { grid-template-columns:1fr; }.assessment-standards { grid-template-columns:1fr; }.assessment-standards div { border-right:0; border-bottom:1px solid #e2ebe7; }.final-assessment>header,.assessment-list>section { padding-left:18px; padding-right:18px; }.assessment-options { padding-left:0; }.assessment-explanation { margin-left:0; }.assessment-result { grid-template-columns:1fr; margin-inline:18px; text-align:center; }.certificate-shell { padding:12px; }.course-certificate { min-height:720px; padding:34px 24px; outline-offset:-17px; }.certificate-standard { grid-template-columns:1fr; }.certificate-standard span { border-right:0; border-bottom:1px solid #ddd7c9; }.course-certificate>footer { grid-template-columns:1fr; }.certificate-seal { grid-row:1; margin:auto; }.certificate-actions { gap:8px; }.certificate-actions button { flex:1; } }
@media print { body { background:white!important; }.certificate-shell { min-height:0; padding:0; background:white; }.certificate-actions { display:none; }.course-certificate { width:100%; min-height:98vh; box-shadow:none; break-inside:avoid; } }

/* Public certificate verification */
.certificate-actions a { min-height:40px; display:flex; align-items:center; padding:0 15px; border:1px solid rgba(255,255,255,.18); border-radius:8px; color:#dcede5; background:rgba(255,255,255,.06); font-size:9px; font-weight:850; }.certificate-number { margin:22px 0 0; padding:13px 23px; border:1px solid #d8c58f; background:#fffdf6; }.certificate-number span,.certificate-number strong,.certificate-number small { display:block; }.certificate-number span { color:#98701c; font-size:7px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }.certificate-number strong { margin:6px 0; color:#1b5038; font-size:12px; letter-spacing:.08em; }.certificate-number small { color:#788d83; font-size:7px; }
.verification-page { min-height:100vh; color:#173b28; background-color:#eef6f2; background-image:linear-gradient(rgba(18,86,55,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(18,86,55,.025) 1px,transparent 1px); background-size:64px 64px; }.verification-hero { padding:82px clamp(24px,9vw,150px) 70px; color:#f8f0e2; background:linear-gradient(135deg,#072b17,#0b3a2a); }.verification-hero>span { color:#e9b64b; font-size:8px; font-weight:900; letter-spacing:.18em; }.verification-hero h1 { margin:14px 0 15px; font-size:clamp(44px,7vw,76px); letter-spacing:-.055em; }.verification-hero>p { max-width:660px; color:#bdd2c9; font-size:13px; line-height:1.7; }.verification-hero form { max-width:820px; margin-top:34px; }.verification-hero label { display:block; margin-bottom:8px; color:#d9e9e2; font-size:8px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }.verification-hero form>div { display:grid; grid-template-columns:1fr auto; gap:10px; }.verification-hero input { min-width:0; height:52px; padding:0 16px; border:1px solid rgba(255,255,255,.2); border-radius:8px; color:#173b28; background:#fff; font:inherit; font-size:12px; letter-spacing:.05em; outline:none; text-transform:uppercase; }.verification-hero input:focus { border-color:#e8b647; box-shadow:0 0 0 3px rgba(232,182,71,.18); }.verification-hero button { min-height:52px; padding:0 23px; border:1px solid #c89423; border-radius:8px; color:#173b28; background:#efbd4c; font-size:9px; font-weight:900; cursor:pointer; }.verification-hero button:disabled { opacity:.5; cursor:not-allowed; }.verification-result { width:min(980px,calc(100% - 48px)); min-height:330px; display:grid; place-items:center; margin:-24px auto 50px; position:relative; }.verification-result article,.verification-empty { width:100%; padding:42px; border:1px solid #d8e6e0; border-radius:13px; background:#fff; box-shadow:0 15px 45px rgba(4,33,14,.1); }.verification-result article { display:grid; grid-template-columns:75px 1fr; gap:28px; }.verification-mark { width:62px; height:62px; display:grid; place-items:center; border-radius:50%; font-size:25px; font-weight:900; }.verification-result article.valid .verification-mark { color:#08734f; background:#e4f5ee; }.verification-result article.invalid .verification-mark { color:#9b4942; background:#fbecea; }.verification-result article span { color:#9a741d; font-size:8px; font-weight:900; letter-spacing:.16em; }.verification-result article h2 { margin:9px 0 8px; font-size:30px; letter-spacing:-.04em; }.verification-result article p { color:#618674; font-size:11px; line-height:1.7; }.verification-result article a { color:#087856; font-weight:850; }.verification-result dl { display:grid; grid-template-columns:repeat(3,1fr); margin:28px 0 0; border:1px solid #e0eae6; }.verification-result dl>div { padding:15px; border-right:1px solid #e0eae6; }.verification-result dl>div:last-child { border:0; }.verification-result dt { color:#819c90; font-size:7px; text-transform:uppercase; }.verification-result dd { margin:6px 0 0; color:#2a5643; font-size:10px; font-weight:850; }.verification-empty { text-align:center; }.verification-empty .certificate-seal { margin:0 auto 18px; }.verification-empty strong { display:block; color:#295642; }.verification-empty p { max-width:650px; margin:10px auto 0; color:#719182; font-size:10px; line-height:1.7; }.verification-footer { display:flex; justify-content:center; gap:20px; padding:0 24px 60px; color:#709081; font-size:9px; }.verification-footer a { color:#087856; font-weight:900; }
@media (max-width:700px) { .verification-hero { padding:55px 18px 60px; }.verification-hero form>div { grid-template-columns:1fr; }.verification-result { width:calc(100% - 28px); }.verification-result article,.verification-empty { padding:27px 21px; }.verification-result article { grid-template-columns:1fr; }.verification-result dl { grid-template-columns:1fr; }.verification-result dl>div { border-right:0; border-bottom:1px solid #e0eae6; }.verification-footer { align-items:center; flex-direction:column; text-align:center; } }

/* Academy sales and learner policies */
.purchase-disclosure { max-width:1320px; display:grid; grid-template-columns:auto 1fr auto; gap:18px 24px; align-items:center; margin:12px auto 0; padding:17px 23px; border:1px solid #d7E7df; border-radius:10px; color:#5f8070; background:#fffaf0; font-size:9px; line-height:1.55; }
.purchase-disclosure strong { color:#204c38; }.purchase-disclosure a { color:#0c7956; font-weight:900; }
.policy-page { min-height:100vh; color:#173b28; background-color:#eef6f2; background-image:linear-gradient(rgba(18,86,55,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(18,86,55,.025) 1px,transparent 1px); background-size:64px 64px; }
.policy-nav { height:88px; display:flex; align-items:center; gap:30px; padding:0 clamp(24px,6vw,92px); color:#f8f0e2; background-color:#062614; background-image:linear-gradient(rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(180deg,#072b17,#041f10); background-size:42px 42px,42px 42px,auto; }
.policy-nav>a:last-child { margin-left:auto; color:#efc66c; font-size:9px; font-weight:900; }
.policy-hero { padding:90px clamp(24px,9vw,150px) 78px; color:#f8f0e2; background:linear-gradient(135deg,#072b17,#0b3a2a); }
.policy-hero h1 { max-width:760px; margin:18px 0 20px; font-size:clamp(46px,7vw,78px); line-height:1; letter-spacing:-.055em; }.policy-hero p { max-width:650px; color:#bdd2c9; font-size:15px; line-height:1.75; }.policy-hero small { display:block; margin-top:28px; color:#90afa1; font-size:8px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.policy-index { width:min(1120px,calc(100% - 48px)); display:grid; grid-template-columns:repeat(5,1fr); margin:-25px auto 55px; position:relative; z-index:2; overflow:hidden; border:1px solid #dfece4; border-radius:12px; background:#fff; box-shadow:0 16px 40px rgba(4,33,14,.1); }.policy-index a { min-height:92px; display:flex; flex-direction:column; justify-content:center; gap:8px; padding:16px; color:#315b48; border-right:1px solid #e4ece8; font-size:9px; font-weight:850; }.policy-index a:last-child { border:0; }.policy-index span { color:#b18322; font-size:8px; letter-spacing:.12em; }
.policy-list { width:min(980px,calc(100% - 48px)); margin:0 auto 70px; }.policy-list article { display:grid; grid-template-columns:300px 1fr; gap:65px; padding:44px 0; scroll-margin-top:30px; border-top:1px solid #ccded6; }.policy-list article:last-child { border-bottom:1px solid #ccded6; }.policy-list article>div:first-child>span { color:#b18322; font-size:9px; font-weight:900; letter-spacing:.15em; }.policy-list h2 { margin:12px 0 0; color:#184730; font-size:27px; letter-spacing:-.035em; }.policy-list article>div:last-child { color:#587c6b; font-size:12px; line-height:1.8; }.policy-list article>div:last-child p:first-child { margin-top:0; }.policy-list article>div:last-child p:last-child { margin-bottom:0; }.policy-list article strong { color:#24533e; }.policy-list article a { color:#0c7956; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.policy-contact { width:min(980px,calc(100% - 48px)); margin:0 auto 90px; padding:42px; border:1px solid #d8e6e0; border-radius:13px; background:#fff; box-shadow:0 12px 34px rgba(4,33,14,.06); }.policy-contact h2 { margin:12px 0 9px; font-size:29px; letter-spacing:-.04em; }.policy-contact p { max-width:660px; color:#628574; font-size:11px; line-height:1.7; }.policy-contact a { display:inline-block; margin-top:14px; color:#0c7956; font-size:10px; font-weight:900; }.policy-footer { grid-template-columns:auto 1fr auto auto; }
@media (max-width:850px) { .purchase-disclosure { grid-template-columns:1fr; }.policy-index { grid-template-columns:1fr; }.policy-index a { min-height:58px; border-right:0; border-bottom:1px solid #e4ece8; }.policy-list article { grid-template-columns:1fr; gap:20px; }.policy-footer { grid-template-columns:1fr; } }
@media (max-width:600px) { .policy-nav { height:74px; }.policy-nav .landing-brand img { width:40px; height:40px; }.policy-hero { padding-top:64px; }.policy-index,.policy-list,.policy-contact { width:calc(100% - 28px); }.policy-list article { padding:34px 4px; }.policy-contact { padding:28px 22px; } }
.path-builder { min-height:100vh; color:#173b28; background:#edf1f4; }.path-builder-hero { padding:78px clamp(24px,8vw,120px) 62px; color:#f7f0e4; background:linear-gradient(135deg,#072b17,#0b3a2a); text-align:center; }.path-builder-hero h1 { margin:13px 0; font-size:clamp(47px,7vw,82px); line-height:.95; letter-spacing:-.055em; }.path-builder-hero p { max-width:740px; margin:0 auto; color:#b8d0c6; font-size:12px; line-height:1.75; }
.bundle-switcher { width:min(980px,calc(100% - 48px)); display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:-28px auto 55px; }.bundle-switcher button { min-height:145px; display:flex; flex-direction:column; align-items:flex-start; padding:24px; border:1px solid #d6e5df; border-radius:12px; color:#1d4835; background:#fff; box-shadow:0 14px 36px rgba(7,42,24,.09); cursor:pointer; }.bundle-switcher button.active { color:#f7f0e4; border-color:#d6a338; background:#0b3a27; }.bundle-switcher span,.bundle-switcher small { font-size:8px; font-weight:900; letter-spacing:.11em; }.bundle-switcher span { color:#a67a1b; }.bundle-switcher button.active span { color:#efbd4c; }.bundle-switcher strong { margin:14px 0 7px; font-size:27px; }.bundle-switcher small { color:#718e81; }.bundle-switcher button.active small { color:#b9cfc6; }
.path-selection { width:min(1180px,calc(100% - 48px)); margin:0 auto; }.path-selection>header { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:20px; }.path-selection h2 { margin:8px 0 0; font-size:clamp(30px,4vw,45px); letter-spacing:-.045em; }.path-selection>header>strong { color:#966f17; font-size:15px; }.path-selection>div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.path-selection>div>button { min-height:210px; display:grid; grid-template-columns:45px 1fr 35px; gap:16px; align-items:start; padding:24px; border:1px solid #d6e5df; border-radius:12px; color:#204c39; background:#fff; text-align:left; cursor:pointer; }.path-selection>div>button.selected { border-color:#c99a32; background:#fff9e9; box-shadow:0 10px 28px rgba(21,61,44,.07); }.path-selection>div>button:disabled { cursor:default; }.path-selection>div>button:not(.selected):disabled { opacity:.48; }.path-selection button>span { color:#c09022; font-size:22px; font-weight:900; }.path-selection button small { color:#9c741c; font-size:7px; font-weight:950; letter-spacing:.13em; }.path-selection button h3 { margin:10px 0 8px; font-size:21px; letter-spacing:-.035em; }.path-selection button p { margin:0; color:#68887a; font-size:9px; line-height:1.7; }.path-selection button i { width:31px; height:31px; display:grid; place-items:center; border:1px solid #cbdcd5; border-radius:50%; color:#759185; font-style:normal; font-weight:900; }.path-selection button.selected i { color:#fff; border-color:#087856; background:#087856; }
.path-order-summary { width:min(1180px,calc(100% - 48px)); display:grid; grid-template-columns:1fr auto; gap:38px; align-items:center; margin:28px auto 0; padding:30px; border-radius:13px; color:#f7f0e4; background:#0a3724; }.path-order-summary h2 { margin:8px 0; font-size:29px; }.path-order-summary p { max-width:760px; margin:0; color:#b4ccc2; font-size:9px; line-height:1.7; }.path-order-summary>div:last-child { min-width:220px; text-align:right; }.path-order-summary>div:last-child>span { display:block; }.path-order-summary s { color:#829f93; font-size:15px; }.path-order-summary>div:last-child strong { margin-left:8px; color:#efbd4c; font-size:34px; }.path-order-summary>div:last-child small { display:block; color:#b7cdc4; font-size:8px; }.path-order-summary button { min-height:47px; width:100%; margin-top:15px; border:1px solid #d2a133; border-radius:8px; color:#173b28; background:#efbd4c; font:inherit; font-size:9px; font-weight:950; cursor:pointer; }.path-order-summary button:disabled { opacity:.45; cursor:not-allowed; }.path-builder-note { width:min(1180px,calc(100% - 48px)); margin:14px auto 70px; color:#6b897c; font-size:8px; line-height:1.6; text-align:center; }
@media (max-width:760px) { .path-builder-hero { padding:60px 20px 55px; }.bundle-switcher { width:calc(100% - 28px); grid-template-columns:1fr; margin-top:-20px; }.bundle-switcher button { min-height:0; }.path-selection { width:calc(100% - 28px); }.path-selection>header { align-items:flex-start; flex-direction:column; }.path-selection>div { grid-template-columns:1fr; }.path-selection>div>button { min-height:0; grid-template-columns:35px 1fr 32px; gap:10px; padding:20px 16px; }.path-order-summary { width:calc(100% - 28px); grid-template-columns:1fr; gap:20px; padding:23px 20px; }.path-order-summary>div:last-child { min-width:0; text-align:left; }.path-builder-note { width:calc(100% - 28px); } }

/* Manager dashboard and employee reporting */
.manager-shell { min-height:100vh; display:grid; grid-template-columns:275px 1fr; color:#183d2b; background:#eef6f2; }
.manager-sidebar { min-height:100vh; display:flex; flex-direction:column; padding:24px 18px 18px; color:#e7f2ed; background-color:#062614; background-image:linear-gradient(rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(118,199,151,.055) 1px,transparent 1px),linear-gradient(180deg,#072b17,#041f10); background-size:42px 42px,42px 42px,auto; }.manager-sidebar .landing-brand { margin:0 8px 26px; }.manager-org { padding:18px 15px; border:1px solid rgba(255,255,255,.1); border-radius:9px; background:rgba(255,255,255,.04); }.manager-org small,.manager-org strong { display:block; }.manager-org small { color:#d4a53d; font-size:7px; font-weight:900; letter-spacing:.15em; }.manager-org strong { margin-top:7px; font-size:12px; }.manager-sidebar nav { display:grid; gap:5px; margin-top:28px; }.manager-sidebar nav a,.manager-sidebar nav button { min-height:44px; display:flex; align-items:center; gap:12px; padding:0 13px; border:0; border-radius:8px; color:#aec6bb; background:transparent; font:inherit; font-size:9px; font-weight:800; text-align:left; cursor:pointer; }.manager-sidebar nav a.active { color:white; background:rgba(255,255,255,.09); }.manager-sidebar nav span { width:21px; color:#e7b94e; text-align:center; }.manager-profile { display:flex; align-items:center; gap:11px; margin-top:auto; padding:15px 10px 3px; border-top:1px solid rgba(255,255,255,.1); }.manager-profile>span { width:38px; height:38px; display:grid; place-items:center; border-radius:9px; color:#173b28; background:#efbd4c; font-size:9px; font-weight:900; }.manager-profile strong,.manager-profile small { display:block; }.manager-profile strong { font-size:9px; }.manager-profile small { margin-top:3px; color:#8faea0; font-size:7px; }
.manager-workspace { min-width:0; }.manager-topbar { height:78px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(24px,4vw,58px); border-bottom:1px solid #dbe7e2; background:#fff; }.manager-topbar span,.manager-topbar strong { display:block; }.manager-topbar span { color:#8ca79a; font-size:7px; font-weight:900; letter-spacing:.14em; }.manager-topbar strong { margin-top:4px; font-size:13px; }.manager-topbar a { color:#0b7956; font-size:9px; font-weight:850; }.manager-dashboard { padding:45px clamp(24px,4vw,58px) 65px; }.manager-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; }.manager-heading h1 { margin:7px 0 8px; color:#18422e; font-size:clamp(35px,4vw,52px); letter-spacing:-.055em; }.manager-heading p { margin:0; color:#688a79; font-size:11px; }.manager-heading button { min-height:43px; padding:0 17px; border:1px solid #c89423; border-radius:8px; color:#173b28; background:#efbd4c; font-size:9px; font-weight:900; cursor:pointer; }.manager-heading button:disabled { opacity:.45; cursor:not-allowed; }
.manager-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:32px; }.manager-stats article { min-height:145px; padding:22px; border:1px solid #dbe7e2; border-radius:11px; background:#fff; box-shadow:0 9px 25px rgba(17,58,38,.045); }.manager-stats span,.manager-stats strong,.manager-stats small { display:block; }.manager-stats span { color:#8a711e; font-size:7px; font-weight:900; letter-spacing:.12em; }.manager-stats strong { margin:18px 0 7px; color:#1a4934; font-size:34px; letter-spacing:-.05em; }.manager-stats small { color:#7c988b; font-size:8px; }
.report-panel { margin-top:25px; overflow:hidden; border:1px solid #d8e6e0; border-radius:12px; background:#fff; box-shadow:0 12px 32px rgba(17,58,38,.05); }.report-panel>header { display:flex; align-items:end; justify-content:space-between; gap:28px; padding:25px 27px; border-bottom:1px solid #e0eae6; }.report-panel h2 { margin:6px 0 0; font-size:21px; letter-spacing:-.035em; }.report-controls { display:flex; gap:8px; }.report-controls input,.report-controls select { height:39px; padding:0 12px; border:1px solid #d5e3dd; border-radius:7px; color:#34604d; background:#f9fbfc; font:inherit; font-size:8px; outline:none; }.report-controls input { width:210px; }.report-controls input:focus,.report-controls select:focus { border-color:#c99b33; box-shadow:0 0 0 3px rgba(201,155,51,.1); }.report-table-wrap { overflow-x:auto; }.report-panel table { width:100%; border-collapse:collapse; min-width:900px; }.report-panel th { padding:13px 18px; color:#819c90; background:#f8fafb; font-size:7px; letter-spacing:.09em; text-align:left; text-transform:uppercase; }.report-panel td { padding:17px 18px; border-top:1px solid #edf0f2; color:#5a7e6e; font-size:9px; vertical-align:middle; }.report-panel td:first-child strong,.report-panel td:first-child small { display:block; }.report-panel td:first-child strong { color:#244e3b; font-size:10px; }.report-panel td:first-child small { margin-top:4px; color:#87a094; font-size:7px; }.report-status { display:inline-block; padding:6px 8px; border-radius:6px; font-size:7px; font-weight:900; }.report-status.completed { color:#0b714f; background:#e7f5ef; }.report-status.in_progress { color:#7c5912; background:#fff4d8; }.report-status.not_started { color:#537c6b; background:#edf5f2; }.report-status.not_enrolled { color:#9a4a45; background:#fbeceb; }.employee-progress { display:grid; grid-template-columns:90px auto; gap:4px 10px; align-items:center; }.employee-progress>div { height:6px; overflow:hidden; border-radius:3px; background:#e5eeea; }.employee-progress>div span { height:100%; display:block; background:#199a6d; }.employee-progress strong { color:#295642; font-size:8px; }.employee-progress small { grid-column:1; color:#849e92; font-size:7px; }.certificate-ready { color:#0b7653; font-weight:850; }.certificate-ready small { color:#769487; font-weight:500; }.report-empty { display:flex; flex-direction:column; align-items:center; padding:50px; color:#709081; }.report-empty strong { color:#2c5845; }.report-empty span { margin-top:6px; font-size:9px; }.manager-privacy { display:grid; grid-template-columns:auto 1fr; gap:22px; margin-top:14px; padding:17px 20px; border:1px solid #d8e6e0; border-radius:9px; color:#668878; background:#f8fafb; font-size:8px; line-height:1.6; }.manager-privacy strong { color:#275440; }.manager-state { min-height:100vh; display:grid; place-items:center; align-content:center; gap:10px; padding:30px; text-align:center; color:#e7f2ed; background:#062614; }.manager-state img { width:110px; height:110px; margin-bottom:12px; border-radius:12px; object-fit:cover; }.manager-state>span { color:#efbd4c; font-size:8px; font-weight:900; letter-spacing:.17em; }.manager-state h1 { margin:6px 0; font-size:clamp(30px,5vw,45px); }.manager-state p { max-width:560px; color:#aec6bb; line-height:1.7; }.manager-state>div { display:flex; gap:10px; margin-top:13px; }.manager-state a { padding:12px 15px; border:1px solid rgba(255,255,255,.16); border-radius:8px; color:#e7f2ed; font-size:9px; font-weight:850; }.sr-only { width:1px; height:1px; position:absolute; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media (max-width:1000px) { .manager-shell { grid-template-columns:1fr; }.manager-sidebar { min-height:0; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:20px; padding:13px 20px; }.manager-sidebar .landing-brand { margin:0; }.manager-org { display:none; }.manager-sidebar nav { display:flex; justify-content:center; margin:0; }.manager-sidebar nav a,.manager-sidebar nav button { min-height:38px; }.manager-profile { margin:0; padding:0; border:0; }.manager-profile div { display:none; }.manager-stats { grid-template-columns:repeat(2,1fr); } }
@media (max-width:700px) { .manager-sidebar { grid-template-columns:1fr auto; }.manager-sidebar nav { grid-column:1/3; overflow-x:auto; justify-content:start; }.manager-sidebar nav a,.manager-sidebar nav button { flex:0 0 auto; }.manager-topbar { height:66px; }.manager-dashboard { padding:28px 14px 45px; }.manager-heading { align-items:start; flex-direction:column; }.manager-heading button { width:100%; }.manager-stats { grid-template-columns:1fr 1fr; }.manager-stats article { min-height:125px; padding:18px; }.report-panel>header { align-items:stretch; flex-direction:column; }.report-controls { flex-direction:column; }.report-controls input,.report-controls select { width:100%; }.manager-privacy { grid-template-columns:1fr; }.manager-topbar a { display:none; } }

/* Bulk organization seat assignment */
.seat-dashboard { padding:45px clamp(24px,4vw,58px) 65px; }.seat-dashboard>header { max-width:760px; }.seat-dashboard>header h1 { margin:7px 0 10px; color:#18422e; font-size:clamp(35px,4vw,52px); letter-spacing:-.055em; }.seat-dashboard>header p { color:#658977; font-size:11px; line-height:1.7; }.seat-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(290px,.6fr); gap:18px; align-items:start; margin-top:30px; }.seat-form-card,.seat-summary { border:1px solid #d8e6e0; border-radius:12px; background:#fff; box-shadow:0 12px 32px rgba(17,58,38,.05); }.seat-form-card { padding:30px; }.seat-form-card label { display:block; margin-bottom:8px; color:#34604d; font-size:8px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }.seat-form-card select,.seat-form-card textarea { width:100%; border:1px solid #d4e4dd; border-radius:8px; color:#2f5946; background:#f9fbfc; font:inherit; outline:none; }.seat-form-card select { height:45px; padding:0 13px; }.seat-form-card textarea { margin-top:0; padding:14px; resize:vertical; font-size:10px; line-height:1.65; }.seat-form-card select:focus,.seat-form-card textarea:focus { border-color:#c99b33; box-shadow:0 0 0 3px rgba(201,155,51,.1); }.roster-label { display:flex; justify-content:space-between; align-items:center; margin-top:24px; }.roster-label label { margin:0; }.csv-upload { color:#0c7956!important; cursor:pointer; text-transform:none!important; }.csv-upload input { width:1px; height:1px; position:absolute; overflow:hidden; opacity:0; }.email-checks { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:12px; overflow:hidden; border:1px solid #dde9e4; border-radius:8px; background:#dde9e4; }.email-checks span { padding:12px; color:#789588; background:#f8fafb; font-size:7px; }.email-checks strong { display:block; margin-bottom:3px; color:#33604c; font-size:14px; }.email-checks span.ready strong { color:#0b7956; }.email-checks span.error strong { color:#a44742; }.assignment-alert { margin:12px 0 0; padding:12px 13px; border-radius:7px; font-size:8px; line-height:1.55; }.assignment-alert.error { color:#8f3e39; border:1px solid #efc8c4; background:#fff1f0; }.assignment-alert.success { color:#0c6e4f; border:1px solid #b9ddcf; background:#edf8f3; }.assignment-alert strong { display:block; margin-bottom:3px; }.seat-form-card form>button { width:100%; min-height:48px; margin-top:18px; border:1px solid #c89423; border-radius:8px; color:#173b28; background:#efbd4c; font-size:9px; font-weight:950; cursor:pointer; }.seat-form-card form>button:disabled { opacity:.45; cursor:not-allowed; }.seat-policy { display:block; margin-top:12px; color:#7b9689; font-size:7px; line-height:1.6; }.seat-summary { padding:27px; position:sticky; top:20px; }.seat-summary h2 { margin:10px 0 7px; font-size:22px; letter-spacing:-.035em; }.seat-summary>p { color:#7b9689; font-size:8px; line-height:1.6; }.seat-meter { height:8px; margin:24px 0; overflow:hidden; border-radius:5px; background:#e5eeea; }.seat-meter span { height:100%; display:block; background:linear-gradient(90deg,#16865f,#29b982); }.seat-summary dl { margin:0; }.seat-summary dl>div { display:flex; justify-content:space-between; align-items:center; padding:13px 0; border-top:1px solid #e6eaed; }.seat-summary dt { color:#718f81; font-size:8px; }.seat-summary dd { margin:0; color:#2a5643; font-size:15px; font-weight:900; }.seat-summary dl>div.available dt,.seat-summary dl>div.available dd { color:#0c7654; }.seat-help { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:18px; }.seat-help div { padding:18px; border:1px solid #dbe7e2; border-radius:9px; background:#f8fafb; }.seat-help strong,.seat-help span { display:block; }.seat-help strong { color:#305c49; font-size:9px; }.seat-help span { margin-top:5px; color:#789588; font-size:8px; line-height:1.55; }
.seat-layout.enrollment-layout { grid-template-columns:minmax(0,1fr); }
@media (max-width:900px) { .seat-layout { grid-template-columns:1fr; }.seat-summary { position:static; }.email-checks { grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px) { .seat-dashboard { padding:28px 14px 45px; }.seat-form-card,.seat-summary { padding:20px 16px; }.roster-label { align-items:start; flex-direction:column; gap:7px; }.seat-help { grid-template-columns:1fr; } }

/* Learner module dashboard */
.module-dashboard { min-height:100vh; color:#183d2b; background:#eef6f2; }
.certificate-name-panel { width:min(1180px,calc(100% - 48px)); display:grid; grid-template-columns:1fr minmax(320px,.8fr); gap:42px; align-items:end; margin:28px auto 0; padding:28px 32px; border:1px solid #d5ab48; border-radius:12px; background:#fff9eb; box-shadow:0 12px 30px rgba(26,67,48,.06); }.certificate-name-panel h2 { margin:8px 0; font-size:25px; letter-spacing:-.035em; }.certificate-name-panel p { margin:0; color:#668678; font-size:9px; line-height:1.65; }.certificate-name-panel label { display:block; margin-bottom:7px; color:#33604d; font-size:8px; font-weight:900; }.certificate-name-panel form>div { display:grid; grid-template-columns:1fr auto; gap:9px; }.certificate-name-panel input { min-width:0; height:46px; padding:0 13px; border:1px solid #cbdcd5; border-radius:7px; font:inherit; }.certificate-name-panel button { min-height:46px; padding:0 18px; border:1px solid #b8861d; border-radius:7px; color:#173b28; background:#efbd4c; font:inherit; font-size:8px; font-weight:900; cursor:pointer; }.certificate-name-panel button:disabled { opacity:.55; cursor:not-allowed; }
.certification-progress-panel { width:min(1180px,calc(100% - 48px)); display:grid; grid-template-columns:1fr auto; gap:28px; align-items:center; margin:28px auto 0; padding:28px 32px; border:1px solid #d5ab48; border-radius:12px; background:linear-gradient(135deg,#fffaf0,#f5ead0); box-shadow:0 12px 30px rgba(26,67,48,.06); }.certification-progress-panel h2 { margin:8px 0; font-size:26px; letter-spacing:-.035em; }.certification-progress-panel p { max-width:760px; margin:0; color:#658777; font-size:10px; line-height:1.7; }.certification-progress-count { min-width:118px; display:flex; justify-content:center; align-items:baseline; padding:18px; border:1px solid #d4b260; border-radius:10px; background:#fffdf7; color:#174730; }.certification-progress-count strong { font-family:Georgia,serif; font-size:42px; }.certification-progress-count span { margin-left:5px; color:#98701c; font-size:15px; font-weight:800; }.certification-progress-panel>a { grid-column:1/-1; width:max-content; color:#087856; font-size:10px; font-weight:900; }.certification-progress-panel.certified { color:#f8f0e2; border-color:#bf9131; background:linear-gradient(135deg,#072b17,#124a33); }.certification-progress-panel.certified p { color:#c4d9d0; }.certification-progress-panel.certified .certification-progress-count { background:#f8f0e2; }.official-certification { width:min(1200px,100%); aspect-ratio:3/2; position:relative; margin:auto; overflow:hidden; background:#f5ead0; box-shadow:0 28px 80px rgba(0,0,0,.38); }.official-certification>img { width:100%; height:100%; display:block; object-fit:cover; }.official-certification-name,.official-certification-date,.official-certification-id { position:absolute; color:#07381b; text-align:center; white-space:nowrap; }.official-certification-name { width:58%; left:21%; top:42.5%; font-family:Georgia,"Times New Roman",serif; font-size:clamp(25px,5.2vw,76px); font-weight:500; line-height:1; font-variant:small-caps; letter-spacing:.01em; }.official-certification-date { width:16%; left:23.2%; top:87.2%; font-family:Georgia,"Times New Roman",serif; font-size:clamp(8px,1.45vw,21px); font-style:italic; }.official-certification-id { width:18%; right:21.9%; top:87.2%; font-family:Georgia,"Times New Roman",serif; font-size:clamp(7px,1.2vw,18px); font-style:italic; letter-spacing:.04em; }
.module-dashboard-nav { min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:30px; padding:12px clamp(20px,5vw,76px); color:#f8f0e2; background:#062614; }
.module-dashboard-nav nav { display:flex; align-items:center; gap:22px; }.module-dashboard-nav nav a,.module-dashboard-nav nav button { border:0; color:#c8dad2; background:none; font:inherit; font-size:9px; font-weight:850; cursor:pointer; }.module-dashboard-nav nav a:hover,.module-dashboard-nav nav button:hover { color:#efbd4c; }
.module-dashboard-hero { display:grid; grid-template-columns:1fr auto; gap:45px; align-items:center; padding:68px clamp(24px,7vw,108px); color:#f8f0e2; background:linear-gradient(135deg,#072b17,#0b3a2a); }.module-dashboard-hero h1 { margin:12px 0; font-size:clamp(42px,6vw,68px); line-height:1; letter-spacing:-.055em; }.module-dashboard-hero p { max-width:650px; color:#b9d0c6; font-size:12px; line-height:1.7; }.module-dashboard-hero aside { min-width:345px; display:grid; grid-template-columns:70px 1fr 1fr; gap:1px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:12px; background:rgba(255,255,255,.12); }.module-dashboard-hero aside>span,.module-dashboard-hero aside>div { min-height:92px; display:grid; place-items:center; align-content:center; background:#0a3421; }.module-dashboard-hero aside>span { color:#efbd4c; font-size:22px; font-weight:900; }.module-dashboard-hero aside strong,.module-dashboard-hero aside small { display:block; text-align:center; }.module-dashboard-hero aside strong { font-size:25px; }.module-dashboard-hero aside small { margin-top:6px; color:#93b2a4; font-size:7px; font-weight:900; letter-spacing:.1em; }
.dashboard-alert { width:min(1180px,calc(100% - 48px)); margin:22px auto 0; padding:13px 16px; border:1px solid #ecc6c1; border-radius:8px; color:#8d3e39; background:#fff1ef; font-size:9px; }
.owned-modules,.academy-buy-options { width:min(1180px,calc(100% - 48px)); margin:55px auto; }.owned-modules>header { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:22px; }.owned-modules h2,.academy-buy-options h2,.bundle-credit-panel h2 { margin:8px 0 0; font-size:clamp(29px,4vw,42px); letter-spacing:-.045em; }.owned-modules>header>small { color:#749485; font-size:8px; }
.module-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.owned-module-card { min-height:270px; display:grid; grid-template-columns:180px 1fr; overflow:hidden; border:1px solid #d8e6e0; border-radius:12px; background:white; box-shadow:0 12px 32px rgba(17,58,38,.06); }.module-card-art { min-height:100%; display:flex; flex-direction:column; justify-content:space-between; padding:22px; color:#efbd4c; background:linear-gradient(145deg,#083921,#052614); }.module-card-art>span { font-size:10px; font-weight:900; letter-spacing:.16em; }.module-card-art img { width:92px; height:92px; align-self:center; object-fit:cover; border-radius:50%; }.owned-module-card>div:last-child { display:flex; flex-direction:column; align-items:start; padding:27px; }.owned-module-card .pill { padding:6px 8px; border-radius:5px; color:#668679; background:#eef2f4; font-size:7px; font-weight:900; }.owned-module-card .pill.complete { color:#08724f; background:#e5f5ee; }.owned-module-card h3 { margin:15px 0 9px; font-size:23px; letter-spacing:-.035em; }.owned-module-card p { color:#668979; font-size:9px; line-height:1.65; }.owned-module-card a { margin-top:auto; color:#087856; font-size:9px; font-weight:900; }
.empty-module-card { display:grid; grid-template-columns:130px 1fr; gap:30px; align-items:center; padding:30px; border:1px solid #d8e6e0; border-radius:12px; background:white; }.empty-module-card img { width:120px; height:120px; border-radius:10px; object-fit:cover; }.empty-module-card h3 { margin:0 0 8px; font-size:24px; }.empty-module-card p { max-width:680px; color:#68897a; font-size:10px; line-height:1.7; }.empty-module-card a { display:inline-block; margin-top:12px; color:#087856; font-size:9px; font-weight:900; }
.bundle-credit-panel { width:min(1180px,calc(100% - 48px)); display:flex; align-items:center; justify-content:space-between; gap:30px; margin:55px auto; padding:35px 40px; border:1px solid #d3bd81; border-radius:12px; background:#fff9e9; }.bundle-credit-panel p { color:#6e725f; font-size:9px; }.bundle-credit-panel>a { flex:0 0 auto; padding:14px 18px; border-radius:8px; color:#173b28; background:#efbd4c; font-size:9px; font-weight:900; }
.academy-buy-options { padding-top:46px; border-top:1px solid #ccded6; }.academy-buy-options>header { max-width:760px; }.academy-buy-options>header p { color:#678979; font-size:10px; line-height:1.7; }.academy-buy-options>div { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:25px; }.academy-buy-options article { display:flex; flex-direction:column; min-height:250px; padding:28px; border:1px solid #d8e6e0; border-radius:11px; background:white; }.academy-buy-options article>span { color:#a77c1e; font-size:8px; font-weight:900; letter-spacing:.13em; }.academy-buy-options article h3 { margin:16px 0 10px; font-size:35px; }.academy-buy-options article p { color:#68897a; font-size:9px; line-height:1.65; }.academy-buy-options article a { margin-top:auto; color:#087856; font-size:9px; font-weight:900; }
@media (max-width:900px) { .module-dashboard-hero { grid-template-columns:1fr; }.module-dashboard-hero aside { min-width:0; }.module-card-grid,.academy-buy-options>div { grid-template-columns:1fr; } }
@media (max-width:650px) { .module-dashboard-nav { align-items:flex-start; flex-direction:column; gap:12px; padding:14px 18px; }.module-dashboard-nav nav { width:100%; justify-content:space-between; gap:8px; }.module-dashboard-hero { padding:48px 18px; }.module-dashboard-hero aside { grid-template-columns:1fr 1fr; }.module-dashboard-hero aside>span { grid-column:1/3; min-height:60px; }.owned-modules,.academy-buy-options,.bundle-credit-panel { width:calc(100% - 28px); }.owned-modules>header,.bundle-credit-panel { align-items:flex-start; flex-direction:column; }.owned-module-card { grid-template-columns:1fr; }.module-card-art { min-height:150px; }.empty-module-card { grid-template-columns:1fr; }.empty-module-card img { width:90px; height:90px; } }
@media (max-width:760px) { .certificate-name-panel,.certification-progress-panel { width:calc(100% - 28px); grid-template-columns:1fr; gap:20px; padding:24px 20px; }.certificate-name-panel form>div { grid-template-columns:1fr; }.certificate-name-panel button { width:100%; }.certification-progress-count { width:100%; }.module-dashboard-nav nav { flex-wrap:wrap; } }
@media print { .official-certification { width:100%; box-shadow:none; } }

/* Accessible mobile touch targets */
@media (max-width:700px) {
  .workspace-bar>div>button,.workspace-bar>div>a { width:44px; height:44px; }
  .path-header>button,.section-heading button,.course-info button,.module-dashboard-nav nav a,.module-dashboard-nav nav button,.certificate-actions button,.certificate-actions a,.toolkit-nav>div a,.toolkit-nav button { min-height:44px; }
  .path-header>button,.section-heading button,.course-info button,.module-dashboard-nav nav a,.module-dashboard-nav nav button { display:inline-flex; align-items:center; padding-block:10px; }
}

/* Foundations premium course additions */
.lesson-standard { margin:22px 0; padding:17px 19px; border-left:3px solid #ddb04b; color:#24513d; background:#fff8e7; }.lesson-standard small,.lesson-standard strong { display:block; }.lesson-standard small { margin-bottom:7px; color:#9b7119; font-size:7px; font-weight:950; letter-spacing:.14em; }.lesson-standard strong { font-size:11px; line-height:1.6; }.toolkit-link { display:inline-block; margin-top:25px; padding:12px 16px; border:1px solid #c79526; border-radius:8px; color:#1b4330; background:#efbd4c; font-size:9px; font-weight:900; }.dashboard-toolkit-link { display:block; margin-top:18px; padding-top:14px; border-top:1px solid #e2e6e9; color:#087856; font-size:9px; font-weight:900; }
.decision-framework { margin:22px 0; overflow:hidden; border:1px solid #c9dfd6; border-radius:14px; background:#f8fbfc; }.decision-framework header { padding:18px 20px; color:#fff; background:#174b36; }.decision-framework header small,.framework-rule small { display:block; color:#efbd4c; font-size:7px; font-weight:950; letter-spacing:.15em; }.decision-framework h2 { margin:5px 0 4px; font:800 21px/1.15 Georgia,serif; }.decision-framework header p { margin:0; color:#dcede7; font-size:10px; }.decision-framework ol { display:grid; gap:0; margin:0; padding:0; list-style:none; counter-reset:model-step; }.decision-framework li { display:grid; grid-template-columns:26px 115px 1fr; align-items:start; gap:9px; padding:12px 18px; border-bottom:1px solid #dfebe7; counter-increment:model-step; }.decision-framework li:before { content:counter(model-step); display:grid; width:22px; height:22px; place-items:center; border-radius:50%; color:#fff; background:#087856; font-size:8px; font-weight:900; }.decision-framework li strong { color:#164a38; font-size:10px; }.decision-framework li span { color:#648274; font-size:9px; line-height:1.5; }.framework-rule { padding:14px 18px; background:#fff4d8; }.framework-rule small { color:#926b16; margin-bottom:5px; }.framework-rule strong { color:#294e3f; font-size:10px; line-height:1.55; }
.course-value { padding:90px clamp(24px,8vw,130px); color:#f4eee4; background:#072817; }.course-value>header { max-width:810px; }.course-value>header h2 { margin:14px 0; font-size:clamp(38px,5vw,62px); line-height:1; letter-spacing:-.05em; }.course-value>header p { max-width:680px; color:#aecabd; font-size:12px; line-height:1.75; }.course-value>div { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:40px; border:1px solid rgba(255,255,255,.13); background:rgba(255,255,255,.13); }.course-value article { min-height:250px; padding:30px; background:#0a3320; }.course-value article strong { display:block; color:#efbd4c; font-size:48px; letter-spacing:-.05em; }.course-value article span { display:block; margin:8px 0 18px; color:#f4eee4; font-size:8px; font-weight:950; letter-spacing:.13em; }.course-value article p { color:#9fbdb0; font-size:9px; line-height:1.7; }.course-value>footer { display:flex; justify-content:space-between; gap:25px; margin-top:22px; color:#98b7aa; font-size:9px; }.course-value>footer a { color:#efbd4c; font-weight:900; }
@media (max-width:900px) { .course-value>div { grid-template-columns:1fr 1fr; } }
@media (max-width:550px) { .course-value { padding:65px 18px; }.course-value>div { grid-template-columns:1fr; }.course-value article { min-height:0; }.course-value>footer { align-items:flex-start; flex-direction:column; } }

/* Foundations shift toolkit */
.toolkit-page { min-height:100vh; color:#1b4330; background:#edf1f4; }.toolkit-nav { min-height:82px; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:12px clamp(20px,6vw,90px); color:#f8f0e2; background:#062614; }.toolkit-nav>div { display:flex; align-items:center; gap:14px; }.toolkit-nav>div a,.toolkit-nav button { padding:11px 14px; border:1px solid rgba(255,255,255,.16); border-radius:7px; color:#e7f2ed; background:rgba(255,255,255,.05); font:inherit; font-size:8px; font-weight:900; cursor:pointer; }.toolkit-nav button { color:#173b28; border-color:#d9a836; background:#efbd4c; }
.toolkit-cover { min-height:390px; display:grid; grid-template-columns:230px 1fr; gap:55px; align-items:center; padding:65px clamp(24px,10vw,160px); color:#f8f0e2; background-color:#072a18; background-image:linear-gradient(rgba(106,174,142,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(106,174,142,.07) 1px,transparent 1px),linear-gradient(135deg,#072a18,#0b3d2d); background-size:48px 48px,48px 48px,auto; }.toolkit-cover img { width:220px; height:220px; object-fit:cover; border-radius:16px; box-shadow:0 20px 60px rgba(0,0,0,.28); }.toolkit-cover span,.toolkit-content article>span,.toolkit-content article>header>span,.manager-observation>div>span { color:#efbd4c; font-size:8px; font-weight:950; letter-spacing:.17em; }.toolkit-cover h1 { margin:12px 0 14px; font-size:clamp(54px,8vw,92px); line-height:.9; letter-spacing:-.06em; }.toolkit-cover p { max-width:700px; color:#b9d1c7; font-size:13px; line-height:1.7; }
.toolkit-content { width:min(1120px,calc(100% - 48px)); margin:55px auto 80px; }.toolkit-standard,.toolkit-grid>article,.shift-practice-plan,.manager-observation { border:1px solid #d8e6e0; border-radius:12px; background:white; box-shadow:0 12px 32px rgba(17,58,38,.05); }.toolkit-standard { padding:38px; }.toolkit-standard h2,.toolkit-grid h2,.shift-practice-plan h2,.manager-observation h2 { margin:10px 0 18px; font-size:clamp(25px,4vw,38px); letter-spacing:-.045em; }.toolkit-standard>div { display:grid; grid-template-columns:repeat(4,1fr); margin-top:28px; border:1px solid #e1eae6; }.toolkit-standard section { padding:22px; border-right:1px solid #e1eae6; }.toolkit-standard section:last-child { border:0; }.toolkit-standard section strong { color:#1b7658; font-size:10px; }.toolkit-standard section p,.toolkit-grid article p,.toolkit-grid li { color:#658677; font-size:9px; line-height:1.7; }
.toolkit-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-top:15px; }.toolkit-grid>article { padding:32px; }.toolkit-grid dl { margin:22px 0 0; }.toolkit-grid dl>div { padding:14px 0; border-top:1px solid #e4e8eb; }.toolkit-grid dt { color:#275541; font-size:10px; font-weight:900; }.toolkit-grid dd { margin:5px 0 0; color:#68897a; font-size:9px; line-height:1.6; }.toolkit-script { padding:17px; border:1px solid #e4d29f; border-radius:8px; color:#405c50!important; background:#fff9e8; font-weight:750; }.toolkit-grid ul { padding-left:18px; }
.shift-practice-plan { margin-top:15px; padding:38px; }.shift-practice-plan>header p { max-width:700px; color:#678879; font-size:10px; line-height:1.7; }.commitment-lines { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:28px 0; }.commitment-lines p { min-height:55px; margin:0; padding:0 0 12px; border-bottom:1px solid #9eb4ab; color:#517665; font-size:9px; }.shift-tracker { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }.shift-tracker section { min-height:150px; display:grid; grid-template-columns:1fr 1fr; gap:11px; padding:18px; border:1px solid #dce8e3; border-radius:8px; }.shift-tracker section:last-child { grid-column:1/3; }.shift-tracker strong { grid-column:1/3; color:#a0761b; font-size:8px; letter-spacing:.12em; }.shift-tracker span { min-height:30px; color:#6d8b7e; border-bottom:1px solid #cddbd5; font-size:8px; }
.manager-observation { display:grid; grid-template-columns:.75fr 1.25fr; gap:45px; margin-top:15px; padding:38px; }.manager-observation>div p { color:#68897a; font-size:9px; }.manager-observation>section label { display:block; margin:12px 0 7px; color:#346350; font-size:8px; font-weight:900; }.manager-observation>section p { color:#527767; font-size:9px; line-height:1.8; }.manager-observation>section i { height:35px; display:block; border-bottom:1px solid #aec1b9; }.manager-observation footer { display:grid; grid-template-columns:1fr 1fr; gap:25px; margin-top:20px; }.manager-observation footer span { padding-bottom:13px; border-bottom:1px solid #aec1b9; color:#758f84; font-size:8px; }.toolkit-footer { display:grid; grid-template-columns:auto 1fr auto; gap:20px; align-items:center; padding:28px clamp(24px,7vw,110px); color:#b8cfc5; background:#062614; }.toolkit-footer img { width:55px; height:55px; border-radius:8px; object-fit:cover; }.toolkit-footer p,.toolkit-footer small { font-size:8px; }.toolkit-footer small { max-width:350px; text-align:right; }
@media (max-width:800px) { .toolkit-cover { grid-template-columns:1fr; }.toolkit-cover img { width:145px; height:145px; }.toolkit-standard>div,.toolkit-grid,.manager-observation { grid-template-columns:1fr; }.toolkit-standard section { border-right:0; border-bottom:1px solid #e1eae6; }.shift-tracker { grid-template-columns:1fr; }.shift-tracker section:last-child { grid-column:auto; }.toolkit-footer { grid-template-columns:auto 1fr; }.toolkit-footer small { grid-column:1/3; text-align:left; } }
@media print { .toolkit-page { color:#173b28; background:white; }.toolkit-nav { display:none; }.toolkit-cover { min-height:280px; print-color-adjust:exact; -webkit-print-color-adjust:exact; }.toolkit-content { width:100%; margin:28px 0; }.toolkit-standard,.toolkit-grid>article,.shift-practice-plan,.manager-observation { break-inside:avoid; box-shadow:none; }.shift-tracker section { break-inside:avoid; }.toolkit-footer { print-color-adjust:exact; -webkit-print-color-adjust:exact; } }

/* Global accessibility and interaction safeguards */
:focus-visible { outline:3px solid #f0bd49; outline-offset:3px; }
.skip-link { position:fixed; z-index:9999; top:10px; left:10px; padding:12px 16px; color:#072a18; background:#f0bd49; border-radius:7px; font-weight:900; transform:translateY(-150%); }
.skip-link:focus { transform:translateY(0); }
.observation-label { display:block; margin:12px 0 7px; color:#346350; font-size:8px; font-weight:900; }
.lesson-review-check { display:flex; align-items:center; gap:9px; min-height:44px; color:#2e5243; font-size:9px; font-weight:850; }
.lesson-review-check input { width:20px; height:20px; accent-color:#087856; }
@media (max-width:700px) {
  button,a,input[type="button"],input[type="submit"] { min-height:44px; }
  .landing-footer a,.landing-nav a,.dashboard-action,.main-nav a,.main-nav button,.mini-node,.media-controls button,.activity-back,.activity-next { min-height:44px; }
  .manager-mobile-nav,.manager-topbar nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:8px; overflow:visible; }
  .manager-mobile-nav a,.manager-topbar nav a,.manager-topbar nav button { width:100%; justify-content:center; text-align:center; }
  .activity-footer { gap:10px; }
  .lesson-review-check { width:100%; order:-1; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
.path-order-summary>div:last-child { min-width:250px; }
.path-order-summary label { display:block; margin:13px 0 6px; color:#dcece6; font-size:8px; font-weight:900; }
.path-order-summary input { min-height:44px; width:100%; padding:0 12px; border:1px solid #5c8071; border-radius:7px; color:#173b28; background:#fff; font:inherit; font-size:10px; }
.path-order-summary button { margin-top:10px; }
.path-builder-error { width:min(1180px,calc(100% - 48px)); margin:14px auto; padding:11px 14px; border:1px solid #e5b2ad; border-radius:8px; color:#94423d; background:#fff1ef; font-size:8px; line-height:1.6; text-align:center; }
.saved-learning-paths { width:min(1180px,calc(100% - 48px)); margin:55px auto; }
.saved-learning-paths>header h2 { margin:8px 0 20px; font-size:clamp(29px,4vw,42px); letter-spacing:-.045em; }
.saved-learning-paths article { padding:23px 25px; border:1px solid #d8e6e0; border-radius:11px; background:#fff; }
.saved-learning-paths article+article { margin-top:10px; }
.saved-learning-paths article>div { display:flex; justify-content:space-between; gap:20px; }
.saved-learning-paths article strong,.saved-learning-paths article span { font-size:8px; font-weight:950; letter-spacing:.11em; }
.saved-learning-paths article strong { color:#9d741b; }
.saved-learning-paths article span { color:#087856; }
.saved-learning-paths article p { margin:12px 0 0; color:#658778; font-size:9px; line-height:1.7; }
@media (max-width:650px) {
  .saved-learning-paths { width:calc(100% - 28px); }
  .saved-learning-paths article>div { align-items:flex-start; flex-direction:column; gap:8px; }
  .path-builder-error { width:calc(100% - 28px); }
}
.learner-next-step { width:min(1180px,calc(100% - 48px)); display:flex; justify-content:space-between; align-items:center; gap:30px; margin:-26px auto 28px; padding:28px 32px; border:1px solid #d7b456; border-radius:14px; color:#f7f0e4; background:#10402d; box-shadow:0 18px 45px rgba(7,42,24,.16); }
.learner-next-step h2 { margin:7px 0; font-size:clamp(23px,3vw,34px); }.learner-next-step p { max-width:720px; margin:0; color:#c3d8d0; font-size:10px; line-height:1.7; }.learner-next-step a { flex:0 0 auto; min-height:46px; display:inline-flex; align-items:center; padding:0 19px; border-radius:8px; color:#153d2c; background:#efbd4c; font-size:9px; font-weight:900; }
.narration-speed { display:flex; align-items:center; gap:7px; color:#dcebe6; font-size:8px; font-weight:800; }.narration-speed select { min-height:40px; padding:0 7px; border:1px solid rgba(255,255,255,.25); border-radius:6px; color:#eef6f4; background:#184c38; }.lesson-transcript { margin-top:12px; border:1px solid #dce9e4; border-radius:9px; background:#fff; }.lesson-transcript summary { min-height:44px; display:flex; align-items:center; padding:0 15px; color:#245541; font-size:9px; font-weight:900; cursor:pointer; }.lesson-transcript section { padding:10px 15px; border-top:1px solid #e6eeeb; }.lesson-transcript strong { color:#0b7857; font-size:8px; }.lesson-transcript p { margin:4px 0 0; color:#5f8071; font-size:9px; line-height:1.6; }
@media (max-width:700px) { .learner-next-step { width:calc(100% - 28px); align-items:flex-start; flex-direction:column; margin:-16px auto 22px; padding:23px 20px; }.learner-next-step a { width:100%; justify-content:center; }.narration-speed select { min-height:44px; } }
.assignment-capacity-notice { display:grid; gap:7px; margin:15px 0; padding:16px; border:1px solid #e2c36b; border-radius:9px; color:#325b4b; background:#fff8e4; }.assignment-capacity-notice strong { color:#7d5a0c; font-size:10px; }.assignment-capacity-notice span { font-size:9px; line-height:1.6; }.assignment-capacity-notice a { color:#087856; font-size:9px; font-weight:900; }
@media (max-width:700px) {
  .manager-sidebar { grid-template-columns:1fr; }
  .manager-sidebar nav { grid-column:1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; overflow:visible; }
  .manager-sidebar nav a,.manager-sidebar nav button { width:100%; min-height:44px; justify-content:flex-start; }
  .manager-profile { grid-column:1; }
  .manager-heading button,.report-controls input,.report-controls select,.media-controls button,.media-controls select,.lesson-progress-bar>button { min-height:44px; }
  .lesson-progress-bar>button { min-width:44px; }
}
.pending-invitations { margin-top:18px; overflow:hidden; border:1px solid #d8e6e0; border-radius:12px; background:#fff; box-shadow:0 12px 32px rgba(17,58,38,.05); }.pending-invitations>header { display:flex; align-items:end; justify-content:space-between; gap:20px; padding:24px 27px; border-bottom:1px solid #e0eae6; }.pending-invitations h2 { margin:6px 0 4px; font-size:21px; }.pending-invitations header p { color:#719182; font-size:9px; }.pending-invitations header a { color:#087856; font-size:9px; font-weight:900; }.pending-invitations article { min-height:76px; display:grid; grid-template-columns:1fr auto auto; gap:20px; align-items:center; padding:14px 27px; border-top:1px solid #edf0f2; }.pending-invitations article:first-child { border-top:0; }.pending-invitations article div strong,.pending-invitations article div span,.pending-invitations article div small { display:block; }.pending-invitations article div strong { color:#244e3b; font-size:10px; }.pending-invitations article div span { margin-top:5px; color:#537a6a; font-size:8px; }.pending-invitations article div small { margin-top:5px; color:#7b978b; font-size:8px; }.pending-invitations article div a { color:inherit; text-decoration-thickness:1px; text-underline-offset:2px; }.pending-invitations button { min-height:44px; padding:0 14px; border:1px solid #b98a25; border-radius:7px; color:#173b28; background:#efbd4c; font:inherit; font-size:8px; font-weight:900; cursor:pointer; }.pending-invitations button:disabled { opacity:.55; cursor:not-allowed; }.reminder-state { padding:6px 8px; border-radius:6px; color:#587d6e; background:#edf5f2; font-size:7px; font-weight:900; text-transform:capitalize; }.reminder-state.sent { color:#0b714f; background:#e7f5ef; }.reminder-state.failed { color:#9a4a45; background:#fbeceb; }.invite-notice,.pending-empty { margin:0; padding:15px 27px; color:#537a6a; background:#f8fafb; font-size:9px; }.invite-notice { color:#0b714f; background:#e7f5ef; }
@media (max-width:760px) { .pending-invitations>header { align-items:flex-start; flex-direction:column; }.pending-invitations article { grid-template-columns:1fr; gap:10px; }.pending-invitations button { width:100%; }.reminder-state { justify-self:start; } }
.intake-actions { display:flex; align-items:center; gap:12px; }.intake-actions button { min-height:44px; padding:0 15px; border:1px solid #b98a25; border-radius:7px; color:#173b28; background:#efbd4c; font:inherit; font-size:8px; font-weight:900; cursor:pointer; }.intake-actions button:disabled { opacity:.55; cursor:not-allowed; }.order-import-panel { border-bottom:1px solid #e0eae6; background:#f8fafb; }.order-import-panel>div:first-child { display:flex; flex-direction:column; gap:5px; padding:18px 27px 8px; }.order-import-panel>div:first-child strong { color:#244e3b; font-size:10px; }.order-import-panel>div:first-child span { color:#658678; font-size:8px; }.order-import-list article { background:#fff; }.order-import-list article div span,.order-import-list article div small { display:block; margin-top:5px; color:#658678; font-size:8px; }
@media (max-width:760px) { .intake-actions { width:100%; align-items:stretch; flex-direction:column; }.intake-actions button { width:100%; }.order-import-panel>div:first-child { padding:16px 20px 8px; } }
.assessment-mastery { margin:28px 38px 36px; overflow:hidden; border:1px solid; border-radius:10px; }.assessment-mastery.pass { border-color:#a9d7c6; background:#f5fbf8; }.assessment-mastery.review { border-color:#e0c889; background:#fffaf0; }.assessment-mastery .assessment-result { margin:0; border:0; border-radius:0; background:transparent; }.framework-score-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; border-top:1px solid #dfe8e5; background:#dfe8e5; }.framework-score-grid article { padding:16px 18px; background:#fff; }.framework-score-grid article>div { display:flex; justify-content:space-between; gap:12px; align-items:baseline; }.framework-score-grid strong { color:#204d39; font-size:10px; }.framework-score-grid span { color:#719081; font-size:8px; font-weight:850; }.framework-score-grid p { margin:8px 0 0; color:#648575; font-size:8px; line-height:1.6; }.framework-score-grid .mastered { border-left:3px solid #2b9b73; }.framework-score-grid .needs-review { border-left:3px solid #d0a343; }.assessment-review-list { padding:15px 18px; border-top:1px solid #e0c889; color:#765519; background:#fff3d6; }.assessment-review-list strong { display:block; font-size:9px; }.assessment-review-list p { margin:5px 0 0; font-size:8px; line-height:1.5; }
@media (max-width:760px) { .assessment-mastery { margin-inline:18px; }.assessment-mastery .assessment-result { margin-inline:0; }.framework-score-grid { grid-template-columns:1fr; }.framework-score-grid article>div { align-items:flex-start; flex-direction:column; gap:3px; } }
.assessment-standards { grid-template-columns:repeat(4,1fr); }
@media (max-width:760px) { .assessment-standards { grid-template-columns:1fr; } }

/* Manager-focused Lesson 01 */
.manager-lesson { min-height:100vh; background:#f4f8f4; color:#14402d; padding:0 24px 56px; font-size:16px; }
.manager-lesson-header { max-width:1140px; margin:auto; display:flex; align-items:center; gap:20px; padding:18px 0; border-bottom:1px solid #d4ccbd; }
.manager-lesson-header img { width:74px; height:74px; object-fit:contain; background:#103927; border-radius:8px; }
.manager-lesson-header div { flex:1; }.manager-lesson-header span,.manager-lesson-header strong { display:block; }.manager-lesson-header span { font-size:11px; letter-spacing:.1em; margin-bottom:6px; }.manager-lesson-header strong { font-size:20px; }
.manager-lesson button { min-height:44px; padding:12px 18px; border:1px solid #174936; border-radius:7px; background:#174936; color:#fff; font:inherit; font-weight:650; cursor:pointer; }
.manager-lesson button:disabled { opacity:.45; cursor:not-allowed; }.manager-lesson :focus-visible { outline:3px solid #b37c20; outline-offset:4px; }
.owner-report-link { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; margin-top:24px; padding:20px; border:1px solid #b89555; border-radius:8px; color:#16382b; background:#fff9ec; font-size:16px; font-weight:700; }
.owner-report-link span { font-size:14px; font-weight:400; }
.owner-clients { min-height:100vh; background:#f4f8f4; color:#183d2c; font-size:16px; line-height:1.6; }
.owner-clients a,.owner-clients a:visited { color:#075f44; text-decoration-color:#b89555; text-underline-offset:3px; }
.owner-clients a:hover { color:#0c3721; text-decoration-color:#0c3721; }
.owner-topbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px max(20px,calc((100vw - 1120px)/2)); background:#0b2c1e; color:#fff4df; }
.owner-topbar a,.owner-topbar a:visited { color:#fff4df; text-decoration-color:#b89555; }
.owner-topbar a:hover { color:#f0b429; text-decoration-color:#f0b429; }
.owner-topbar a:first-child { display:flex; align-items:center; gap:12px; }.owner-topbar small { display:block; }.owner-topbar a { padding:4px; }
.owner-content { max-width:1160px; margin:auto; padding:40px 20px 60px; }.owner-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }.owner-heading h1 { font-size:clamp(32px,5vw,48px); margin:8px 0; line-height:1.2; }.owner-heading p { margin:8px 0; }
.owner-clients button { min-height:48px; padding:12px 20px; background:#15402e; color:#fff8e9; border:0; border-radius:6px; font:inherit; cursor:pointer; }.owner-clients button:disabled { opacity:.6; cursor:wait; }.owner-clients :focus-visible,.owner-report-link:focus-visible { outline:3px solid #b78122; outline-offset:4px; }
.owner-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:28px 0; }.owner-summary article { background:#fffdf8; border:1px solid #d9d2c5; border-radius:8px; padding:20px; }.owner-summary strong { display:block; font-size:32px; }.owner-summary span { font-size:14px; }
.owner-delivery { padding:24px; border:1px solid #d6c9ac; background:#fbf7ed; border-radius:8px; }.owner-delivery h2 { font-size:22px; margin:0 0 8px; }.owner-delivery p { margin:10px 0; }.owner-delivery small { font-size:14px; }
.owner-controls { display:flex; flex-wrap:wrap; gap:20px; margin-top:28px; }.owner-controls label { flex:1; min-width:200px; font-weight:600; }.owner-controls input,.owner-controls select { display:block; width:100%; min-height:48px; padding:12px; font:inherit; background:white; color:#183d2c; border:1px solid #9cafaa; border-radius:6px; box-sizing:border-box; margin-top:6px; }
.owner-note { color:#516c61; font-size:14px; margin:20px 0; }.owner-client-list { display:grid; gap:20px; }.owner-client-card { background:#fffdf8; border:1px solid #d9d2c5; border-radius:10px; padding:24px; min-width:0; }.owner-client-card header { display:flex; gap:16px; justify-content:space-between; align-items:flex-start; }.owner-client-card h2 { margin:0; font-size:24px; }.owner-client-card a { overflow-wrap:anywhere; text-decoration:underline; }.owner-client-card p { margin:8px 0; }.owner-status { padding:6px 12px; border-radius:6px; background:#eef1f3; font-size:14px; white-space:nowrap; }.owner-status.complete { background:#e1f2e9; color:#1e573d; }
.owner-client-overview { display:grid; grid-template-columns:minmax(180px,1fr) minmax(200px,1.2fr) minmax(150px,.8fr) auto; gap:24px; align-items:center; }.owner-client-progress,.owner-client-last { display:grid; gap:7px; }.owner-client-progress progress { width:100%; height:10px; accent-color:#1e573d; }.owner-client-progress small,.owner-client-last>span { color:#516c61; font-size:13px; }.owner-client-last strong { font-size:14px; }.owner-module-details { margin-top:16px; }.owner-module-details>summary { cursor:pointer; padding:8px 0; font-weight:600; }.owner-course-detail { border-top:1px solid #d9d2c5; padding:22px 0; }.owner-course-detail h3 { margin:0; font-size:18px; }@media(max-width:1000px) { .owner-client-overview { grid-template-columns:1fr 1fr; } }@media(max-width:600px) { .owner-client-overview { grid-template-columns:1fr; gap:16px; } }
.owner-client-card dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:24px 0; }.owner-client-card dt { color:#5b7168; font-size:13px; }.owner-client-card dd { margin:4px 0 0; font-size:15px; font-weight:600; }.owner-client-card footer { display:flex; flex-wrap:wrap; gap:12px 28px; padding-top:16px; border-top:1px solid #e0dbd0; font-size:14px; }.owner-error { background:#fff0e9; border:1px solid #ac553b; padding:16px; }
@media(max-width:600px) { .owner-heading,.owner-client-card header { flex-direction:column; align-items:stretch; }.owner-topbar { flex-wrap:wrap; }.owner-topbar>a { min-height:44px; display:flex; align-items:center; }.owner-summary { gap:8px; }.owner-summary article { padding:14px 10px; }.owner-client-card { padding:20px 16px; }.owner-client-card dl { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.owner-status { align-self:flex-start; }.owner-content { padding:28px 14px 40px; } }
.manager-lesson-progress { max-width:1100px; margin:20px auto 10px; display:flex; gap:18px; align-items:center; }.manager-lesson-progress progress { flex:1; height:10px; accent-color:#22664f; }.manager-lesson-progress span { font-size:13px; }
.manager-save-state,.manager-error { max-width:1100px; margin:12px auto; font-size:13px; }.manager-error { background:#fff0ec; border:1px solid #af452d; padding:15px; }
.manager-panel { max-width:1100px; margin:22px auto; padding:32px; background:#fffdf8; border:1px solid #d8d0c3; border-radius:12px; box-shadow:0 8px 30px #162b3810; }.manager-panel h1 { font-size:clamp(26px,3vw,38px); line-height:1.2; margin:8px 0 20px; }.manager-panel h2 { font-size:23px; margin:24px 0 12px; }.manager-panel h3 { font-size:18px; }.manager-panel p,.manager-panel li { font-size:16px; line-height:1.75; }.manager-panel p { margin:0 0 18px; }.manager-panel ol { padding-left:24px; margin:16px 0 24px; }
.manager-opening { max-width:850px; margin:28px auto; }.manager-opening .motion-stage { min-height:440px; }.manager-opening .motion-caption { background:linear-gradient(transparent,#102738ed); padding:25px; }.manager-opening .motion-caption strong { font-size:24px; }.manager-opening .motion-caption p { font-size:14px; line-height:1.5; }.manager-opening .media-controls { flex-wrap:wrap; }.manager-opening .media-controls button { font-size:14px; }.manager-opening .narration-now p,.manager-opening .lesson-transcript p { font-size:15px; line-height:1.65; }
.module-storyboard-stage { background:#072718; }
.module-storyboard-strip { height:100%; max-width:none; display:block; object-fit:cover; object-position:left center; transition:transform .7s cubic-bezier(.22,.8,.25,1); }
.module-storyboard-stage::before { content:""; position:absolute; inset:0; z-index:1; box-shadow:inset 0 0 0 1px rgba(240,180,41,.16); pointer-events:none; }
.manager-teaching-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; align-items:start; }.manager-teaching-grid figure { margin:0; position:sticky; top:20px; }.manager-teaching-grid img { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:8px; }.manager-teaching-grid figcaption { padding:18px; background:#edf2ee; font-size:16px; line-height:1.6; border-left:3px solid #396b55; }
.manager-question { min-width:0; border:1px solid #d6d9d7; border-radius:8px; margin:28px 0; padding:20px; }.manager-question legend { font-size:18px; font-weight:700; padding:0 8px; line-height:1.5; }.manager-question label { min-height:48px; display:flex; align-items:start; gap:14px; padding:14px; border:1px solid #d7dfdf; border-radius:6px; margin:10px 0; line-height:1.6; cursor:pointer; }.manager-question label:has(input:checked) { background:#eef3ef; border-color:#336b55; }.manager-question input,.manager-review-check input { width:20px; height:20px; flex-shrink:0; margin-top:3px; accent-color:#22664f; }
.manager-feedback { background:#f1f5f0; border-left:3px solid #40765b; padding:20px; margin:20px 0; }.manager-feedback p:last-child { margin-bottom:0; }.manager-feedback section { border-top:1px solid #cad5c8; margin-top:20px; padding-top:10px; }.manager-review-check { display:flex; gap:12px; align-items:center; padding:12px 0; min-height:48px; }
.manager-actions { display:flex; flex-wrap:wrap; gap:12px; justify-content:flex-end; margin-top:24px; }.manager-panel textarea { display:block; box-sizing:border-box; width:100%; margin:12px 0; min-height:260px; padding:18px; border:1px solid #789080; border-radius:7px; font:inherit; line-height:1.7; resize:vertical; }.manager-panel .manager-note { font-size:14px; color:#526353; }
.reflection-rubric { min-width:0; margin:22px 0; padding:18px; border:1px solid #c9d3cd; border-radius:8px; background:#f4f7f4; }
.reflection-rubric legend { padding:0 8px; color:#174936; font-weight:800; }
.reflection-rubric label { display:flex; align-items:flex-start; gap:12px; min-height:44px; padding:10px 6px; color:#314a3d; font-size:14px; line-height:1.5; cursor:pointer; }
.reflection-rubric input { width:20px; height:20px; flex:0 0 auto; margin-top:1px; accent-color:#22664f; }
.manager-opening .narration-now p { color:#e1f0ea; }.manager-opening .media-controls small,.manager-opening .media-controls span,.manager-opening .narration-speed span,.manager-opening .lesson-transcript summary { font-size:13px; }.manager-opening .lesson-transcript summary { min-height:44px; padding:16px; }
@media(max-width:850px) { .manager-teaching-grid { grid-template-columns:1fr; }.manager-teaching-grid figure { position:static; }.manager-lesson-header { flex-wrap:wrap; }.manager-lesson-progress { flex-wrap:wrap; }.manager-lesson-progress progress { min-width:150px; }.manager-opening .motion-stage { min-height:360px; } }
@media(max-width:520px) { .manager-lesson { padding:0 12px 30px; }.manager-panel { padding:20px 15px; }.manager-lesson-header img { width:56px; height:56px; }.manager-lesson-header strong { font-size:17px; }.manager-lesson-header>button { width:100%; }.manager-question { padding:12px; }.manager-actions>button { width:100%; }.manager-opening .motion-stage { min-height:330px; }.manager-opening .motion-caption { padding:16px; }.manager-opening .motion-caption strong { font-size:20px; } }
.academy-checkout .checkout-payment-card { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;padding:32px;border:1px solid #d8d4ca;border-radius:12px;background:#fffdf8;margin:28px 0;color:#103827; }
.academy-checkout .checkout-payment-card>div { min-width:0; }
.academy-checkout .checkout-payment-card p,.academy-checkout .checkout-payment-card li { line-height:1.6; }
.academy-checkout .checkout-payment-card ul { padding-left:22px; }
.academy-checkout .checkout-total { font-size:36px;font-weight:700;margin:16px 0; }
.academy-checkout .checkout-total small { font-size:14px;font-weight:400; }
.academy-checkout .checkout-terms { display:flex;align-items:flex-start;gap:12px;padding:14px 0;line-height:1.6;min-height:48px; }
.academy-checkout .checkout-terms input { width:22px;height:22px;flex-shrink:0;margin-top:3px;accent-color:#103827; }
.academy-checkout .checkout-create-account,.academy-checkout .academy-payment>a { display:flex;align-items:center;min-height:48px;margin:8px 0; }
.academy-checkout .academy-payment { margin-top:16px; }
.academy-checkout .academy-payment>small { display:block;overflow-wrap:anywhere;margin:12px 0; }
.academy-checkout .academy-payment button { min-height:48px;border:0;border-radius:6px;padding:12px 20px;background:#103827;color:white;font:inherit;cursor:pointer; }
.academy-checkout button:disabled { cursor:default; }
.academy-checkout .path-selection button.selected:disabled { opacity:1; }
.academy-checkout :focus-visible { outline:3px solid #94620e;outline-offset:4px; }
.academy-checkout .policy-nav { flex-wrap:wrap;gap:16px; }
@media(max-width:700px) { .academy-checkout .checkout-payment-card { grid-template-columns:1fr;gap:24px;padding:22px 16px; }.academy-checkout .checkout-total small { display:block; }.academy-checkout .bundle-switcher { grid-template-columns:1fr; }.academy-checkout .path-selection>header { flex-wrap:wrap;gap:12px; } }

/* Paid module preview — uses the Foundations visual language while a module is being released. */
.module-detail-shell { min-height:100vh; background:#f4f8f4; color:#14402d; padding-bottom:64px; }
.module-detail-header,.module-detail-hero,.module-detail-content,.module-detail-cta { max-width:1120px; margin:0 auto; }
.module-detail-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 24px; border-bottom:1px solid #d4ccbd; }
.module-detail-header .brand { display:flex; align-items:center; gap:12px; color:#14402d; text-decoration:none; }.module-detail-header .brand-logo { width:54px; height:54px; object-fit:contain; background:#103927; border-radius:7px; }.module-detail-header .brand strong,.module-detail-header .brand small { display:block; }.module-detail-header .brand small { color:#637b72; }
.module-detail-hero { padding:76px 24px 54px; }.module-detail-hero h1 { max-width:820px; font-size:clamp(38px,6vw,70px); line-height:1.05; margin:12px 0 20px; letter-spacing:-.03em; }.module-detail-hero>p { max-width:760px; font-size:20px; line-height:1.6; color:#446658; }
.module-detail-stats { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:32px; color:#526d63; }.module-detail-stats span { display:flex; gap:7px; align-items:baseline; }.module-detail-stats strong { color:#14402d; font-size:22px; }
.module-detail-content { padding:22px 24px; }.module-detail-content header { max-width:700px; }.module-detail-content h2,.module-detail-cta h2 { font-size:clamp(28px,4vw,42px); margin:10px 0; }.module-detail-content header p,.module-detail-cta p { color:#526d63; line-height:1.7; }.module-section-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; margin-top:28px; }.module-section-grid article { background:#fffdf8; border:1px solid #d8d0c3; border-radius:10px; padding:20px; min-height:180px; }.module-section-grid article>span { color:#9a6a18; font-weight:700; letter-spacing:.1em; }.module-section-grid h3 { font-size:18px; line-height:1.3; margin:18px 0 10px; }.module-section-grid p { color:#526d63; line-height:1.55; margin:0; }
.module-detail-cta { display:flex; justify-content:space-between; align-items:center; gap:28px; margin-top:44px; padding:30px 24px; background:#103927; color:#fff8e9; border-radius:12px; }.module-detail-cta p { color:#d5e2df; max-width:680px; }.module-cta-actions { display:flex; flex-wrap:wrap; gap:10px; flex-shrink:0; }.module-detail-cta .landing-primary,.module-detail-cta .landing-secondary { white-space:nowrap; }
@media(max-width:850px) { .module-section-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.module-detail-cta { flex-direction:column; align-items:flex-start; }.module-cta-actions { width:100%; }.module-cta-actions>* { flex:1; text-align:center; } }
@media(max-width:520px) { .module-detail-header { padding:14px 16px; }.module-detail-header .landing-primary { padding:10px 12px; font-size:13px; }.module-detail-hero { padding:52px 16px 34px; }.module-detail-content { padding:16px; }.module-section-grid { grid-template-columns:1fr; }.module-detail-cta { margin:28px 16px 0; padding:24px 18px; } }

/* Foundations seven-shift workplace application */
.workplace-journal { margin:28px; overflow:hidden; border:1px solid #d3cdc0; border-radius:12px; background:#fffdf8; color:#173f2e; box-shadow:0 12px 36px rgba(19,54,40,.06); }
.workplace-journal>header { display:flex; align-items:flex-start; justify-content:space-between; gap:28px; padding:30px; background:#103927; color:#fff7e7; }
.workplace-journal>header h2 { margin:7px 0 10px; font-size:clamp(25px,3vw,38px); }
.workplace-journal>header p { max-width:760px; margin:0; color:#dbe6e4; line-height:1.65; }
.journal-progress { min-width:118px; padding:16px; border:1px solid #527667; border-radius:8px; text-align:center; background:#174b36; }
.journal-progress strong,.journal-progress span { display:block; }.journal-progress strong { font-size:26px; }.journal-progress span { margin-top:3px; color:#d9e4e2; font-size:12px; }
.journal-status { display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; padding:15px 30px; border-bottom:1px solid #dfdbd2; background:#f4f1e9; }
.journal-status span { padding:6px 10px; border-radius:999px; color:#70531d; background:#f7e8bb; font-size:12px; font-weight:800; }.journal-status span.complete { color:#15583f; background:#dff1e8; }.journal-status small { color:#5f746d; }
.journal-notice { margin:16px 30px 0; padding:14px; border-left:3px solid #2e755a; background:#edf7f1; }
.journal-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:#ddd8cf; }
.journal-fields article { min-width:0; padding:26px 30px; background:#fffdf8; }.journal-fields article>header { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; }.journal-fields article>header span { color:#9a691c; font-size:11px; font-weight:900; letter-spacing:.1em; }.journal-fields article>header strong { color:#8a9e97; font-size:22px; }
.journal-fields label { display:block; font-size:19px; font-weight:800; }.journal-fields p { min-height:76px; color:#526d63; line-height:1.6; }.journal-fields textarea { box-sizing:border-box; width:100%; min-height:150px; padding:14px; border:1px solid #879d97; border-radius:7px; color:#173f2e; background:#fff; font:inherit; line-height:1.6; resize:vertical; }.journal-fields textarea[readonly] { color:#3e5a50; background:#f4f1e9; }
.journal-fields small { display:block; margin-top:8px; color:#8c4c37; }.journal-fields small.met { color:#176147; font-weight:700; }
.workplace-journal>footer { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 30px; border-top:1px solid #ddd8cf; }.workplace-journal>footer strong,.workplace-journal>footer span { display:block; }.workplace-journal>footer span,.workplace-journal>footer p { margin-top:5px; color:#607b71; font-size:13px; }
.journal-actions { display:flex; flex-wrap:wrap; gap:10px; }.journal-actions button { min-height:46px; padding:11px 17px; border:1px solid #174936; border-radius:7px; color:#174936; background:#fff; font:inherit; font-weight:800; cursor:pointer; }.journal-actions button.primary { color:#fff; background:#174936; }.journal-actions button:disabled { opacity:.5; cursor:not-allowed; }
@media(max-width:800px) { .workplace-journal { margin:18px; }.workplace-journal>header,.workplace-journal>footer { align-items:stretch; flex-direction:column; }.journal-progress { align-self:flex-start; }.journal-fields { grid-template-columns:1fr; }.journal-fields p { min-height:0; }.journal-actions button { flex:1; } }
@media(max-width:520px) { .workplace-journal { margin:12px; }.workplace-journal>header,.journal-fields article,.workplace-journal>footer { padding:22px 16px; }.journal-status { padding:14px 16px; }.journal-actions { flex-direction:column; }.journal-actions button { width:100%; } }
.course-follow-up{max-width:1180px;margin:28px auto;padding:32px;border:1px solid #d9d0c1;border-radius:22px;background:#f4f8f4;color:#103a28}.course-follow-up>header{max-width:760px}.course-follow-up h2{font-family:Georgia,serif;font-size:clamp(28px,4vw,42px);margin:8px 0}.reinforcement-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:24px 0}.reinforcement-row div{min-height:84px;padding:15px;border-radius:14px;background:#103a28;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.reinforcement-row strong{color:#d7b56d;font-size:22px}.reinforcement-row span{font-size:12px;letter-spacing:.08em}.course-survey{display:grid;gap:14px;padding:24px;border-radius:16px;background:#fff}.course-survey h3{font-family:Georgia,serif;font-size:25px;margin:0}.course-survey label{display:grid;gap:7px;font-weight:700}.course-survey select,.course-survey textarea{font:inherit;padding:12px;border:1px solid #b9b1a5;border-radius:10px;background:#fff;color:#103a28}.course-survey button{min-height:48px;border:0;border-radius:10px;background:#b79757;color:#103a28;font-weight:800;padding:12px 18px;justify-self:start}.owner-review-list{display:grid;gap:18px;margin-top:28px}.owner-review-card{border:1px solid #d8d0c3;border-radius:16px;padding:22px;background:#fff}.owner-review-card h3{margin:0}.owner-review-card details{margin-top:12px;border-top:1px solid #e5dfd4;padding-top:12px}.owner-review-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.owner-review-card dt{font-size:12px;font-weight:800;letter-spacing:.05em;color:#6a655c}.owner-review-card dd{margin:4px 0 0;white-space:pre-wrap}.owner-review-card button{min-height:44px;border:0;border-radius:9px;background:#103a28;color:#fff;padding:10px 15px;font-weight:700}.competency-strip{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.competency-strip span{padding:7px 10px;border-radius:999px;background:#edf2ef;font-size:13px;font-weight:700}
@media(max-width:700px){.course-follow-up{padding:20px;margin:18px 14px}.reinforcement-row{grid-template-columns:repeat(2,1fr)}.owner-review-card dl{grid-template-columns:1fr}}
.readiness-check{max-width:1180px;margin:26px auto;padding:30px;border:1px solid #d8d0c3;border-radius:20px;background:#fff}.readiness-check h2{font-family:Georgia,serif;font-size:34px;margin:7px 0}.readiness-check fieldset{border:0;border-top:1px solid #e5dfd4;padding:18px 0;display:grid;gap:8px}.readiness-check legend{font-weight:800;padding:0 0 10px}.readiness-check label{display:flex;gap:10px;align-items:flex-start;min-height:44px;padding:10px;border-radius:9px;background:#f4f8f4}.readiness-check button{min-height:48px;border:0;border-radius:10px;background:#103a28;color:#fff;font-weight:800;padding:12px 18px}.readiness-result{padding:18px;border-radius:12px;background:#edf2ef}.readiness-result strong{font-size:24px;margin-right:8px}
.course-scope{max-width:1180px;margin:26px auto;display:grid;grid-template-columns:1.3fr 1fr;gap:22px;padding:30px;border-radius:20px;background:#103a28;color:#fff}.course-scope h2{font-family:Georgia,serif;font-size:34px;margin:8px 0}.course-scope aside{padding:20px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(255,255,255,.06)}.course-scope aside strong{color:#d7b56d}.course-scope p{line-height:1.65}@media(max-width:700px){.course-scope{grid-template-columns:1fr;margin:18px 14px;padding:22px}}
.manager-teaching-grid figure{overflow:hidden}.manager-teaching-grid img.lesson-storyboard-frame{width:100%;height:420px;object-fit:cover;transform:scale(1.02)}@media(max-width:700px){.manager-teaching-grid img.lesson-storyboard-frame{height:320px}}

/* Enrollment clarity */
.launch-offer { margin: 1rem 0; padding: 1.1rem; border: 1px solid #ad8530; border-radius: 10px; background: #fff9e9; color: #17283b; }
.launch-offer strong, .launch-offer p, .launch-offer a { font-size: .9375rem; line-height: 1.6; }
.launch-offer p { margin: .55rem 0; }
.launch-offer a { color: #17283b; text-decoration: underline; font-weight: 700; }
.course-availability { font-size: .875rem; font-weight: 600; line-height: 1.5; }
.bundle-switcher button:disabled { opacity: .7; cursor: not-allowed; }

.module-detail-header .brand > span { display: block; font-size: 1rem; }
.module-detail-header .landing-secondary { color: #142d40 !important; font-size: .9375rem; border-color: #142d40; }
.module-section-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
.module-detail-content > p { font-size: 1rem; line-height: 1.6; margin-top: 1.25rem; }
.module-detail-cta { flex-wrap: wrap; }
.module-detail-cta > div:first-child { flex: 1 1 360px; }
.module-cta-actions { flex-shrink: 1; }
.module-detail-cta .landing-primary, .module-detail-cta .landing-secondary { white-space: normal; }

.learning-purpose{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:24px;margin:24px 0;background:#fffdf8;border:1px solid #d6d9d5;border-left:4px solid var(--gm-accent,#34586a);border-radius:10px}.learning-purpose h2{font-size:1rem!important;margin:0 0 10px!important;line-height:1.4}.learning-purpose p{font-size:1rem;line-height:1.65;margin:0!important;color:#314c5a}.module-purpose-summary{margin:20px 0;border:1px solid #ced8dc;border-radius:10px;padding:16px;background:#f9fbfb}.module-purpose-summary>summary{cursor:pointer;font-weight:700;color:#284c64}.module-purpose-summary .learning-purpose{margin-bottom:0}.lesson-roles{padding:18px 22px;background:#eef3f6;border-radius:10px;margin:20px 0}.lesson-roles h2{font-size:1rem;margin:0 0 8px}.lesson-roles p{margin:0;line-height:1.6}.gm-worked-example h2{font-size:1.2rem}.gm-worked-example h3{font-size:1rem}@media(max-width:640px){.learning-purpose{grid-template-columns:1fr;padding:18px;gap:20px}}

/* Keep the complete verification ID inside its certificate field at every size. */
.official-certification { container-type: inline-size; }
.official-certification-id { width:32%; left:53%; right:auto; font-size:clamp(4px,.95cqw,12px); letter-spacing:0; }

.owner-account-dates{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0;font-size:13px}.owner-account-dates dt{color:#66798a}.owner-account-dates dd{margin:4px 0 0}
@font-face { font-family:Inter; font-style:normal; font-weight:400; font-display:swap; src:url('/fonts/inter-400.ttf') format('truetype'); }
@font-face { font-family:Inter; font-style:normal; font-weight:700; font-display:swap; src:url('/fonts/inter-700.ttf') format('truetype'); }
@font-face { font-family:Inter; font-style:normal; font-weight:800 900; font-display:swap; src:url('/fonts/inter-800.ttf') format('truetype'); }

:root {
  --navy:#061b13; --navy-2:#153a29; --ink:#172c22; --muted:#536b5d;
  --cream:#f4f8f4; --paper:#fff; --line:#d8e4dc; --gold:#e8b943; --green:#1e6949;
  --brand-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html { scroll-padding-top:7rem; }
body { font-family:var(--brand-font); font-size:1rem; background:#f4f8f4; background-image:none; }
.foundations-lessons { max-width:1100px; margin:auto; padding:24px; color:#153a29; }
.foundations-lessons nav,.lesson-review-nav { display:flex; flex-wrap:wrap; align-items:center; gap:16px; }
.foundations-lessons nav { margin-bottom:32px; }
.foundations-lessons header p { max-width:720px; line-height:1.6; }
.foundations-lesson-list { display:grid; gap:16px; margin:28px 0; }
.foundations-lesson-list article { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; border:1px solid #b7d1bf; border-radius:14px; background:white; }
.foundations-lesson-list h2 { font-size:1.25rem; margin:10px 0; }
.foundations-lesson-list span { font-size:.875rem; }
.foundations-lessons button { min-height:48px; padding:12px 20px; background:#153a29; color:white; border:0; border-radius:8px; font:inherit; cursor:pointer; flex-shrink:0; }
.foundations-lessons button:disabled { opacity:.55; cursor:not-allowed; }
.lesson-review-nav { max-width:1100px; margin:20px auto; padding:18px; background:#eaf3ed; border-radius:12px; }
.lesson-review-nav select { flex:1; min-width:180px; max-width:100%; min-height:48px; font:inherit; padding:10px; }
@media(max-width:600px) { .foundations-lesson-list article { align-items:stretch; flex-direction:column; gap:12px; padding:18px; } .lesson-review-nav select { flex-basis:100%; } }
.learner-guidance { max-width:1100px; margin:20px auto; padding:18px 22px; background:#eaf3ed; border:1px solid #b7d1bf; border-left:4px solid #22664f; border-radius:12px; color:#153a29; }
.learner-guidance p { margin:8px 0 14px; font-size:1rem; line-height:1.6; }
.manager-panel .manager-actions { scroll-margin-block:100px; }
input,select,textarea,button { font-family:var(--brand-font); }
a { color:var(--green); text-decoration:none; }
body h1,body h2,body h3,body h4 { font-family:var(--brand-font)!important; font-weight:800!important; letter-spacing:-.035em; line-height:1.15; }
body :is(p,li) { font-size:1rem!important; line-height:1.65; }
body :is(label,button,input,select,textarea) { font-size:1rem; }
body :is(small,.eyebrow,.landing-kicker,.pill) { font-size:.875rem; line-height:1.5; }
a,button,input,select,textarea { scroll-margin-block:7rem; }
:focus-visible { outline:3px solid #ba8616; outline-offset:4px; }

.academy-landing,.module-dashboard,.owner-clients,.manager-portal,.login-panel,.workspace,.path-workspace,.immersive-stage,.manager-lesson,.module-detail-page { background:#f4f8f4; background-image:none; color:var(--ink); }
.landing-nav,.module-dashboard-nav,.owner-topbar,.toolkit-nav,.landing-footer { background:#0c2419; background-image:none; color:#fff; }
.landing-nav,.module-dashboard-nav { position:sticky; top:0; z-index:20; height:auto; min-height:88px; padding:16px max(24px,calc((100vw - 1180px)/2)); gap:24px; border-bottom:1px solid #2d4738; }
.landing-nav nav,.module-dashboard-nav nav { display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; }
.landing-nav nav a,.module-dashboard-nav nav a,.module-dashboard-nav nav button,.landing-footer nav a { color:#e0eae2; font-size:.875rem; font-weight:700; line-height:1.4; min-height:44px; display:inline-flex; align-items:center; }
.landing-brand { flex-shrink:0; gap:12px; }
.landing-nav .landing-brand,.landing-nav .landing-brand:visited,.module-dashboard-nav .landing-brand,.module-dashboard-nav .landing-brand:visited { color:#fff; }
.landing-brand strong,.brand strong { font-family:var(--brand-font); font-weight:800; font-size:1rem; letter-spacing:-.025em; }
.landing-brand small,.brand small { font-family:var(--brand-font); font-size:.75rem; color:#d9e7dc; letter-spacing:.1em; }
.academy-brand-mark { width:42px; height:42px; display:grid; place-items:center; flex-shrink:0; border-radius:11px; color:#143225; background:linear-gradient(135deg,#f4d274,#d6a735); font-size:.875rem; font-weight:800; letter-spacing:0; }
.landing-brand .academy-brand-mark { display:grid; }

.landing-hero,.module-dashboard-hero,.login-story,.verification-hero { background:radial-gradient(ellipse at top right,#204d36 0,transparent 60%),linear-gradient(135deg,#061b13,#102f21); background-size:auto; color:#fff; }
.landing-hero { max-width:none; padding:88px max(24px,calc((100vw - 1180px)/2)); grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:60px; }
.hero-copy h1 { font-size:clamp(2.5rem,5vw,4.5rem); line-height:1.05; letter-spacing:-.045em; }
.hero-copy>p { font-size:1.125rem; color:#c9ddcf; line-height:1.7; }
.hero-proof { flex-wrap:wrap; gap:18px; }
.hero-proof span { font-size:.875rem; color:#d2e1d6; }
.landing-kicker,.eyebrow.gold { color:#e8bd54; font-weight:800; letter-spacing:.09em; }
.landing-course .landing-kicker,.landing-pricing .landing-kicker,.module-roadmap .landing-kicker,.owned-modules .landing-kicker,.academy-buy-options .landing-kicker { color:#376747; }
.portal-access-preview { width:100%; margin:0; }
.portal-preview-card { transform:none; background:#123323; border:1px solid #365543; border-radius:24px; padding:32px; box-shadow:0 24px 55px #03140d33; color:#fff; }
.portal-preview-card h2 { color:#fff; }
.portal-preview-card>p { color:#c9ddcf; }
.portal-preview-card>small { color:#e8bd54; font-size:.875rem; }
.portal-preview-card .preview-choice i { color:#143225; background:#e8bd54; }
.portal-preview-card .preview-choice { background:#1c402d; border-color:#365c43; color:#e8f0eb; padding:16px; height:auto; min-height:54px; font-size:1rem; }
.portal-preview-card .portal-help-link { color:#f2cc6a; font-size:.875rem; }
.portal-preview-card .academy-brand-mark { margin-bottom:24px; }
.landing-primary,.landing-join,.primary-button,.login-button,.learner-next-step>a,.seat-packages article>a { background:linear-gradient(135deg,#f4cf63,#dca91f); color:#173324; border:1px solid #dbb34b; border-radius:10px; min-height:48px; padding:13px 20px; font-size:1rem; font-weight:800; }
.landing-secondary { color:#fff; border:1px solid #9cb5a5; border-radius:10px; background:transparent; min-height:48px; font-size:1rem; padding:13px 20px; }
.landing-primary:hover,.learner-next-step>a:hover { filter:brightness(1.06); }
.landing-trust { font-size:.875rem; letter-spacing:.07em; background:#fff; color:#466a52; padding-block:24px; }
.landing-course,.module-roadmap,.landing-pricing,.landing-experience,.course-value { padding:80px max(24px,calc((100vw - 1180px)/2)); }
.landing-course,.landing-pricing { background:#f4f8f4; background-image:none; }
.module-roadmap { background:#eef5ef; }
.module-grid,.learning-outcomes { gap:20px; }
.module-grid article,.learning-outcomes article,.seat-packages article,.owned-module-card,.empty-module-card,.login-card,.report-panel,.owner-client-card,.progress-panel,.activity-card,.lesson-card,.academy-buy-options article { border:1px solid #d8e4dc; border-radius:18px; background:#fff; box-shadow:0 10px 30px #12332308; }
.module-grid article,.seat-packages article,.academy-buy-options article { padding:28px; }
.module-grid article p,.owned-module-card p,.academy-buy-options article p,.seat-packages article p { font-size:1rem; color:#536b5d; }
.module-grid article a,.owned-module-card a,.academy-buy-options article a { font-size:.875rem; min-height:44px; display:inline-flex; align-items:center; color:#1e6949; }
.seat-packages { grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:20px; }
.seat-packages article.recommended { border:2px solid #bc942f; }
.landing-experience,.course-value,.landing-final,.main-sidebar,.lesson-rail,.manager-sidebar { background:#0c2419; background-image:none; color:#fff; }
.course-value article,.experience-steps article { background:#153a29; border-radius:14px; }
.course-value>div { gap:16px; border:0; background:none; }
.course-value article p,.course-value>header p { color:#c8dccf; }
.landing-footer { padding:44px max(24px,calc((100vw - 1180px)/2)); }
.landing-footer nav { gap:14px 24px; flex-wrap:wrap; }
.landing-footer>small { font-size:.75rem; }

.module-dashboard-hero { padding:48px max(24px,calc((100vw - 1180px)/2)) 68px; }
.module-dashboard-hero h1 { font-size:clamp(2rem,4vw,3rem); line-height:1.15; }
.module-dashboard-hero p { color:#c9ddcf; font-size:1rem; }
.module-dashboard-hero aside>span,.module-dashboard-hero aside>div { background:#153a29; }
.module-dashboard-hero aside small { color:#bfd4c5; font-size:.75rem; }
.learner-next-step { background:#153a29; border:1px solid #476247; border-radius:18px; box-shadow:0 16px 35px #0c241917; }
.learner-next-step p { color:#cfdfd3; font-size:1rem; }
.certification-progress-panel { background:#fff9e9; border-color:#dcc783; border-radius:18px; }
.certification-progress-panel p { font-size:1rem; color:#536b5d; }
.certification-progress-panel.certified { background:#153a29; }
.certification-progress-count strong { font-family:var(--brand-font); font-weight:800; }
.module-card-art { background:linear-gradient(145deg,#214e36,#0c2419); }
.module-card-art img { object-fit:contain; }
.owned-module-card { grid-template-columns:112px minmax(0,1fr); }
.owned-module-card .pill { font-size:.75rem; }
.owned-module-card h3 { font-size:1.375rem; }
.academy-buy-options>div { grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.login-card,.password-card { border-radius:22px; }
.login-card p,.password-card p { font-size:1rem; }
.login-card :is(label,a),.password-form label,.login-support { font-size:.875rem; }
.login-card input,.password-form input { font-size:1rem; min-height:48px; }
.login-story-copy h1 { font-family:var(--brand-font); font-weight:800; }
.manager-sidebar nav a,.manager-sidebar nav button,.main-nav a,.lesson-link strong { font-size:.875rem; }
.manager-sidebar small,.main-nav p,.sidebar-user small,.lesson-link small { font-size:.75rem; }
.report-controls input,.report-controls select { min-width:0; height:auto; min-height:44px; font-size:1rem; }
.lesson-rail .brand strong { font-size:.875rem; }
.lesson-card,.activity-card { color:var(--ink); }
.manager-lesson button { background:#153a29; border-color:#315d42; }
.manager-lesson-header img,.module-detail-header .brand-logo { background:#153a29; }
.owner-topbar { border-bottom:1px solid #31523d; }
.policy-nav { background:#0c2419; background-image:none; min-height:88px; height:auto; display:flex; flex-wrap:wrap; align-items:center; gap:18px 24px; padding:16px max(24px,calc((100vw - 1180px)/2)); }
.policy-nav>a,.policy-nav>a:visited { color:#e6efe8; font-size:.875rem; font-weight:700; min-height:44px; display:inline-flex; align-items:center; }
.policy-nav .landing-brand { margin-right:auto; }
.path-builder-hero { background:radial-gradient(ellipse at top right,#204d36,transparent 65%),#061b13; }
.bundle-switcher button span,.bundle-switcher button small,.path-selection button small { font-size:.875rem; line-height:1.5; letter-spacing:.03em; }
.path-selection button { border-radius:18px; }
.path-selection button p { color:#536b5d; }
.landing-footer .landing-brand,.login-brand { color:#fff; }

@media(max-width:1000px) {
  .landing-nav,.module-dashboard-nav { flex-wrap:wrap; }
  .landing-nav nav { display:flex; }
  .landing-hero { grid-template-columns:1fr; gap:36px; }
  .hero-course-preview { max-width:620px; margin:0; }
  .module-card-grid { grid-template-columns:1fr; }
}
@media(max-width:700px) {
  html { scroll-padding-top:1rem; }
  .landing-nav,.module-dashboard-nav { position:relative; padding:18px 20px; gap:14px; }
  .landing-nav nav,.module-dashboard-nav nav { width:100%; gap:6px 18px; justify-content:flex-start; }
  .landing-hero { padding:48px 20px; }
  .hero-copy h1 { font-size:2.5rem; }
  .hero-actions { display:flex; flex-direction:column; align-items:stretch; }
  .hero-actions>a { width:100%; text-align:center; justify-content:center; }
  .hero-proof { flex-direction:column; align-items:flex-start; gap:10px; }
  .hero-proof span { padding:0; border:0; }
  .portal-preview-card { padding:24px; }
  .landing-course,.module-roadmap,.landing-pricing,.landing-experience,.course-value { padding:52px 20px; }
  .seat-packages,.academy-buy-options>div { grid-template-columns:1fr; }
  .owned-module-card { grid-template-columns:1fr; }
  .module-card-art { min-height:88px; flex-direction:row; align-items:center; padding:18px 24px; }
  .module-card-art img { width:58px; height:58px; }
  .module-dashboard-hero { padding:34px 20px 48px; gap:24px; }
  .module-dashboard-hero aside { grid-template-columns:58px 1fr 1fr; }
  .module-dashboard-hero aside>span { grid-column:auto; min-height:88px; }
  .module-dashboard-hero aside small { font-size:.75rem; letter-spacing:0; }
  .owned-modules>header { align-items:flex-start; }
  .owned-modules>header>small { overflow-wrap:anywhere; }
  .login-panel { padding:24px 16px; }
  .login-card { padding:28px 24px; }
  .landing-footer { padding:36px 20px; }
  .policy-nav { padding:16px 20px; gap:10px 20px; }
  .policy-nav .landing-brand { width:100%; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Academy identity: a reading-first learning space, with the parent brand in green. */
:root { --ink:#243647; --muted:#526477; --green:#235b83; --cream:#f5f7fb; --paper:#fff; --line:#d7e1ed; }
.academy-landing,.module-dashboard,.workspace,.path-workspace,.immersive-stage,.manager-lesson,.module-detail-page { background:#f5f7fb; }
.landing-brand .academy-full-logo { width:96px; height:96px; object-fit:contain; flex-shrink:0; }
.landing-brand strong { font-size:1.7rem; letter-spacing:-.02em; }
.landing-brand small { font-size:.8rem; letter-spacing:.03em; }
.portal-preview-card>.academy-full-logo { width:144px; height:144px; object-fit:contain; background:#0c2419; border-radius:16px; }
.landing-hero,.module-dashboard-hero { background:#eaf0f8; color:#213c56; border-bottom:1px solid #ccd9e8; }
.hero-copy h1,.module-dashboard-hero h1,.manager-panel h1,.foundations-lessons h1 { font-family:var(--brand-font)!important; font-weight:800!important; letter-spacing:-.025em; }
.hero-copy>p,.module-dashboard-hero p,.hero-proof span { color:#425e77; }
.landing-hero .landing-kicker { color:#335a7c; }
.landing-hero .landing-secondary { color:#234e70; border-color:#7b99b1; }
.portal-preview-card { background:#fff; border:1px solid #c5d4e5; box-shadow:0 18px 44px #243f6012; border-radius:8px; }
.portal-preview-card h2 { color:#213c56; }
.portal-preview-card>p { color:#425e77; }
.portal-preview-card>small,.portal-preview-card .portal-help-link { color:#235b83; }
.portal-preview-card .preview-choice { background:#edf3fa; border-color:#d2dfed; color:#213c56; border-radius:6px; }
.landing-primary,.landing-join,.primary-button,.login-button,.learner-next-step>a { background:#245b83; color:#fff; border-color:#245b83; border-radius:6px; }
.landing-course,.landing-pricing { background:#f5f7fb; }
.module-roadmap { background:#eaf0f8; }
.module-grid article,.owned-module-card,.progress-panel,.activity-card,.lesson-card { border-radius:8px; border-color:#d1ddeb; box-shadow:none; }
.module-card-art { background:#213f59; }
.manager-panel { border-radius:8px; border-color:#d1ddeb; background:#fff; box-shadow:0 3px 16px #243f6008; }
.manager-panel h1 { font-size:clamp(1.8rem,3vw,2.6rem); }
.manager-panel p,.manager-panel li { line-height:1.8; }
.learner-guidance,.lesson-review-nav { background:#e8f0fa; border-color:#bfcfe1; color:#244b6b; border-radius:6px; }
.learner-guidance { border-left-color:#336d98; }
.manager-lesson button { background:#245b83; border-color:#245b83; }
.manager-lesson-header { border-bottom:2px solid #c2d3e4; }
.manager-lesson-header img { width:88px; height:88px; object-fit:contain; background:#0c2419; }
.manager-teaching-grid figcaption { background:#edf3fa; border-left-color:#336d98; }
@media(max-width:700px) {
 .landing-brand .academy-full-logo { width:76px; height:76px; }
 .landing-brand strong { font-size:1.5rem; }
 .manager-lesson-header img { width:64px; height:64px; }
}

/* Explicit surface/text pairs prevent legacy dark-theme colors leaking into light cards. */
.landing-primary,.landing-join,.primary-button,.login-button,.learner-next-step>a {
  color:#fff!important; background:#245b83; border-color:#245b83;
}
.landing-primary:hover,.landing-join:hover,.primary-button:hover,.login-button:hover {
  color:#fff!important; background:#1b4869; border-color:#1b4869; filter:none;
}
.landing-secondary { color:#fff!important; }
.academy-landing { --landing-ink:#213c56; --landing-muted:#425e77; --landing-accent:#235b83; }
.academy-landing :is(a,button) { transition:background-color .15s,color .15s,border-color .15s; }
.academy-landing :is(a,button):focus-visible { outline:3px solid #235b83; outline-offset:4px; box-shadow:0 0 0 3px #fff; }
.academy-landing .landing-hero .landing-secondary {
  color:#234e70!important; background:#fff; border-color:#7b99b1; display:inline-flex; align-items:center; justify-content:center;
}
.academy-landing .landing-hero .landing-secondary:hover { background:#dce8f5; border-color:#235b83; }
.academy-landing .hero-proof strong { color:var(--landing-ink); }
.academy-landing .hero-proof span { border-color:#a7bbcf; letter-spacing:0; }
.academy-landing .hero-actions { gap:14px; }
.academy-landing .landing-primary { box-shadow:0 4px 12px #213c561a; letter-spacing:0; }
.academy-landing .landing-nav { min-height:88px; }
.academy-landing .landing-brand .academy-full-logo { width:64px; height:64px; }
.academy-landing .landing-brand strong { font-size:1.5rem; }
.academy-landing .landing-hero { min-height:0; padding-block:72px; }
.academy-landing .hero-copy h1 { font-size:clamp(2.5rem,4.5vw,4rem); }
.academy-landing :is(.landing-section-copy p,.learning-outcomes p,.landing-pricing>header p) { color:var(--landing-muted); }
.academy-landing .landing-section-copy>a { font-size:.875rem; line-height:1.5; min-height:44px; display:inline-flex; align-items:center; margin-top:16px; color:var(--landing-accent); }
.academy-landing .learning-outcomes article>span { color:#805c15; }
.academy-landing .module-roadmap { color:var(--landing-ink); }
.academy-landing .module-roadmap>header h2 { color:var(--landing-ink); font-size:clamp(2rem,3.5vw,3rem); }
.academy-landing .module-roadmap>header p { color:var(--landing-muted); }
.academy-landing .module-grid article { display:flex; flex-direction:column; min-width:0; border-radius:12px; padding:26px; }
.academy-landing .module-grid article>div { align-items:flex-start; }
.academy-landing .module-grid article>div span { color:var(--landing-accent); }
.academy-landing .module-grid article>div small { color:var(--landing-muted); font-size:.75rem; line-height:1.5; letter-spacing:.04em; }
.academy-landing .module-grid h3 { color:var(--landing-ink); font-size:1.375rem; line-height:1.3; margin-top:22px; }
.academy-landing .module-grid article p { color:var(--landing-muted); }
.academy-landing .module-grid article .course-availability { font-size:.875rem!important; margin-block:14px 8px; }
.academy-landing .module-grid article>a { margin-top:auto; color:var(--landing-accent); }
.academy-landing .module-roadmap>footer { font-size:.875rem; line-height:1.6; }
.academy-landing .seat-packages { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.academy-landing .seat-packages article { min-width:0; border-radius:12px; }
.academy-landing .seat-packages article>span { color:#795810; font-size:.75rem; letter-spacing:.05em; line-height:1.5; }
.academy-landing .seat-packages article>div small { color:var(--landing-muted); font-size:.875rem; }
.academy-landing .seat-packages article.recommended>span { color:#f3cf79; }
.academy-landing .seat-packages article.recommended>b { font-size:.75rem; letter-spacing:.04em; }
.academy-landing .seat-packages article.recommended>div small { color:#d0e3d8; }
.academy-landing .landing-pricing>footer { color:var(--landing-muted); font-size:.875rem; line-height:1.6; }
.academy-landing .landing-pricing>footer :is(span,strong,a) { font-size:inherit; }
.academy-landing .purchase-disclosure { color:var(--landing-muted); font-size:.875rem; line-height:1.6; }
.academy-landing .course-value article span { font-size:.75rem; letter-spacing:.06em; }
.academy-landing .course-value>footer { color:#c8dccf; font-size:.875rem; line-height:1.6; }
.academy-landing .experience-steps article>span { color:#c8dccf; font-size:.875rem; }
.academy-landing .landing-footer>small { color:#c8dccf; font-size:.875rem; }
.academy-landing :is(.module-roadmap>footer,.landing-pricing>footer) { gap:12px 24px; }
@media(max-width:1000px) {
  .academy-landing .seat-packages { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .academy-landing .landing-hero { padding-block:44px; }
  .academy-landing .seat-packages { grid-template-columns:minmax(0,1fr); }
  .academy-landing .module-grid article { padding:24px; }
  .academy-landing .landing-brand .academy-full-logo { width:56px; height:56px; }
  .academy-landing .landing-section-copy { min-width:0; }
}
.gm-course{--gm-accent:#91621a;--gm-tint:#f7f1e5;background:#fffdf9;min-height:100vh;color:#172433;font-size:1rem;line-height:1.65}.gm-module-2{--gm-accent:#126477;--gm-tint:#eaf5f7;background:#f7fbfc}.gm-course button,.gm-course a,.gm-course textarea{font:inherit}.gm-course button{cursor:pointer;border:1px solid #aebbc3;background:white;color:#172433;padding:.7rem 1rem;border-radius:5px}.gm-course button:disabled{cursor:not-allowed;opacity:.5}.gm-course :focus-visible{outline:3px solid #167ba0;outline-offset:4px}.gm-course a{color:inherit}.gm-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 3vw;background:#102338;color:#fff}.gm-topbar button{background:transparent;border-color:#718395;color:#fff}.gm-topbar span,.gm-eyebrow{font-size:.875rem;letter-spacing:.12em;font-weight:700}.gm-course-layout{display:grid;grid-template-columns:290px minmax(0,1fr);max-width:1500px;margin:auto}.gm-course-nav{padding:2rem 1.4rem;border-right:1px solid #d7dee1;background:var(--gm-tint)}.gm-course-nav img{width:110px;display:block;margin-bottom:1.5rem}.gm-course-nav h2{font:1.5rem/1.3 Georgia,serif}.gm-course-nav progress{width:100%;accent-color:var(--gm-accent)}.gm-course-nav nav{display:grid;gap:.5rem;margin:1.5rem 0}.gm-course-nav nav button{display:flex;gap:.8rem;text-align:left;font-size:.9375rem;background:transparent;border-color:transparent}.gm-course-nav nav button[aria-current]{border-color:var(--gm-accent);background:white}.gm-course-nav nav button span{font-weight:700;color:var(--gm-accent)}.gm-cert-note{font-size:.875rem;color:#475663}.gm-main{max-width:940px;width:100%;padding:3rem clamp(1.25rem,4vw,4rem) 6rem}.gm-main h1,.gm-module-overview h1{font:clamp(2.1rem,4vw,3.4rem)/1.1 Georgia,serif;letter-spacing:-.025em;margin:.8rem 0 1.2rem}.gm-main h2{font:1.7rem/1.25 Georgia,serif}.gm-main h3{font-size:1.2rem;line-height:1.35}.gm-lesson-heading>p{font-size:1.15rem}.gm-guest-impact{border-left:4px solid var(--gm-accent);padding:.6rem 1rem;margin:1.5rem 0}.gm-guest-impact p{margin:.3rem 0}.gm-situation{background:#102338;color:#fff;padding:1.7rem;margin:2rem 0}.gm-situation p{font-size:1.125rem}.gm-audio{border-bottom:1px solid #d7dee1;padding-bottom:1rem}.gm-audio label{display:block;font-weight:700}.gm-audio audio{width:100%;margin:.6rem 0}.gm-audio p{font-size:.875rem;color:#475663}.gm-teaching>section{display:flex;gap:1.1rem;padding:1.3rem 0}.gm-section-number{font:1.75rem Georgia,serif;color:var(--gm-accent);padding-top:1rem}.gm-teaching h2{margin:.8rem 0}.gm-worked-example{border-top:2px solid var(--gm-accent);padding:1.5rem 0;margin:1rem 0 2rem}.gm-worked-example blockquote{margin:1rem 0;padding:1rem;border-left:3px solid #9ca7b0;background:#f0f2f3}.gm-worked-example>div{background:var(--gm-tint);padding:1.2rem}.gm-illustration{border:1px solid #b8c5cd;padding:1.5rem;margin:2rem 0;background:white;overflow:hidden}.gm-visual-controls{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.5rem}.gm-visual-controls button{font-size:.875rem}.gm-visual-controls button[aria-pressed=true]{background:#102338;color:white;border-color:#102338}.gm-shift-compare{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.gm-shift-compare article{padding:1.2rem;background:#f0f2f3;border-top:4px solid #77818b}.gm-shift-compare article+article{background:var(--gm-tint);border-color:var(--gm-accent)}.gm-sequence{display:grid;gap:.4rem}.gm-sequence b{color:var(--gm-accent)}.gm-ledger{border:1px solid #c4ccd0}.gm-ledger>div{padding:1rem;border-bottom:1px solid #c4ccd0}.gm-ledger span,.gm-ledger strong{display:block}.gm-ledger span{font-size:.875rem}.gm-receipts{display:flex;gap:1rem;justify-content:space-between}.gm-receipts b{display:block;color:var(--gm-accent)}.gm-profile label{display:block;margin:1.3rem 0}.gm-profile label>span{display:flex;justify-content:space-between}.gm-profile input{width:100%;accent-color:var(--gm-accent);margin-top:.8rem}.gm-conversation{list-style:none;padding:0}.gm-conversation li{display:flex;gap:1rem;align-items:center;border-bottom:1px solid #cad3d9;color:#66717a;padding:.4rem}.gm-conversation li.revealed{color:#172433;background:var(--gm-tint)}.gm-conversation li>span{font:2rem Georgia,serif;color:var(--gm-accent)}.gm-diagnosis{display:grid;grid-template-columns:120px 1fr;gap:1.5rem}.gm-loop{display:flex;flex-direction:column;justify-content:space-around;border-left:4px solid var(--gm-accent);padding-left:1rem}.gm-diagnosis article{animation:gm-reveal .35s ease}.gm-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:.35rem}.gm-calendar span{padding:.5rem;text-align:center;background:#edf0f2;transition:background .4s,color .4s}.gm-calendar span.filled{background:var(--gm-accent);color:white}.gm-message>p{font:1.6rem/1.4 Georgia,serif;border-bottom:1px solid #cad3d9;padding-bottom:1rem}.gm-message>div{display:grid;grid-template-columns:120px 1fr;border-left:4px solid #c7ced1;padding:.8rem;background:#f2f4f5;margin:.5rem 0;transition:background .3s}.gm-message>div.included{background:var(--gm-tint);border-color:var(--gm-accent)}.gm-pressure{padding:1.5rem;background:#102338;color:#fff}.gm-quote{display:block;font:1.7rem/1.4 Georgia,serif}.gm-pressure>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;border-top:1px solid #768391;margin-top:1.5rem}.gm-pressure small,.gm-pressure strong{display:block}.gm-pressure small{color:#bdd6dc}.gm-network>strong{display:block;text-align:center;background:#102338;color:white;padding:1rem}.gm-network>div{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1rem 0}.gm-network article{border:2px dashed #a5b2b9;padding:1rem;transition:background .4s}.gm-network article.connected{border-style:solid;border-color:var(--gm-accent);background:var(--gm-tint)}.gm-network b{display:block;font-size:.875rem}.gm-routing>div{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.gm-routing article{padding:1rem;border:1px solid #c7cfd4}.gm-routing article.selected{border-top:5px solid var(--gm-accent);background:var(--gm-tint)}.gm-trace{display:grid;gap:.6rem}.gm-trace article{display:grid;grid-template-columns:2rem 1fr;gap:.5rem 1rem;padding:1rem;border-left:4px solid #b7c2c8;background:#f0f3f5;transition:background .4s}.gm-trace article.done{border-color:var(--gm-accent);background:var(--gm-tint)}.gm-trace p{margin:0}.gm-trace span{grid-column:2;font-size:.875rem;font-weight:700}.gm-briefing{display:grid;grid-template-columns:180px 1fr;gap:1.5rem;margin-top:1rem}.gm-clock{background:#102338;color:white;padding:1rem;display:flex;flex-direction:column;gap:.6rem;align-items:center}.gm-clock strong{font:3rem Georgia,serif;font-variant-numeric:tabular-nums}.gm-clock span{font-size:.875rem}.gm-clock button{width:100%;font-size:.875rem}.gm-briefing ol{padding-left:1.3rem;margin:0}.gm-briefing li{padding:.7rem}.gm-briefing li.current{background:var(--gm-tint);font-weight:700}.gm-briefing>p{grid-column:1/-1;font-size:.875rem}.gm-exercise,.gm-practice,.gm-reflection{padding:1.2rem 0;margin-top:1.2rem}.gm-course textarea{display:block;width:100%;resize:vertical;border:1px solid #899ba7;border-radius:4px;padding:1rem;line-height:1.7;margin:.5rem 0;background:white;color:#172433}.gm-exercise label,.gm-reflection label{display:block;font-weight:700}.gm-exercise small{font-size:.875rem}.gm-decision{border:0;border-top:1px solid #ccd5da;padding:1.5rem 0;margin:1.5rem 0;min-width:0}.gm-decision legend{font-size:1.125rem;font-weight:700;padding-top:1rem}.gm-decision label{display:flex;gap:.8rem;align-items:flex-start;border:1px solid #ccd5da;padding:.9rem;margin:.6rem 0;cursor:pointer}.gm-decision label.chosen{background:var(--gm-tint);border-color:var(--gm-accent)}.gm-decision input{margin-top:.4rem;accent-color:var(--gm-accent);flex-shrink:0}.gm-feedback{padding:1rem;background:#fff0dd;border-left:4px solid #ab6918}.gm-feedback.correct{background:#eaf5ef;border-color:#276946}.gm-reflection{border-top:3px solid var(--gm-accent)}.gm-takeaway{background:#102338;color:white;padding:1.6rem;margin:2rem 0}.gm-takeaway>span{font-size:.875rem;letter-spacing:.1em;color:#eac985}.gm-takeaway summary{cursor:pointer}.gm-takeaway li{margin:.5rem 0}.gm-save-actions{display:flex;flex-wrap:wrap;gap:1rem}.gm-course .gm-primary{background:var(--gm-accent);border-color:var(--gm-accent);color:white}.gm-completion-help,.gm-save-notice{font-size:.9375rem}.gm-save-notice{position:sticky;bottom:0;background:#fffdf9;border-top:1px solid #cad3d9;padding:1rem;box-shadow:0 -5px 15px #10233808}.gm-save-notice.unsaved{border-color:#ab6918}.gm-record-note{background:#f1f3f5;border:1px solid #bbc5cc;padding:1rem;font-size:.9375rem}.gm-assessment-result{background:var(--gm-tint);padding:1.5rem;margin:1.5rem 0}.gm-module-overview{max-width:900px;margin:auto;padding:4rem 1.5rem}.gm-overview-stats{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.gm-overview-stats span{border-left:3px solid var(--gm-accent);padding-left:.7rem}.gm-module-overview ol{padding-left:1.5rem;margin:3rem 0}.gm-module-overview li{padding:1rem;border-bottom:1px solid #cbd4da}@keyframes gm-reveal{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:950px){.gm-course-layout{grid-template-columns:220px 1fr}.gm-main{padding:2rem 1.3rem 4rem}.gm-shift-compare,.gm-briefing{grid-template-columns:1fr}.gm-clock{flex-direction:row;flex-wrap:wrap;justify-content:center}.gm-clock button{width:auto}}@media(max-width:700px){.gm-topbar{flex-wrap:wrap;padding:1rem}.gm-course-layout{display:block}.gm-course-nav{border-right:0;border-bottom:1px solid #cad3d9;padding:1rem}.gm-course-nav img{display:none}.gm-course-nav h2{font-size:1.25rem}.gm-course-nav nav{display:flex;overflow:auto;margin:1rem 0}.gm-course-nav nav button{min-width:190px}.gm-cert-note{margin-bottom:0}.gm-diagnosis,.gm-message>div,.gm-routing>div{grid-template-columns:1fr}.gm-pressure>div{grid-template-columns:1fr}.gm-pressure>div p{margin:.5rem 0}.gm-illustration{padding:1rem}.gm-receipts{flex-wrap:wrap}.gm-teaching>section{gap:.7rem}.gm-save-actions button{width:100%}}@media(prefers-reduced-motion:reduce){.gm-course *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.gm-topbar,.gm-course-nav,.gm-save-actions,.gm-save-notice,.gm-audio{display:none}.gm-course-layout{display:block}.gm-main{max-width:none;padding:0}}
.gm-studio-fieldset{border:0;padding:0;margin:0;min-width:0}.gm-account-save{position:sticky;top:8px;z-index:8;display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #c9d7d0;border-radius:12px;padding:10px 16px;background:#f4faf6;color:#203d32;box-shadow:0 4px 12px #10251c0d;font-size:14px}.gm-account-save button{white-space:nowrap;border:1px solid #476c59;border-radius:8px;padding:7px 12px;background:white;color:#234333}.gm-journey-links{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.gm-journey-links a{padding:10px 14px;background:#eef2ee;color:#253e33;border:1px solid #d8e1da;border-radius:24px;text-decoration:none;font-size:14px}.gm-journey-links a:focus-visible,.gm-account-save button:focus-visible{outline:3px solid #b47b2c;outline-offset:3px}.gm-ready-checklist{padding:18px 24px;list-style:none;background:#f4f6ef;border:1px solid #dbe2d3;border-radius:12px;line-height:1.9}.gm-course [id]{scroll-margin-top:90px}.gm-attempt-history{padding:20px;margin:20px 0;border:1px solid #d6ded7;border-radius:12px}.gm-attempt-history ol{padding-left:24px}.gm-attempt-history li{margin:10px 0}@media(max-width:650px){.gm-account-save{top:4px;padding:9px;font-size:12px}.gm-journey-links a{padding:8px 10px;font-size:12px}.gm-ready-checklist{padding:14px;font-size:14px}}
.gm-course.gm-module-3{--gm-accent:#9b4255}.gm-course.gm-module-4{--gm-accent:#276278}.gm-course.gm-module-5{--gm-accent:#67603d}.gm-course.gm-module-6{--gm-accent:#376b52}.gm-course.gm-module-7{--gm-accent:#9b5e2d}.gm-course.gm-module-8{--gm-accent:#45478a}.gm-course.gm-module-9{--gm-accent:#74549a}.gm-course.gm-module-10{--gm-accent:#236d72}.gm-course.gm-module-11{--gm-accent:#a14e28}.gm-course.gm-module-12{--gm-accent:#345b8a}
.adv-simulation{margin:32px 0;border:1px solid #d5d8dc;border-radius:20px;overflow:hidden;background:#fff;color:#172632}.adv-simulation>header{padding:24px 28px 12px}.adv-simulation>header>span{font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--gm-accent)}.adv-simulation h2{font-size:24px!important;margin:10px 0}.adv-simulation p{line-height:1.65}.adv-stage-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:0 28px 20px}.adv-stage-tabs button,.adv-options button,.adv-consequence button{font:inherit;border:1px solid #bcc5cb;border-radius:8px;padding:12px;text-align:left;background:#fff;color:#172632;cursor:pointer}.adv-stage-tabs button[aria-pressed=true],.adv-options button[aria-pressed=true]{background:var(--gm-accent);color:white;border-color:var(--gm-accent)}.adv-simulation button:focus-visible{outline:3px solid #e4ac3a;outline-offset:3px}.adv-graphic{padding:26px;animation:adv-reveal .35s ease-out}.adv-stage-detail{padding:0 28px;font-weight:600}.adv-options{border:0;padding:12px 28px;display:grid;gap:10px;min-width:0}.adv-options legend{font-weight:800;margin-bottom:8px}.adv-options button:hover{border-color:var(--gm-accent);box-shadow:0 0 0 1px var(--gm-accent)}.adv-consequence{margin:16px 28px;padding:20px;border-left:4px solid var(--gm-accent);background:#f1f5f4}.adv-consequence.needs-work{background:#faf1e6}.adv-note{padding:0 28px 18px;font-size:13px;color:#596875}.adv-node{padding:18px;background:#fff;border:1px solid #bfc8ce;display:grid;gap:8px;opacity:1;transition:opacity .3s,transform .3s}.adv-node.is-active{opacity:1;transform:translateY(-3px)}.adv-node>span{font-size:12px;font-weight:800;color:var(--gm-accent)}.adv-node small{font-size:12px;line-height:1.5}
.adv-journey .adv-graphic{background:#fff2ee}.adv-journey .adv-journey{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding-top:24px}.adv-path{position:absolute;left:10%;right:10%;top:10px;border-top:3px dashed #b87a86}.adv-journey .adv-node{border-radius:40px 40px 10px 10px;border-color:#d6a7ac}.adv-guest{grid-column:1/-1;border-top:1px solid #caa3a8;margin-top:12px;padding:20px;text-align:center}.adv-guest span{font-size:11px;letter-spacing:.15em}.journey-1 .adv-node,.journey-4 .adv-node{border-radius:6px 28px 6px 28px}.journey-2 .adv-node,.journey-5 .adv-node{border-radius:50% 50% 10px 10px}
.adv-floor .adv-graphic{background:#163b4a;color:#fff}.adv-floor .adv-floor{border:2px solid #a3b9c2;padding:20px}.adv-pass{border-bottom:3px double #94b6c2;padding:12px;text-align:center;font-size:12px;letter-spacing:.15em}.adv-tables{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding:28px 12px}.adv-table{border:2px solid #5d8595;border-radius:50%;min-height:130px;display:grid;place-content:center;text-align:center;padding:16px;gap:10px;color:#bdd0d8}.adv-table.is-active{background:#d6eaf0;color:#163b4a;border-color:#fff}.adv-table span{font-size:12px}.adv-host{font-size:12px;text-align:center;border-top:1px dashed #9fb9c2;padding-top:16px}.floor-1 .adv-table:nth-child(2),.floor-3 .adv-table{border-radius:12px}.floor-2 .adv-tables,.floor-4 .adv-tables{gap:12px}.floor-5 .adv-table{border-radius:8px 30px}
.adv-procedure .adv-graphic{background:#eeece2}.adv-procedure .adv-procedure{background:#fffef7;box-shadow:5px 5px 0 #c8c4b2;padding:22px;border:1px solid #b9b6a3}.adv-document-title{font-size:11px;letter-spacing:.12em;border-bottom:2px solid #666047;padding-bottom:14px}.adv-procedure-row{display:grid;grid-template-columns:28px 1fr 120px;gap:12px;align-items:center;padding:18px 0;border-bottom:1px solid #d9d5c5;opacity:1}.adv-procedure-row.is-active{opacity:1}.adv-procedure-row span{font-size:12px}.procedure-2 .adv-procedure-row,.procedure-5 .adv-procedure-row{border-left:3px solid #c6bea0;padding-left:12px}.procedure-3 .adv-procedure-row b{border:1px solid;padding:6px}
.adv-roster .adv-graphic{background:#e8f2ed}.adv-roster-head,.adv-roster-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:12px;padding:15px 0;border-bottom:1px solid #bccdc3}.adv-roster-head{font-size:10px;letter-spacing:.1em;font-weight:800}.adv-roster-row>div{background:repeating-linear-gradient(90deg,#fff 0,#fff 24%,#cee0d6 24%,#cee0d6 25%);min-height:48px}.adv-roster-row>div>span{display:block;background:#3b7258;color:white;border-radius:5px;padding:12px 8px;box-sizing:border-box;font-size:11px;transition:width .4s}.adv-roster small{display:block;margin-top:16px}.roster-2 .adv-roster-row>div>span,.roster-4 .adv-roster-row>div>span{border-radius:0;border-left:5px solid #163e29}
.adv-inventory .adv-graphic{background:#f7eddf}.adv-crates{display:grid;grid-template-columns:1fr 1fr;gap:20px}.adv-crate{min-height:130px;border:2px solid #ba956b;background:#e6cfad;position:relative;padding:28px 20px 18px;display:grid;gap:14px;opacity:1}.adv-crate.is-active{opacity:1;background:#fffbef;box-shadow:4px 5px 0 #d6bc99}.adv-crate-lid{position:absolute;height:9px;top:0;left:0;right:0;background:repeating-linear-gradient(90deg,#b9966e 0,#b9966e 24%,#d3b590 25%,#d3b590 27%)}.adv-crate span{font-size:12px}.adv-stock-record{letter-spacing:.1em;font-size:11px;text-align:center}.stock-2 .adv-crate,.stock-3 .adv-crate{border-style:dashed}.stock-4 .adv-crate{border-radius:8px 8px 30px 30px}
.adv-financial .adv-graphic{background:#eeeeff}.adv-finance-label{display:block;font-size:11px;letter-spacing:.12em;margin-bottom:20px}.adv-finance-items{display:grid;gap:8px}.adv-finance-items>div{display:grid;grid-template-columns:30px 1fr;gap:6px;background:#fff;padding:16px;border-left:6px solid #aaaad3;opacity:1}.adv-finance-items>div.is-active{opacity:1;border-left-color:#4b4b92}.adv-finance-items>div span{grid-column:2;font-size:11px}.finance-0 .adv-finance-items>div:nth-child(even){margin-left:20px}.finance-1 .adv-finance-items>div:last-child{background:#45478a;color:white}.finance-2 .adv-finance-items,.finance-4 .adv-finance-items{grid-template-columns:1fr 1fr}
.adv-talent .adv-graphic{background:#f4ecfa}.adv-talent .adv-talent{display:grid;grid-template-columns:150px 1fr;gap:26px;align-items:center}.adv-candidate{aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;background:#76519a;color:white;line-height:1.8;font-size:12px}.adv-talent-step{display:grid;grid-template-columns:24px 1fr;gap:8px;border-bottom:1px solid #c6b4d5;padding:16px 0;opacity:1}.adv-talent-step.is-active{opacity:1}.adv-talent-step small{grid-column:2}.talent-2 .adv-candidate,.talent-5 .adv-candidate{border-radius:12px}.talent-3 .adv-candidate{border-radius:50% 50% 10px 10px}
.adv-coaching .adv-graphic{background:#e7f4f3}.adv-conversation-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;margin-bottom:18px}.adv-bubble{max-width:82%;padding:20px;display:grid;gap:8px;border:1px solid #99c2be;margin:14px 0;opacity:1}.adv-bubble.is-active{opacity:1}.bubble-0{background:#fff;border-radius:2px 22px 22px 22px}.bubble-1{background:#cbe5e2;border-radius:22px 2px 22px 22px;margin-left:auto}.adv-bubble span{font-size:12px}.coaching-2 .adv-bubble{border-left:4px solid #367c76}.coaching-4 .adv-bubble{border-radius:3px;background:#fff}
.adv-incident .adv-graphic{background:#fff0e6}.adv-incident-label{font-size:11px;letter-spacing:.15em;border-bottom:3px solid #a14e28;padding-bottom:18px}.adv-incident-label strong{font-size:30px;display:block;margin-top:6px}.adv-incident ol{padding:0;list-style:none}.adv-incident li{display:flex;gap:18px;border-bottom:1px solid #dcbba4;padding:18px 0;opacity:1}.adv-incident li.is-active{opacity:1}.adv-incident li>b{border:2px solid #a14e28;align-self:flex-start;border-radius:4px;padding:8px}.adv-incident li div{display:grid;gap:8px}.incident-1 li>b,.incident-5 li>b{border-radius:50%}
.adv-strategy .adv-graphic{background:#e9eff9}.adv-compass{width:130px;height:130px;border:2px solid #416493;border-radius:50%;display:grid;place-content:center;text-align:center;margin:0 auto 24px;background:#fff;line-height:1.8;font-size:12px}.adv-strategy-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.adv-strategy .adv-node{border-radius:10px}.strategy-2 .adv-node,.strategy-5 .adv-node{border-left:5px solid #416493}.strategy-3 .adv-node:nth-child(even){transform:translateY(8px)}
.gm-project{margin:28px 0;padding:28px;border:1px solid #c9d2d7;background:#f6f8f8;border-radius:16px}.gm-project label{display:block;font-weight:700;margin:20px 0 8px}.gm-project textarea{box-sizing:border-box;width:100%;min-height:135px;padding:16px;font:inherit;line-height:1.6;border:1px solid #aab8c1;border-radius:8px;background:white;color:#172632}.gm-project small{display:block;margin:6px 0}.gm-project-rubric{padding-left:20px;line-height:1.8}
@keyframes adv-reveal{from{opacity:1;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:650px){.adv-graphic{padding:16px}.adv-simulation>header{padding:20px 18px 10px}.adv-stage-tabs,.adv-options{padding-left:18px;padding-right:18px}.adv-journey .adv-journey{grid-template-columns:1fr 1fr}.adv-talent .adv-talent{grid-template-columns:1fr}.adv-candidate{width:110px;margin:auto}.adv-roster-head,.adv-roster-row{grid-template-columns:1fr}.adv-procedure-row{grid-template-columns:24px 1fr}.adv-procedure-row>span{grid-column:2}.adv-tables{gap:12px;padding:18px 0}.adv-table{min-height:110px;padding:10px;font-size:13px}.adv-crates{gap:12px}.adv-crate{padding:24px 12px 14px}.adv-finance-items{grid-template-columns:1fr!important}.gm-project{padding:18px}.adv-stage-detail{padding:0 18px}.adv-consequence{margin:16px 18px}.adv-simulation{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.adv-graphic{animation:none}.adv-node,.adv-roster-row>div>span{transition:none}.adv-node.is-active{transform:none}}

.adv-labor-calculation{display:grid;grid-template-columns:1fr 1fr;gap:18px}.adv-labor-calculation>div{background:white;border-top:5px solid #376b52;padding:20px;display:grid;gap:16px}.adv-labor-calculation span,.adv-stock-equation>span{font-size:11px;letter-spacing:.1em}.adv-labor-calculation b{font-size:24px;color:#23543b}.adv-labor-calculation>p{grid-column:1/-1}.adv-stock-equation>div{display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:#fff9ef;padding:24px;margin-top:18px}.adv-stock-equation h3{font-size:26px}.adv-stock-equation .adv-variance{display:block;border-left:5px solid #9b5e2d}@media(max-width:650px){.adv-labor-calculation{grid-template-columns:1fr}}
.workplace-tool,.lesson-simulation{border:1px solid #b9c7c7;background:#fffdf8;border-radius:16px;padding:clamp(18px,3vw,30px);margin:24px 0;color:#20343d}.workplace-tool h2,.lesson-simulation h2{font-size:1.6rem}.workplace-tool label{display:block;margin:20px 0}.workplace-tool textarea{display:block;width:100%;box-sizing:border-box;margin-top:8px;padding:12px;border:1px solid #81999f;border-radius:8px;font:inherit}.workplace-tool details{padding:16px;background:#eef4f1;border-radius:10px;margin:16px 0}.application-check{display:flex!important;gap:12px;align-items:flex-start}.application-check input{margin-top:6px;flex:0 0 auto}.tool-table{overflow:auto}.tool-table table{width:100%;border-collapse:collapse}.tool-table th,.tool-table td{padding:10px;text-align:left;border-bottom:1px solid #ccd6d8}.tool-table input{width:100%;min-width:90px;box-sizing:border-box;font:inherit;padding:8px}.tool-results{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tool-results dd{margin:0;font-weight:700}.lesson-simulation fieldset{border:0;padding:0}.lesson-simulation legend{font-weight:700;font-size:1.1rem;margin:15px 0}.simulation-choice{display:flex;gap:12px;padding:14px;border:1px solid #9bafb3;border-radius:10px;margin:10px 0;background:white}.simulation-choice input{margin-top:5px}.simulation-outcome{padding:18px;border-left:5px solid #8c691f;background:#fbf4df}.simulation-outcome.sound{border-color:#2e6d54;background:#edf6ef}.simulation-effects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.simulation-effects p{padding:12px;background:white;border-radius:10px}.simulation-changed{padding:16px;background:#e9edf5;border:1px solid #859ebc;margin:20px 0}.simulation-roles{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}.simulation-roles li{padding:6px 12px;border:1px solid #bbc8d2;border-radius:20px}.simulation-scene{position:relative;overflow:hidden;margin:20px 0}.simulation-scene svg{width:100%;height:auto;display:block}.simulation-scene .scene-person{transition:transform .7s}.simulation-scene .scene-signal{transition:fill .4s}.simulation-scene .scene-flow{stroke-dasharray:8 5;animation:flow 3s linear infinite}.simulation-scene .scene-label{font-size:14px;fill:#142b34}.simulation-debrief{padding:18px;border:1px solid #9fbbb1;background:#f1f6ee}.practice-shell{max-width:1050px;margin:auto;padding:32px 20px 80px}.practice-shell textarea{width:100%;box-sizing:border-box;font:inherit;padding:12px}.practice-shell select,.practice-shell button{font:inherit;padding:10px 14px;margin:8px 8px 8px 0}.practice-shell .record{padding:24px;border:1px solid #c2d0cb;border-radius:14px;margin:20px 0;background:#fffdf8}.practice-shell label{display:block;margin:16px 0}.practice-shell .status{padding:14px;background:#edf5ef;border-left:4px solid #3b6757}.practice-shell .error{background:#fff0e9;padding:14px}.practice-shell pre{white-space:pre-wrap}.practice-shell .review-card{border-top:1px solid #bbb;padding:20px 0}.practice-shell nav{display:flex;gap:16px;flex-wrap:wrap}.practice-shell .score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@keyframes flow{to{stroke-dashoffset:-52}}@media(max-width:650px){.simulation-effects,.practice-shell .score-grid{grid-template-columns:1fr}.tool-table th,.tool-table td{padding:5px}.tool-results{font-size:.95rem}}@media(prefers-reduced-motion:reduce){.simulation-scene *{animation:none!important;transition:none!important}}@media print{.workplace-tool button,.practice-shell button{display:none}.workplace-tool{break-inside:avoid}}
.narrated-lesson{margin:30px 0;background:#fff;border:1px solid #d5d8df;border-radius:22px;overflow:hidden;--story:#3a677a;--scene-bg:#e9f2f6;color:#182a36}.narrated-lesson>header{padding:24px 26px 10px}.narrated-lesson>header>span{font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--story)}.narrated-lesson h2{font-size:25px;margin:10px 0}.narrated-lesson p{line-height:1.65}.narrated-module-1{--story:#695437;--scene-bg:#f2eadb}.narrated-module-2{--story:#426d53;--scene-bg:#e6eee8}.narrated-module-3{--story:#983f63;--scene-bg:#fff0ef}.narrated-module-4{--story:#78cce4;--scene-bg:#103644}.narrated-module-5{--story:#575838;--scene-bg:#e7e3cf}.narrated-module-6{--story:#1d6c60;--scene-bg:#e9f7f2}.narrated-module-7{--story:#865421;--scene-bg:#f1dfc6}.narrated-module-8{--story:#5d50a2;--scene-bg:#f0edff}.narrated-module-9{--story:#8050a3;--scene-bg:#f4eaf7}.narrated-module-10{--story:#147876;--scene-bg:#def2ef}.narrated-module-11{--story:#a64422;--scene-bg:#fff0de}.narrated-module-12{--story:#355991;--scene-bg:#e8eef9}
.narration-scene{padding:22px 26px 30px;background:var(--scene-bg);min-height:330px;position:relative}.story-scene-status{display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;font-size:10px;letter-spacing:.15em;margin-bottom:26px;color:var(--story);font-weight:800}.story-scene-status b{border:1px solid currentColor;padding:5px 8px;border-radius:50%}.story-person{min-width:66px;text-align:center;align-self:end;font-size:12px;color:var(--story)}.story-person svg{width:85px;max-width:100%;fill:var(--story)}.story-person strong{display:block}.story-person .person-apron{fill:#fff;opacity:.55}.person-guest svg{fill:#b76f68}.person-host svg{fill:#597e96}.person-kitchen svg{fill:#88865d}.story-active{transition:background .5s,border-color .5s,box-shadow .5s,transform .5s}.story-scene-status span{animation:story-cue-in .4s ease-out}.narrated-lesson.is-paused *{animation-play-state:paused!important}
.story-credibility{display:grid;grid-template-columns:90px 1fr;gap:22px}.story-commitments{display:grid;gap:8px}.story-commitments>div{display:grid;grid-template-columns:25px 1fr;gap:6px;background:#fffdf6;border-left:3px solid #c0b190;padding:12px}.story-commitments i{grid-column:2;font-size:11px;font-style:normal}.story-commitments .story-active{border-color:#695437;transform:translateX(5px)}.story-trust{grid-column:1/-1;background:#fff9eb;border:1px solid #c9b998;padding:12px;font-size:10px;letter-spacing:.1em}.story-trust>div{background:#695437;height:7px;margin-top:12px;transition:width .7s}
.story-team{display:flex;justify-content:space-around;gap:12px}.story-briefing-table{border:3px solid #507456;background:#fffef6;border-radius:50%;padding:28px 36px;text-align:center;margin-top:-10px;position:relative;box-shadow:0 8px 0 #bad0bf}.story-briefing-table>b{font-size:11px;letter-spacing:.12em}.story-briefing-table>div{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:12px}.story-briefing-table span{padding:8px;border-radius:4px;font-size:12px;border:1px solid #abc0ad}.story-briefing-table .story-active{background:#315c42;color:white}.story-briefing>p{text-align:center;font-size:12px}
.story-recovery{display:grid;grid-template-columns:75px 1fr 75px;gap:16px;align-items:end}.story-request>span{font-size:10px;letter-spacing:.14em}.story-guest-path{display:flex;gap:8px;margin:16px 0}.story-guest-path>div{flex:1;background:#fffbfb;border:1px solid #d2aeb5;border-radius:20px 20px 5px 5px;padding:12px 8px;display:grid;gap:12px;position:relative;font-size:12px}.story-guest-path b{font-size:10px;color:#983f63}.story-guest-path .story-active{background:#f5cbd2;transform:translateY(-5px);border-color:#983f63}.story-promise{background:white;border-radius:15px 15px 15px 0;border:1px solid #dbb5c0;padding:16px;font-size:12px;line-height:1.6;min-height:90px}.scene-phase-5 .story-promise{border:2px dashed #9b5360}.scene-phase-6 .story-promise,.scene-phase-7 .story-promise{border-left:6px solid #983f63}
.scene-module-4{color:#f2fafc;background-image:linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:20px 20px}.story-floor{border:2px solid #7ba6b5;padding:16px}.story-kitchen-pass{position:relative;border-bottom:4px double #7ba6b5;padding:12px;font-size:11px;letter-spacing:.13em;overflow:hidden}.story-ticket{float:right;background:#e8fafc;color:#103644;padding:5px 10px;animation:story-ticket 4s linear infinite}.story-dining-room{display:grid;grid-template-columns:1fr 1fr;gap:24px 38px;padding:22px 10px;position:relative}.story-table{border:2px solid #799cac;border-radius:35%;padding:16px;text-align:center;display:grid;gap:7px;font-size:12px;background:#153d4b;position:relative}.story-table>span{font-size:10px}.story-table>i{font-size:10px;font-style:normal}.story-table.story-active{background:#d0eaf2;color:#103644;box-shadow:0 0 0 5px #ffffff12}.story-table:nth-child(even){border-radius:9px}.story-runner{position:absolute;left:48%;top:10%;color:#f4b957;animation:story-runner 5s ease-in-out infinite}.story-entrance{border-top:1px dashed #87a9b7;padding-top:12px;font-size:10px;display:flex;justify-content:space-between;gap:8px}
.story-sop{position:relative;margin:8px 20px 0;background:#fffef7;border:1px solid #aaa78e;box-shadow:9px 10px 0 #c9c4ab;padding:26px;transform:rotate(-1deg)}.story-paper-clip{width:90px;height:18px;background:#676850;border-radius:7px;position:absolute;top:-9px;left:calc(50% - 45px)}.story-sop>header{display:grid;gap:8px;border-bottom:2px solid #7a7859;padding-bottom:18px}.story-sop>header>span{font-size:10px;letter-spacing:.1em}.story-sop-line{display:grid;grid-template-columns:24px 1fr;gap:8px;border-bottom:1px solid #dad6c1;padding:14px 0;font-size:13px}.story-sop-line>span{grid-row:1/3}.story-sop-line i{grid-column:2;font-size:11px;font-style:normal}.story-sop-line.story-active>span{background:#575838;color:white;border-radius:4px;align-self:start;text-align:center;padding:3px}.story-stamp{margin:15px 0 0 auto;border:2px solid #696842;padding:8px;width:fit-content;font-size:10px;font-weight:800;transform:rotate(3deg)}
.story-daypart{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em}.story-demand svg{height:85px;width:100%;fill:none;stroke:#217564;stroke-width:3}.story-demand path{stroke-dasharray:800;animation:story-line 5s ease-in-out infinite}.story-coverage{display:grid;grid-template-columns:38% 1fr;gap:12px;padding:13px 0;border-bottom:1px solid #bad3c8;align-items:center;font-size:12px}.story-coverage>span{background:repeating-linear-gradient(90deg,#fff 0,#fff 24%,#c8ded4 24%,#c8ded4 25%);height:27px}.story-coverage i{height:100%;display:block;background:#9dbfb0;border-radius:3px;transition:background .5s,transform .5s;transform-origin:left}.story-coverage.story-active i{background:#1d6c60;animation:story-coverage 3s ease-in-out infinite}.story-workload>p{font-size:11px}
.story-shelves{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding-top:20px;align-items:end}.story-box{background:#ddbb84;border:2px solid #9c7442;min-height:155px;display:flex;flex-direction:column;justify-content:space-between;padding:13px;gap:12px;box-shadow:4px 4px 0 #9c744244;font-size:13px;position:relative}.story-box:before{content:'';position:absolute;top:0;left:43%;width:14%;height:18px;background:#f5ddb9}.story-box>span{font-size:22px}.story-box.story-active{background:#fff3d9;transform:translateY(-10px)}.story-barcode{height:16px;background:repeating-linear-gradient(90deg,#5b4424 0,#5b4424 2px,transparent 2px,transparent 5px);max-width:60px}.story-conveyor{display:flex;justify-content:space-around;border:5px solid #6a563e;border-radius:30px;padding:6px;margin-top:14px;background:#bba383}.story-conveyor span{border:3px dotted #63503a;border-radius:50%;width:20px;height:20px;animation:story-roll 4s linear infinite}.story-stock-slip{background:#fff9eb;margin:20px 18px 0;padding:16px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:10px;border-bottom:3px dashed #c3aa81}.story-stock-slip p{width:100%;margin:0;font-size:12px}
.story-financial-axis{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.12em;border-bottom:1px solid #c0b5df;padding-bottom:12px}.story-waterfall{display:flex;align-items:flex-end;gap:13px;min-height:230px;padding:20px 0;border-bottom:2px solid #9c91bd}.story-financial-column{flex:1;font-size:12px;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;gap:10px}.story-financial-column>div{background:#c1b8df;border-top:3px solid #8f7fbd;transition:height .5s,background .5s;transform-origin:bottom}.story-financial-column.story-active>div{background:linear-gradient(#8272bf,#51438d);animation:story-column 3s ease-in-out infinite}.story-financial-column>strong{min-height:40px}.story-profit-foot{display:flex;justify-content:space-between;gap:20px;background:#51438d;color:white;padding:18px;font-size:11px}.story-profit>small{display:block;font-size:10px;margin-top:12px}
.story-interview-people{display:flex;justify-content:space-around;align-items:center;margin-bottom:20px}.story-question-mark{font-family:Georgia,serif;font-size:60px;color:#8050a3;border:2px dotted #b797cc;border-radius:50%;width:88px;height:88px;text-align:center}.story-evidence-files{display:grid;grid-template-columns:1fr 1fr;gap:14px}.story-evidence-files>article{border:1px solid #c1a5cf;border-top:6px solid #b599c3;border-radius:0 12px 3px 3px;background:#fff;padding:18px;display:grid;gap:10px}.story-evidence-files>article>span{font-size:9px;letter-spacing:.12em}.story-evidence-files i{font-size:11px;font-style:normal}.story-evidence-files .story-active{border-top-color:#8050a3;transform:rotate(-1deg)}
.story-coach{display:grid;grid-template-columns:75px 1fr 75px;gap:14px}.story-dialogue{display:grid;gap:16px}.story-speech{max-width:88%;padding:15px 18px;display:grid;gap:8px;border:1px solid #8ebeb7;font-size:13px;position:relative}.speech-0{background:#fff;border-radius:0 18px 18px 18px}.speech-1{background:#bee1db;border-radius:18px 0 18px 18px;margin-left:auto}.story-speech span{font-size:9px;letter-spacing:.1em}.story-speech.story-active{box-shadow:0 3px 0 #398c8040;border-color:#147876;transform:translateY(-2px)}
.story-incident{border:2px solid #a95d3a;background:#fff9ef}.story-incident>header{background:repeating-linear-gradient(135deg,#f0c775 0,#f0c775 12px,#f9e2b3 12px,#f9e2b3 24px);padding:20px;display:grid;grid-template-columns:20px 1fr;gap:10px;color:#64351b}.story-incident header>b{font-size:10px;letter-spacing:.13em}.story-incident header>strong{grid-column:2;font-size:20px}.story-beacon{width:15px;height:15px;border-radius:50%;background:#a33c23;animation:story-beacon 2s infinite}.scene-phase-6 .story-beacon,.scene-phase-7 .story-beacon{background:#3d744f}.story-incident-map{display:grid;grid-template-columns:45% 1fr;gap:18px;padding:20px}.story-incident-map svg{width:100%;align-self:center;fill:none;stroke:#a47a54;stroke-width:3}.story-incident-map .story-exit{stroke:#42754e;stroke-dasharray:10;animation:story-route 4s linear infinite}.story-incident-map circle{fill:#ae512e}.story-incident-map ol{padding:0;margin:0;list-style:none;display:grid;gap:12px}.story-incident-map li{padding:9px;border-left:2px solid #dfc5a5;font-size:12px;display:flex;gap:10px}.story-incident-map li.story-active{border-color:#a64422;background:#f8e4c7}.story-incident>p{font-size:11px;padding:0 20px 12px}
.story-orbit{position:relative;min-height:310px;border:1px dashed #90a5c5;border-radius:50%;max-width:550px;margin:15px auto}.story-center{position:absolute;left:calc(50% - 58px);top:calc(50% - 58px);width:116px;height:116px;border-radius:50%;background:#355991;color:white;text-align:center;display:flex;flex-direction:column;justify-content:center;font-size:44px;line-height:1.1;box-shadow:0 0 0 12px #35599113}.story-center span{font-size:10px;letter-spacing:.15em}.story-satellite{position:absolute;width:150px;padding:14px;background:white;border:1px solid #a7b8d0;display:grid;gap:7px;font-size:12px;box-sizing:border-box}.story-satellite>span{font-size:10px;color:#355991}.satellite-0{top:-5px;left:12%}.satellite-1{top:5%;right:-5px}.satellite-2{bottom:0;right:12%}.satellite-3{bottom:10%;left:-5px}.story-satellite.story-active{border-left:5px solid #355991;box-shadow:0 5px 12px #35599118}.story-horizon{display:flex;justify-content:space-between;gap:8px;margin-top:25px;font-size:10px;letter-spacing:.12em;border-top:3px solid #6987ae;padding-top:12px}
.narration-caption{padding:20px 26px;background:#142b37;color:#fff;min-height:130px}.narration-caption>span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#c7dce5}.narration-caption>p{font-size:17px;margin:10px 0 0;line-height:1.7}.narration-controls{padding:18px 24px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#f7f7f2}.narration-controls>label:first-child{width:100%;font-weight:700;font-size:12px}.narration-controls audio{flex:1;min-width:200px;height:42px}.narration-speed{display:flex;align-items:center;gap:8px;font-size:11px}.narration-speed select{padding:8px;background:white;border:1px solid #aebcc3;border-radius:6px}.narration-chapters{display:flex;gap:7px;flex-wrap:wrap;padding:16px 24px}.narration-chapters button{font:inherit;font-size:11px;padding:9px 12px;background:white;border:1px solid #aebcc3;border-radius:25px;cursor:pointer;color:#243a46}.narration-chapters button[aria-current=step]{background:#243a46;color:white}.narrated-lesson button:focus-visible,.narrated-lesson select:focus-visible{outline:3px solid #e4ae46;outline-offset:3px}.narration-transcript-note{padding:0 24px 18px;font-size:11px;color:#596974}.narrated-lesson>p[role=status]{padding:18px 24px}
@keyframes story-cue-in{from{transform:translateY(4px)}to{transform:none}}@keyframes story-ticket{from{transform:translateX(-40px)}to{transform:translateX(25px)}}@keyframes story-runner{0%,100%{top:10%}50%{top:85%}}@keyframes story-line{0%,100%{stroke-dashoffset:0}50%{stroke-dashoffset:50}}@keyframes story-coverage{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.93)}}@keyframes story-roll{to{transform:rotate(360deg)}}@keyframes story-column{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.96)}}@keyframes story-beacon{50%{box-shadow:0 0 0 7px #a33c231f}}@keyframes story-route{to{stroke-dashoffset:-80}}
@media(max-width:650px){.narration-scene{padding:18px 15px 24px}.narrated-lesson>header{padding:20px 18px 8px}.story-recovery,.story-coach{grid-template-columns:1fr}.story-recovery>.story-person,.story-coach>.story-person{display:none}.story-guest-path{display:grid;grid-template-columns:1fr 1fr}.story-shelves{grid-template-columns:1fr 1fr;gap:14px}.story-box{min-height:130px}.story-financial-column{font-size:10px}.story-waterfall{gap:8px}.story-profit-foot{flex-direction:column;gap:8px}.story-incident-map{grid-template-columns:1fr}.story-incident-map svg{height:120px}.story-satellite{width:120px;font-size:11px;padding:12px}.story-orbit{min-height:335px;border-radius:40%}.story-center{width:88px;height:88px;left:calc(50% - 44px);top:calc(50% - 44px);font-size:32px}.satellite-0{left:0;top:0}.satellite-1{right:0;top:16%}.satellite-2{right:0;bottom:0}.satellite-3{left:0;bottom:16%}.story-coverage{grid-template-columns:45% 1fr}.story-sop{margin:8px 8px 0;padding:20px 15px}.story-evidence-files{gap:9px}.story-evidence-files>article{padding:12px}.narration-caption{padding:18px;min-height:160px}.narration-caption>p{font-size:15px}.narration-controls{padding:14px}.story-table{padding:12px 8px}.story-dining-room{gap:20px 25px;padding:18px 0}.story-briefing-table{padding:22px 14px}.story-credibility{grid-template-columns:65px 1fr}}
@media(prefers-reduced-motion:reduce){.narrated-lesson *{animation:none!important;transition:none!important}}

.narrated-module-4>header>span{color:#276278}.gm-signature-preview{margin:30px 0;padding:24px;background:#f3f0e6;border-left:5px solid var(--gm-accent)}

.story-labor-math{display:grid;grid-template-columns:1fr 1fr;gap:20px}.story-labor-math article{background:#fff;border-top:5px solid #aac3b6;padding:20px;text-align:center;display:grid;gap:20px}.story-labor-math article>span{font-size:10px;letter-spacing:.1em}.story-labor-math article>strong{font-size:25px;color:#1d6c60}.story-labor-math hr{border:0;border-top:2px solid #81a692;margin:12px 0}.story-labor-math article.story-active{border-color:#1d6c60;box-shadow:0 5px 0 #1d6c601c}.story-labor-math>p{grid-column:1/-1;font-size:12px}.story-usage-math{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.story-usage-stock{background:#fff6e5;border:2px solid #ac8759;padding:18px 12px;flex:1;display:grid;gap:12px;min-width:80px}.story-usage-stock>span,.story-usage-result>span{font-size:10px;letter-spacing:.1em}.story-usage-stock>strong{font-size:24px}.story-usage-result{width:100%;padding:22px;background:#fffaf0;border-bottom:3px double #9b7440;display:grid;gap:12px}.story-usage-result>strong{font-size:30px}.story-usage-result>p{font-size:12px;margin:0}.story-usage-variance{display:flex;gap:22px;align-items:center;padding:18px;background:#865421;color:white;width:100%}.story-usage-variance b{font-size:32px}.story-usage-variance span{font-size:12px;line-height:1.7}.story-allergy{display:grid;grid-template-columns:75px 1fr 75px;gap:18px}.story-allergy-route{display:grid;gap:14px}.story-allergy-route article{background:#fffaf2;border:1px solid #c8a67b;padding:16px;display:grid;grid-template-columns:20px 1fr;gap:7px;font-size:13px}.story-allergy-route p{grid-column:2;font-size:12px;margin:0}.story-allergy-route article.story-active{border-left:5px solid #a64422}@media(max-width:650px){.story-labor-math{gap:10px}.story-labor-math article{padding:15px 10px}.story-labor-math article>strong{font-size:18px}.story-labor-math article b{font-size:12px}.story-usage-stock{min-width:0;padding:12px 8px}.story-usage-stock>strong{font-size:18px}.story-usage-stock>span{font-size:8px}.story-allergy{grid-template-columns:1fr}.story-allergy>.story-person{display:none}}
.signature-practice{margin:30px 0;border:2px solid var(--gm-accent,#6c5a3d);border-radius:16px;background:#fff;color:#19303d;overflow:hidden}.signature-practice>summary{padding:24px;cursor:pointer;display:grid;gap:10px;list-style:none;background:#f5f2e9}.signature-practice>summary>span{font-size:10px;font-weight:800;letter-spacing:.15em;color:var(--gm-accent,#6c5a3d)}.signature-practice>summary>strong{font-size:24px}.signature-practice>summary>small{font-size:12px}.signature-practice[open]>summary{border-bottom:1px solid #d6d9da}.signature-body{padding:26px}.signature-promise{font-size:19px;font-weight:650}.signature-note{font-size:12px;color:#536573;line-height:1.7}.signature-body h3{font-size:20px}.signature-body p{line-height:1.7}.signature-body label{display:grid;gap:8px;font-size:13px;font-weight:650;margin:14px 0}.signature-body input:not([type=checkbox]):not([type=radio]),.signature-body select,.signature-body textarea{width:100%;box-sizing:border-box;border:1px solid #aab7be;border-radius:6px;padding:12px;font:inherit;background:#fff;color:#172e3b;min-width:0}.signature-body textarea{min-height:95px;resize:vertical}.signature-body button{font:inherit;border:1px solid #a2b2bc;border-radius:7px;padding:12px 16px;background:#fff;cursor:pointer;color:#19303d;font-size:13px;line-height:1.6}.signature-body button:hover:not(:disabled){background:#edf3f3;border-color:var(--gm-accent,#6c5a3d)}.signature-body button:disabled{opacity:.55;cursor:not-allowed}.signature-body button[aria-pressed=true],.signature-body button[aria-current=step]{background:var(--gm-accent,#6c5a3d);color:white;border-color:var(--gm-accent,#6c5a3d)}.signature-body fieldset{border:0;margin:20px 0;padding:0;display:grid;gap:10px;min-width:0}.signature-body legend{font-weight:750;font-size:14px;margin-bottom:12px}.signature-body fieldset>button{text-align:left}.signature-body input[type=radio],.signature-body input[type=checkbox]{accent-color:var(--gm-accent,#6c5a3d);width:18px;height:18px;flex-shrink:0}.signature-body button:focus-visible,.signature-practice>summary:focus-visible,.signature-body input:focus-visible,.signature-body textarea:focus-visible,.signature-body select:focus-visible{outline:3px solid #e6ac40;outline-offset:3px}.practice-keep{margin-top:28px;padding-top:22px;border-top:1px solid #c9d0d4}.practice-keep button{background:#203d4a;color:white;border-color:#203d4a}.practice-keep p{font-size:12px}.practice-feedback{border-left:4px solid var(--gm-accent,#6c5a3d);padding:18px;background:#f2f4ef}.practice-stepper{display:flex;gap:12px;justify-content:space-between;margin-top:22px}.practice-number input{font-size:20px!important}.signature-body .practice-check{display:flex;align-items:flex-start;gap:10px}.signature-body dl{margin:0}.signature-body dd{margin:0}
.commitment-contract{background:#faf4e6;border:1px solid #b4a37e;border-top:8px solid #6b5a3e;padding:22px}.commitment-contract>span{letter-spacing:.16em;font-size:10px}.lab-credibility>button{margin-top:18px}.signature-2>summary{background:#e9f0e7}.signature-3>summary{background:#fff0ef}.recovery-guest{max-width:86%;background:#f4dfe3;border-radius:20px 20px 20px 0;padding:22px;border:1px solid #cdb0b6}.recovery-guest>span,.recovery-reply>span{font-size:10px;letter-spacing:.12em;font-weight:800}.recovery-reply{margin-left:12%;padding:22px;background:#fff9f4;border:1px solid #d7c8c0;border-radius:20px 0 20px 20px}.recovery-reply>strong{font-size:13px}.recovery-guest>p{font-size:18px}
.signature-4>summary{background:#173d4d;color:#fff}.signature-4>summary>span{color:#b9dfec}.lab-floor-pass{background:#153b4a;color:#d9f0f5;padding:16px;font-size:11px;letter-spacing:.12em}.dispatch-floor{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#204657;padding:22px;border:2px solid #416577}.dispatch-floor article{padding:20px;background:#f4fbfc;border-radius:18px;border:3px solid transparent;position:relative}.dispatch-floor article:first-child{grid-column:1/-1;border-radius:4px}.dispatch-floor article.first-response{border-color:#e7b255}.floor-marker{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#214e60;color:white}.dispatch-floor h3{font-size:17px}.dispatch-floor p{font-size:13px}.lab-floor>button{margin-top:18px}.dispatch-report{border:1px solid #789ba9;background:#e8f1f4;padding:20px;margin-top:18px;font-size:13px}
.signature-5>summary{background:#e9e6d5}.lab-sop{background:#f4f1e5;padding:22px;border:1px solid #c4c0a7}.sop-work-order>span{font-size:11px;letter-spacing:.1em;color:#6c684b}.sop-sort{list-style:none;padding:0;margin:22px 0;display:grid;gap:8px}.sop-sort li{background:#fffef9;display:grid;grid-template-columns:25px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #c9c5af;font-size:13px}.sop-sort li>div{display:flex;gap:5px}.sop-sort button{padding:5px 11px;font-size:18px}
.signature-6>summary{background:#e0f0e8}.lab-coverage>header{border-left:6px solid #376b52;padding:16px 20px;background:#ecf5ee}.lab-coverage>header>span{font-size:10px;letter-spacing:.1em}.coverage-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.coverage-persons{display:flex;gap:10px;flex-wrap:wrap;background:#f2f6f3;padding:20px;border-bottom:3px solid #59826b}.coverage-persons>div{width:64px;text-align:center;display:grid;gap:5px;background:white;border:1px solid #aac0b1;padding:10px 3px}.coverage-persons span{font-size:26px;color:#376b52}.coverage-persons small{font-size:10px}.coverage-persons .on-break{background:#e8e1d2;border-style:dashed}.coverage-persons .on-break span{color:#7b6e54}.coverage-balance{margin:25px 0;display:grid;gap:16px}.coverage-balance>div{display:grid;grid-template-columns:1fr 60px;gap:8px;font-size:12px}.coverage-balance i{grid-column:1/-1;height:18px;background:#376b52;display:block;transition:width .35s}.coverage-balance>div:first-child i{background:#ba8950}
.signature-7>summary{background:#efe0c8}.inventory-ledger{background:#fffbef;border:2px solid #b69769;padding:24px;box-shadow:6px 6px 0 #e2d1b5;margin-bottom:25px}.inventory-ledger>span{font-size:10px;letter-spacing:.12em}.inventory-ledger dl{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:20px;font-family:ui-monospace,monospace}.inventory-ledger dd{font-weight:800}.inventory-ledger p{font-size:11px}.evidence-envelopes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.evidence-envelopes button{padding:20px 14px;background:#ead7b7;border:1px solid #ad8d5a;border-top:13px solid #cfb587;text-align:left;display:grid;gap:12px;align-content:start;min-height:140px}.evidence-envelopes span{font-size:9px;letter-spacing:.1em}.evidence-envelopes p{font-size:12px;margin:0}.inventory-gap{margin-top:24px;border-top:2px solid #937246;padding:20px;background:#fbf6e9}.inventory-gap>span{font-size:10px;letter-spacing:.1em}.inventory-gap>strong{display:block;font-size:40px;margin:12px 0}
.signature-8>summary{background:#ede9fa}.lab-profit{display:grid;grid-template-columns:1fr 1.2fr;gap:22px}.profit-dials{background:#f6f3fc;padding:20px}.profit-statement{background:#282c48;color:#fff;padding:24px;align-self:start;border-radius:5px}.profit-statement>span{font-size:10px;letter-spacing:.1em;color:#c7c7e8}.profit-statement>div{display:flex;justify-content:space-between;gap:12px;padding:18px 0;border-bottom:1px solid #74768e;font-size:13px}.profit-statement .profit-total{border-top:4px double #9b9bbc;border-bottom:0;font-size:20px;color:#b9e4d3;margin-top:10px}.profit-statement .negative{color:#ffbfaf}.profit-statement p{font-size:11px}.lab-profit>button,.lab-profit>p,.lab-profit>.practice-keep{grid-column:1/-1}
.signature-9>summary{background:#f0e6f6}.interview-room{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f7f0fa;padding:25px}.interview-seat{width:85px;height:85px;border-radius:40% 40% 4px 4px;background:#825a9e;color:#fff;display:grid;place-content:center;font-size:10px;text-align:center;padding:10px;box-sizing:border-box}.interview-seat.candidate{background:#586d91}.interview-round-table{border:3px solid #c6b1d3;border-radius:50%;min-height:130px;max-width:230px;display:grid;place-content:center;text-align:center;padding:22px;background:#fff;font-size:10px;line-height:1.8}.interview-round-table strong{font-size:14px}.interview-question-cards{display:grid;gap:10px;margin-top:20px}.interview-question-cards button{text-align:left}.lab-interview blockquote{margin:24px 0;padding:24px;background:#f6f1fa;border-left:4px solid #81579e;font-size:17px;line-height:1.7}.signature-body .interview-score label{display:flex;align-items:center;gap:10px;margin:0;padding:12px;background:#f7f5fa}
.signature-10>summary{background:#ddf0ed}.coaching-scene{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#edf8f5;padding:24px}.coaching-scene>div:nth-child(2){text-align:center}.coaching-scene span{font-size:10px;letter-spacing:.1em}.coaching-chair{writing-mode:vertical-rl;min-height:130px;border-radius:30px 30px 5px 5px;background:#287971;color:#fff;padding:20px 12px;font-size:11px;text-align:center}.coaching-chair.employee{background:#76a39b}.coaching-response{background:#d8eee8;padding:24px;border-radius:22px 0 22px 22px;margin-left:12%;font-size:14px}.coaching-response>span{font-size:10px;letter-spacing:.12em}.coaching-response>p{font-size:18px}.coaching-timer{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:22px 0;padding:18px;border:1px solid #8db8ad;background:#f3faf7}.coaching-timer>strong{font-size:24px;margin-right:auto;font-variant-numeric:tabular-nums}
.signature-11>summary{background:#f4d9b5}.crisis-console{background:#26363a;color:#fff;padding:25px;border-top:7px solid #d7994d}.crisis-console>b{font-size:10px;letter-spacing:.1em}.crisis-status-light{display:inline-block;width:12px;height:12px;background:#efb56d;border-radius:50%;margin-right:10px}.crisis-console h3{color:#ffdbab}.crisis-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:3px solid #c19461;padding-top:15px}.crisis-timeline button{font-size:11px;padding:12px 8px}
.signature-12>summary{background:#e3eaf7}.strategy-budget{display:grid;grid-template-columns:repeat(3,1fr);background:#294b77;color:white;padding:22px;gap:15px}.strategy-budget span{display:block;font-size:9px;letter-spacing:.1em;margin-bottom:12px}.strategy-budget strong{font-size:25px}.strategy-projects{display:grid;grid-template-columns:1fr 1fr;gap:12px}.signature-body .strategy-projects label{display:flex;align-items:flex-start;gap:10px;border:1px solid #a7b8cf;padding:18px;margin:0;background:#f3f6fb}.strategy-projects label>span{display:grid;gap:10px}.strategy-projects b{font-size:20px;color:#355b89}.strategy-projects small{font-weight:400;line-height:1.5}.strategy-milestones{display:grid;gap:14px;margin:20px 0}.strategy-milestones article{border-left:5px solid #6987b0;background:#f6f8fc;padding:18px}.strategy-milestones h3{font-size:16px}.strategy-injection{padding:20px;border:2px dashed #ba8644;background:#fff3dc}
@media(max-width:650px){.signature-body{padding:18px}.signature-practice>summary{padding:20px}.dispatch-floor,.coverage-controls,.evidence-envelopes,.lab-profit,.strategy-projects{grid-template-columns:1fr}.dispatch-floor{padding:14px}.dispatch-floor article:first-child{grid-column:auto}.sop-sort li{grid-template-columns:20px 1fr;padding:12px}.sop-sort li>div{grid-column:2}.lab-sop{padding:14px}.strategy-budget{gap:8px;padding:16px}.strategy-budget strong{font-size:20px}.strategy-budget span{font-size:8px}.interview-room{gap:8px;padding:16px}.interview-seat{width:50px;font-size:8px;padding:5px}.interview-round-table{padding:12px;min-height:120px}.coaching-scene{gap:10px;padding:15px}.coaching-scene h3{font-size:17px}.coaching-chair{padding:14px 9px}.coaching-response{margin-left:5%;padding:18px}.crisis-timeline{grid-template-columns:1fr}.lab-profit>button,.lab-profit>p,.lab-profit>.practice-keep{grid-column:auto}.practice-stepper{flex-wrap:wrap}.recovery-guest{max-width:none}.recovery-reply{margin-left:5%}}
@media(prefers-reduced-motion:reduce){.signature-practice *{transition:none!important;animation:none!important}}

.gm-explore-diagram{margin:24px 0;border:1px solid #c8cfd2;border-radius:10px;padding:18px}.gm-explore-diagram>summary{cursor:pointer;font-weight:650;font-size:14px}
/* One Academy identity, shared by public, account, learning, and management pages. */
:root{--academy-surface:#f5f7fb;--academy-ink:#213c56;--academy-muted:#425e77;--academy-accent:#235b83;--academy-brand:#0c2419}
body{background:var(--academy-surface);color:var(--academy-ink)}
:is(.academy-landing,.module-dashboard,.owner-clients,.manager-portal,.login-panel,.workspace,.path-workspace,.immersive-stage,.manager-lesson,.module-detail-page,.foundations-lessons){background:var(--academy-surface);color:var(--academy-ink)}
:is(.landing-nav,.module-dashboard-nav,.policy-nav,.toolkit-nav,.module-detail-header,.owner-topbar,.landing-footer){background:var(--academy-brand);color:#fff}
:is(.landing-brand,.brand,.brand-button){display:flex;align-items:center;gap:12px;text-align:left}
body :is(.landing-brand,.brand,.brand-button) .academy-logo{width:64px;height:64px;object-fit:contain;flex-shrink:0;background:var(--academy-brand);border-radius:8px}
body .academy-brand-name{display:flex;flex-direction:column;gap:4px}
body .academy-brand-name strong{font-family:var(--brand-font);font-size:1.5rem;font-weight:800;letter-spacing:-.025em;line-height:1.2}
body .academy-brand-name small{font-family:var(--brand-font);font-size:.75rem;letter-spacing:.02em;line-height:1.4}
:is(.landing-nav,.module-dashboard-nav,.policy-nav,.toolkit-nav,.module-detail-header,.owner-topbar,.landing-footer,.main-sidebar,.manager-sidebar,.login-story) .academy-brand-name{color:#fff}
:is(.landing-nav,.module-dashboard-nav,.policy-nav,.toolkit-nav,.module-detail-header,.owner-topbar,.landing-footer,.main-sidebar,.manager-sidebar,.login-story) .academy-brand-name small{color:#d9e7dc}
img[src="/managers-table-brand.png"]{object-fit:contain;background:var(--academy-brand);border-radius:8px}
.module-detail-header>.landing-secondary{color:#fff!important}
.manager-lesson-header{border-color:#d7e1ed}
.manager-panel,.login-card,.owner-client-card{border-color:#d7e1ed}
.manager-actions button,.manager-panel>button,.foundations-lessons button{background:var(--academy-accent);color:#fff;border-color:var(--academy-accent)}
.manager-actions button:hover:not(:disabled),.manager-panel>button:hover:not(:disabled),.foundations-lessons button:hover:not(:disabled){background:#1b4869}
@media(max-width:700px){body :is(.landing-brand,.brand,.brand-button) .academy-logo{width:56px;height:56px}body .academy-brand-name strong{font-size:1.25rem}}
/* Brand rules must also win over page-specific presentation styles. */
:root{--academy-brand:#17283e}
body :is(.landing-nav,.module-dashboard-nav,.policy-nav,.toolkit-nav,.module-detail-header,.owner-topbar,.landing-footer,.gm-topbar){background:var(--academy-brand)!important;color:white}
body .academy-brand-name{display:flex!important}
body .academy-brand-name strong{font-family:var(--brand-font)!important;font-size:1.5rem!important;font-weight:800!important}
body .academy-brand-name small{font-family:var(--brand-font)!important;font-size:.75rem!important;text-transform:none!important;letter-spacing:.02em!important}
body .login-story{background:var(--academy-brand)}
body .gm-course{background:var(--academy-surface);color:var(--academy-ink)}
body .gm-topbar{flex-wrap:wrap;gap:16px;padding:16px 24px;border-bottom:1px solid #d7e1ed}
body .gm-topbar .academy-brand-name{color:white}
body .gm-topbar .academy-brand-name small{color:#d9e7dc}
body .gm-topbar button{background:white;color:var(--academy-ink)}
body .toolkit-nav{flex-wrap:wrap}
body .toolkit-nav>div{flex-wrap:wrap;min-width:0}
body .foundations-lessons>.academy-course-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px;color:var(--academy-ink)}
@media(max-width:700px){body .academy-brand-name strong{font-size:1.25rem!important}.login-brand{max-width:100%;width:auto}.toolkit-nav{gap:16px}.gm-topbar>.landing-brand{width:100%}}
body :is(.main-sidebar,.manager-sidebar,.academy-access-shell,.manager-state){background:var(--academy-brand);color:white}
.academy-course-brand .academy-logo{width:64px;height:64px;flex-shrink:0}
/* Keep the final lesson and assessment controls clear of the floating guide. */
.foundations-lessons#main-content{padding-bottom:180px}
body:has(.immersive-shell) #tmt-maitre-d{bottom:110px!important}
.immersive-stage,.activity-wrap,.activity-card{min-width:0}
.reward-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.reward-row>div{min-width:0}
.reward-row small{overflow-wrap:anywhere}
@media(max-width:520px){.reward-row>div{padding:14px 8px}.reward-row small{font-size:.7rem;letter-spacing:.04em}}

.academy-update-notice{position:fixed;z-index:10000;bottom:1rem;left:50%;transform:translateX(-50%);width:min(42rem,calc(100% - 2rem));background:#fff;color:#192d41;border:3px solid #216574;padding:1.25rem;border-radius:.75rem;box-shadow:0 8px 35px #0004}.academy-update-notice button{margin:.25rem}.learning-support{border-left:4px solid #216574;padding:1.25rem;margin:1.25rem 0;background:#f2f7f8}.learning-support label{display:block;margin:1rem 0}.learning-support textarea{width:100%;min-height:7rem}.learning-report-table{overflow-x:auto}.learning-report-table table{width:100%;border-collapse:collapse}.learning-report-table th,.learning-report-table td{text-align:left;padding:.7rem;border-bottom:1px solid #cbd5df}
.tmt-family-header{background:#102c25;color:#f6f3ec;border-bottom:1px solid #ffffff26;font:16px/1.5 Arial,sans-serif}
.tmt-family-inner{max-width:1240px;padding:20px 24px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px}
.tmt-family-brand{color:#f6f3ec!important;text-decoration:none;font:26px/1.2 Georgia,serif;min-width:0}
.tmt-family-brand small{display:block;font:11px/1.5 Arial,sans-serif;letter-spacing:.08em;color:#cdb581;margin-top:6px}
.tmt-family-header nav{display:flex;gap:22px;flex-wrap:wrap}.tmt-family-header nav a{color:#f6f3ec;display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:none}
.tmt-family-header nav a[aria-current]{text-decoration:underline;text-decoration-color:#cdb581;text-underline-offset:8px}.tmt-family-header a:focus-visible,.tmt-family-header summary:focus-visible{outline:3px solid #cdb581;outline-offset:4px}
.tmt-family-mobile{display:none}.tmt-family-mobile summary{cursor:pointer;min-height:44px;padding:10px 14px;border:1px solid #cdb581;border-radius:3px;font-size:14px;list-style:none}.tmt-family-mobile summary::-webkit-details-marker{display:none}
@media(max-width:900px){.tmt-family-inner{padding:16px 20px;gap:12px;flex-wrap:wrap}.tmt-family-header .tmt-family-desktop{display:none}.tmt-family-mobile{display:block;margin-left:auto}.tmt-family-brand{font-size:21px}.tmt-family-brand small{font-size:10px}.tmt-family-mobile[open]{width:100%;margin:0}.tmt-family-mobile[open] summary{width:fit-content;margin-left:auto}.tmt-family-mobile nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;margin-top:12px}}

/* Public Academy surfaces share the parent brand; lessons retain their learning layout. */
.academy-landing.academic-home{--landing-ink:#19382e;--landing-muted:#53675a;--landing-accent:#19382e;background:#f6f3ec;color:#19382e}
.academy-landing.academic-home :is(h1,h2,h3){font-family:Georgia,serif!important;font-weight:400!important;letter-spacing:-.025em}
.academy-landing.academic-home .landing-nav{background:#f6f3ec!important;color:#19382e;border-bottom:1px solid #c6cbbf;position:relative;top:auto;padding-block:12px}
.academy-landing.academic-home .landing-nav .academy-brand-name{color:#19382e!important}
.academy-landing.academic-home .landing-nav a{color:#19382e}.academy-landing.academic-home .landing-nav .academy-full-logo{display:none}.academy-landing.academic-home .landing-nav .academy-brand-name small{display:none}
.academy-landing.academic-home .landing-hero{padding-block:48px;background:#f6f3ec;color:#19382e}.academy-landing.academic-home .hero-copy h1{font-size:clamp(34px,4vw,56px);color:#19382e}
.academy-landing.academic-home :is(.landing-course,.module-roadmap,.landing-pricing,.director-value){background:#f6f3ec}.academy-landing.academic-home :is(.course-value,.landing-experience,.landing-footer){background:#102c25}
.academy-landing.academic-home .landing-primary{background:#19382e;border-color:#19382e;color:#f6f3ec}.academy-landing.academic-home .landing-secondary{color:#19382e;border-color:#80988a}
.tmt-quick-preview{padding:48px max(24px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#eeeade;border-block:1px solid #c6cbbf;color:#19382e;font:16px/1.65 Arial,sans-serif}
.tmt-quick-preview h2{font:36px/1.2 Georgia,serif;margin:14px 0 20px}.tmt-quick-preview p{margin:0 0 18px}.tmt-preview-note{font-size:14px;color:#53675a}.tmt-preview-options{display:grid;gap:10px;align-content:start}.tmt-preview-options button{font:16px/1.5 Arial,sans-serif;min-height:48px;text-align:left;padding:14px 18px;border:1px solid #8c9d90;border-radius:3px;background:#fffdf7;color:#19382e;cursor:pointer}.tmt-preview-options button[aria-pressed=true]{background:#19382e;color:#fffdf7}.tmt-preview-options button:focus-visible{outline:3px solid #b7904b;outline-offset:3px}.tmt-preview-feedback{padding-top:14px}.tmt-preview-feedback a{color:#19382e;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center}
@media(max-width:760px){.academy-landing.academic-home .landing-hero{padding-block:30px;gap:24px}.academy-landing.academic-home .landing-nav{padding:12px 20px}.academy-landing.academic-home .landing-nav nav{display:flex;gap:8px 18px;flex-wrap:wrap}.academy-landing.academic-home .landing-nav nav a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.tmt-quick-preview{grid-template-columns:1fr;padding:30px 22px;gap:20px}.tmt-quick-preview h2{font-size:30px}}
.academy-glossary-page{min-height:100vh;background:#f5f7fb;color:#213c56;font-size:1rem;line-height:1.6}.academy-glossary-page nav{display:flex;flex-wrap:wrap;gap:1.2rem}.academy-glossary-page nav a{color:inherit}.glossary-page-inner{max-width:980px;margin:auto;padding:2.5rem clamp(1rem,4vw,3rem) 4rem}.glossary-page-heading>span,.glossary-dialog-header>div>span{font-size:.75rem;letter-spacing:.1em;font-weight:700}.glossary-page-heading h1{font:clamp(2rem,5vw,3.2rem)/1.15 Georgia,serif;margin:.7rem 0}.glossary-page-heading>p{font-size:1.15rem}.academy-glossary-content{font:1rem/1.65 var(--brand-font,Arial,sans-serif);color:#213c56}.glossary-intro{margin:0 0 1.4rem;max-width:65ch}.glossary-filters{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:1rem}.glossary-filters label{display:block;font-weight:700;margin:0 0 .35rem}.glossary-filters input,.glossary-filters select{display:block;width:100%;min-width:0;box-sizing:border-box;font:inherit;font-size:1rem;min-height:48px;border:1px solid #91a3b2;border-radius:7px;background:white;color:#213c56;padding:.65rem .8rem}.academy-glossary-content button{font:inherit;cursor:pointer;color:#213c56;background:#fff;border:1px solid #91a3b2;border-radius:6px;min-height:44px;padding:.45rem .8rem}.academy-glossary-content :focus-visible,.academy-glossary-page a:focus-visible,.academy-glossary-dialog button:focus-visible,.academy-glossary-launcher:focus-visible{outline:3px solid #b47b19;outline-offset:3px}.glossary-starters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:1rem 0}.glossary-starters>span{font-size:.9rem;width:100%}.glossary-starters button{background:#e8eef4;border-color:#b9c8d4}.glossary-results-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin:1rem 0}.glossary-results-bar p{margin:0;font-size:.9rem;font-weight:700}.glossary-entries{display:grid;gap:1rem}.glossary-entry{background:#fff;border:1px solid #d7e1ed;border-left:4px solid #235b83;border-radius:7px;padding:1.2rem 1.4rem;overflow-wrap:anywhere}.glossary-topic{font-size:.75rem;font-weight:700;letter-spacing:.03em;color:#425e77}.glossary-entry h3{font:700 1.25rem/1.4 var(--brand-font,Arial,sans-serif);margin:.3rem 0 .65rem}.glossary-entry p{margin:.5rem 0;max-width:74ch}.glossary-example{border-top:1px solid #e1e8ef;padding-top:.65rem}.glossary-example strong{display:block;font-size:.875rem;margin-bottom:.2rem}.glossary-source{display:inline-block;font-size:.875rem;margin-top:.5rem;color:#235b83;text-underline-offset:3px}.glossary-empty{padding:1.5rem;border:1px dashed #91a3b2;border-radius:8px}.glossary-empty h3{margin-top:0}.glossary-context{font-size:.875rem;border-top:1px solid #c4d2dc;padding-top:1.2rem;margin-top:2rem}.academy-glossary-launcher{position:fixed;left:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:90;display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;min-height:48px;border:1px solid #e3ca87;border-radius:9px;background:var(--academy-brand,#17283e);color:#fff;font:700 .95rem/1.25 var(--brand-font,Arial,sans-serif);box-shadow:0 3px 15px #10233824;cursor:pointer}.academy-glossary-launcher small{display:block;font-size:.7rem;font-weight:400;margin-top:.15rem;color:#d9e7dc}.academy-glossary-dialog{box-sizing:border-box;width:min(900px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #91a3b2;border-radius:12px;background:#f5f7fb;color:#213c56;overflow:auto;overscroll-behavior:contain;box-shadow:0 20px 70px #0005}.academy-glossary-dialog::backdrop{background:#071a27a8}.glossary-dialog-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--academy-brand,#17283e);color:#fff;padding:1.2rem 1.5rem}.glossary-dialog-header h2{font:1.65rem/1.2 Georgia,serif;margin:.3rem 0 0}.glossary-dialog-header button{font:inherit;flex-shrink:0;min-height:44px;padding:.5rem .8rem;background:transparent;color:white;border:1px solid #adc3b5;border-radius:5px;cursor:pointer}.glossary-return-note{font:.875rem/1.6 var(--brand-font,Arial,sans-serif);padding:1rem 1.5rem;margin:0;background:#e9eff4}.academy-glossary-dialog .academy-glossary-content{padding:1.4rem 1.5rem 2rem}.glossary-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.glossary-filters{grid-template-columns:1fr}.glossary-entry{padding:1rem}.academy-glossary-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.glossary-dialog-header{padding:1rem}.glossary-dialog-header>div>span{font-size:.625rem}.glossary-dialog-header h2{font-size:1.4rem}.academy-glossary-dialog .academy-glossary-content,.glossary-return-note{padding:1rem}.academy-glossary-launcher{left:10px;bottom:max(10px,env(safe-area-inset-bottom));padding:.65rem .8rem}.academy-glossary-launcher small{display:none}}
@media print{.academy-glossary-launcher,.academy-glossary-dialog{display:none!important}}
/* Keep the reference button above Foundations' fixed assessment actions. */
body:has(.activity-footer) .academy-glossary-launcher{bottom:calc(112px + env(safe-area-inset-bottom))}
body:has(.activity-footer.correct,.activity-footer.wrong) .academy-glossary-launcher{bottom:calc(184px + env(safe-area-inset-bottom))}
