:root{--navy:#0a1a34;--aqua:#37c4bd;--aqua-dark:#067f8a;--aqua-soft:#edf9f8;--muted:#737f95;--line:#e2e9ef;--white:#fff;--header-height:90px;font-family:Outfit,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--navy);background:var(--white);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}img{display:block;max-width:100%}h1,h2,p{margin:0}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--aqua-dark);outline-offset:5px}.app-header :focus-visible{outline-color:var(--aqua)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:12px 20px;background:white;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.icon{width:23px;height:23px;flex:none}.app-header{min-height:var(--header-height);padding:10px 4.5%;display:flex;align-items:center;gap:32px;background:var(--navy);color:white;position:relative;z-index:20}.app-brand{width:170px;flex:none}.app-brand img{width:100%;height:65px;object-fit:contain}.app-nav{position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:38px;align-self:stretch}.app-nav a{text-decoration:none;font-size:17px;align-self:stretch;display:flex;align-items:center;position:relative;color:#c9d3e2}.app-nav a[aria-current]{color:white;font-weight:500}.app-nav a[aria-current]::after{content:"";position:absolute;bottom:19px;left:0;right:0;height:3px;background:var(--aqua);border-radius:3px}.app-nav a:hover{color:var(--aqua)}.account-menu{margin-left:auto;position:relative}.account-menu summary{display:flex;align-items:center;gap:15px;cursor:pointer;list-style:none;min-height:44px}.account-menu summary::-webkit-details-marker{display:none}.account-menu summary>.icon{filter:invert(1);width:38px;height:38px;opacity:.85}.account-menu summary>.account-chevron{width:18px;height:18px;margin-left:3px}.account-label{color:#c9d3e2}.account-panel{position:absolute;top:calc(100% + 16px);right:0;width:280px;max-width:calc(100vw - 32px);padding:22px;background:white;border:1px solid var(--line);border-radius:7px;color:var(--navy);box-shadow:0 12px 28px #0a1a3420;overflow-wrap:anywhere}.account-caption{display:block;color:var(--muted);font-size:13px;margin-bottom:5px}.account-panel strong{font-size:15px;font-weight:500}.account-panel form{border-top:1px solid var(--line);padding-top:15px;margin-top:18px}.account-panel button{border:0;padding:5px 0;background:none;color:var(--navy);display:flex;gap:10px;align-items:center}.header-back{margin-left:auto;text-decoration:none;display:flex;align-items:center;gap:10px;color:#d6e3ee}.header-back .icon{filter:invert(1)}.course-shell{display:grid;grid-template-columns:25% minmax(0,1fr)}.course-syllabus{padding:48px 32px 32px;border-right:1px solid var(--line);position:sticky;top:0;height:calc(100dvh);overflow-y:auto;align-self:start}.syllabus-heading h2{font-size:30px;line-height:1.2;font-weight:500;letter-spacing:-1.25px}.progress-summary{display:flex;justify-content:space-between;gap:14px;margin-top:18px;font-size:15px}.course-progress{display:block;width:100%;height:10px;border:0;border-radius:20px;background:#eaf1f5;margin-top:13px;overflow:hidden;appearance:none}.course-progress::-webkit-progress-bar{background:#eaf1f5;border-radius:20px}.course-progress::-webkit-progress-value{background:var(--aqua);border-radius:20px;transition:width .2s}.course-progress::-moz-progress-bar{background:var(--aqua);border-radius:20px}.syllabus-nav{margin-top:40px}.syllabus-nav ol{list-style:none;padding:0;margin:0}.syllabus-nav li{border-top:1px solid var(--line)}.syllabus-nav li:last-child{border-bottom:1px solid var(--line)}.syllabus-link{min-height:75px;display:flex;align-items:center;gap:23px;position:relative;text-decoration:none;padding:16px 0;font-size:18px;line-height:1.32}.syllabus-link.is-current{font-weight:500;background:var(--aqua-soft);margin-inline:-17px;padding-inline:17px;border-left:3px solid var(--aqua);padding-left:14px;border-radius:0 3px 3px 0}.syllabus-link:hover{color:var(--aqua-dark)}.module-number{color:var(--muted);flex:none;font-size:17px;min-width:25px;font-weight:400;font-variant-numeric:tabular-nums}.module-label{flex:1;overflow-wrap:anywhere}.module-check{width:26px;height:26px;background:var(--aqua-dark);border-radius:50%;display:grid;place-items:center;flex:none}.module-check .icon{width:18px;height:18px;filter:invert(1)}.pdf-link{display:flex;align-items:center;gap:13px;margin-top:45px;font-size:15px;color:var(--aqua-dark);text-underline-offset:4px}.pdf-link .icon{filter:invert(33%) sepia(48%) saturate(1395%) hue-rotate(146deg) brightness(90%)}.lesson-main{min-width:0;padding:26px 38px 0 46px;outline:none}.breadcrumbs{display:flex;gap:9px;color:var(--muted);font-size:14px;margin-bottom:25px}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.lesson-eyebrow{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1.7px;color:var(--aqua-dark)}.lesson-main h1{font-family:Outfit,sans-serif;font-weight:500;font-size:clamp(32px,3.68vw,58px);letter-spacing:-2px;line-height:1.12;margin:10px 0 25px}.video-frame{width:100%;aspect-ratio:2/1;min-height:200px;position:relative;background:#0a1a34;border-radius:4px;overflow:hidden}.video-frame>iframe,.video-frame>#course-player{display:block;position:absolute;inset:0;width:100%;height:100%;border:0}.player-loading{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:#dce7ec;pointer-events:none}.player-error{padding:15px 18px;background:#fff3ee;color:#7a3626;border-left:3px solid #b4563c;margin-top:15px;line-height:1.5}.lesson-actions{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;margin-top:24px}.save-status{display:flex;align-items:center;gap:14px;padding-top:9px;color:var(--muted);font-size:14px;max-width:52%;min-height:40px}.save-icon{width:30px;height:30px;padding:6px;background:var(--aqua-soft);border-radius:50%;flex:none}.save-status.is-error{color:#9c3e2e}.save-status.is-error .save-icon{display:none}.lesson-buttons{display:flex;flex-direction:column;align-items:flex-end;gap:13px;flex:none}.button{min-height:50px;padding:13px 24px;border-radius:4px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:13px;text-decoration:none;border:1px solid transparent;line-height:1.3;text-align:center}.button-primary{background:var(--navy);color:white}.button-primary .icon{filter:invert(1)}.button-primary:hover:not(:disabled){background:#193451}.button-primary:disabled{background:#e6f5f2;color:#14635c;border-color:#cce6df}.button-primary:disabled .icon{filter:none;opacity:.65}.button-secondary{border:1px solid #b8dad8;color:var(--aqua-dark);background:white}.button-secondary:hover{background:var(--aqua-soft)}.complete-button{min-width:278px}.next-module{font-size:15px;color:var(--aqua-dark);display:flex;gap:12px;align-items:center;text-underline-offset:5px}.next-module .icon{width:18px;height:18px}.lesson-about{padding-top:23px;margin-top:30px;border-top:1px solid var(--line)}.lesson-about h2,.lesson-resources h2{font-size:21px;font-weight:600;letter-spacing:-.5px}.lesson-about p,.lesson-resources p:not(.lesson-eyebrow){color:var(--muted);margin-top:7px;font-size:16px}.lesson-resources{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:40px;padding:28px 0;border-top:1px solid var(--line);scroll-margin-top:24px}.lesson-resources h2{margin-top:7px}.lesson-resources .button{flex:none;font-size:15px}.lesson-footer{padding:25px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:13px}.lesson-footer a{color:var(--aqua-dark);text-underline-offset:3px}.syllabus-toggle,.syllabus-close{display:none}.notice{padding:14px 18px;background:var(--aqua-soft);border-left:3px solid var(--aqua-dark);color:#245653;border-radius:0 3px 3px 0;margin-bottom:24px;font-size:15px}.notice-error{background:#fff1ee;border-color:#b75540;color:#903a29}.auth-layout{min-height:calc(100dvh - var(--header-height));display:grid;grid-template-columns:minmax(0,45%) minmax(0,1fr)}.auth-visual{position:relative;min-height:720px;background:var(--navy)}.auth-visual>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.auth-visual-caption{position:absolute;inset:auto 35px 35px;padding:27px;color:white;background:#0a1a34e6}.auth-visual-caption p{font-family:Raleway,sans-serif;font-size:31px;font-weight:600;line-height:1.2;margin-bottom:12px;letter-spacing:-.5px}.auth-visual-caption span{color:#c9dfe1;font-size:15px}.auth-content{padding:70px 60px;display:flex;align-items:center;justify-content:center}.auth-inner{width:100%;max-width:435px}.auth-content h1{font-size:43px;letter-spacing:-1.5px;font-weight:500;line-height:1.12;margin-top:14px}.auth-intro{color:var(--muted);margin:20px 0 28px;font-size:17px}.auth-form{display:flex;flex-direction:column;gap:9px}.auth-form label{font-size:15px;font-weight:500;margin-top:13px}.auth-form label:first-of-type{margin-top:0}.auth-form input:not([type=hidden]){width:100%;min-height:51px;border:1px solid #bccad5;border-radius:4px;padding:11px 14px;font-size:17px;color:var(--navy);background:white}.auth-form input:hover{border-color:#73879a}.field-help{font-size:13px;color:var(--muted);margin:0}.forgot-link{font-size:14px;align-self:flex-end;color:var(--aqua-dark);text-underline-offset:3px;margin-top:4px}.auth-submit{margin-top:17px;justify-content:space-between;min-height:54px}.auth-help{font-size:14px;color:var(--muted);margin-top:23px}.auth-return{display:inline-block;margin-top:23px;font-size:15px;text-underline-offset:4px;color:var(--aqua-dark)}.auth-support{margin-top:38px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.auth-support a{color:var(--aqua-dark);text-underline-offset:3px;white-space:nowrap}.form-error{font-size:14px;color:#9c3e2e;margin-top:7px}
@media(min-width:1600px){.course-shell{grid-template-columns:360px minmax(0,1fr);max-width:1720px;margin-inline:auto}.lesson-main{padding-right:55px;padding-left:55px}.video-frame{aspect-ratio:16/9;max-height:680px}.lesson-main h1{font-size:58px}}
@media(max-width:1180px){.app-header{padding-inline:30px}.app-nav{gap:24px}.course-shell{grid-template-columns:285px minmax(0,1fr)}.course-syllabus{padding-inline:24px}.syllabus-heading h2{font-size:28px}.syllabus-link{font-size:16px;gap:16px}.syllabus-nav{margin-top:30px}.lesson-main{padding:25px 28px 0}.lesson-main h1{font-size:40px}.lesson-actions{flex-direction:column;gap:14px}.save-status{max-width:100%;padding-top:0}.lesson-buttons{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.lesson-resources{align-items:flex-start;flex-direction:column}.complete-button{min-width:0}.account-label{display:none}.video-frame{aspect-ratio:16/9}}
@media(max-width:800px){:root{--header-height:76px}.app-header{min-height:76px;padding:8px 20px;gap:15px}.app-brand{width:133px}.app-brand img{height:52px}.app-nav{position:static;top:auto;bottom:auto;transform:none;margin-left:auto;gap:16px}.app-nav a{font-size:14px}.app-nav a[aria-current]::after{bottom:0}.account-menu{margin-left:0}.account-menu summary{gap:4px}.account-menu summary>.icon{width:30px;height:30px}.account-menu summary>.account-chevron{width:13px;height:13px}.course-shell{display:flex;flex-direction:column}.syllabus-toggle{display:flex;align-items:center;gap:11px;min-height:56px;border:0;border-bottom:1px solid var(--line);width:100%;background:white;color:var(--navy);padding:13px 24px;font-weight:500;text-align:left}.mobile-progress{margin-left:auto;color:var(--aqua-dark);font-size:14px}.course-syllabus{display:none;position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:24px;overflow:visible;top:auto;width:100%}.course-syllabus.is-open{display:block}.syllabus-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.syllabus-close{display:flex;border:0;padding:8px;background:none;color:var(--navy)}.syllabus-heading h2{font-size:27px}.syllabus-nav{margin-top:25px}.syllabus-link{min-height:58px;padding-block:14px}.pdf-link{margin:25px 0 3px}.progress-summary{margin-top:15px}.lesson-main{padding:25px 24px 0}.breadcrumbs{font-size:13px;margin-bottom:22px}.lesson-main h1{font-size:36px;letter-spacing:-1.2px;margin:9px 0 23px}.lesson-eyebrow{font-size:11px}.video-frame{min-height:200px}.lesson-actions{margin-top:19px}.lesson-buttons{gap:18px}.complete-button{padding-inline:17px;font-size:14px;min-height:48px}.complete-button .icon{width:21px;height:21px}.next-module{font-size:14px;gap:7px}.lesson-about{margin-top:24px;padding-top:22px}.lesson-resources{margin-top:28px;padding:24px 0;gap:20px}.lesson-resources h2,.lesson-about h2{font-size:20px}.lesson-about p,.lesson-resources p:not(.lesson-eyebrow){font-size:15px}.save-status{font-size:13px;gap:10px}.lesson-footer{padding:22px 0;font-size:12px}.auth-layout{grid-template-columns:1fr}.auth-visual{display:none}.auth-content{padding:55px 28px;align-items:flex-start}.auth-content h1{font-size:38px}.auth-inner{max-width:440px}.header-back{font-size:13px;gap:6px}.header-back .icon{width:18px}}
@media(max-width:480px){.app-header{padding-inline:17px}.app-brand{width:118px}.app-nav{gap:12px}.app-nav a{font-size:12px}.app-nav a:nth-child(2){display:none}.app-nav a[aria-current]::after{bottom:1px}.account-menu summary>.account-chevron{display:none}.course-syllabus{padding-inline:20px}.lesson-main{padding-inline:18px;padding-top:22px}.lesson-main h1{font-size:32px}.lesson-buttons{flex-direction:column;align-items:stretch;gap:15px}.next-module{align-self:flex-end;min-height:35px}.complete-button{min-height:50px}.save-status{min-height:35px}.lesson-actions{gap:16px}.lesson-resources .button{width:100%}.lesson-footer{flex-direction:column;gap:8px}.auth-content{padding:40px 23px}.auth-content h1{font-size:35px}.auth-intro{font-size:16px}.header-back{max-width:150px;font-size:12px}.header-back .icon{display:none}.auth-support span{display:block;margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.auth-field-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 14px;margin-top:13px}
.auth-form .auth-field-heading label{margin:0}
.auth-field-heading .forgot-link{display:inline-flex;align-items:center;min-height:44px;margin:0;font-size:15px;font-weight:600;text-decoration-thickness:1.5px}
.password-field{display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0}
.auth-form .password-field input{min-width:0;border-top-right-radius:0;border-bottom-right-radius:0}
.password-toggle{min-width:86px;min-height:51px;padding:10px 12px;border:1px solid #bccad5;border-left:0;border-radius:0 4px 4px 0;background:var(--aqua-soft);color:var(--aqua-dark);font-size:14px;font-weight:500}
.password-toggle:hover{background:#dcefed}
.notice-recovery{display:inline-block;margin-top:10px;font-weight:600;text-underline-offset:3px}
.auth-error-recovery{display:none;color:var(--aqua-dark);font-size:14px;font-weight:500;text-underline-offset:3px}
.form-error:not([hidden])+.auth-error-recovery{display:inline-block;align-self:flex-start}
.lesson-study,
.lesson-reading {
  margin-top: 34px;
  padding-top: 27px;
  border-top: 1px solid var(--line);
}
.lesson-study h2,
.lesson-exercise h2,
.lesson-reading h2 {
  font-size: 23px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.5px;
}
.lesson-study h2,
.lesson-exercise h2 {
  margin-top: 8px;
}
.lesson-study-intro,
.lesson-exercise-note {
  color: var(--muted);
  margin-top: 11px;
  max-width: 78ch;
  font-size: 15px;
  line-height: 1.65;
}
.lesson-takeaways,
.lesson-exercise-steps,
.lesson-reading ul {
  margin: 20px 0 0;
  padding-left: 23px;
  display: grid;
  gap: 15px;
  line-height: 1.65;
}
.lesson-takeaways li,
.lesson-exercise-steps li,
.lesson-reading li {
  padding-left: 6px;
}
.lesson-takeaways li::marker,
.lesson-exercise-steps li::marker {
  color: var(--aqua-dark);
  font-weight: 600;
}
.lesson-exercise {
  margin-top: 34px;
  padding: 28px 30px;
  background: var(--aqua-soft);
  border-left: 3px solid var(--aqua);
  border-radius: 0 4px 4px 0;
}
.lesson-exercise-outcome {
  display: grid;
  gap: 5px;
  margin-top: 23px;
  padding-top: 20px;
  border-top: 1px solid #cfe4e2;
  font-size: 15px;
  line-height: 1.65;
}
.lesson-exercise-outcome strong {
  font-weight: 600;
}
.lesson-reading ul {
  font-size: 15px;
  color: #53647a;
  gap: 9px;
  margin-top: 14px;
}
@media (max-width: 800px) {
  .lesson-study,
  .lesson-reading {
    margin-top: 28px;
    padding-top: 23px;
  }
  .lesson-study h2,
  .lesson-exercise h2,
  .lesson-reading h2 {
    font-size: 21px;
  }
  .lesson-takeaways,
  .lesson-exercise-steps {
    font-size: 15px;
    gap: 14px;
    padding-left: 20px;
  }
  .lesson-exercise {
    margin-top: 28px;
    padding: 23px 19px;
  }
}
