@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#10273c;--ink:#153247;--cream:#f6f3eb;--yellow:#f4d743;--sky:#e6f2f4;--teal:#0c6e82;--muted:#54707d;--line:#ccdade;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:white;font-size:16px;line-height:1.6}a{color:inherit}img{max-width:100%}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:Manrope,system-ui,sans-serif;line-height:1.13;letter-spacing:-.05em}h2{font-size:clamp(2.15rem,4vw,3.8rem)}h3{font-size:clamp(1.55rem,2.3vw,2.35rem)}:focus-visible{outline:3px solid #c38700;outline-offset:4px}.wrap{width:min(100% - 48px,1220px);margin:auto}.skip-link{position:absolute;left:16px;top:-80px;background:white;color:var(--navy);padding:12px;z-index:20}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:82px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font:800 1rem/1.05 Manrope,system-ui,sans-serif;letter-spacing:.075em;color:var(--navy);white-space:nowrap}.brand small{display:block;font-size:.62rem;letter-spacing:.29em;margin-top:7px}.brand-mark{width:30px;height:30px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;transform:rotate(-15deg)}.brand-mark i{border-radius:9px 9px 3px 9px;background:#13718a}.brand-mark i:nth-child(2){background:#eabf27}.brand-mark i:nth-child(3){background:#de7669}.brand-mark i:nth-child(4){background:#173952}.header-inner nav{display:flex;gap:24px;margin-left:auto}.header-inner nav a{font-weight:700;font-size:.9rem;text-decoration:none;white-space:nowrap}.header-inner nav a:hover,.footer-links a:hover{text-decoration:underline}.nav-cta{background:var(--navy);color:white;text-decoration:none;font-weight:800;font-size:.9rem;white-space:nowrap;padding:11px 16px;border-radius:7px}.nav-cta span{margin-left:6px;color:var(--yellow)}
.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{min-height:670px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:58px;align-items:center}.hero-copy{padding:85px 0 75px}.kicker,.overline{font-weight:800;letter-spacing:.16em;font-size:.78rem;line-height:1.3}.kicker{display:flex;align-items:center;gap:13px;color:var(--yellow)}.kicker span{height:2px;width:28px;background:currentColor}.hero h1{font-size:clamp(3.3rem,5.6vw,5.7rem);line-height:1.04;max-width:720px;margin:26px 0 24px}.hero h1 em{font-style:normal;color:var(--yellow)}.hero-intro{color:#c7d8e2;font-size:1.17rem;line-height:1.67;max-width:550px}.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:12px 20px;border-radius:7px;text-decoration:none;font-weight:800;line-height:1.3;transition:transform .15s,background-color .15s}.button:hover{transform:translateY(-2px)}.button-lime{background:var(--yellow);color:var(--navy)}.button-lime:hover{background:#ffe86a}.button-ghost{border:1px solid #95b1bf;color:white}.button-ghost:hover{background:#24445a}.hero-facts{display:flex;flex-wrap:wrap;gap:13px 24px;margin-top:58px;padding-top:23px;border-top:1px solid #426075;color:#b4cad4;font-size:.82rem}.hero-facts strong{display:block;color:white;font:800 1.1rem Manrope,system-ui,sans-serif}.hero-image{margin:25px 0 25px;position:relative;height:620px;overflow:hidden;border:8px solid #d1e2e6;border-radius:180px 7px 7px 7px;background:#a6c8d3;box-shadow:28px 28px 0 #183c52}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(7,24,41,.82));padding:65px 24px 18px;text-align:right;color:white;font:700 .95rem Manrope,system-ui,sans-serif}
.route-strip{background:var(--yellow);color:var(--navy)}.route-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:91px}.route-strip strong{font:800 1.08rem Manrope,system-ui,sans-serif;max-width:290px}.route-strip span{font-size:.92rem;font-weight:700}.route-strip b{font-weight:400;color:#a28b22;margin:0 8px}
.section{padding:100px 0}.overline{color:var(--teal);margin:0 0 17px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-heading h2{margin:0}.section-heading>p{max-width:430px;color:var(--muted);font-size:1.05rem;margin:0 0 3px}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.course-card{padding:45px;min-height:490px;display:flex;flex-direction:column;border-radius:10px}.course-card-light{background:var(--sky)}.course-card-dark{background:#163a50;color:white}.course-index{font:800 2.5rem/1 Manrope,system-ui,sans-serif;letter-spacing:-.06em;color:#1a748b}.course-card-dark .course-index{color:var(--yellow)}.course-index small{display:block;font-size:.78rem;letter-spacing:.15em;margin:12px 0 0}.course-card h3{margin:48px 0 17px}.course-card>p{max-width:460px;color:#4d6b77}.course-card-dark>p{color:#c3d7e0}.course-card ul{padding-left:20px;margin:0 0 28px}.course-card li{padding-left:5px;margin:5px 0}.text-link{font-weight:800;color:#0a6a83;text-decoration:none;border-bottom:2px solid currentColor;width:max-content;max-width:100%;padding-bottom:5px}.text-link:hover{text-decoration:underline}.course-card .text-link{margin-top:auto}.course-card-dark .text-link{color:var(--yellow)}
.pricing{background:var(--cream)}.pricing-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(35px,7vw,100px)}.pricing-heading h2{margin:0 0 20px}.pricing-heading>p:not(.overline){color:var(--muted);font-size:1.05rem;max-width:370px}.pricing-heading .text-link{display:inline-block;margin-top:14px}.price-list{border-top:2px solid var(--navy)}.price-item{display:grid;grid-template-columns:1fr auto;gap:25px;padding:27px 0;border-bottom:1px solid #c8d5d8}.price-label{font-size:.75rem;letter-spacing:.13em;font-weight:800;color:var(--teal)}.price-item h3{font-size:1.45rem;margin:9px 0}.price-item p:not(.price-tag){color:var(--muted);max-width:410px;margin:0}.price-tag{display:flex;align-items:flex-end;flex-direction:column;margin:0;white-space:nowrap}.price-tag strong{font:800 clamp(2.4rem,4vw,3.6rem)/1 Manrope,system-ui,sans-serif;letter-spacing:-.07em;color:var(--navy)}.price-tag span{color:var(--muted);font-size:.84rem}.price-small{font-size:.88rem;color:#526d78;margin:20px 0 0}
.road-test{background:var(--navy);color:white}.road-test-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(50px,8vw,140px)}.road-test .overline{color:var(--yellow)}.road-test h2{margin:0 0 22px}.road-test-grid>div:first-child>p:not(.overline){color:#c7d8e2;font-size:1.07rem;max-width:560px}.road-test .button{margin-top:14px}.road-test-steps{border-top:1px solid #47657a}.road-test-steps>div{display:flex;gap:23px;border-bottom:1px solid #47657a;padding:24px 0}.road-test-steps>div span{font:800 .82rem Manrope,system-ui,sans-serif;color:var(--yellow)}.road-test-steps p{margin:0;color:#c7d8e2}.road-test-steps strong{color:white}.road-test-steps .icbc-note{font-size:.88rem;margin:24px 0 0}.icbc-note a{color:var(--yellow);text-underline-offset:4px}
.policy-preview{background:white}.policy-grid{display:grid;grid-template-columns:.87fr 1.13fr;gap:clamp(45px,8vw,120px)}.policy-grid h2{margin:0 0 18px}.policy-grid>div:first-child>p:not(.overline){color:var(--muted);max-width:370px}.policy-grid .text-link{display:inline-block;margin-top:16px}.policy-points{border-top:1px solid var(--line)}.policy-points>div{display:grid;grid-template-columns:70px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.policy-points span{font:800 1.28rem Manrope,system-ui,sans-serif;color:var(--teal)}.policy-points p{margin:0;color:var(--muted)}.policy-points strong{color:var(--navy)}
.questions{background:#edf5f6}.questions-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,7vw,110px)}.questions h2{margin:0 0 18px}.questions-grid>div:first-child>p:not(.overline){color:var(--muted);max-width:360px}.questions .text-link{display:inline-block;margin-top:15px}.faq-list{border-top:1px solid #b9d0d7}.faq-list details{border-bottom:1px solid #b9d0d7;padding:17px 0}.faq-list summary{font:800 1.04rem Manrope,system-ui,sans-serif;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font:500 1.5rem/1 Manrope,system-ui,sans-serif;color:var(--teal)}.faq-list details[open] summary:after{content:'−'}.faq-list p{color:var(--muted);margin:13px 25px 2px 0}
.contact{background:#11627a;color:white;padding:78px 0}.contact-grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:60px}.contact .overline{color:var(--yellow)}.contact h2{margin:0 0 16px}.contact p:not(.overline){max-width:550px;color:#d5e9ef;margin:0}.contact-actions{display:grid;gap:12px;min-width:245px}.contact-actions .button-ghost{border-color:#aad1dc}.google-link,.email-link{color:white;text-align:center;margin-top:7px;text-underline-offset:4px}.google-link{font-weight:800}.site-footer{background:#0a1c2b;color:#bbced8;padding:50px 0 38px}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:35px}.site-footer strong{font:800 1.05rem/1.4 Manrope,system-ui,sans-serif;letter-spacing:.08em;color:white}.site-footer p{margin:13px 0 0}.footer-links{display:flex;flex-wrap:wrap;gap:13px 22px;max-width:450px}.footer-links a{text-decoration:none;font-size:.9rem}.footer-note{grid-column:1/-1;border-top:1px solid #284355;padding-top:20px;color:#94acb9;font-size:.82rem}
.policy-hero{background:var(--navy);color:white;padding:78px 0 70px}.policy-hero .overline{color:var(--yellow)}.policy-hero h1{font-size:clamp(2.9rem,5vw,5.2rem);margin:0 0 17px}.policy-hero p:not(.overline){color:#c8d9e2;max-width:680px;font-size:1.1rem;margin:0}.policy-content{padding:66px 0 95px}.policy-content .wrap{max-width:900px}.policy-updated{color:var(--muted);font-size:.9rem;margin-bottom:30px}.policy-section{padding:27px 0;border-top:1px solid var(--line)}.policy-section h2{font-size:1.38rem;letter-spacing:-.03em;margin:0 0 10px}.policy-section p{margin:8px 0;color:#365260}.policy-table{border-collapse:collapse;width:100%;margin-top:16px}.policy-table th,.policy-table td{border:1px solid var(--line);text-align:left;padding:11px 16px}.policy-table th{background:#e9f1f3;color:var(--navy)}.policy-table td:last-child,.policy-table th:last-child{width:100px;text-align:right}.policy-help{background:var(--cream);padding:24px 28px;border-radius:8px;margin-top:25px}.policy-help p{margin:0}.policy-help a{color:#075d75;font-weight:800}
@media(max-width:1050px){.header-inner{gap:18px}.header-inner nav{gap:13px}.hero-grid{gap:32px}.hero-image{height:560px}.hero-facts{margin-top:38px}}
@media(max-width:800px){.wrap{width:min(100% - 36px,1220px)}.header-inner{min-height:70px;flex-wrap:wrap;padding:11px 0;gap:10px}.brand{font-size:.84rem}.brand small{font-size:.52rem}.brand-mark{width:23px;height:23px}.header-inner nav{order:3;width:100%;margin:0;overflow-x:auto;gap:20px;padding:6px 0 2px}.header-inner nav a{font-size:.85rem}.nav-cta{margin-left:auto;font-size:.8rem;padding:9px 12px}.hero-grid,.course-grid,.pricing-layout,.road-test-grid,.policy-grid,.questions-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:0}.hero-copy{padding:56px 0 35px}.hero h1{font-size:clamp(3.2rem,10vw,5rem)}.hero-image{width:calc(100% - 22px);height:440px;margin:0 0 28px 0;box-shadow:18px 18px 0 #183c52;border-radius:120px 7px 7px 7px}.route-strip .wrap{display:block;padding:20px 0}.route-strip strong{display:block;margin-bottom:7px}.route-strip span{font-size:.83rem}.section{padding:70px 0}.section-heading{display:block}.section-heading>p{margin-top:20px}.course-card{min-height:0;padding:34px}.course-card h3{margin-top:32px}.pricing-layout,.road-test-grid,.policy-grid,.questions-grid{gap:36px}.contact-actions{margin-top:28px;max-width:350px}.footer-grid{display:block}.footer-links{margin:28px 0}.site-footer .footer-note{margin-top:28px}}
@media(max-width:480px){.hero h1{font-size:3rem}.hero-actions{display:grid}.hero-facts{gap:12px}.hero-facts span{min-width:42%}.hero-image{height:360px}.price-item{grid-template-columns:1fr}.price-tag{align-items:flex-start}.price-tag strong{font-size:2.9rem}.policy-points>div{grid-template-columns:54px 1fr}.policy-table th,.policy-table td{padding:9px}.policy-hero{padding:58px 0}.policy-content{padding:45px 0 65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Lesson pages and multi-lesson offers */
.price-item-deal{background:#e4eff0;border-left:5px solid #0c6e82;margin:12px 0;padding:22px 20px;border-bottom:0;border-radius:0 8px 8px 0}
.price-item-deal .price-label{color:#075f72}
.lesson-hero{background:var(--navy);color:white;padding:80px 0 85px;overflow:hidden}
.lesson-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);align-items:center;gap:clamp(45px,8vw,130px)}
.lesson-hero .overline{color:var(--yellow)}.lesson-hero h1{font-size:clamp(3rem,5.2vw,5.3rem);max-width:850px;margin:16px 0 24px}
.lesson-hero-grid>div>p:not(.overline){font-size:1.12rem;max-width:650px;color:#cee0e9}
.lesson-hero-card{background:var(--cream);color:var(--navy);border-radius:120px 10px 10px 10px;padding:55px 35px 35px;box-shadow:16px 16px 0 #285166}
.lesson-hero-card span{font-size:.78rem;font-weight:800;letter-spacing:.15em;color:var(--teal)}
.lesson-hero-card strong{display:block;font:800 clamp(3.3rem,5vw,5rem)/1 Manrope,system-ui,sans-serif;letter-spacing:-.07em;margin:36px 0 12px;white-space:nowrap}
.lesson-hero-card strong small{font-size:1.1rem;letter-spacing:0}.lesson-hero-card p{color:#45626e}.lesson-hero-card a{font-weight:800;color:#075f72}
.lesson-crumb{background:#eaf3f5;border-bottom:1px solid var(--line);padding:12px 0;font-size:.85rem;color:#526d78}.lesson-crumb a{font-weight:700;color:#075f72}.lesson-crumb span{margin:0 9px}
.lesson-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lesson-topics article{background:#eff6f7;border-radius:8px;padding:30px 28px;min-height:265px}.lesson-topics span{font:800 .8rem Manrope,system-ui,sans-serif;color:var(--teal)}.lesson-topics h3{font-size:1.42rem;margin:39px 0 13px}.lesson-topics p{color:#496773;margin:0}
.lesson-split{background:var(--sky);padding:90px 0}.lesson-split-grid{display:grid;grid-template-columns:1fr .85fr;gap:clamp(40px,8vw,110px);align-items:start}.lesson-split h2{margin:0 0 19px}.lesson-split-grid>div:first-child p:not(.overline){color:#365763;max-width:560px}.lesson-split a,.lesson-faq a{color:#075f72;font-weight:800}.lesson-callout{background:white;border-top:6px solid var(--yellow);padding:32px 35px;box-shadow:12px 12px 0 #cee2e6}.lesson-callout strong{display:block;font:800 1.55rem/1.25 Manrope,system-ui,sans-serif;letter-spacing:-.04em;color:var(--navy)}.lesson-callout p{margin:16px 0;color:#45626e}
.lesson-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,7vw,100px)}.lesson-faq h2{margin-bottom:16px}.lesson-faq-grid>div:first-child>p:not(.overline){color:var(--muted)}
.lesson-next{background:#11627a;color:white;padding:66px 0}.lesson-next .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.lesson-next .overline{color:var(--yellow)}.lesson-next h2{font-size:clamp(2rem,3.5vw,3.2rem);margin:0 0 15px}.lesson-next p:not(.overline){color:#d6e8ed;margin:0;max-width:570px}.lesson-next .button{flex-shrink:0}
@media(max-width:800px){.lesson-hero{padding:55px 0 65px}.lesson-hero-grid,.lesson-split-grid,.lesson-faq-grid{grid-template-columns:1fr}.lesson-hero-card{max-width:420px;padding:48px 30px 28px}.lesson-topics{grid-template-columns:1fr}.lesson-topics article{min-height:0}.lesson-topics h3{margin-top:22px}.lesson-split{padding:70px 0}.lesson-next .wrap{display:block}.lesson-next .button{margin-top:25px}}
@media(max-width:480px){.lesson-hero h1{font-size:2.85rem}.lesson-hero-card strong{font-size:3.3rem}.price-item-deal{padding:19px 17px}}
