:root{--navy:#073c68;--blue:#087bb6;--sky:#eaf5fc;--gold:#f5bd38;--ink:#20364a;--muted:#526a7c;--line:#dbe5ec;--paper:#f6f9fc}*{box-sizing:border-box}body{font-family:'Open Sans',Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.75;background:white}h1,h2,h3,h4,.btn,.eyebrow{font-family:Montserrat,Arial,sans-serif}h1,h2,h3{color:var(--navy);font-weight:700;line-height:1.25}h1{font-size:2.8rem;letter-spacing:-.045em}h2{font-size:1.8rem;letter-spacing:-.025em}h3{font-size:1.15rem}a{color:#066594;text-underline-offset:4px}.container{max-width:1200px}.topline{background:var(--navy);color:#fff;font-size:.8rem;padding:9px 0}.site-header{border-bottom:1px solid var(--line);background:#fff}.navbar{padding-top:8px;padding-bottom:8px}.navbar-brand img{width:264px;height:auto}.navbar-light .navbar-nav .nav-link{color:var(--ink);font-size:.9rem;font-weight:600;padding:12px 16px}.btn{font-weight:600;font-size:.9rem;border-radius:6px;padding:13px 23px;white-space:normal}.btn-primary{background:var(--navy);border-color:var(--navy)}.btn-primary:hover{background:#052c4c}.btn-outline-primary{border-color:var(--navy);color:var(--navy)}.btn-gold{background:var(--gold);color:#17344c;border-color:var(--gold)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.73rem;font-weight:700;color:#076b9c;margin-bottom:16px}.hero{background:var(--sky);padding:70px 0 66px;overflow:hidden}.hero h1{font-size:3.1rem;max-width:550px;margin:0 0 25px}.hero p.lead{max-width:480px;color:var(--muted);font-size:1.08rem}.hero-photo{width:100%;height:430px;object-fit:cover;object-position:65%;border-radius:14px}.hero-image-wrap{position:relative;padding-left:20px}.hero-note{position:absolute;bottom:22px;left:-5px;background:white;border-radius:8px;box-shadow:0 10px 35px #073c681a;padding:18px 26px;display:flex;gap:18px;align-items:center}.hero-note strong{font-size:2.25rem;line-height:1;color:var(--navy);font-family:Montserrat}.hero-note span{font-size:.8rem;line-height:1.5}.hero-meta{font-size:.8rem;margin-top:20px;color:var(--muted)}.trust-strip{border-bottom:1px solid var(--line);padding:22px 0}.trust-item{display:flex;gap:14px;align-items:center}.trust-icon{font-size:1.5rem;color:var(--blue)}.trust-item strong{font-size:.9rem}.trust-item p{font-size:.78rem;margin:0;color:var(--muted)}.section{padding:78px 0}.section-soft{background:var(--paper)}.section-heading{max-width:670px;margin-bottom:35px}.section-heading p{color:var(--muted)}.feature-card{height:100%;padding:30px;border:1px solid var(--line);border-radius:9px;background:#fff}.feature-card .number{display:inline-flex;width:42px;height:42px;border-radius:50%;background:var(--sky);color:var(--blue);font-weight:700;align-items:center;justify-content:center;margin-bottom:22px}.feature-card p{font-size:.94rem;color:var(--muted)}.course-callout{background:var(--navy);color:#fff;border-radius:12px;padding:42px}.course-callout h2,.course-callout h3{color:#fff}.course-callout .eyebrow{color:#98d8f8}.seal-image{max-width:190px;border-radius:50%}.lesson-list{list-style:none;padding:0;margin:0}.lesson-list li{border-bottom:1px solid var(--line);padding:18px 0;display:flex;gap:20px;align-items:baseline}.lesson-list .lesson-number{color:var(--blue);font-weight:700;min-width:28px}.lesson-list a{flex:1}.support-band{padding:40px 0;background:var(--sky)}.support-band p{margin-bottom:8px}.support-phone{font-family:Montserrat;font-weight:700;font-size:1.5rem}.site-footer{background:#072e4e;color:#c9d9e5;padding:50px 0 25px;font-size:.9rem}.site-footer h2{color:#fff;font-size:1.2rem}.site-footer a{display:block;color:#e1eef7;margin-bottom:10px}.small{font-size:.82rem}.page-heading{padding:44px 0;background:var(--paper);border-bottom:1px solid var(--line)}.page-body{padding:42px 0 65px}.narrow{max-width:780px}.auth-card{max-width:620px;margin:45px auto;padding:38px;border:1px solid var(--line);border-radius:10px}.form-control{height:auto;padding:11px 13px;color:var(--ink);border-color:#acbdca;font-size:1rem}label{font-weight:600;font-size:.9rem}.alert{line-height:1.55}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.metric{border:1px solid var(--line);padding:23px;border-radius:8px;background:#fff}.metric strong{font-family:Montserrat;display:block;font-size:1.8rem;color:var(--navy)}.metric span{font-size:.85rem;color:var(--muted)}.workspace{display:grid;grid-template-columns:245px minmax(0,1fr);gap:32px}.side-nav{background:var(--paper);border-radius:8px;padding:18px;align-self:start}.side-nav a{display:block;padding:9px 12px;text-decoration:none;border-radius:5px;font-size:.88rem;color:var(--ink)}.side-nav a:hover,.side-nav a.active{background:#dbeefa;color:var(--navy)}.lesson-copy{max-width:780px}.lesson-copy h1{font-size:2.15rem;margin-bottom:28px}.lesson-copy h2{font-size:1.1rem;margin-top:28px}.lesson-copy p,.lesson-copy li{font-size:1.06rem;line-height:1.9}.application{background:var(--sky);border-left:4px solid var(--blue);padding:2px 24px 14px;margin:30px 0}.timer-bar{position:sticky;bottom:0;background:white;padding:18px;border:1px solid var(--line);box-shadow:0 -5px 20px #073c6808;display:flex;justify-content:space-between;gap:20px;align-items:center;border-radius:8px}.progress{height:9px;background:#dce8ef}.progress-bar{background:var(--blue)}.question{border:1px solid var(--line);border-radius:8px;padding:25px;margin-bottom:24px}.question legend{font-family:Montserrat;font-size:1rem;font-weight:600;width:auto;padding:0 8px;max-width:100%}.choice{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;background:var(--paper);margin:7px 0;border-radius:5px;font-weight:400;font-size:1rem;cursor:pointer}.choice input{margin-top:8px;flex-shrink:0}.review-banner{background:#fff0cb;color:#503900;padding:14px;text-align:center;font-weight:700}.table{color:var(--ink);font-size:.87rem}.table th{white-space:nowrap;background:var(--paper)}.status{font-size:.78rem;padding:4px 10px;border-radius:4px;background:var(--sky);color:var(--navy)}.certificate{text-align:center;border:10px double var(--navy);padding:38px;margin:25px auto;background:#fff;max-width:1000px}.certificate-seal{width:125px}.certificate h1{font-size:2rem}.certificate h2{font-size:2.2rem;margin:25px 0}.certificate-details{display:flex;justify-content:space-around;gap:20px}.signature{font-family:Georgia,serif;font-style:italic;font-size:1.4rem;border-bottom:1px solid var(--navy);max-width:300px;margin:25px auto 0}.skip-link{position:absolute;left:10px;top:-100px;background:white;z-index:100;padding:15px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #bc7800!important;outline-offset:4px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-weight:600;color:var(--navy);cursor:pointer}details p{margin:15px 0 0}.text-muted{color:var(--muted)!important}.code-block{white-space:pre-wrap;word-break:break-word;font-size:.8rem}.print-only{display:none}@media(max-width:991px){.hero{padding:45px 0}.hero h1{font-size:2.65rem}.hero-image-wrap{padding:0;margin-top:35px}.hero-photo{height:330px}.hero-note{left:16px}.workspace{grid-template-columns:1fr}.side-nav{display:flex;flex-wrap:wrap}.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:575px){h1{font-size:2rem}.hero h1{font-size:2.45rem}.navbar-brand img{width:210px}.topline{font-size:.7rem}.topline span+span{display:none}.section{padding:45px 0}.hero-photo{height:270px}.trust-item{padding:10px 0}.auth-card{padding:22px;margin:25px 15px}.dashboard-grid{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:15px}.metric strong{font-size:1.5rem}.timer-bar{flex-wrap:wrap}.timer-bar .btn{width:100%}.certificate{padding:18px;border-width:5px}.certificate-details{display:block}.course-callout{padding:25px}}@media print{.site-header,.topline,.site-footer,.support-band,.side-nav,.no-print,.timer-bar,.skip-link{display:none!important}.container{max-width:100%}.page-body{padding:0}.workspace{display:block}.certificate{break-inside:avoid}.review-banner{position:static}.question{break-inside:avoid}.lesson-copy{max-width:none}.print-only{display:block}a{color:inherit}body{font-size:12pt}.static-section{break-before:page}}
.container.page-body{padding-left:15px;padding-right:15px}#student-links{width:100%}@media(max-width:991px){.side-nav{padding:12px}.workspace{gap:22px}}
#admin-links{width:100%}

/* Playful quiz experience */
.quiz-experience{--quiz-purple:#6750d9;--quiz-pink:#ff5d8f;--quiz-mint:#45c4b0;--quiz-yellow:#ffbf3f;position:relative;padding-bottom:20px}.quiz-hero{position:relative;display:flex;justify-content:space-between;align-items:center;gap:30px;margin:-10px 0 28px;padding:34px 38px;overflow:hidden;border:1px solid #ded7ff;border-radius:24px;background:linear-gradient(135deg,#f4f0ff 0%,#fff2f7 52%,#fff9df 100%);box-shadow:0 14px 35px rgba(56,45,112,.1)}.quiz-hero:before,.quiz-hero:after{content:"";position:absolute;border-radius:50%;opacity:.5}.quiz-hero:before{width:150px;height:150px;right:115px;top:-95px;background:#ffcae0}.quiz-hero:after{width:100px;height:100px;left:-45px;bottom:-60px;background:#a8eadf}.quiz-hero>div{position:relative;z-index:1}.quiz-hero h1{margin:0 0 10px;color:#352472;font-size:2.35rem}.quiz-hero .eyebrow{margin-bottom:10px;color:#7657e8}.quiz-intro{max-width:590px;margin:0;color:#51466d;line-height:1.65}.quiz-hero-badge{display:flex;width:112px;height:112px;flex:0 0 112px;flex-direction:column;align-items:center;justify-content:center;border:4px solid #fff;border-radius:50%;background:linear-gradient(145deg,#7657e8,#513bb3);color:#fff;box-shadow:0 10px 24px rgba(81,59,179,.28);transform:rotate(4deg)}.quiz-hero-badge span{color:#ffe177;font-size:1rem;line-height:1}.quiz-hero-badge strong{font:800 1.7rem/1 Montserrat,Arial,sans-serif}.quiz-hero-badge small{font-size:.72rem}.quiz-start-card{padding:30px 34px;border:1px solid #ccebe6;border-radius:18px;background:linear-gradient(120deg,#effcf9,#f7fbff);box-shadow:0 8px 24px rgba(34,93,109,.08)}.quiz-start-card p{font-weight:600;color:#385469}.quiz-experience .btn-primary,.result-experience .btn-primary{border:0;border-radius:999px;background:linear-gradient(135deg,#6750d9,#8c5ee8);box-shadow:0 8px 18px rgba(103,80,217,.25);transition:transform .18s ease,box-shadow .18s ease}.quiz-experience .btn-primary:hover,.result-experience .btn-primary:hover{background:linear-gradient(135deg,#5942c7,#7847db);box-shadow:0 11px 22px rgba(103,80,217,.32);transform:translateY(-2px)}.quiz-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.quiz-meta span{padding:6px 13px;border-radius:999px;background:#edf9f7;color:#236f63;font-size:.78rem;font-weight:700}.quiz-meta span:nth-child(2){background:#fff3df;color:#8a5700}.quiz-meta span:nth-child(3){background:#f0ecff;color:#5541ac}.quiz-experience .question{position:relative;margin-bottom:26px;padding:28px;border:1px solid #e3def6;border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(48,39,94,.07);transition:transform .2s ease,box-shadow .2s ease}.quiz-experience .question:nth-of-type(3n+2){border-top:4px solid var(--quiz-mint)}.quiz-experience .question:nth-of-type(3n+3){border-top:4px solid var(--quiz-pink)}.quiz-experience .question:nth-of-type(3n+4){border-top:4px solid var(--quiz-yellow)}.quiz-experience .question:focus-within{box-shadow:0 12px 30px rgba(72,56,143,.14);transform:translateY(-2px)}.quiz-experience .question legend{display:flex;align-items:flex-start;gap:13px;margin:0 0 12px;padding:0;color:#30255f;font-size:1.05rem;line-height:1.55}.question-number{display:inline-flex;width:34px;height:34px;flex:0 0 34px;align-items:center;justify-content:center;border-radius:10px;background:#6750d9;color:#fff;font-size:.9rem;box-shadow:0 4px 10px rgba(103,80,217,.22)}.quiz-experience .choice{position:relative;align-items:center;margin:9px 0;padding:13px 15px;border:2px solid transparent;border-radius:12px;background:#f7f6fc;transition:background .15s ease,border-color .15s ease,transform .15s ease}.quiz-experience .choice:hover{border-color:#cfc5fb;background:#f2efff;transform:translateX(3px)}.quiz-experience .choice:has(input:checked){border-color:#7657e8;background:#eeeaff;box-shadow:0 3px 10px rgba(103,80,217,.1)}.quiz-experience .choice input{accent-color:#6750d9;margin:0}.choice-letter{display:inline-flex;width:29px;height:29px;flex:0 0 29px;align-items:center;justify-content:center;border-radius:50%;background:#fff;color:#6750d9;font-weight:800;box-shadow:0 2px 7px rgba(67,51,131,.12)}.quiz-experience .choice:has(input:checked) .choice-letter{background:#6750d9;color:#fff}.quiz-submit-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 2px 0}.quiz-submit-row p{margin:0;color:#526a7c;font-size:.88rem}.quiz-submit-row .btn{min-width:180px}

/* Assessment results and pass celebration */
.result-experience{padding-bottom:20px}.result-hero{position:relative;margin:-10px 0 36px;padding:38px;text-align:center;overflow:hidden;border:1px solid #ddd5ff;border-radius:24px;background:linear-gradient(135deg,#f3efff,#fff1f6 55%,#fff7d9);box-shadow:0 14px 35px rgba(56,45,112,.11)}.result-retry .result-hero{border-color:#cfe4f0;background:linear-gradient(135deg,#eef8fc,#f7fbfd)}.result-hero h1{margin:5px 0 12px;color:#3d287e}.result-retry .result-hero h1{color:#24516b}.result-hero p:not(.eyebrow){max-width:600px;margin:0 auto 22px;color:#574b70}.result-sparkle{display:flex;width:58px;height:58px;margin:0 auto 10px;align-items:center;justify-content:center;border-radius:18px;background:#ffbf3f;color:#fff;font-size:1.8rem;box-shadow:0 7px 17px rgba(215,145,0,.24);transform:rotate(-7deg)}.result-retry .result-sparkle{background:#44a8f2}.result-review-title{margin-bottom:20px}.result-question{border-left:5px solid #45c4b0;border-radius:14px;box-shadow:0 6px 20px rgba(35,70,86,.06)}.result-question.is-incorrect{border-left-color:#ff7a7a}.result-question h3{font-size:1.05rem}.fireworks-canvas{position:fixed;inset:0;z-index:1050;pointer-events:none}

@media(max-width:575px){.quiz-hero{padding:26px 22px;align-items:flex-start}.quiz-hero h1{font-size:1.8rem}.quiz-hero-badge{width:76px;height:76px;flex-basis:76px}.quiz-hero-badge strong{font-size:1.2rem}.quiz-hero-badge small{font-size:.6rem}.quiz-experience .question{padding:20px 16px}.quiz-submit-row{align-items:stretch;flex-direction:column}.quiz-submit-row .btn{width:100%}.result-hero{padding:28px 20px}}@media(prefers-reduced-motion:reduce){.quiz-experience .choice,.quiz-experience .question,.quiz-experience .btn-primary,.result-experience .btn-primary{transition:none!important}.quiz-experience .choice:hover{transform:none}.fireworks-canvas{display:none}}

/* Lesson visual */
.lesson-slide{margin:28px 0 34px;padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.lesson-slide-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}
.lesson-slide-heading h2{margin:0 0 3px;font-size:1.15rem}
.lesson-slide-heading p{margin:0;color:var(--muted);font-size:.9rem}
.lesson-slide-heading>span{flex-shrink:0;color:#066594;font-size:.82rem;font-weight:700}
.lesson-slide-trigger{position:relative;display:block;overflow:hidden;border:2px solid transparent;border-radius:7px;background:#fff;box-shadow:0 7px 20px rgba(7,60,104,.11);cursor:zoom-in}
.lesson-slide-trigger:hover{border-color:var(--blue)}
.lesson-slide-trigger img{display:block;width:100%;height:auto}
.lesson-slide-modal .modal-dialog{max-width:calc(100vw - 32px);margin:16px auto}
.lesson-slide-modal .modal-body{overflow:auto;padding:0;background:#e8eef2;text-align:center}
.lesson-slide-modal .modal-body img{display:block;width:1672px;max-width:none;height:auto;margin:0 auto}
.lesson-slide-modal .modal-title{font-size:1.2rem}
.lesson-slide-modal .modal-footer{justify-content:space-between}
@media(max-width:575px){.lesson-slide{padding:12px}.lesson-slide-heading{display:block}.lesson-slide-heading>span{display:block;margin-top:5px}.lesson-slide-modal .modal-footer{align-items:stretch;flex-direction:column}.lesson-slide-modal .modal-footer .btn{width:100%;margin:8px 0 0}}
