@charset "UTF-8";
:root{--ink:#13233b;--muted:#111111;--blue:#164bed;--cyan:#54c9fa;--pale:#f0f6fc;--line:#dce5ef;--gradient:linear-gradient(115deg,#164bed 0%,#078bfa 62%,#54c9fa 100%);font-family:Inter,"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;color:var(--ink);font-size:18px;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:white;line-height:1.85;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #0083cf;outline-offset:6px}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.5;font-weight:750}img{max-width:100%;display:block}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.header{height:88px;padding:0 40px;display:flex;align-items:center;gap:30px;background:#ffffffed;border-bottom:1px solid #e7edf4;position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:22px;margin-right:auto}.brand span{font-size:15px;font-weight:700;letter-spacing:.03em;border-left:1px solid var(--line);padding-left:22px}.header nav{display:flex;gap:25px;font-size:18px;font-weight:650}.header nav a:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--gradient);color:white;min-height:60px;padding:15px 26px;font-weight:700;font-size:18px;border-radius:5px;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px #1653df25}.button span{font-size:22px;line-height:1}.button.small{min-height:44px;padding:10px 20px;font-size:18px}.skip{position:fixed;top:-80px;left:20px;z-index:50;background:white;padding:15px}.skip:focus{top:10px}.hero{position:relative;padding:66px 0 32px;background:radial-gradient(ellipse at 95% 10%,#d9f2ff 0,transparent 50%),linear-gradient(180deg,#fff 30%,#f2f7ff 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.22fr 1fr;gap:40px;align-items:center}.eyebrow{font-size:15px;letter-spacing:.15em;font-weight:750;color:var(--blue);line-height:1.5}.hero-label{font-size:17px;font-weight:700;margin:21px 0 16px}h1{font-size:clamp(34px,3.7vw,53px);line-height:1.48;letter-spacing:-.035em}.gradient-text{background:var(--gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.hero-description{font-size:18px;line-height:2;margin-top:26px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:30px}.text-link{font-size:18px;display:inline-flex;align-items:center;gap:15px;font-weight:700}.text-link:hover{color:var(--blue)}.hero-note{font-size:15px;color:var(--muted);margin-top:13px}.hero-visual{position:relative;min-height:452px;padding:10px 0 20px}.visual-heading,.visual-bottom{display:flex;justify-content:space-between;font-size:15px;letter-spacing:.11em;font-weight:750;color:#111111}.visual-heading{padding:0 10px 25px}.path-card{border-radius:8px;padding:27px 29px;position:relative;box-shadow:0 14px 45px #19519d12;width:79%}.path-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.path-step{font-size:15px;font-weight:750;letter-spacing:.08em}.path-format{font-size:15px;letter-spacing:.1em}.path-card h2{font-size:30px;line-height:1.5;margin:15px 0}.learn{background:#ffffffc9;border:1px solid #fff;color:#294774}.build{background:var(--gradient);color:white;margin-top:-66px;margin-left:auto;transform:translateX(12px)}.build h2{font-size:34px}.path-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px}.path-bottom span{font-size:15px;line-height:1.8}.path-bottom strong{font-size:65px;font-weight:400;line-height:1;color:#111111}.build .path-bottom strong{color:#ffffff60}.visual-bottom{padding:18px 0 0 0;align-items:center}.visual-bottom span:last-child{font-size:25px;color:var(--blue)}.hero-price{margin-top:38px;border-top:1px solid #bfd5ec;padding-top:25px;display:grid;grid-template-columns:1fr auto;gap:10px 30px;align-items:center}.tag{font-size:15px;font-weight:700;color:var(--blue);letter-spacing:.04em}.hero-price p:not(.note){font-size:18px;font-weight:700;margin-top:5px}.hero-price-number{display:flex;gap:22px;align-items:center}.hero-price-number>span{font-size:15px;line-height:1.8}.hero-price-number strong{font-size:52px;line-height:1.2;letter-spacing:-.04em;color:var(--blue);font-weight:600}.hero-price-number strong span{font-size:20px;margin-left:5px}.hero-price-number a{width:42px;height:42px;display:grid;place-items:center;background:white;border:1px solid #c9d8ec;border-radius:50%;color:var(--blue)}.note{font-size:15px;color:var(--muted);line-height:1.8}.hero-price .note{grid-column:1/-1;max-width:1000px}.footer{padding:32px 0;background:#fff;border-top:1px solid var(--line)}.footer-row{display:flex;gap:30px;align-items:center}.footer-row span{margin-left:auto;font-size:15px;color:var(--muted)}.footer-row>a:last-child{font-size:15px}
@media(min-width:1440px){.hero{padding-top:85px;padding-bottom:38px}.hero-grid{gap:64px}.hero-visual{min-height:480px}.path-card{padding:29px 34px}.path-card h2{font-size:34px}.build h2{font-size:38px}}
@media(max-width:1150px){.brand span{display:none}.header{padding:0 26px;gap:24px}.header nav{gap:20px}.container{width:calc(100% - 64px)}.hero-actions{gap:18px;flex-wrap:wrap}.hero-grid{gap:28px;grid-template-columns:1.15fr 1fr}.path-card{padding:22px}.build{transform:none}.path-card h2,.build h2{font-size:28px}.path-bottom strong{font-size:58px}}
@media(max-width:800px){html{scroll-padding-top:86px}.header{height:72px;padding:0 20px;gap:18px}.brand img{width:104px;height:auto}.header nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:24px;box-shadow:0 15px 20px #173e7010;flex-direction:column}.header nav.open{display:flex}.button.small{font-size:15px;padding:9px 14px;gap:15px;min-height:40px}.container{width:calc(100% - 40px)}.hero{padding-top:38px}.hero-grid{grid-template-columns:1fr;gap:30px}h1{font-size:clamp(30px,7.1vw,48px);letter-spacing:-.035em}.hero-label{font-size:18px;margin:17px 0 13px}.hero-description{font-size:18px;margin-top:20px}.hero-actions{gap:20px;margin-top:24px}.hero-actions .button{font-size:18px;gap:18px;min-height:56px}.hero-note{font-size:15px}.hero-visual{width:min(480px,100%);margin:auto;min-height:0;padding-bottom:0}.visual-heading{padding-bottom:18px}.path-card{width:76%;padding:22px 25px}.path-card h2{font-size:27px}.path-bottom strong{font-size:60px}.build{margin-top:-70px;width:76%}.hero-price{margin-top:28px;grid-template-columns:1fr;gap:20px}.hero-price-number{justify-content:space-between;gap:12px}.hero-price-number strong{font-size:48px}.hero-price p:not(.note){font-size:18px}.hero-price .note{font-size:15px}.footer-row{flex-wrap:wrap;gap:22px}.footer-row>a:last-child{width:100%}.desktop{display:none}}
.section{padding:104px 0}.soft{background:var(--pale)}.section-heading{display:flex;justify-content:space-between;gap:48px;align-items:end;margin-bottom:48px}.section h2{font-size:clamp(29px,3vw,40px);letter-spacing:-.025em;line-height:1.55;margin-top:20px}.section-heading>p{font-size:18px;line-height:2.05;color:var(--muted);max-width:480px;padding-bottom:5px}.section-kicker{font-size:18px;color:var(--muted);margin-top:18px}.section-kicker+h2{margin-top:10px}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:15px}.problem-grid article{padding:28px 34px 32px 0}.problem-grid article+article{border-left:1px solid var(--line);padding-left:34px}.thin-number{font-size:18px;color:var(--blue);font-weight:500}.problem-grid h3{font-size:20px;line-height:1.7;margin:15px 0}.problem-grid p{font-size:18px;color:var(--muted);max-width:310px}.problem-answer{text-align:center;margin-top:50px}.problem-answer>span{font-size:15px;letter-spacing:.12em;color:var(--blue);font-weight:750}.problem-answer p{font-size:25px;font-weight:700;margin-top:12px}.mobile{display:none}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.program-card{background:white;border:1px solid var(--line);border-radius:8px;padding:32px 36px;display:flex;flex-direction:column;transition:box-shadow .25s}.program-card:hover{box-shadow:0 10px 24px #123d7018}.course-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.step-label{font-size:15px;font-weight:750;color:var(--blue);letter-spacing:.08em}.format{font-size:15px;color:var(--muted)}.program-card h3{font-size:25px;margin:28px 0 16px;min-height:76px}.program-card p{font-size:18px;color:var(--muted);line-height:1.9}.program-meta{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;margin-top:25px;padding-top:17px;font-size:15px;gap:12px}.program-meta strong{font-size:27px;margin:0 4px;font-weight:500}.card-link{display:flex;justify-content:space-between;font-size:18px;font-weight:700;margin-top:22px}.card-link span{font-size:22px;color:var(--blue)}.program-card.featured{border-color:#689bfc;background:linear-gradient(145deg,#fff,#e5f1ff)}.package-line{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:28px;padding:24px 0;border-top:1px solid #c5d7ed}.package-line>span{font-size:15px;letter-spacing:.1em;color:var(--blue);font-weight:750}.package-line p{font-size:18px}.package-line b{font-size:20px;margin-left:20px}.package-line small{font-size:15px}.package-line a{font-size:15px;font-weight:650;color:var(--blue)}.live{color:white;background:linear-gradient(118deg,#063bbf,#1560ef 60%,#29abef)}.live .eyebrow{color:#b6e7ff}.live-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.white-label{display:block;font-size:15px;margin-top:24px}.live h2{font-size:clamp(34px,3.5vw,48px);margin-top:20px}.live-intro p:not(.eyebrow){font-size:18px;line-height:2.05;margin-top:25px;color:#e0efff}.live-count{border:1px solid #ffffff50;padding:35px;border-radius:8px;text-align:center;background:#ffffff07}.live-count>span{font-size:18px}.live-count>p{display:flex;justify-content:center;align-items:baseline;gap:10px;line-height:1.15!important;margin:22px 0!important;font-size:26px!important;color:white!important}.live-count strong{font-size:142px;font-weight:400;letter-spacing:-.055em;line-height:1}.live-count>div{display:flex;justify-content:center;gap:25px;padding-top:22px;border-top:1px solid #ffffff45;font-size:15px}.live-journey{display:grid;grid-template-columns:repeat(5,1fr);margin-top:65px;border-top:1px solid #ffffff50}.live-journey>div{padding:25px 22px 10px 0}.live-journey>div+div{padding-left:22px;border-left:1px solid #ffffff30}.live-journey span{font-size:15px;letter-spacing:.08em;color:#b8e8ff}.live-journey h3{font-size:20px;margin:14px 0}.live-journey p{font-size:18px;color:#e5f2ff;line-height:1.95}.live-output{display:flex;align-items:center;gap:34px;background:#fff;padding:23px 30px;color:var(--ink);margin-top:35px;border-radius:4px}.live-output>span{font-size:15px;font-weight:750;color:var(--blue);white-space:nowrap}.live-output p{font-size:18px;font-weight:700}.live-output i,.materials i{font-style:normal;color:#111111;margin:0 13px}.light-note{color:#d2e6ff;margin-top:13px}.small-copy{font-size:15px}.learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}.learning-block{border-top:2px solid var(--blue);padding:27px 0 0}.learning-block h3{font-size:26px;margin:15px 0}.lesson-time{font-size:18px;color:var(--blue)!important;margin:0 0 15px!important}.lesson-time b{margin-left:15px}.learning-block>p{font-size:18px;color:var(--muted);max-width:470px}.learning-block details{margin-top:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.learning-block summary{display:flex;justify-content:space-between;align-items:center;padding:17px 0;font-size:18px;font-weight:700}.learning-block summary span{color:var(--blue);font-size:20px;transition:transform .2s}details[open]>summary>span:last-child,details[open]>summary>b:last-child{transform:rotate(45deg)}.learning-block ol{padding-left:23px;font-size:18px;color:var(--muted);margin-bottom:24px}.instructor{display:flex;align-items:center;gap:28px;margin:38px 0 64px;padding:24px;background:var(--pale);border-radius:5px}.instructor img{width:110px;height:130px;object-fit:cover;object-position:center 20%;border-radius:3px}.instructor h3{font-size:15px;margin:10px 0}.instructor h3 strong{font-size:22px;letter-spacing:.1em;margin-left:10px}.instructor h3 small{font-size:15px;margin-left:6px}.instructor div>p:last-child{font-size:15px;color:var(--muted);line-height:1.9}.instructor-message{margin-left:auto;margin-right:32px;font-size:21px;line-height:1.8;font-weight:700}.certification{display:grid;grid-template-columns:1.25fr 1fr;gap:80px}.certification h3{font-size:30px;margin:15px 0 20px}.certification>div>p:not(.note){font-size:18px;color:var(--muted)}.cert-flow{display:flex;gap:18px;align-items:center;margin:24px 0;font-size:15px;font-weight:700}.cert-flow span{background:var(--pale);padding:12px 16px;border-radius:3px}.cert-flow b{color:var(--blue)}.cert-stats{border-left:1px solid var(--line);padding-left:48px}.cert-stats>p:first-child{font-size:15px!important;font-weight:700}.cert-stats>div{margin-top:22px}.cert-stats>div>span{display:block;font-size:15px;color:var(--muted)}.cert-stats strong{font-size:45px;line-height:1.4;font-weight:500;letter-spacing:-.04em;color:var(--blue)}.cert-stats strong small{font-size:18px;margin-left:6px}.cert-stats .note{margin-top:18px}.source{font-size:15px;color:var(--muted);display:inline-block;margin-top:8px;text-decoration:underline;text-underline-offset:3px}.source:hover{color:var(--blue)}.retention-top{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#fff;border-radius:6px;padding:30px 35px;margin-bottom:30px}.retention-top h3{font-size:21px;margin-top:8px}.mini-flow{display:flex;gap:38px}.mini-flow>span{display:flex;align-items:center;gap:14px;font-size:18px;line-height:1.7;font-weight:650}.mini-flow b{display:grid;place-items:center;border:1px solid #c5d7eb;color:var(--blue);font-size:15px;width:36px;height:36px;border-radius:50%;flex-shrink:0}.retention-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-bottom:18px}.retention-grid article{border-top:2px solid #97b5d8;padding-top:24px}.retention-grid article>span{font-size:15px;letter-spacing:.07em;font-weight:700;color:var(--blue)}.retention-grid h3{font-size:19px;margin:15px 0}.retention-grid p{font-size:18px;color:var(--muted)}.materials{display:flex;align-items:center;gap:26px;margin-top:34px;padding-top:23px;border-top:1px solid #c5d7eb}.materials>span{font-size:15px;color:var(--blue);font-weight:650}.materials p{font-size:15px}.materials i{margin:0 6px}.comparison>div{display:grid;grid-template-columns:.65fr 1.1fr 1.25fr;border-bottom:1px solid var(--line)}.comparison>div>*{padding:27px 30px}.comparison>div>*:first-child{padding-left:0}.comparison>div>*:last-child{background:#f0f7ff;padding-left:38px}.comparison>div.comparison-header{font-size:15px;font-weight:750;letter-spacing:.08em;border-top:1px solid var(--line)}.comparison-header span{padding-block:16px}.comparison h3{font-size:18px;display:flex;align-items:center}.comparison p{font-size:18px;color:var(--muted);line-height:1.9}.comparison strong{font-weight:650;color:var(--blue)}.pricing{background:linear-gradient(150deg,#e9f4ff,#f1f7fc 65%,#ecf8ff)}.package-price{border:1px solid #1b5fee;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 18px 50px #164bec08}.package-ribbon{background:var(--gradient);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:14px 36px;font-size:18px;font-weight:700}.package-ribbon span{font-size:15px;letter-spacing:.1em}.package-body{display:grid;grid-template-columns:1fr 1.05fr;padding:42px 36px;gap:40px}.package-body h3{font-size:25px;line-height:1.7}.package-body>div>p{font-size:18px;color:var(--muted);margin-top:18px;line-height:1.9}.price-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.price-tags span{font-size:15px;background:var(--pale);padding:5px 10px;border-radius:3px}.package-amount{border-left:1px solid var(--line);padding-left:40px}.package-amount>p:first-child{margin-top:0;font-size:18px}.package-amount>p:first-child b{color:var(--ink);font-size:21px;margin-left:8px}.package-amount>p:first-child span{font-size:15px;margin-left:5px}.discount-line{display:flex;align-items:center;gap:26px;margin:23px 0 10px}.discount-line>span{display:block;font-size:15px;line-height:1.8;border:1px solid #bad4f4;border-radius:5px;padding:8px 13px;color:var(--blue);text-align:center;flex-shrink:0}.discount-line>span b{font-size:22px;display:block;line-height:1.3}.discount-line>div>span{display:block;font-size:15px;color:var(--blue)}.discount-line strong{font-size:62px;line-height:1.3;font-weight:600;color:var(--blue);letter-spacing:-.04em}.discount-line strong small{font-size:22px;margin-left:5px}.package-amount>p.large-company{font-size:15px;margin-top:10px}.large-company b{margin-left:8px;color:var(--ink)}.package-foot{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 36px;border-top:1px solid var(--line);background:#f8fbff}.package-foot>span{font-size:18px;font-weight:600}.single-prices{margin-top:25px;background:#ffffffb0;border:1px solid var(--line);border-radius:6px;padding:0 30px}.single-prices article{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:27px 0}.single-prices article+article{border-top:1px solid var(--line)}.single-prices h3{font-size:19px;margin:7px 0}.single-prices p{font-size:15px;color:var(--muted)}.single-prices article>div:last-child{text-align:right}.single-prices article>div:last-child>span{font-size:15px;color:var(--muted)}.single-prices strong{font-size:27px;color:var(--blue);font-weight:550;margin-left:15px}.single-prices strong small{font-size:18px;margin-left:4px}.price-note{margin-top:20px}.subsidy{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;margin-top:55px;padding-top:42px;border-top:1px solid #c4d7eb}.subsidy h3{font-size:21px;margin:15px 0}.subsidy>div>p{font-size:18px;color:var(--muted)}.subsidy-deadline{align-self:center;padding:28px 30px;border-left:2px solid var(--blue);background:#fff8}.subsidy-deadline>span{font-size:15px;font-weight:700;color:var(--blue)}.subsidy-deadline>p:first-of-type{font-size:18px;color:var(--blue);margin:6px 0 16px}.subsidy-deadline strong{font-size:40px;font-weight:500;margin:0 4px}.flow-list{list-style:none;margin:0;padding:0;counter-reset:flow}.flow-list li{display:flex;gap:30px;border-top:1px solid var(--line);padding:26px 0}.flow-list li>span{font-size:30px;line-height:1.5;color:var(--blue);width:55px;flex-shrink:0;font-weight:400}.flow-list li>div{display:grid;grid-template-columns:200px 1fr;gap:8px 36px;width:100%;align-items:start}.flow-list h3{font-size:18px;line-height:1.8}.flow-list p{font-size:18px;color:var(--muted);line-height:1.9}.flow-list small{grid-column:2;font-size:15px;color:#111111}.support-note{margin-top:28px;padding:25px 30px;background:var(--pale);border-radius:5px}.support-note h3{font-size:18px;margin-bottom:8px}.support-note p{font-size:15px;color:var(--muted)}.faq-grid{display:grid;grid-template-columns:.7fr 1.4fr;gap:80px}.faq-grid>div:first-child>p:last-child{font-size:18px;color:var(--muted);margin-top:20px}.faq-list details{border-bottom:1px solid #ccdae9}.faq-list details:first-child{border-top:1px solid #ccdae9}.faq-list summary{display:flex;align-items:baseline;gap:18px;padding:24px 0;font-size:18px;font-weight:700;line-height:1.8}.faq-list summary>span{color:var(--blue);font-size:18px;font-weight:500}.faq-list summary>b{margin-left:auto;color:var(--blue);font-size:20px;font-weight:400;transition:transform .2s;flex-shrink:0}.faq-list details>p{font-size:18px;padding:0 35px 25px;color:var(--muted);line-height:2}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.company-grid>div:first-child>p:last-child{font-size:18px;color:var(--muted);margin-top:26px}.company-grid dl{margin:28px 0 22px}.company-grid dl>div{display:grid;grid-template-columns:90px 1fr;border-top:1px solid var(--line);padding:14px 0;gap:20px;font-size:15px}.company-grid dt{color:var(--muted)}.company-grid dd{margin:0}.contact{background:var(--gradient);color:white;padding:80px 0 85px;text-align:center}.contact .eyebrow{color:#c3eaff}.contact h2{font-size:clamp(30px,3.5vw,46px);line-height:1.6;letter-spacing:-.025em;margin:24px 0}.contact p:not(.eyebrow){color:#e7f2ff;font-size:18px;line-height:2}.white-button{background:white;color:var(--blue);min-width:350px;margin-top:34px}.contact-caption{display:block;color:#dcf0ff;font-size:15px;margin-top:15px}
@media(max-width:1100px){.section-heading{gap:32px}.section-heading>p{font-size:18px}.package-line{flex-wrap:wrap}.package-line a{margin-left:auto}.live-intro{gap:35px}.live-count{padding:28px 18px}.live-count strong{font-size:120px}.live-journey>div{padding-right:16px}.live-journey>div+div{padding-left:16px}.live-journey h3{font-size:18px}.instructor-message{font-size:17px;margin-right:0}.certification{gap:35px}.cert-stats{padding-left:32px}.cert-flow{gap:10px}.cert-flow span{padding:10px}.retention-top{align-items:start;gap:20px;flex-direction:column}.mini-flow{width:100%;justify-content:space-between;gap:20px}.materials{align-items:start;flex-direction:column;gap:10px}.package-body{gap:25px;padding:32px 28px}.package-body h3{font-size:21px}.package-amount{padding-left:25px}.discount-line{gap:18px}.discount-line strong{font-size:50px}.package-foot>span{font-size:15px}.package-foot .button{font-size:15px}.subsidy{gap:35px}.faq-grid{gap:40px}.company-grid{gap:60px}}
@media(max-width:800px){.section{padding:64px 0}.section-heading{display:block;margin-bottom:30px}.section h2{font-size:29px;margin-top:15px}.section-heading>p{font-size:18px;line-height:1.95;margin-top:22px}.problem-grid{grid-template-columns:1fr}.problem-grid article,.problem-grid article+article{border-left:0;padding:24px 0;display:grid;grid-template-columns:38px 1fr;gap:0 12px}.problem-grid article+article{border-top:1px solid var(--line)}.problem-grid h3{margin:0 0 10px;font-size:20px}.problem-grid p{grid-column:2;max-width:none}.problem-answer{margin-top:30px}.problem-answer p{font-size:22px}.mobile{display:block}.program-grid{grid-template-columns:1fr;gap:20px}.program-card{padding:25px}.program-card h3{font-size:24px;min-height:0;margin:24px 0 15px}.program-card p{font-size:18px}.package-line{gap:14px;padding:22px 0 0}.package-line>span{width:100%}.package-line b{font-size:18px;margin-left:10px}.package-line a{margin-left:0}.live-intro{grid-template-columns:1fr;gap:30px}.white-label{font-size:15px;margin-top:20px}.live h2{font-size:34px;line-height:1.6}.live-intro p:not(.eyebrow){font-size:18px;margin-top:22px}.live-count{padding:25px}.live-count strong{font-size:105px}.live-count>p{margin:15px 0!important}.live-count>div{padding-top:18px;font-size:15px}.live-journey{grid-template-columns:1fr;margin-top:35px}.live-journey>div,.live-journey>div+div{display:grid;grid-template-columns:100px 1fr;gap:7px 12px;border-left:0;border-bottom:1px solid #ffffff40;padding:20px 0}.live-journey h3{margin:0;font-size:20px}.live-journey>div>span{padding-top:8px;font-size:15px}.live-journey p{grid-column:2;font-size:15px}.live-output{display:block;padding:22px;margin-top:25px}.live-output p{margin-top:10px;font-size:18px}.live-output i{display:block;margin:3px 0;line-height:1.5}.learning-grid{grid-template-columns:1fr;gap:32px}.learning-block{padding-top:24px}.learning-block h3{font-size:25px}.learning-block>p{font-size:18px}.instructor{gap:20px;margin:32px 0 44px;padding:20px}.instructor img{width:90px;height:118px}.instructor .eyebrow{font-size:15px}.instructor h3 strong{font-size:19px;margin-left:4px}.instructor h3{font-size:15px}.instructor div>p:last-child{font-size:15px}.instructor-message{display:none}.certification{grid-template-columns:1fr;gap:30px}.certification h3{font-size:27px}.cert-stats{padding:25px 0 0;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.cert-stats>p,.cert-stats>a{grid-column:1/-1}.cert-stats strong{font-size:34px}.cert-stats strong small{font-size:15px;margin-left:2px}.cert-stats>div{margin-top:16px}.cert-flow{justify-content:space-between;gap:7px;font-size:15px}.cert-flow span{padding:10px 8px}.retention-top{padding:24px 20px}.retention-top h3{font-size:20px}.mini-flow{gap:12px}.mini-flow>span{flex-direction:column;align-items:start;font-size:15px;gap:10px;flex:1}.mini-flow b{width:32px;height:32px;font-size:15px}.retention-grid{grid-template-columns:1fr 1fr;gap:24px 20px}.retention-grid article>span{font-size:15px}.retention-grid h3{font-size:17px;margin:12px 0}.retention-grid p{font-size:15px}.materials{margin-top:27px}.materials p{font-size:15px}.materials i{display:block;font-size:0;height:4px}.comparison>div{grid-template-columns:1fr 1fr}.comparison>div>h3{grid-column:1/-1;padding:19px 0 10px}.comparison>div>p{padding:15px 15px 20px 0;font-size:15px}.comparison>div>*:last-child{padding-left:16px}.comparison-header span:first-child{display:none}.comparison>div.comparison-header{grid-template-columns:1fr 1fr}.comparison-header>span{padding:13px 0}.comparison>div>p:last-child{padding-top:15px}.package-ribbon{padding:13px 22px;font-size:15px}.package-ribbon span{font-size:15px}.package-body{grid-template-columns:1fr;padding:25px 22px;gap:26px}.package-body h3{font-size:21px}.package-body>div>p{font-size:15px;margin-top:14px}.price-tags{gap:6px;margin-top:16px}.price-tags span{font-size:15px;padding:5px 8px}.package-amount{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:22px}.package-amount>p:first-child{font-size:15px}.package-amount>p:first-child b{font-size:20px}.discount-line{gap:24px;margin-top:20px}.discount-line strong{font-size:55px}.discount-line strong small{font-size:20px}.package-foot{padding:22px;flex-direction:column;align-items:stretch;gap:18px}.package-foot>span{font-size:15px}.package-foot .button{font-size:15px;padding:13px 17px;gap:12px;min-height:53px}.single-prices{padding:0 22px}.single-prices article{display:block;padding:24px 0}.single-prices h3{font-size:18px}.single-prices article>div:last-child{text-align:left;margin-top:16px}.single-prices article>div:last-child p{font-size:15px}.single-prices strong{margin-left:8px;font-size:27px}.subsidy{grid-template-columns:1fr;gap:26px;margin-top:35px;padding-top:30px}.subsidy h3{font-size:19px}.subsidy>div>p{font-size:15px}.subsidy-deadline{padding:24px}.subsidy-deadline strong{font-size:36px}.flow-list li{gap:15px;padding:23px 0}.flow-list li>span{width:32px;font-size:25px}.flow-list li>div{display:block}.flow-list h3{font-size:18px;margin-bottom:9px}.flow-list p{font-size:15px}.flow-list small{font-size:15px;display:block;margin-top:8px}.support-note{padding:23px;margin-top:20px}.support-note h3{font-size:18px}.support-note p{font-size:15px}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-grid>div:first-child>p:last-child{margin-top:15px}.faq-list summary{font-size:18px;gap:12px;padding:22px 0}.faq-list summary span{font-size:18px}.faq-list details>p{font-size:15px;padding:0 28px 22px}.company-grid{grid-template-columns:1fr;gap:35px}.company-grid>div:first-child>p:last-child{margin-top:20px;font-size:18px}.company-grid dl>div{font-size:15px;grid-template-columns:78px 1fr;gap:12px}.contact{padding:60px 0}.contact h2{font-size:30px;margin:20px 0}.contact p:not(.eyebrow){font-size:18px}.white-button{min-width:0;width:100%;max-width:350px;font-size:18px;padding:15px 21px}.contact-caption{font-size:15px}.footer-row span,.footer-row>a:last-child{font-size:15px}}
.hero-visual .path-card{padding:22px 27px}.hero-visual .path-card h2{font-size:29px;line-height:1.4;margin:13px 0}.hero-visual .path-bottom strong{font-size:55px}.learn .path-bottom{padding-bottom:48px}.build{margin-top:-44px}.hero-visual{min-height:0}.hero{padding-top:55px}.hero-price{margin-top:25px}
@media(max-width:800px){.hero{padding-top:35px}.hero-visual .path-card{padding:20px}.hero-visual .path-card h2{font-size:25px}.hero-visual .path-bottom strong{font-size:48px}.hero-visual .path-bottom span{font-size:15px}.hero-visual .path-format{font-size:15px}}
.hero-description,.section-heading>p,.problem-grid p,.program-card p,.live-intro p:not(.eyebrow),.live-journey p,.learning-block>p,.certification>div>p:not(.note),.retention-grid p,.comparison p,.subsidy>div>p,.flow-list p,.support-note p,.faq-list details>p,.company-grid>div:first-child>p:last-child,.contact p:not(.eyebrow){font-size:1.125rem}.format,.path-bottom span,.white-label,.live-count>span,.program-meta,.mini-flow>span,.materials p,.package-body>div>p,.price-tags span,.single-prices p,.single-prices article>div:last-child>span,.company-grid dl>div,.instructor div>p:last-child{font-size:1rem}.note,.source,.hero-note,.hero-price .note,.contact-caption{font-size:0.9375rem}.instructor .eyebrow{font-size:0.9375rem}.hero-visual .path-bottom span{font-size:0.9375rem}
@media(max-width:800px){.instructor{flex-wrap:wrap}.instructor img{width:80px;height:105px}.instructor>div{flex:1;min-width:180px}.comparison p{font-size:1rem}.discount-line{gap:16px}.discount-line strong{font-size:clamp(38px,13vw,55px)}}
.button{justify-content:center}.menu-heading{display:none}
@media(max-width:800px){
  .header{gap:14px}







  .header nav{top:82px;left:14px;right:14px;max-height:calc(100dvh - 100px);overflow-y:auto;padding:26px 24px 18px;gap:0;border:1px solid #d7e8f8;border-radius:18px;background:linear-gradient(145deg,#fff 35%,#eff8ff);box-shadow:0 20px 60px #173e702b;counter-reset:nav-item}
  .header nav.open{animation:menu-enter .2s ease-out}
  .menu-heading{display:block;color:var(--blue);font-size:15px;letter-spacing:.12em;font-weight:750;padding-bottom:23px}
  .menu-heading span{display:block;color:var(--muted);font-size:18px;letter-spacing:.02em;font-weight:500;margin-top:5px}
  .header nav>a{display:flex;align-items:center;gap:18px;min-height:62px;padding:17px 4px;border-top:1px solid #d9e6f2;font-size:17px;line-height:1.6;counter-increment:nav-item;transition:color .2s,padding .2s}
  .header nav>a:before{content:'0' counter(nav-item);font-size:15px;font-weight:500;letter-spacing:.04em;color:#111111}
  .header nav>a:hover{padding-left:10px;color:var(--blue)}
}
@keyframes menu-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
:root{--ease:cubic-bezier(.22,1,.36,1);--page-progress:0}
.hero-scene{margin:0;width:100%;padding:0;align-self:center}
.hero-scene>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:16px;mix-blend-mode:multiply}
.hero-scene figcaption{display:grid;grid-template-columns:1fr 1fr;background:#ffffffd9;border:1px solid #d7e8f8;border-radius:12px;padding:22px 24px;margin-top:16px;gap:22px;box-shadow:0 12px 30px #164bed07}
.hero-scene figcaption>div+div{border-left:1px solid var(--line);padding-left:24px}
.hero-scene figcaption span{display:block;font-size:15px;letter-spacing:.08em;font-weight:750;color:var(--blue)}
.hero-scene figcaption strong{display:block;font-size:21px;margin:6px 0 4px}
.hero-scene figcaption small{font-size:15px;color:#111111}
.workflow-scene{margin:0;overflow:hidden;border-radius:12px;background:#fff}
.workflow-scene img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.workflow-scene figcaption{display:flex;justify-content:space-between;gap:10px;padding:15px 20px;border-top:1px solid #d7e8f8;color:#111111;font-size:15px;font-weight:650}
.live-visual .live-count{margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:15px;text-align:left;padding:20px 22px}
.live-visual .live-count>span{font-size:15px;line-height:1.8}
.live-visual .live-count>p{font-size:18px!important;margin:0!important;gap:4px}
.live-visual .live-count strong{font-size:65px}
.live-visual .live-count>div{border-top:0;border-left:1px solid #ffffff50;padding:0 0 0 15px;flex-direction:column;gap:4px;font-size:15px}
.reading-progress{position:fixed;top:0;left:0;right:0;height:2px;background:var(--gradient);transform:scaleX(var(--page-progress));transform-origin:left;z-index:50;pointer-events:none}
.hero-copy>.eyebrow,.hero-copy>.hero-label,.hero-copy>h1,.hero-copy>.hero-description,.hero-actions,.hero-note{animation:genup-fade-up 1.2s var(--ease) both}
.hero-copy>.hero-label{animation-delay:.06s}.hero-copy>h1{animation-delay:.13s}.hero-copy>.hero-description{animation-delay:.22s}.hero-actions,.hero-note{animation-delay:.3s}
.hero-scene{animation:genup-image-in 1.5s .15s var(--ease) both}
.will-reveal{opacity:0;transform:translateY(30px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.will-reveal.is-visible{opacity:1;transform:translateY(0)}
.button,.program-card{transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
@media(hover:hover){.button:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1557ed25}.program-card:hover{transform:translateY(-4px)}.header nav>a{position:relative}.header nav>a:after{content:'';position:absolute;bottom:-7px;left:0;right:0;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.header nav>a:hover:after{transform:scaleX(1)}}
.header nav.open{animation:menu-enter .55s var(--ease)}
.header nav.open>a{animation:genup-fade-up .65s var(--ease) both}
.header nav.open>a:nth-of-type(1){animation-delay:.08s}.header nav.open>a:nth-of-type(2){animation-delay:.12s}.header nav.open>a:nth-of-type(3){animation-delay:.16s}.header nav.open>a:nth-of-type(4){animation-delay:.20s}.header nav.open>a:nth-of-type(5){animation-delay:.24s}
.motion-toggle{border:1px solid var(--line);border-radius:5px;padding:8px 12px;background:#fff;color:#111111;cursor:pointer;font-size:15px;min-height:40px}
@keyframes genup-fade-up{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@keyframes genup-image-in{from{opacity:0;transform:translateY(45px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
html[data-motion="off"]{scroll-behavior:auto}
html[data-motion="off"] *,html[data-motion="off"] *:before,html[data-motion="off"] *:after{animation:none!important;transition:none!important}
html[data-motion="off"] .will-reveal{opacity:1;transform:none}
@media(max-width:800px){.hero-scene{max-width:540px}.hero-scene figcaption{padding:17px;gap:12px}.hero-scene figcaption>div+div{padding-left:17px}.hero-scene figcaption strong{font-size:18px}.hero-scene figcaption small{font-size:15px}.live-visual .live-count{padding:18px 15px;gap:10px}.live-visual .live-count strong{font-size:52px}.live-visual .live-count>span{font-size:15px}.live-visual .live-count>div{font-size:15px;padding-left:10px}.workflow-scene figcaption{font-size:15px;padding:13px;gap:8px}.footer-row{gap:18px}.header nav>a:after{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.will-reveal{opacity:1;transform:none}}
/* Display type is deliberately stronger than body copy. */
.hero-grid{grid-template-columns:1.28fr 1fr;gap:40px;position:relative;z-index:1}
.hero-copy h1{font-size:clamp(42px,4.5vw,68px);font-weight:800;line-height:1.38;letter-spacing:-.065em;margin:20px 0 28px}
.headline-line{display:block;white-space:nowrap}
.hero-label{font-size:18px;font-weight:650;margin:20px 0 0}
.hero-description{font-size:18px;line-height:2;font-weight:400;max-width:590px}
.hero .eyebrow,.section .eyebrow{font-size:15px;letter-spacing:.18em}
.section h2{font-size:clamp(36px,3.85vw,54px);font-weight:800;line-height:1.45;letter-spacing:-.04em;margin-top:22px}
.section-heading{align-items:center;gap:40px;margin-bottom:54px}
.section-heading>div{flex:1.4}.section-heading>p{flex:1;max-width:430px;font-size:18px;line-height:2;font-weight:400}
.live h2{font-size:clamp(40px,4.35vw,62px);line-height:1.45;font-weight:800;letter-spacing:-.045em}
.contact h2{font-size:clamp(36px,4.25vw,60px);font-weight:800;line-height:1.45;letter-spacing:-.04em}
.program-card h3,.learning-block h3{font-size:29px;font-weight:750;letter-spacing:-.025em;line-height:1.55}
.problem-grid h3{font-size:23px;font-weight:700;line-height:1.65}
.certification h3{font-size:36px;font-weight:750;line-height:1.5}
.package-body h3{font-size:28px;font-weight:750;line-height:1.6}
.hero-webgl{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.9;transition:opacity .4s}
.hero-webgl.is-paused{opacity:0}
.hero-price{position:relative;z-index:1}
.hero-photo-frame{overflow:hidden;border-radius:14px;box-shadow:0 18px 60px #0f4e991c;transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));will-change:transform}
.hero-photo-frame>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.hero-scene figcaption{margin-top:20px;background:#fffffff2}
.workflow-scene img{aspect-ratio:3/2}
.hero-copy>h1{animation:none}.headline-line{animation:genup-title-in 1.2s var(--ease) both}.headline-line:nth-child(2){animation-delay:.13s}.headline-line:nth-child(3){animation-delay:.26s}
@keyframes genup-title-in{from{opacity:0;transform:translateY(40px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(-10% -5% -10% -5%)}}
@media(max-width:1100px) and (min-width:801px){.hero-grid{gap:25px;grid-template-columns:1.25fr 1fr}.hero-copy h1{font-size:clamp(37px,4.65vw,49px)}.section h2{font-size:39px}.section-heading>div{flex:1.3}.live h2{font-size:44px}.package-body h3{font-size:24px}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy h1{font-size:clamp(31px,8.7vw,54px);line-height:1.48;letter-spacing:-.055em;margin:18px 0 22px}.hero-label{font-size:18px}.hero-description{font-size:18px}.section h2{font-size:clamp(32px,8.3vw,42px);line-height:1.5;margin-top:18px}.section-heading{margin-bottom:34px}.section-heading>p{font-size:18px;margin-top:23px}.live h2{font-size:clamp(35px,9vw,46px)}.contact h2{font-size:clamp(32px,8.1vw,44px)}.program-card h3,.learning-block h3{font-size:27px}.problem-grid h3{font-size:22px}.certification h3{font-size:32px}.package-body h3{font-size:24px}.hero-photo-frame{transform:none;will-change:auto}.hero-webgl{opacity:.55}.hero-scene{max-width:540px}}
html[data-motion="off"] .hero-photo-frame{transform:none}
@media(prefers-reduced-motion:reduce){.hero-photo-frame{transform:none}.hero-webgl{display:none}}
@media print{.will-reveal{opacity:1;transform:none}.reading-progress,.motion-toggle,.hero-webgl{display:none}}

/* Readable typography throughout, with explicit hierarchy and generous spacing. */
:root{font-size:16px}
body{font-size:1.125rem}
.header nav{font-size:15px}.brand span{font-size:15px}.button{font-size:18px;min-height:64px;padding:17px 28px}.button.small{font-size:16px;min-height:48px}.hero .eyebrow,.section .eyebrow{font-size:15px}.hero-label{font-size:19px}.hero-description,.section-heading>p{font-size:18px}.text-link,.card-link{font-size:17px}.hero-note,.note,.source,.hero-price .note{font-size:15px}
.program-card h3,.learning-block h3{font-size:32px}.problem-grid h3{font-size:26px}.retention-grid h3,.live-journey h3,.flow-list h3{font-size:24px}.retention-top h3,.single-prices h3,.subsidy h3{font-size:26px}.problem-answer p{font-size:32px}.faq-list summary{font-size:20px}.support-note h3{font-size:22px}.hero-scene figcaption strong{font-size:24px}.hero-scene figcaption small{font-size:15px}.hero-price-number strong{font-size:64px}.hero-price p:not(.note){font-size:22px}.live-visual .live-count>div{font-size:15px}.live-visual .live-count>span{font-size:16px}.live-visual .live-count strong{font-size:72px}.live-count{flex-wrap:wrap}.package-body h3{font-size:30px}.package-foot>span{font-size:17px}.cert-flow{font-size:16px}.section-kicker{font-size:17px}.small-copy{font-size:15px}.learning-block summary,.lesson-time,.learning-block ol{font-size:17px}.package-line p{font-size:17px}.mini-flow>span,.materials p{font-size:17px}
.hero-copy,.hero-visual,.section-heading>div,.section-heading>p,.package-body>div,.live-intro>div{min-width:0}
.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}
.count-value{font-variant-numeric:tabular-nums;display:inline-block}
.learning-feature{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;margin-bottom:60px}.editorial-photo{margin:0;position:relative;border-radius:12px;overflow:hidden}.editorial-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.editorial-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:42px 28px 24px;background:linear-gradient(transparent,#071832c9);color:#fff;font-size:26px;font-weight:750}.learning-highlights h3{font-size:36px;line-height:1.5;margin:18px 0 24px}.learning-highlights>p:last-child{font-size:18px;line-height:2;color:#111111;margin-top:24px}.learning-metrics{display:flex;gap:32px;flex-wrap:wrap}.learning-metrics>div>span{display:block;font-size:15px;color:#111111}.learning-metrics strong{font-size:52px;line-height:1.4;font-weight:600;color:var(--blue);white-space:nowrap}.learning-metrics small{font-size:17px;margin:0 5px}
.retention-photo{margin-bottom:36px}.retention-photo img{aspect-ratio:2.2;object-position:center top}.retention-photo figcaption{padding:70px 36px 28px}.retention-photo figcaption>span{display:block;font-size:16px;font-weight:500}.retention-photo figcaption strong{font-size:34px;line-height:1.5}
.certification{gap:52px;grid-template-columns:1.15fr 1fr}.cert-stats{padding-left:40px}.cert-stats strong{font-size:clamp(38px,4.3vw,60px);font-weight:600}.cert-stats>p:first-child{font-size:18px!important}.cert-stats .stat-row>span:first-child{font-size:16px}.stat-track{display:block;height:12px;border-radius:10px;background:#edf2f9;margin-top:12px;overflow:hidden}.stat-track i{display:block;height:100%;width:var(--bar-size);background:var(--gradient);border-radius:inherit;transform-origin:left}.stat-row:nth-of-type(2) .stat-track i{background:#0870c6}.stat-track i,.cost-bar{transition:transform 1.6s var(--ease);transform-origin:left}.chart-ready:not(.is-chart-visible) .stat-track i,.chart-ready:not(.is-chart-visible) .cost-bar{transform:scaleX(0)}
.cost-visual{padding:32px 36px;display:grid;grid-template-columns:210px 1fr;gap:42px;align-items:center;border-top:1px solid var(--line);background:#f6faff}.cost-ring{position:relative;max-width:210px;width:100%;aspect-ratio:1}.cost-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.cost-ring circle{fill:none;stroke-width:17}.ring-base{stroke:#164bed}.ring-value{stroke:#9bdfff;transition:stroke-dasharray 1.6s var(--ease)}.chart-ready:not(.is-chart-visible) .ring-value{stroke-dasharray:0 100}.cost-ring>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.cost-ring>div>span{font-size:15px;color:#111111}.cost-ring strong{font-size:60px;color:var(--blue);line-height:1.2;font-weight:650}.cost-ring strong small{font-size:32px;margin:0 3px}.cost-bar{display:flex;margin-top:22px;border-radius:7px;overflow:hidden;min-height:46px;font-size:16px;font-weight:750}.cost-bar>span{display:flex;align-items:center;justify-content:center}.cost-bar>span:first-child{width:75%;background:#9bdfff;color:#13233b}.cost-bar>span:last-child{width:25%;background:#164bed;color:#fff}.cost-breakdown dl{margin:22px 0;display:flex;gap:40px}.cost-breakdown dt{font-size:15px;color:#111111}.cost-breakdown dd{margin:0;font-size:36px;font-weight:650;color:var(--blue);line-height:1.5}.cost-breakdown dd small{font-size:17px;margin-left:5px}
@media(max-width:1100px) and (min-width:801px){.header{gap:18px}.header nav{gap:15px;font-size:15px}.brand img{width:110px}.header .button{padding-inline:16px;font-size:15px}.section-heading{display:block}.section-heading>p{max-width:680px;margin-top:24px}.live-intro{grid-template-columns:1.1fr 1fr;gap:30px}.live h2{font-size:42px}.learning-feature{gap:32px}.learning-highlights h3{font-size:30px}.learning-metrics{gap:16px}.learning-metrics strong{font-size:42px}.certification{gap:32px}.cert-stats{padding-left:26px}.cert-flow{gap:8px;flex-wrap:wrap}.package-body{gap:26px}.package-amount{padding-left:26px}.package-body h3{font-size:26px}.discount-line{flex-wrap:wrap}.program-card{padding:30px}.retention-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){body{font-size:17px}.header .button.small{font-size:15px;min-height:44px;padding:10px 14px}.hero-label{font-size:16px}.hero-description,.section-heading>p{font-size:17px}.hero-actions .button{font-size:17px;min-height:60px}.hero-scene figcaption strong{font-size:21px}.hero-scene figcaption small{font-size:15px}.hero-price p:not(.note){font-size:20px}.hero-price-number{flex-wrap:wrap}.hero-price-number strong{font-size:54px}.program-card h3,.learning-block h3{font-size:29px}.problem-grid h3{font-size:24px}.problem-answer p{font-size:27px}.retention-grid{grid-template-columns:1fr}.retention-grid h3,.single-prices h3,.subsidy h3{font-size:24px}.retention-grid p,.comparison p,.live-journey p,.flow-list p,.learning-block>p,.program-card p,.problem-grid p,.faq-list details>p{font-size:17px}.live-journey>div,.live-journey>div+div{grid-template-columns:90px 1fr}.live-journey>div>span{font-size:15px}.live-journey h3{font-size:24px}.mini-flow>span{font-size:15px}.faq-list summary{font-size:18px}.hero-price-number>span{font-size:15px}.learning-feature{grid-template-columns:1fr;gap:26px;margin-bottom:40px}.learning-highlights h3{font-size:32px}.learning-highlights>p:last-child{font-size:17px}.learning-metrics{gap:25px}.learning-metrics strong{font-size:45px}.editorial-photo figcaption{font-size:24px;padding:40px 22px 20px}.retention-photo img{aspect-ratio:1.4}.retention-photo figcaption strong{font-size:27px}.retention-photo figcaption>span{font-size:15px}.certification{grid-template-columns:1fr;gap:30px}.cert-stats{padding:30px 0 0;display:block}.cert-stats strong{font-size:48px}.cert-flow{font-size:15px}.cert-flow span{padding:10px 8px}.stat-row+.stat-row{margin-top:26px}.cost-visual{grid-template-columns:1fr;padding:28px 22px;gap:24px}.cost-ring{max-width:185px;margin:auto}.cost-breakdown .eyebrow{font-size:15px}.cost-breakdown dl{gap:24px;justify-content:space-between}.cost-breakdown dd{font-size:29px}.cost-bar{font-size:15px}.cost-breakdown .note{font-size:15px}.package-body h3{font-size:25px}.package-foot .button{font-size:16px}.discount-line{gap:14px;flex-wrap:wrap}.package-ribbon{gap:15px}.white-button{font-size:17px}.company-grid dl>div{font-size:16px}.contact-caption{font-size:15px}.footer-row span,.footer-row>a:last-child{font-size:15px}.motion-toggle{font-size:15px}}
@media(prefers-reduced-motion:reduce){.stat-track i,.cost-bar{transform:none!important}.ring-value{stroke-dasharray:75 25!important}}
html[data-motion="off"] .stat-track i,html[data-motion="off"] .cost-bar{transform:none}html[data-motion="off"] .ring-value{stroke-dasharray:75 25}

/* A vivid tangerine accent balances the cool blue brand palette. */
:root{--accent:#ff7a1a;--accent-ink:#df5700;--accent-gradient:linear-gradient(115deg,#ff7a1a,#ff982f)}
.button,.white-button{background:var(--accent-gradient);color:#fff;box-shadow:0 8px 24px #ff7a1a28;border:1px solid #ff821a}
.button:hover,.white-button:hover{box-shadow:0 12px 30px #ff7a1a40;background:linear-gradient(115deg,#ff6b0a,#ff8a1f)}
.button:focus-visible{outline-color:#13233b}
.hero-price-number strong,.discount-line strong,.single-prices strong,.cost-breakdown dl>div:last-child dd,.cost-ring strong{color:var(--accent-ink)}
.discount-line>span{background:#fff2e5;color:#13233b;border-color:#ffbf88}.cost-bar>span:last-child{background:var(--accent);color:#fff}.ring-base{stroke:var(--accent)}

/* The main visual fills the hero; copy remains on a quiet white scrim. */
.hero{padding-top:68px;background:linear-gradient(125deg,#e6f3ff,#ecf8ff 52%,#f2f7ff)}
.hero-grid{display:block;z-index:2}.hero-copy{max-width:660px;position:relative}.hero-copy h1{font-size:clamp(42px,4.5vw,68px)}
.hero-backdrop{position:absolute;inset:0;width:100%;margin:0;overflow:hidden;z-index:0}
.hero-backdrop .hero-photo-frame{height:100%;border-radius:0;box-shadow:none;transform:none;will-change:auto}
.hero-backdrop img{width:100%;height:100%;object-fit:cover;object-position:center 48%;aspect-ratio:auto}
.hero-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eaf5fff5 0%,#eaf5ffed 30%,#eaf5ffad 46%,#eaf5ff24 62%,transparent 76%),linear-gradient(0deg,#f2f7ff 0%,#f2f7fff0 14%,transparent 37%);pointer-events:none}
.hero-webgl{z-index:1;opacity:.36}.hero-price{z-index:2;margin-top:48px}.hero-description{max-width:600px}.hero-copy .hero-note{max-width:600px}
@media(max-width:1100px) and (min-width:801px){.hero-copy{max-width:590px}.hero-copy h1{font-size:clamp(40px,4.8vw,53px)}.hero-backdrop{width:100%}.hero-backdrop:after{background:linear-gradient(90deg,#eaf5fff5,#eaf5ffe8 32%,#eaf5ffb0 50%,transparent 86%),linear-gradient(0deg,#f2f7ff 0%,#f2f7fff0 16%,transparent 48%)}}
@media(max-width:800px){.hero{padding-top:36px;display:flex;flex-direction:column}.hero-grid{order:0}.hero-copy{max-width:none}.hero-copy h1{font-size:clamp(31px,8.7vw,54px)}.hero-backdrop{order:1;position:relative;inset:auto;width:100%;height:clamp(310px,85vw,580px);margin:32px 0 0}.hero-backdrop .hero-photo-frame{height:100%}.hero-backdrop img{object-position:center}.hero-backdrop:after{background:linear-gradient(0deg,#f2f7ff,transparent 20%)}.hero-price{order:2;margin-top:12px}.hero-webgl{height:640px}}

.hero-actions .button{min-height:64px}.button.button-secondary{min-width:180px;background:#ffffffb8;color:#164bed;border:1.5px solid #164bed;box-shadow:none}.button.button-secondary:hover{background:#e6f1ff;box-shadow:0 8px 22px #164bed14}.button.button-secondary:focus-visible{outline-color:#164bed}
@media(max-width:800px){.hero-actions{gap:14px}.hero-actions .button{width:100%;min-height:60px}.hero-backdrop{margin-top:28px}}

#program .section-heading{display:block}#program .section-heading>p{max-width:760px;margin-top:24px}#program h2>span{display:block;white-space:nowrap}
.solution-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.solution-gallery figure{margin:0;border-radius:12px;overflow:hidden;background:#f0f7ff}.solution-gallery img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:left center}.solution-gallery figure:nth-child(2) img{object-position:center}.solution-gallery figure:nth-child(3) img{object-position:right center}.solution-gallery figcaption{padding:22px 24px 26px}.solution-gallery figcaption span{display:block;color:var(--blue);font-size:15px;font-weight:700;letter-spacing:.04em}.solution-gallery figcaption strong{display:block;margin-top:8px;font-size:23px;font-weight:750;line-height:1.6}
@media(max-width:800px){#program h2{font-size:clamp(21px,6.25vw,42px);letter-spacing:-.045em;line-height:1.65}.solution-gallery{grid-template-columns:1fr;gap:22px;margin-top:30px}.solution-gallery img{aspect-ratio:1}.solution-gallery figcaption{padding:18px 22px 22px}.solution-gallery figcaption strong{font-size:24px}}

.program-card .card-link{display:flex;align-items:center;justify-content:center;min-height:60px;padding:15px 20px;margin-top:auto;border:1.5px solid #164bed;border-radius:5px;background:#ffffffb8;color:#164bed;font-size:18px;font-weight:700;text-align:center;transition:background .3s,color .3s,box-shadow .3s}.program-card .program-meta{margin-bottom:24px}.program-card:hover .card-link,.program-card:focus-visible .card-link{background:#164bed;color:#fff;box-shadow:0 8px 22px #164bed20}
@media(max-width:800px){.program-card .card-link{font-size:17px;min-height:58px}}

.company-grid .button-secondary{margin-top:24px}.hero-price-number a{width:auto;height:auto;min-height:44px;border-radius:5px;padding:8px 16px;font-size:15px;font-weight:700;white-space:nowrap;border-color:#164bed;background:#fff}.hero-price-number a:hover{background:#e6f1ff}

/* Compact labelled control and a focused mobile navigation panel. */
.menu-toggle,.menu-cta,.menu-backdrop{display:none}.header nav>a.menu-cta{display:none}
@media(max-width:800px){
 .header{gap:12px;background:#fffffff5}
 .menu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:86px;height:44px;flex:0 0 86px;padding:0 10px;border:1px solid #b6d7fb;border-radius:10px;background:#f1f8ff;color:#164bed;cursor:pointer;box-shadow:0 3px 10px #164bed0b;transition:background .25s,border-color .25s,color .25s}
 .menu-toggle:hover{background:#e2f0ff;border-color:#164bed}
 .menu-label{white-space:nowrap;flex-shrink:0;font-size:15px;font-weight:800;line-height:1;letter-spacing:.04em}
 .menu-icon{position:relative;display:block;width:18px;height:18px;flex:0 0 18px}.menu-icon i{position:absolute;left:0;width:18px;height:2px;border-radius:2px;background:currentColor;transition:transform .3s var(--ease),top .3s var(--ease)}.menu-icon i:first-child{top:5px}.menu-icon i:last-child{top:12px}
 .menu-toggle[aria-expanded="true"]{background:#164bed;color:white;border-color:#164bed;box-shadow:0 5px 16px #164bed22}.menu-toggle[aria-expanded="true"] .menu-icon i:first-child{top:8px;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-icon i:last-child{top:8px;transform:rotate(-45deg)}
 .menu-backdrop{display:block;position:fixed;inset:72px 0 0;background:#0c23487a;backdrop-filter:blur(5px);z-index:19;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s}body.menu-open .menu-backdrop{opacity:1;visibility:visible;pointer-events:auto}body.menu-open{overflow:hidden}
 .header nav{top:84px;left:14px;right:14px;padding:27px 25px 25px;border:1px solid #d8e7f7;border-radius:18px;background:#fff;box-shadow:0 24px 70px #10274733;max-height:calc(100dvh - 105px);overflow:auto;gap:0}
 .menu-heading{font-size:15px;letter-spacing:.16em;padding-bottom:24px;color:#164bed}.menu-heading span{font-size:21px;font-weight:750;color:#13233b;margin-top:8px;letter-spacing:0}
 .header nav>a{font-size:20px;min-height:66px;padding:16px 0;gap:17px;color:#13233b;border-color:#e1eaf4;font-weight:700}
 .header nav>a:before{width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px;border-radius:8px;background:#edf5ff;color:#164bed;font-size:15px;font-weight:700}
 .header nav>a:hover{padding-left:6px;color:#164bed}.header nav>a:focus-visible{outline-offset:2px;border-radius:5px}
 .header nav>a.menu-cta{display:flex;justify-content:center;min-height:60px;margin-top:20px;padding:15px 16px;border:0;border-radius:7px;background:var(--accent-gradient);color:#fff;font-size:16px;text-align:center;line-height:1.65;box-shadow:0 8px 20px #ff7a1a24}
 .header nav>a.menu-cta:before,.header nav>a.menu-cta:after{display:none}
}
@media(max-width:360px){.header{padding-inline:14px;gap:8px}.brand img{width:94px}.header .button.small{padding-inline:10px}.menu-toggle{width:44px;flex-basis:44px}.menu-label{display:none}}

/* Give the global navigation more breathing room and a shared blue accent. */
@media(min-width:801px){
 .header{gap:32px}
 .header nav{gap:32px;align-items:center;flex-shrink:0}
 .header nav>a{display:flex;align-items:center;gap:10px;white-space:nowrap}
 .header nav>a:before{content:'';display:block;width:4px;height:12px;flex:0 0 4px;border-radius:3px;background:linear-gradient(#38c6ec,#164bed)}
 .header>.button.small{min-width:180px;padding-inline:32px;flex-shrink:0}
}
@media(max-width:1320px) and (min-width:801px){.brand span{display:none}}
@media(max-width:1100px) and (min-width:801px){.header{gap:24px}.header nav{gap:24px}.header>.button.small{min-width:160px;padding-inline:26px}}
@media(max-width:950px) and (min-width:801px){.header{gap:20px;padding-inline:22px}.header nav{gap:18px}.header nav>a{gap:8px}.header>.button.small{min-width:140px;padding-inline:22px}}
@media(max-width:800px){
 .header nav{padding:28px 20px 22px;gap:8px}
 .header nav>a{min-height:78px;padding:22px 7px;gap:20px}
 .header nav>a:before{content:'';display:block;width:4px;height:22px;flex:0 0 4px;border-radius:3px;background:linear-gradient(#38c6ec,#164bed)}
 .header>.button.small{min-width:112px;padding-inline:22px;flex-shrink:0}
 .header nav>a.menu-cta{width:100%;min-height:66px;padding:18px 12px;margin-top:22px}
}
@media(max-width:480px){.menu-toggle{width:44px;flex-basis:44px}.menu-label{display:none}}
@media(max-width:360px){.header>.button.small{min-width:104px;padding-inline:18px}}

/* The delivery method is the first thing to read in each course. */
.program-card.course-elearning{background:linear-gradient(145deg,#f1fcff,#dcf5fb);border-color:#77cddd;border-top:5px solid #20aac5}
.program-card.course-live{background:linear-gradient(140deg,#174dd5,#102e87);border-color:#1642bb;border-top:5px solid #132e88;color:#fff}
.program-card .step-label{display:inline-flex;align-items:center;min-height:34px;padding:5px 13px;border-radius:5px;font-size:15px;line-height:1.5;letter-spacing:.08em}
.course-elearning .step-label{background:#007d98;color:#fff}
.course-live .step-label{background:#fff;color:#1642bb}
.program-card .course-format{margin-top:25px;padding-bottom:24px;border-bottom:1px solid #a9dce6}
.course-format>span,.course-format>strong,.course-format>small{display:block}
.course-format>span{font-size:20px;font-weight:750;line-height:1.6}
.course-format>strong{font-size:clamp(25px,2.5vw,34px);font-weight:800;line-height:1.5;letter-spacing:-.025em;margin-top:4px;white-space:nowrap}
.course-format>small{font-size:16px;line-height:1.8;margin-top:9px;font-weight:500}
.course-elearning .course-format>span,.course-elearning .course-format>strong{color:#006d88}
.course-elearning .course-format>small{color:#111111}
.program-card h3{margin-top:24px;min-height:100px}
.course-live h3,.course-live p,.course-live .format,.course-live .program-meta{color:#fff}
.program-card.course-live .course-format,.course-live .program-meta{border-color:#ffffff40}
.program-card.course-elearning .card-link{border-color:#007d98;color:#00718a;background:#ffffffb8}
.program-card.course-elearning:hover .card-link,.program-card.course-elearning:focus-visible .card-link{background:#007d98;color:#fff}
.program-card.course-live .card-link{border-color:#fff;background:#fff;color:#1642bb;box-shadow:none}
.program-card.course-live:hover .card-link,.program-card.course-live:focus-visible .card-link{background:#e8f4ff;color:#102e87}
#elearning .eyebrow,#elearning .section-kicker{color:#00718a}
#elearning .learning-block{border-color:#20aac5}
.delivery-label{display:inline-block;margin-top:18px;padding:13px 20px;border-radius:6px;font-weight:750;line-height:1.6}
#elearning .delivery-label{background:#dcf5fb;color:#006d88;font-size:24px;border-left:4px solid #20aac5}
#live .live-intro .delivery-label{background:#ffffff17;color:#fff;font-size:26px;border:1px solid #ffffff55;padding:15px 22px;margin-top:24px}
.single-prices article:first-child .eyebrow{color:#00718a}
.single-prices article:first-child{border-left:4px solid #20aac5;padding-left:20px}
.single-prices article:last-child{border-left:4px solid #1642bb;padding-left:20px}
@media(max-width:1100px) and (min-width:801px){.course-format>strong{font-size:clamp(20px,2.4vw,27px)}.course-format>small{font-size:15px}}
@media(max-width:800px){.program-card h3{min-height:0}.course-format>strong{font-size:clamp(22px,6.25vw,32px)}.course-format>span{font-size:19px}.course-format>small{font-size:15px}.program-card .course-format{padding-bottom:22px;margin-top:22px}#elearning .delivery-label{font-size:21px;padding:12px 16px}#live .live-intro .delivery-label{font-size:22px;padding:14px 18px}}

/* Separate chapter review from the four workplace practice worksheets. */
.retention-badge{display:inline-block;background:#dcf5fb;border:1px solid #9ad6e3;border-radius:5px;color:#006d88;font-size:16px;font-weight:700;padding:7px 14px;margin-top:16px}
.retention-top{display:block;padding:34px 36px;margin-bottom:28px;border:1px solid #d5e7ee;border-radius:12px}
.work-heading>span{font-size:16px;font-weight:700;color:#00718a;display:block;margin-bottom:9px}
.retention-top .work-heading h3,.practice-work .work-heading h3{font-size:27px;line-height:1.6;margin:0;letter-spacing:-.02em}
.work-heading>p{font-size:16px;color:#111111;margin-top:10px}
.chapter-work{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;margin:30px 0 0}
.chapter-work li{display:flex;align-items:flex-start;gap:15px}
.chapter-work b,.work-number{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:#dcf5fb;color:#00718a;font-size:18px;font-weight:750}
.chapter-work h4{font-size:20px;line-height:1.6;margin:2px 0 8px}.chapter-work p{font-size:16px;color:#111111;line-height:1.8}
.practice-work{background:#fff;padding:34px 36px;border:1px solid #d5e7ee;border-radius:12px}
.retention-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0 0}
.retention-grid article{border:0;border-radius:8px;background:#f0f9fc;padding:22px 20px;display:flex;flex-direction:column;align-items:flex-start}
.retention-grid article>.work-number{display:grid;background:#007d98;color:#fff;font-size:18px;letter-spacing:0}
.retention-grid article h3{font-size:21px;line-height:1.6;margin:18px 0 12px;letter-spacing:-.025em}
.retention-grid article p{font-size:16px;line-height:1.85;margin-bottom:22px}
.retention-grid article small{font-size:15px;color:#006d88;font-weight:650;border-top:1px solid #cce6ec;padding-top:13px;margin-top:auto;width:100%}
.retention-note{font-size:15px;line-height:1.9;color:#111111;margin-top:20px}
.materials{display:block;margin-top:36px;padding-top:30px}.materials h3{font-size:23px;margin-bottom:20px}
.materials ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:0;margin:0}
.materials li{border-left:3px solid #20aac5;padding-left:17px}.materials strong{display:block;font-size:19px;margin-bottom:7px}.materials li span{font-size:16px;color:#111111}
@media(max-width:1100px) and (min-width:801px){.retention-grid{grid-template-columns:1fr 1fr}.chapter-work{gap:18px}.chapter-work li{gap:10px}.chapter-work h4{font-size:18px}}
@media(max-width:800px){.retention-top,.practice-work{padding:26px 22px}.retention-top .work-heading h3,.practice-work .work-heading h3{font-size:24px}.chapter-work{grid-template-columns:1fr;gap:24px;margin-top:26px}.chapter-work h4{font-size:21px}.chapter-work p{font-size:17px}.retention-grid{grid-template-columns:1fr;gap:16px}.retention-grid article{padding:24px}.retention-grid article h3{font-size:23px}.retention-grid article p{font-size:17px}.retention-note{font-size:15px}.materials ul{grid-template-columns:1fr;gap:22px}.materials h3{font-size:22px}.materials strong{font-size:20px}}

/* Show exactly which two courses are included in the package. */
.package-contents .package-caption{font-size:16px;color:#111111;margin:20px 0 14px}
.package-course{padding:20px 22px;border:1px solid #a7dae5;border-radius:8px;background:#eafaff}
.package-course>span{display:block;font-size:15px;font-weight:800;letter-spacing:.06em;color:#006d88;margin-bottom:7px}
.package-course>strong{display:block;font-size:20px;line-height:1.6;color:#006d88}
.package-course>p{font-size:16px;color:#111111;line-height:1.7;margin-top:6px}
.package-course>small{display:block;font-size:16px;font-weight:700;line-height:1.6;margin-top:13px;padding-top:12px;border-top:1px solid #c2e6ed;color:#006d88}
.package-course-live{background:linear-gradient(120deg,#174dd5,#102e87);border-color:#1642bb}
.package-course-live>span,.package-course-live>strong,.package-course-live>p,.package-course-live>small{color:#fff}.package-course-live>small{border-color:#ffffff40}
.package-plus{font-size:28px;line-height:1.4;color:#164bed;font-weight:650;text-align:center;margin:4px 0}
.package-contents .package-capacity{font-size:16px;color:#111111;line-height:1.7;margin:18px 0 0}.package-capacity strong{font-size:20px;color:#13233b;margin-left:8px}
.package-amount{align-self:center}

/* Standalone subsidy guidance, clearly separated from the price comparison. */
.subsidy-section{background:#fff}
.subsidy-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:stretch}
.subsidy-category{display:inline-block;background:#e9f3ff;color:#164bed;border-radius:4px;padding:6px 13px;font-size:15px;font-weight:700;margin-bottom:18px}
.subsidy-overview h3{font-size:32px;line-height:1.5;margin:0 0 9px}
.subsidy-course-name{font-size:23px;font-weight:700;line-height:1.6;margin-bottom:22px}
.subsidy-overview>p:not(.subsidy-course-name){font-size:18px;line-height:1.9;color:#111111}
.subsidy-overview dl{margin:26px 0 22px}.subsidy-overview dl>div{padding:18px 0;border-top:1px solid #dce7f0;display:grid;grid-template-columns:140px 1fr;gap:22px;font-size:17px;line-height:1.8}.subsidy-overview dt{font-weight:700;color:#164bed}.subsidy-overview dd{margin:0;color:#111111}
.subsidy-schedule{padding:32px;border:1px solid #c5daf8;border-radius:14px;background:linear-gradient(145deg,#f0f7ff,#e4f1ff)}
.schedule-eyebrow{font-size:19px;font-weight:750;color:#164bed;margin-bottom:24px}
.subsidy-schedule .subsidy-deadline{background:transparent;border:0;padding:0;text-align:left}
.subsidy-schedule .subsidy-deadline>span{font-size:16px;line-height:1.7;color:#164bed;font-weight:700}
.subsidy-schedule .subsidy-deadline>p{font-size:22px;color:#164bed;line-height:1.5;margin:14px 0 28px;white-space:nowrap}
.subsidy-schedule .subsidy-deadline strong{font-size:58px;letter-spacing:-.04em;margin-right:7px}
.plan-deadline{border-radius:8px;padding:24px;background:#fff;border-top:4px solid #ff821a}
.plan-deadline>span{display:block;color:#111111;font-size:16px;font-weight:650;margin-bottom:8px}
.plan-deadline>p{font-size:19px;line-height:1.65;color:#13233b}.plan-deadline strong{display:block;font-size:29px;line-height:1.5;color:#13233b}
.plan-deadline small{display:block;font-size:15px;line-height:1.8;color:#111111;margin-top:12px}
@media(max-width:1100px) and (min-width:801px){.subsidy-layout{gap:32px;grid-template-columns:1fr 1fr}.subsidy-schedule{padding:26px}.subsidy-schedule .subsidy-deadline strong{font-size:48px}.subsidy-overview h3{font-size:28px}.subsidy-overview dl>div{grid-template-columns:1fr;gap:8px}.package-course{padding:18px}.package-course>strong{font-size:18px}}
@media(max-width:800px){.subsidy-layout{grid-template-columns:1fr;gap:32px}.subsidy-overview h3{font-size:29px}.subsidy-course-name{font-size:21px}.subsidy-overview>p:not(.subsidy-course-name){font-size:17px}.subsidy-overview dl>div{grid-template-columns:1fr;gap:8px}.subsidy-schedule{padding:26px 22px}.subsidy-schedule .subsidy-deadline strong{font-size:clamp(44px,12vw,58px)}.subsidy-schedule .subsidy-deadline>p{font-size:20px}.plan-deadline{padding:22px}.package-course{padding:18px}.package-course>strong{font-size:20px}.package-course>p,.package-course>small{font-size:15px}}

.company-grid .button-secondary{display:flex;width:max-content;max-width:100%;margin-left:auto}

/* A distinct offer panel within the main visual. */
.header>.button.small{gap:9px}.consultation-icon{width:21px;height:21px;flex:0 0 21px}.header>.button.small>span{white-space:nowrap}
.hero-price{display:grid;grid-template-columns:.95fr 1.2fr;gap:0;align-items:stretch;padding:0;border:1px solid #aacdf5;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 18px 48px #17437824;margin-top:44px}
.hero-package-summary{padding:28px 32px;background:linear-gradient(125deg,#164bed,#0835a7);color:#fff;display:flex;flex-direction:column;justify-content:center}
.hero-package-summary .tag{display:block;color:#fff;font-size:15px;font-weight:700;letter-spacing:.025em}
.hero-price .hero-package-summary p{font-size:29px;font-weight:750;line-height:1.55;margin-top:12px;letter-spacing:-.025em}.hero-package-summary p>span{font-weight:500}
.hero-package-meta{display:block;font-size:16px;margin-top:13px;color:#fff;line-height:1.7}
.hero-price-number{display:grid;grid-template-columns:1fr auto;align-content:center;align-items:center;gap:12px 22px;padding:28px 32px;background:#fff}
.hero-price-number>.hero-aid-condition{grid-column:1/-1;justify-self:start;padding:6px 13px;background:#fff0df;border-radius:5px;color:#111111;font-size:15px;font-weight:700;line-height:1.5}
.hero-price-value>span{display:block;font-size:15px;font-weight:650;line-height:1.7;color:#13233b}
.hero-price-number .hero-price-value strong{display:block;font-size:82px;font-weight:800;line-height:1.15;letter-spacing:-.05em;color:#db5d00;white-space:nowrap;margin-top:3px}
.hero-price-number .hero-price-value strong span{font-size:26px;margin-left:7px;font-weight:750}
.hero-price-number a.button{display:flex;min-width:140px;min-height:58px;padding:15px 20px;border:1px solid #ff821a;border-radius:7px;font-size:16px;font-weight:750;color:#fff;background:var(--accent-gradient);box-shadow:0 7px 18px #ff7a1a26}
.hero-price-number a.button:hover{background:linear-gradient(115deg,#ff6b0a,#ff8a1f)}
.hero-price .note{max-width:none;margin:0;padding:16px 24px;background:#f5f9ff;border-top:1px solid #d4e3f5;color:#111111;font-size:15px;line-height:1.85}
@media(max-width:1100px) and (min-width:801px){.hero-price{grid-template-columns:1fr 1.2fr}.hero-package-summary{padding:25px}.hero-price .hero-package-summary p{font-size:24px}.hero-price-number{padding:25px;gap:10px 14px}.hero-price-number .hero-price-value strong{font-size:clamp(49px,6.2vw,68px)}.hero-price-number a.button{min-width:118px;padding-inline:14px;font-size:15px}.hero-package-summary .tag,.hero-package-meta{font-size:15px}}
@media(max-width:800px){.hero-price{grid-template-columns:1fr;margin-top:20px;border-radius:13px}.hero-package-summary{padding:25px}.hero-price .hero-package-summary p{font-size:26px}.hero-price-number{padding:24px;gap:14px;grid-template-columns:1fr}.hero-price-number>.hero-aid-condition{grid-column:auto;font-size:15px}.hero-price-number .hero-price-value strong{font-size:clamp(59px,17.5vw,78px)}.hero-price-number a.button{width:100%;min-height:54px}.hero-price .note{padding:15px 20px;font-size:15px}.consultation-icon{width:19px;height:19px;flex-basis:19px}.header>.button.small{gap:7px;padding-inline:17px}}

/* Pair each problem directly with its corresponding desired outcome. */
#why .problem-answer{margin:0 0 38px;padding:0;text-align:center}
.transformation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.transformation-card{display:flex;flex-direction:column;min-width:0}
.before-state{background:#f2f4f7;border:1px solid #dce2ea;border-radius:12px;padding:24px 25px;flex:1}
.state-label{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:800;letter-spacing:.07em;color:#111111;line-height:1.5}
.state-label small{font-size:15px;font-weight:650;letter-spacing:0}
.before-state h3{font-size:23px;line-height:1.65;letter-spacing:-.025em;margin:16px 0 13px;color:#13233b}
.before-state p{font-size:16px;line-height:1.85;color:#111111}
.change-arrow{display:grid;place-items:center;height:58px;color:#164bed}.change-arrow svg{width:30px;height:30px}
.after-state{background:#eff8ff;border:2px solid #164bed;border-radius:12px;overflow:hidden}
.after-photo{position:relative;aspect-ratio:1.35;overflow:hidden;background:#dcecff}
.after-photo img{position:absolute;left:0;top:0;width:300%;max-width:none;height:100%;object-fit:cover;object-position:center}
.transformation-card:nth-child(2) .after-photo img{left:-100%}.transformation-card:nth-child(3) .after-photo img{left:-200%}
.after-photo .state-label{position:absolute;left:0;top:0;padding:10px 16px;border-radius:0 0 8px 0;background:#164bed;color:#fff;letter-spacing:.07em}
.after-copy{padding:24px 23px 25px;min-height:162px}.after-copy h3{font-size:23px;line-height:1.65;color:#164bed;letter-spacing:-.025em;margin:0 0 10px}.after-copy p{font-size:16px;line-height:1.85;color:#111111}
.transformation-note{margin-top:18px}
@media(max-width:1100px) and (min-width:801px){.transformation-grid{gap:16px}.before-state{padding:21px 19px}.before-state h3,.after-copy h3{font-size:20px}.before-state p,.after-copy p{font-size:15px}.after-copy{padding:20px 18px;min-height:178px}.state-label{gap:8px}.state-label small{font-size:15px}}
@media(max-width:800px){#why .problem-answer{margin-bottom:30px}.transformation-grid{grid-template-columns:1fr;gap:36px}.before-state{padding:23px}.before-state h3{font-size:24px;margin:15px 0 12px}.before-state p,.after-copy p{font-size:17px}.change-arrow{height:50px}.after-photo{aspect-ratio:1.25}.after-copy{padding:22px;min-height:0}.after-copy h3{font-size:23px}.state-label{font-size:15px}.state-label small{font-size:15px}}

/* One clear course title, with delivery method as a compact label. */
.program-card .course-delivery{align-self:flex-start;display:block;margin-top:25px;padding:9px 14px;border-radius:5px;font-size:18px;font-weight:750;line-height:1.7;background:#c3edf5;color:#006d88}
.program-card.course-live .course-delivery{background:#ffffff20;color:#fff;border:1px solid #ffffff40}
.program-card h3{margin-top:24px;margin-bottom:20px;min-height:100px}
@media(max-width:1100px) and (min-width:801px){.program-card .course-delivery{font-size:16px;padding-inline:11px}}
@media(max-width:800px){.program-card .course-delivery{font-size:16px;padding:9px 12px;margin-top:22px}.program-card h3{min-height:0;margin-top:22px}}

.header>.button.small>span{font-size:inherit}
/* The course list stays scannable while each chapter exposes concrete topics. */
.learning-grid{grid-template-columns:1fr;gap:42px}
#elearning .learning-block{border:1px solid #c6e4ec;border-top:4px solid #20aac5;border-radius:12px;background:#fff;padding:30px}
.curriculum-intro{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:42px;margin-bottom:26px}
.curriculum-intro h3{margin:12px 0}.curriculum-intro>p{font-size:18px;line-height:1.9;color:#111111}.curriculum-intro .lesson-time{font-size:17px;line-height:1.8;color:#00718a}.curriculum-intro .lesson-time b{margin-left:12px}
.chapter-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
.learning-block .curriculum-chapter{margin:0;border:1px solid #d3e5eb;border-radius:7px;overflow:hidden;background:#f5fbfd}
.learning-block .curriculum-chapter[open]{background:#fff;border-color:#7cc7d8}
.learning-block .curriculum-chapter summary{list-style:none;display:flex;align-items:center;gap:13px;padding:19px 18px;min-height:82px;cursor:pointer}
.learning-block .curriculum-chapter summary::-webkit-details-marker{display:none}
.learning-block .curriculum-chapter summary:hover{background:#e9f7fb}
.learning-block .curriculum-chapter summary .chapter-number{flex:0 0 auto;font-size:15px;font-weight:750;line-height:1.5;color:#00718a}
.learning-block .curriculum-chapter summary .chapter-name{flex:1;min-width:0;color:#13233b;line-height:1.6}
.chapter-name strong{display:block;font-size:18px;font-weight:700}.chapter-name small{display:block;font-size:15px;font-weight:600;color:#111111;margin-top:4px}
.learning-block .curriculum-chapter summary>b{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#e0f3f8;color:#00718a;font-size:19px;line-height:1;font-weight:500;transition:transform .2s}
.chapter-body{padding:0 22px 23px}.chapter-body>p{padding-top:15px;border-top:1px solid #d3e5eb;font-size:17px;font-weight:650;line-height:1.8;color:#13233b;margin:0 0 12px}.chapter-body ul{padding-left:20px;margin:0;font-size:16px;line-height:1.85;color:#111111}.chapter-body li+li{margin-top:6px}.chapter-body li::marker{color:#00718a}
/* Connect the learning phases from left to right; stack the same path on phones. */
.live-journey{gap:28px;border-top:0;position:relative}
.live-journey>div,.live-journey>div+div{position:relative;border:1px solid #ffffff4d;border-radius:8px;background:#ffffff0e;padding:24px 18px;min-width:0}
.live-journey>div>span:not(.journey-connector){display:block;color:#fff;font-size:15px;line-height:1.7;padding:0;letter-spacing:.04em}
.live-journey h3{font-size:22px;line-height:1.6;margin:14px 0 12px}.live-journey p{font-size:17px;line-height:1.9}
.live-journey .journey-connector{position:absolute;right:-28px;top:48%;width:27px;height:30px;display:grid;place-items:center;color:#fff;z-index:1}.journey-connector svg{width:25px;height:25px}
@media(max-width:1100px) and (min-width:801px){.live-journey{gap:21px}.live-journey>div,.live-journey>div+div{padding:20px 12px}.live-journey h3{font-size:18px}.live-journey p{font-size:15px}.live-journey .journey-connector{right:-22px;width:21px}.journey-connector svg{width:21px;height:21px}.chapter-name strong{font-size:17px}.curriculum-intro{gap:28px}}
@media(max-width:800px){#elearning .learning-block{padding:23px 18px}.curriculum-intro{grid-template-columns:1fr;gap:18px;margin-bottom:23px}.curriculum-intro>p{font-size:17px}.curriculum-intro h3{font-size:28px}.chapter-list{grid-template-columns:1fr;gap:10px}.learning-block .curriculum-chapter summary{padding:17px 14px;gap:10px;min-height:76px}.chapter-name strong{font-size:17px}.learning-block .curriculum-chapter summary .chapter-number{font-size:15px}.chapter-body{padding:0 17px 20px}.chapter-body>p{font-size:16px}.chapter-body ul{font-size:16px}.live-journey{gap:34px}.live-journey>div,.live-journey>div+div{display:block;padding:23px}.live-journey h3{font-size:24px;margin:10px 0}.live-journey p{font-size:17px}.live-journey .journey-connector{right:auto;left:calc(50% - 15px);top:auto;bottom:-33px;width:30px;height:32px;transform:rotate(90deg)}.journey-connector svg{width:25px;height:25px}}

/* Balance Japanese explanatory copy so very short orphan lines do not remain. */
.section-heading>p,.section-heading .small-copy,.note,.contact-caption{text-wrap:balance;word-break:normal;line-break:strict}
.section-heading>p{min-width:0;max-width:470px}
#retention .section-heading>p,#change .section-heading>p{flex:0 1 470px}
/* Give package pricing its own substantial panel next to the included courses. */
.package-body .package-amount{align-self:stretch;display:flex;flex-direction:column;justify-content:center;border:1px solid #ffc994;border-radius:12px;padding:38px;background:linear-gradient(145deg,#fff 15%,#fff4e5);text-align:left}
.package-amount>.package-price-caption{font-size:18px!important;color:#13233b;font-weight:750;letter-spacing:.025em;margin:0 0 28px!important}
.standard-fee{padding-bottom:26px;border-bottom:1px solid #ead7c3}.standard-fee>span{display:block;font-size:16px;color:#111111}.standard-fee>strong{display:block;font-size:38px;line-height:1.4;color:#13233b;margin-top:7px;letter-spacing:-.035em}.standard-fee small{font-size:20px;margin-left:6px}
.package-subsidized{padding:30px 0}
.package-rate-label{display:inline-block;padding:9px 15px;background:var(--accent-gradient);color:#fff;border-radius:5px;font-size:16px;font-weight:700;line-height:1.5}
.package-subsidized>p{font-size:17px;font-weight:650;line-height:1.8;margin:23px 0 2px;color:#13233b}
.package-subsidized>strong{display:block;font-size:clamp(65px,6.7vw,96px);font-weight:800;letter-spacing:-.055em;color:#dc5d00;line-height:1.2;white-space:nowrap}.package-subsidized>strong small{font-size:30px;margin-left:8px}
.package-amount>.large-company{border-top:1px solid #ead7c3;padding-top:24px;margin:0}.large-company>span{display:block;font-size:15px;line-height:1.8;color:#111111}.large-company>strong{display:block;font-size:30px;color:#13233b;line-height:1.5;margin-top:5px}.large-company>strong small{font-size:18px;margin-left:5px}
/* The two amounts share the exact 75/25 grid used by the bar above. */
.cost-breakdown{container-type:inline-size}.cost-breakdown dl{display:grid;grid-template-columns:3fr 1fr;gap:0;width:100%;margin-top:20px}
.cost-breakdown dl>div{text-align:center;min-width:0}.cost-breakdown dt{font-size:clamp(15px,2.3cqw,16px);white-space:nowrap}.cost-breakdown dd{font-size:clamp(18px,5.2cqw,36px);white-space:nowrap;margin:8px 0 0;line-height:1.4;letter-spacing:-.025em}.cost-breakdown dd small{font-size:clamp(15px,2cqw,16px);margin-left:3px}
@media(max-width:1100px) and (min-width:801px){.package-body .package-amount{padding:27px}.package-subsidized>strong{font-size:clamp(52px,6.4vw,70px)}.package-rate-label{font-size:15px;padding-inline:10px}.standard-fee>strong{font-size:32px}.package-subsidized>strong small{font-size:23px}}
@media(max-width:800px){.section-heading>p{max-width:none}.package-body .package-amount{padding:27px 22px}.package-amount>.package-price-caption{font-size:18px!important;margin-bottom:23px!important}.standard-fee>strong{font-size:34px}.package-subsidized{padding:25px 0}.package-subsidized>strong{font-size:clamp(49px,15vw,78px)}.package-subsidized>strong small{font-size:25px}.package-rate-label{font-size:15px;padding:8px 11px}.package-subsidized>p{font-size:15px}.large-company>span{font-size:15px}.large-company>strong{font-size:27px}.cost-breakdown dl{gap:0;grid-template-columns:3fr 1fr}.cost-breakdown dd{font-size:clamp(17px,5.2cqw,27px)}.cost-breakdown dt{font-size:clamp(15px,4.2cqw,15px)}}

p{text-wrap:pretty}.curriculum-intro>p,.chapter-body>p,.before-state p,.after-copy p,.live-journey p{text-wrap:balance}

h2,h3{text-wrap:balance}
@media(max-width:360px){.cost-breakdown dd{font-size:15px}.cost-breakdown dd small{font-size:15px;margin-left:2px}.hero-price .hero-package-summary p{font-size:23px}}

/* Keep the consultation icon and label centered as one balanced group. */
.header>.button.small{min-height:52px;gap:10px;padding:12px 28px;justify-content:center;align-items:center;font-size:17px;line-height:1.5;letter-spacing:.025em;border-radius:7px}
.header>.button.small .consultation-icon{display:block;width:22px;height:22px;flex:0 0 22px;transform:translateY(-.5px)}
.header>.button.small>span{display:block;font-size:inherit;line-height:1.5;white-space:nowrap}
@media(min-width:1101px){.header nav{gap:48px}.header>.button.small{min-width:184px}}
@media(max-width:1100px) and (min-width:951px){.header nav{gap:30px}.header>.button.small{padding-inline:24px;font-size:16px}}
@media(max-width:950px) and (min-width:801px){.header nav{gap:22px}.header>.button.small{padding-inline:20px;font-size:15px}}
@media(max-width:800px){.header>.button.small{min-height:46px;padding:10px 16px;font-size:15px;gap:8px}.header>.button.small .consultation-icon{width:20px;height:20px;flex-basis:20px}}
/* Let the photo, blue wash and WebGL dissolve into the next white section. */
.hero{background:linear-gradient(180deg,#e6f3ff 0%,#edf8ff 56%,#fff 100%);padding-bottom:68px}
.hero-backdrop,.hero-webgl{-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 60%,#000b 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 60%,#000b 78%,transparent 100%)}
.hero:after{content:'';position:absolute;left:0;right:0;bottom:0;height:160px;background:linear-gradient(180deg,#ffffff00,#fff);z-index:1;pointer-events:none}
.hero-grid,.hero-price{position:relative;z-index:2}
@media(max-width:800px){.hero{padding-bottom:44px}.hero-backdrop{margin-top:18px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 70%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 70%,transparent)}.hero:after{height:120px}}
/* Course capacity belongs beside the duration, not beside the step label. */
.program-card .program-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-height:70px}
.program-meta .course-capacity{white-space:nowrap;justify-self:end;font-size:16px;font-weight:650;line-height:1.6}
.program-meta .course-time{line-height:1.7;font-size:16px}.program-meta .course-time:has(>span){display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 14px}.program-meta .course-time>span{white-space:nowrap}.program-meta .course-time small{font-size:15px;white-space:nowrap}
@media(max-width:1100px) and (min-width:801px){.program-meta .course-time{font-size:15px}.program-meta .course-time strong{font-size:24px}.program-meta .course-capacity{font-size:15px}.program-meta .course-time small{font-size:15px}}
@media(max-width:800px){.program-card .program-meta{gap:12px;min-height:70px}.program-meta .course-time{font-size:15px}.program-meta .course-time strong{font-size:24px}.program-meta .course-time small{font-size:15px}.program-meta .course-capacity{font-size:15px}}

/* Qualification examples: show the supplied certificate and badge at their original proportions. */
.certification{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;gap:42px 48px}
.cert-intro{min-width:0}
.certificate-visuals{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;gap:24px;padding:32px 26px;background:linear-gradient(135deg,#eefaff,#e9f3ff);border:1px solid #d6e8f4;border-radius:12px}
.certificate-visuals figure{min-width:0;margin:0;text-align:center}
.certificate-visuals img{display:block;width:100%;height:auto;object-fit:contain}
.certificate-sample img{border:1px solid #d3e0e5;border-radius:3px;box-shadow:0 12px 28px #1736461c}
.badge-sample img{max-width:190px;margin-inline:auto;filter:drop-shadow(0 8px 10px #17364618)}
.certificate-visuals figcaption{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:5px 8px;margin-top:18px;font-size:16px;font-weight:700;line-height:1.7;color:#13233b}
.certificate-visuals figcaption span{font-size:15px;font-weight:500;line-height:1.5;border:1px solid #b7cbd9;border-radius:3px;padding:1px 6px;color:#111111}
.cert-stats{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 60px;padding:30px 0 0;border-left:0;border-top:1px solid var(--line)}
.cert-stats>p,.cert-stats>.source{grid-column:1/-1}
.cert-stats>.stat-row{margin-top:0}
.cert-stats .note{margin-top:4px}
.cert-stats>.source{margin-top:-8px;justify-self:start}
.company-grid .corporate-link{display:flex;justify-content:center;align-items:center;width:max-content;min-width:300px;max-width:100%;min-height:62px;margin:28px 0 0 auto;padding:15px 28px;background:linear-gradient(110deg,#1647e8,#0868ee);border:1px solid #1647e8;border-radius:7px;box-shadow:0 8px 20px #174ce91c;color:#fff;font-size:17px;font-weight:700;letter-spacing:.025em;line-height:1.6}
.company-grid .corporate-link:hover{background:#123bcc;box-shadow:0 10px 24px #174ce92b}
.footer{padding:38px 0 22px;border-top:0;background:#fff}
.footer-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:26px 32px}
.footer-row .footer-logo{justify-self:start;display:flex;width:auto}
.footer-logo img{display:block;width:144px;height:auto}
.footer-row .footer-privacy{width:auto;font-size:15px;line-height:1.7;justify-self:end}
.footer-row .footer-copyright{grid-column:1/-1;display:block;margin:0;padding-top:20px;border-top:1px solid #dce6f2;text-align:center;color:#111111;font-size:15px;line-height:1.7}
@media(max-width:1100px) and (min-width:801px){
 .certification{gap:36px 28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .certificate-visuals{padding:26px 18px;gap:16px}
 .certificate-visuals figcaption{font-size:15px}
 .cert-flow{gap:10px}.cert-flow span{padding:12px 10px}
}
@media(max-width:800px){
 .certification{grid-template-columns:1fr;gap:30px}
 .certificate-visuals{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);max-width:550px;width:100%;margin-inline:auto;padding:26px 22px;gap:20px}
 .certificate-visuals figcaption{font-size:15px;gap:4px 6px;margin-top:14px}
 .badge-sample img{max-width:170px}
 .cert-stats{gap:14px 28px}
 .cert-stats strong{font-size:clamp(30px,7vw,48px)}
 .cert-stats .stat-row>span:first-child{font-size:15px}
 .cert-stats strong small{font-size:15px}
 .company-grid .corporate-link{min-width:0;width:100%;font-size:16px;min-height:60px}
 .footer{padding:30px 0 20px}
 .footer-row{gap:24px 16px}.footer-logo img{width:124px}
 .footer-row .footer-privacy{font-size:15px}
 .footer-row .footer-copyright{padding-top:18px}
}

.certificate-visuals figcaption{letter-spacing:0;white-space:nowrap}
@media(max-width:800px){.certificate-visuals{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px}}

.cert-intro .no-wrap{display:inline-block}

/* Lead with the concrete qualification outcome. */
.cert-intro .cert-tagline{margin:14px 0 22px;font-size:18px;font-weight:650;line-height:1.8;color:#111111}
.certification .cert-benefit{margin:0 0 28px;font-size:32px;font-weight:750;line-height:1.65;letter-spacing:-.025em}
.cert-benefit .cert-condition{display:block;font-size:21px;line-height:1.9;margin-bottom:14px;letter-spacing:0;font-weight:650}
.cert-benefit .cert-award{display:block}
.cert-award>span{display:inline-block}
.cert-award strong{font-weight:800;color:#007d96}
@media(min-width:1101px){.header>.button.small{margin-left:32px}}
@media(min-width:951px) and (max-width:1100px){.header>.button.small{margin-left:24px}}
@media(min-width:801px) and (max-width:950px){.header>.button.small{margin-left:16px}}
@media(max-width:1100px) and (min-width:801px){.certification .cert-benefit{font-size:29px}.cert-benefit .cert-condition{font-size:19px}}
@media(max-width:800px){.cert-intro .cert-tagline{font-size:16px;margin-bottom:20px}.certification .cert-benefit{font-size:28px;line-height:1.65}.cert-benefit .cert-condition{font-size:18px;line-height:1.8;margin-bottom:16px}}

/* Let phone copy use the card width, with breaks at complete Japanese phrases. */
@media(max-width:800px){
 #why .problem-answer{width:100%;max-width:none;margin-inline:0}
 #why .problem-answer p{width:100%;max-width:none;font-size:clamp(20px,6vw,27px);line-height:1.8;letter-spacing:-.025em;text-wrap:wrap}
 .problem-answer .approach-line{display:block;white-space:nowrap}
 .transformation-card .before-state{padding-inline:20px}
 .transformation-card .after-copy{padding-inline:19px}
 .before-state p,.after-copy p{width:100%;max-width:none;text-wrap:wrap;letter-spacing:0;line-height:1.9}
 .transformation-card .copy-unit{display:inline-block;max-width:100%}
}

.contact-mobile-break{display:none}
@media(max-width:800px){
 #price .mobile-two-lines,#flow .mobile-two-lines{font-size:clamp(21px,6.5vw,28px);line-height:1.7;letter-spacing:-.025em}
 .mobile-two-lines>span{white-space:nowrap}
 #flow .section-heading>.flow-intro-copy{width:100%;max-width:none;font-size:clamp(16px,4.5vw,18px);line-height:1.9;letter-spacing:0;text-wrap:wrap}
 .flow-intro-copy>span{white-space:nowrap}
 #contact .contact-lead{width:100%;max-width:none;font-size:clamp(16px,4.5vw,18px);line-height:1.95;text-wrap:wrap;letter-spacing:0}
 .contact-lead>span{display:inline-block;white-space:nowrap}
 .contact-mobile-break{display:block}
}

.cert-condition>span{display:inline-block}
@media(max-width:800px){.cert-condition>span{display:block;white-space:nowrap}}

/* Keep the laptop in the image area, above the separate offer panel. */
.hero{padding-top:0}
.hero-main{position:relative;padding:68px 0 56px;isolation:isolate}
.hero .hero-price{margin-top:0}
@media(min-width:801px){
 .hero-main .hero-backdrop{inset:0;mask-image:linear-gradient(180deg,#000 0%,#000 88%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 88%,transparent 100%)}
 .hero-main .hero-backdrop img{display:block;width:min(82vw,1280px);height:100%;margin-left:auto;object-fit:cover;object-position:center 40%}
 .hero-main .hero-backdrop:after{background:linear-gradient(90deg,#eaf5ff 0%,#eaf5fff5 28%,#eaf5ffbd 44%,#eaf5ff20 62%,transparent 74%),linear-gradient(0deg,#edf7ff 0%,transparent 12%)}
}
@media(max-width:800px){
 .hero-main{display:flex;flex-direction:column;padding:36px 0 16px}
 .hero-main .hero-backdrop{flex:none}
}

/* A panoramic photograph carries the full-width hero without an empty left edge. */
@media(min-width:801px){
 .hero-main .hero-backdrop img{width:100%;margin-left:0;object-position:32% center}
 .hero-main .hero-backdrop:after{background:linear-gradient(90deg,#eaf5ffd9 0%,#eaf5ffdb 25%,#eaf5ffc2 40%,#eaf5ff59 53%,transparent 68%),linear-gradient(0deg,#edf7ff 0%,transparent 10%)}
}
@media(min-width:1101px){.hero-grid,.hero .hero-price{width:min(1440px,calc(100% - 96px))}}
.hero .hero-price{grid-template-columns:.9fr 1.5fr}
.hero-price-number{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;padding:28px 30px;align-items:center}
.hero-price-overview{min-width:0}
.hero-price-overview .hero-aid-condition{display:inline-block;padding:6px 12px;margin-bottom:12px;border-radius:5px;background:#fff0df;font-size:15px;font-weight:700;line-height:1.6;color:#111111}
.hero-price-number .hero-price-value strong{font-size:clamp(60px,4.3vw,82px)}
.hero-price-details{display:flex;flex-direction:column;align-items:stretch;gap:16px;min-width:0}
.hero-price .hero-price-details .note{margin:0;padding:0;background:none;border:0;color:#111111;font-size:15px;line-height:1.9;text-wrap:pretty}
.hero-price-details a.button{align-self:flex-end;min-width:164px;min-height:52px;padding:12px 24px}
/* Use the full text column and break at phrases on both desktop and phones. */
.before-state p,.after-copy p{width:100%;max-width:none;text-wrap:wrap;letter-spacing:0}
.transformation-card .copy-unit{display:inline-block;max-width:100%}
@media(max-width:1100px) and (min-width:801px){
 .hero .hero-price{grid-template-columns:.85fr 1.3fr}
 .hero-price-number{grid-template-columns:1fr;padding:24px;gap:14px}
 .hero-price-overview{display:flex;flex-direction:column;align-items:flex-start}
 .hero-price-number .hero-price-value strong{font-size:64px}
 .hero-price-details a.button{align-self:flex-end;min-height:48px}
 .transformation-card .after-copy{padding-inline:13px}
}
@media(max-width:800px){
 .hero-main .hero-backdrop{height:clamp(200px,60vw,420px)}
 .hero-main .hero-backdrop img{object-position:85% center}
 .hero .hero-price{grid-template-columns:1fr}
 .hero-price-number{grid-template-columns:1fr;padding:24px;gap:18px}
 .hero-price-number .hero-price-value strong{font-size:clamp(59px,17.5vw,78px)}
 .hero-price-details{gap:18px}
 .hero-price-details a.button{width:100%;min-height:54px;align-self:stretch}
}

/* 2026-10-28: confirmed e-learning curriculum and lighter hero treatment. */
.hero{background:linear-gradient(180deg,#f8fcff 0%,#fff 100%)}
.hero-main .hero-backdrop img{filter:brightness(1.07) contrast(.96) saturate(.92)}
.hero-webgl{opacity:.12}
@media(min-width:801px){.hero-main .hero-backdrop:after{background:linear-gradient(90deg,#ffffffed 0%,#ffffffe6 25%,#fffffff0 34%,#ffffff94 48%,#ffffff1a 64%,transparent 78%),linear-gradient(0deg,#fff 0%,transparent 16%)}}
.hero .training-summary{grid-template-columns:.9fr 1.5fr;box-shadow:0 12px 36px #17437812}
.training-summary .hero-package-summary{background:linear-gradient(125deg,#f0f7ff,#e8f4ff);color:var(--ink)}
.training-summary .tag,.training-summary .hero-package-meta{color:#111111}
.training-summary .hero-package-summary p{color:#164bed}
.training-summary-details{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:15px 28px;padding:28px 32px}
.training-summary-details>div>span{display:block;font-size:15px;color:#111111}
.training-summary-details strong{display:block;font-size:42px;line-height:1.45;letter-spacing:-.035em;color:#164bed;white-space:nowrap}
.training-summary-details strong small{font-size:19px;margin:0 4px}
.training-summary-details p{font-size:15px;margin:0;color:#111111}
.training-summary-details .text-link{grid-column:1/-1;font-size:15px}
.course-practice{background:linear-gradient(145deg,#fff,#f4faff)}
.program-meta .course-time{font-size:15px;line-height:1.8}
.program-meta .course-time strong{font-size:25px;margin-left:3px}
.program-meta .course-capacity{font-size:15px;white-space:nowrap}
.learning-metrics{flex-wrap:wrap;gap:20px 30px}
.learning-metrics .exact-duration{font-size:42px;white-space:nowrap}
.learning-metrics .exact-duration small{font-size:18px;margin:0 3px}
.learning-duration{line-height:1.8!important}
.learning-duration strong{display:inline-block;color:var(--blue)}
.learning-block{scroll-margin-top:120px;min-width:0}
.chapter-name small{display:block;margin-top:5px;font-size:15px;line-height:1.6;font-weight:500;color:#111111}
.lecture-list{padding-left:1.75rem;margin:18px 0 0}
.lecture-list li{padding:12px 0;border-top:1px solid #e3eaf4;font-size:15px;line-height:1.8}
.lecture-list li::marker{color:var(--blue);font-weight:700}
.lecture-list li small{display:block;font-size:15px;color:#111111;margin-top:5px;font-variant-numeric:tabular-nums}
.completion-panel{display:grid;grid-template-columns:1fr 1.1fr;gap:42px;padding:38px;background:#f5faff;border:1px solid #d5e6f9;border-radius:12px;margin-top:50px}
.completion-panel h3{font-size:30px;line-height:1.6;margin:15px 0}
.completion-panel p,.completion-panel dd{font-size:17px;line-height:1.9}
.completion-panel dl{margin:0}.completion-panel dl>div{padding:17px 0;border-bottom:1px solid #d5e6f9}.completion-panel dl>div:first-child{padding-top:0}
.completion-panel dt{font-size:15px;font-weight:700;color:#164bed;margin-bottom:5px}.completion-panel dd{margin:0}
.practice-outcomes{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:38px}
@media(max-width:1100px) and (min-width:801px){.training-summary-details{padding:25px;gap:16px;grid-template-columns:1fr 1fr}.training-summary-details strong{font-size:30px}.training-summary-details strong small{font-size:15px}.learning-metrics .exact-duration{font-size:34px}}
@media(max-width:800px){.hero .training-summary{grid-template-columns:1fr}.hero-main .hero-backdrop:after{background:linear-gradient(0deg,#fff,transparent 24%)}.training-summary-details{padding:24px;grid-template-columns:1fr;gap:20px}.training-summary-details strong{font-size:40px}.training-summary-details strong small{font-size:18px}.training-summary-details .text-link{grid-column:auto}.program-card h3{font-size:27px}.program-meta{align-items:flex-end;gap:12px}.program-meta .course-time strong{font-size:22px}.program-meta .course-capacity{font-size:15px}.learning-metrics .exact-duration{font-size:36px}.learning-metrics .exact-duration small{font-size:16px}.completion-panel{grid-template-columns:1fr;gap:26px;padding:25px}.completion-panel h3{font-size:27px}.completion-panel p,.completion-panel dd{font-size:16px}.practice-outcomes{grid-template-columns:1fr}.lecture-list li{font-size:15px}}
@media(max-width:360px){.training-summary-details strong{font-size:34px}.training-summary-details strong small{font-size:16px}.program-meta .course-time strong{font-size:20px}.learning-metrics .exact-duration{font-size:31px}}


/* 2026-10-29: sequential learning flow and requested design refinements. */
.hero-main .hero-backdrop img{filter:brightness(1.2) contrast(.86) saturate(.9)}
.hero-subsidy-notice{display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:560px;padding:17px 21px;margin:24px 0 0;background:#fffffff0;border:1px solid #c6daef;border-left:4px solid #164bed;border-radius:9px;box-shadow:0 6px 20px #203f7208;color:#17324f}
.hero-subsidy-label{font-size:15px;font-weight:750;color:#1d4fd4}.hero-subsidy-main{display:flex;align-items:baseline;gap:12px;font-size:15px;font-weight:650;flex-wrap:wrap}.hero-subsidy-main strong{font-size:30px;line-height:1.3;letter-spacing:-.03em;color:#164bed;white-space:nowrap}.hero-subsidy-main small{font-size:15px;margin:0 4px;font-weight:650;letter-spacing:0}.hero-subsidy-detail{font-size:15px;line-height:1.7;color:#111111}.hero-subsidy-link{font-size:15px;font-weight:750;color:#164bed}
.training-overview{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.65fr;gap:32px;align-items:stretch;padding:28px;background:#fff;border:1px solid #cedfed;border-radius:16px;box-shadow:0 15px 38px #1743780b;margin-top:0}
.overview-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:8px 8px 8px 12px}.overview-kicker{font-size:15px;font-weight:750;letter-spacing:.025em;color:#111111}.overview-title{font-size:25px;font-weight:800;line-height:1.5;letter-spacing:-.035em;margin:11px 0;color:#13233b}.overview-description{font-size:15px;line-height:1.8;color:#111111}.overview-link{display:inline-flex;gap:20px;align-items:center;margin-top:18px;font-size:15px;font-weight:750;color:#164bed}.overview-link:hover{text-decoration:underline;text-underline-offset:5px}
.overview-steps{display:grid;grid-template-columns:1.12fr 52px 1fr;align-items:stretch;gap:10px;min-width:0}.overview-step{--step-color:#164bed;--step-bg:#f0f5ff;--step-line:#ccdcff;min-width:0;padding:22px 20px;background:var(--step-bg);border:1px solid var(--step-line);border-radius:11px}.overview-instructor{--step-color:#087867;--step-bg:#eef9f5;--step-line:#c3e5da}.overview-step-label{display:inline-block;font-size:15px;font-weight:800;letter-spacing:.12em;color:var(--step-color)}.overview-step p{font-size:17px;font-weight:750;line-height:1.6;margin:7px 0 15px;color:#17324f}.overview-caption{font-size:15px;color:#111111}.overview-step strong{display:block;white-space:nowrap;font-size:34px;line-height:1.5;font-weight:800;letter-spacing:-.04em;color:var(--step-color)}.overview-step small{font-size:15px;font-weight:700;margin:0 3px;letter-spacing:0}.overview-instructor strong{font-size:39px}.overview-connector{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#111111;font-size:15px;font-weight:700;white-space:nowrap}.overview-connector svg{width:27px;height:27px}
#why{padding-top:58px}#why .problem-answer{margin-top:0}
.learning-path{background:#fff;border:1px solid #d4e2ef;border-radius:16px;overflow:hidden;box-shadow:0 12px 28px #17304f06}.learning-path-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 30px;border-bottom:1px solid #e0eaf3}.learning-path-header>span{font-size:18px;font-weight:750;color:#17324f}.learning-path-header small{font-size:15px;color:#111111}.learning-path-grid{display:grid;grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr);gap:14px;padding:30px}
.learning-step{--step-color:#164bed;--step-bg:#f2f6ff;--step-line:#c7d9ff;display:flex;flex-direction:column;min-width:0;border:1px solid var(--step-line);border-top:4px solid var(--step-color);border-radius:12px;background:var(--step-bg);padding:30px;scroll-margin-top:116px}.learning-step-instructor{--step-color:#087867;--step-bg:#eff9f5;--step-line:#bfdfd3}.learning-step-top{display:flex;align-items:center;gap:14px}.learning-step-number{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:50%;font-size:22px;font-weight:750;background:var(--step-color);color:#fff}.learning-step-order,.learning-step-format{display:block;color:var(--step-color);font-weight:750;font-size:15px;letter-spacing:.12em;line-height:1.9}.learning-step-format{font-size:15px;letter-spacing:.08em}.learning-step h3{font-size:30px;letter-spacing:-.03em;line-height:1.6;margin:24px 0 18px}.learning-step-description{font-size:17px;line-height:1.95;color:#111111;flex-grow:1}.learning-step-meta{border-top:1px solid var(--step-line);padding:19px 0;margin:25px 0 0;display:flex;flex-direction:column;gap:15px}.learning-step-meta dt{font-size:15px;color:#111111;margin-bottom:3px}.learning-step-meta dd{margin:0;font-size:16px;font-weight:700;line-height:1.7;color:var(--step-color)}.learning-step-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:55px;margin-top:10px;padding:12px 18px;border:1px solid var(--step-color);border-radius:7px;background:#fff;color:var(--step-color);font-size:15px;font-weight:750;transition:background .2s,color .2s}.learning-step-link svg{width:22px;height:22px;flex:none}.learning-step-link:hover{background:var(--step-color);color:#fff}.learning-path-connector{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;font-size:15px;line-height:1.8;color:#111111;font-weight:700}.learning-path-connector i{display:grid;place-items:center;width:48px;height:48px;border:1px solid #bcd6d4;border-radius:50%;background:linear-gradient(110deg,#f0f5ff,#eff9f5);color:#287c83}.learning-path-connector svg{width:25px;height:25px}
.curriculum-intro{display:grid;grid-template-columns:.85fr 1.25fr;gap:38px;align-items:start;margin-bottom:28px}.curriculum-title h3{font-size:28px;line-height:1.65;margin:15px 0 0}.course-overview{padding:19px 23px;background:#f5f9fd;border:1px solid #e1eaf3;border-radius:9px}.course-overview-meta{display:flex;flex-wrap:wrap;gap:9px 20px;margin-bottom:12px;font-size:15px;font-weight:650;line-height:1.7}.course-overview-meta strong{color:#164bed;white-space:nowrap}.course-overview>p{font-size:16px;line-height:1.9;color:#111111;margin:0}.course-overview .course-overview-note{font-size:15px;line-height:1.85;color:#111111;margin-top:10px}.curriculum-list{display:grid;gap:10px}.learning-block .curriculum-chapter[open]>summary{background:#eaf6fb;border-bottom:1px solid #d3e5eb}.learning-block .chapter-body{padding-top:19px}.learning-block .chapter-body>p{border-top:0;padding-top:0}.learning-block .curriculum-chapter summary .chapter-name strong{font-size:18px}.learning-block .curriculum-chapter summary .chapter-name small{font-size:15px}
.instructor{margin-bottom:50px}.certification{margin-top:48px}.retention-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:start}.retention-layout .retention-photo{margin:0;min-width:0;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 10px 28px #23435e08}.retention-layout .retention-photo img{display:block;width:100%;height:330px;aspect-ratio:auto;object-fit:cover;object-position:center 37%}.retention-layout .retention-photo figcaption{position:static;padding:22px 24px;background:#fff;color:#17324f}.retention-layout .retention-photo figcaption>span{font-size:15px;color:#111111}.retention-layout .retention-photo figcaption strong{display:block;font-size:22px;line-height:1.65;margin-top:6px}.retention-layout .practice-outcomes{display:grid;grid-template-columns:1fr;gap:0;margin:0;background:#fff;border:1px solid #d6e3ef;border-radius:12px;overflow:hidden}.retention-layout .practice-outcomes article{display:grid;grid-template-columns:42px 1fr;gap:8px 16px;margin:0;padding:25px 26px;border:0;border-radius:0;background:#fff}.retention-layout .practice-outcomes article+article{border-top:1px solid #e1eaf3}.retention-layout .practice-outcomes article>span{grid-row:1/3;display:grid;place-items:center;align-self:start;width:40px;height:40px;border-radius:50%;color:#164bed;background:#eef4ff;font-size:15px;font-weight:800}.retention-layout .practice-outcomes h3{font-size:20px;line-height:1.6;margin:3px 0 0}.retention-layout .practice-outcomes p{font-size:15px;line-height:1.85;margin:0;color:#111111}
@media(max-width:1100px) and (min-width:801px){.training-overview{grid-template-columns:.7fr 1.7fr;padding:23px;gap:20px}.overview-intro{padding:0}.overview-title{font-size:22px}.overview-steps{grid-template-columns:1.12fr 28px 1fr;gap:7px}.overview-step{padding:18px 14px}.overview-step strong{font-size:27px}.overview-step small{font-size:15px}.overview-step p{font-size:15px}.learning-path-grid{padding:24px;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);gap:10px}.learning-step{padding:24px}.learning-step h3{font-size:27px}.learning-step-description{font-size:16px}.curriculum-intro{grid-template-columns:.8fr 1.2fr;gap:22px}.curriculum-title h3{font-size:25px}.retention-layout{gap:28px}.retention-layout .practice-outcomes article{padding:21px}.retention-layout .retention-photo img{height:310px}}
@media(max-width:800px){.hero-subsidy-notice{padding:15px 16px;margin-top:21px;max-width:none;background:#ffffffed}.hero-subsidy-main{font-size:15px;gap:5px 9px}.hero-subsidy-main strong{font-size:27px}.hero-subsidy-detail{font-size:15px}.hero-subsidy-detail br{display:none}.training-overview{grid-template-columns:1fr;gap:23px;padding:22px;margin-top:20px;border-radius:13px}.overview-intro{padding:0}.overview-title{font-size:25px;margin:8px 0}.overview-description br{display:none}.overview-link{margin-top:13px}.overview-steps{grid-template-columns:1fr;gap:0}.overview-step{padding:19px 21px;display:grid;grid-template-columns:1fr auto;align-items:start;column-gap:10px}.overview-step-label,.overview-step p{grid-column:1}.overview-step p{font-size:17px;margin:5px 0 0}.overview-caption{grid-row:1;grid-column:2;font-size:15px;text-align:right}.overview-step strong{grid-row:2/4;grid-column:2;font-size:28px;align-self:center;text-align:right}.overview-step small{font-size:15px;margin-inline:2px}.overview-instructor strong{font-size:34px}.overview-connector{flex-direction:row;gap:10px;padding:11px}.overview-connector svg{width:20px;height:20px;transform:rotate(90deg)}#why{padding-top:48px}.learning-path-header{align-items:flex-start;flex-direction:column;gap:5px;padding:20px}.learning-path-header>span{font-size:16px}.learning-path-header small{font-size:15px}.learning-path-grid{grid-template-columns:1fr;gap:0;padding:20px}.learning-step{padding:24px 22px}.learning-step h3{font-size:27px;margin:21px 0 16px}.learning-step-description{font-size:16px}.learning-step-meta dd{font-size:15px}.learning-step-link{font-size:15px}.learning-path-connector{flex-direction:row;gap:15px;padding:20px}.learning-path-connector>span{font-size:15px;text-align:left}.learning-path-connector i{width:39px;height:39px}.learning-path-connector svg{transform:rotate(90deg);width:22px;height:22px}.curriculum-intro{grid-template-columns:1fr;gap:19px;margin-bottom:23px}.curriculum-title h3{font-size:26px;margin-top:11px}.course-overview{padding:17px 18px}.course-overview-meta{font-size:15px;gap:5px 15px}.course-overview>p{font-size:15px}.course-overview .course-overview-note{font-size:15px}.learning-block .curriculum-chapter summary .chapter-name strong{font-size:16px}.learning-block .curriculum-chapter summary .chapter-name small{font-size:15px}.retention-layout{grid-template-columns:1fr;gap:24px}.retention-layout .retention-photo img{height:230px;object-position:center 35%}.retention-layout .retention-photo figcaption{padding:18px 21px}.retention-layout .retention-photo figcaption strong{font-size:21px}.retention-layout .practice-outcomes article{grid-template-columns:36px 1fr;gap:7px 13px;padding:22px 20px}.retention-layout .practice-outcomes article>span{width:34px;height:34px;font-size:15px}.retention-layout .practice-outcomes h3{font-size:18px}.retention-layout .practice-outcomes p{font-size:15px}}
@media(max-width:380px){.training-overview{padding:18px}.overview-title{font-size:23px}.overview-step{grid-template-columns:1fr;padding:18px}.overview-caption{grid-column:1;grid-row:auto;text-align:left;margin-top:12px}.overview-step strong{grid-column:1;grid-row:auto;text-align:left;font-size:32px}.overview-instructor strong{font-size:37px}.learning-path-grid{padding:15px}.learning-step{padding:23px 19px}.learning-step h3{font-size:25px}.learning-step-format{font-size:15px}.learning-step-number{width:43px;height:43px;font-size:20px}.learning-step-meta dd{font-size:15px}.retention-layout .practice-outcomes article{padding:21px 16px}.hero-subsidy-main strong{font-size:25px}}


/* 2026-10-29: minimum 15px text, black secondary copy and grid-paper backgrounds. */
.section.soft{background-color:#f0f6fc;background-image:linear-gradient(rgba(72,126,174,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(72,126,174,.12) 1px,transparent 1px);background-size:28px 28px;background-position:center top}
.overview-steps{grid-template-columns:minmax(0,1.12fr) 60px minmax(0,1fr)}
.overview-step-label,.learning-step-order,.learning-step-format{letter-spacing:.06em}
.learning-step-top>div{min-width:0}.learning-step-format{overflow-wrap:normal;letter-spacing:.035em}
.learning-path-grid{grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr)}
.course-overview-meta{display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin-bottom:15px;font-size:16px}
.course-overview-meta>span:first-child{font-weight:750;color:#13233b}
.course-overview-meta>span:last-child{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;width:100%;padding:11px 15px;background:#eaf1ff;border:1px solid #b6cbff;border-left:4px solid #164bed;border-radius:7px;color:#13233b;font-size:15px;font-weight:700;line-height:1.7}
.course-overview-meta strong{font-size:25px;line-height:1.5;font-weight:800;color:#164bed}
@media(max-width:1100px) and (min-width:801px){.training-overview{grid-template-columns:1fr;gap:22px}.overview-intro{padding:0 3px}.overview-description br{display:none}.overview-steps{grid-template-columns:minmax(0,1.12fr) 64px minmax(0,1fr)}.overview-step strong{font-size:34px}.overview-step small{font-size:15px}.learning-path-grid{grid-template-columns:minmax(0,1fr) 90px minmax(0,1fr)}.learning-step-top{gap:10px}.learning-step-number{width:43px;height:43px}.course-overview{padding:17px}.course-overview-meta strong{font-size:23px}}
@media(max-width:800px){.overview-steps,.learning-path-grid{grid-template-columns:1fr}.overview-step{display:block;padding:20px}.overview-step p{font-size:18px;margin:7px 0 14px}.overview-caption{display:block;text-align:left;margin:0;font-size:15px}.overview-step strong{font-size:34px;text-align:left;line-height:1.6}.overview-step small{font-size:15px}.overview-instructor strong{font-size:39px}.overview-connector{padding:15px}.learning-path-connector>span{font-size:15px}.course-overview-meta{font-size:16px}.course-overview-meta>span:last-child{padding:10px 12px}.course-overview-meta strong{font-size:23px}}

/* Newly generated bright photograph, shown without the former image offset or color filter. */
.hero-main .hero-backdrop img{display:block;width:100%;height:100%;margin:0;object-fit:cover;object-position:center;filter:none;transform:none}
@media(min-width:801px){.hero-main .hero-backdrop:after{background:linear-gradient(90deg,#fffffff5 0%,#ffffffed 26%,#ffffff8c 42%,#ffffff12 58%,transparent 70%),linear-gradient(0deg,#fff 0%,transparent 13%)}}
@media(max-width:800px){.hero-main .hero-backdrop{height:auto;aspect-ratio:1672/941;mask-image:none;-webkit-mask-image:none}.hero-main .hero-backdrop .hero-photo-frame{height:100%;transform:none}.hero-main .hero-backdrop img{width:100%;height:100%;object-fit:contain;object-position:center}.hero-main .hero-backdrop:after{background:linear-gradient(0deg,#fff 0%,transparent 12%)}}

@media(max-width:800px){.cost-breakdown dl{grid-template-columns:1fr 1fr;gap:12px}.cost-breakdown dt{white-space:normal}}


/* 2026-10-29: clearer course names, learning details and hero deadline. */
.training-overview{scroll-margin-top:112px}
.overview-step p{font-size:27px;font-weight:800;line-height:1.5;letter-spacing:-.025em;margin:10px 0 21px;color:#13233b}
.overview-step{transition:box-shadow .25s,border-color .25s}
@media(hover:hover){.overview-step:hover{border-color:var(--step-color);box-shadow:0 9px 24px #193e7312}}
.learning-step-meta dd{font-size:22px;line-height:1.7;font-weight:800;display:flex;flex-wrap:wrap;gap:2px 7px}
.learning-step-meta dd>span{white-space:nowrap}
.hero-subsidy-notice{gap:9px;padding:20px 23px;border:2px solid #164bed;border-left-width:6px;background:linear-gradient(115deg,#fff 10%,#eff5ff 100%);box-shadow:0 10px 28px #164bed17}
.hero-subsidy-label{font-size:16px;font-weight:800}
.hero-subsidy-main{width:100%;font-size:17px;gap:6px 17px;font-weight:750}
.hero-subsidy-main strong{font-size:50px;line-height:1.25;letter-spacing:-.04em}
.hero-subsidy-main small{font-size:23px;letter-spacing:0;margin-inline:4px}
.hero-subsidy-link{font-size:15px;margin-top:3px}
#program .section-heading>p{max-width:none;text-wrap:wrap}
.program-set-description{display:inline-block;white-space:nowrap}
#change .section-heading>.change-intro-copy{font-size:24px;line-height:1.9;font-weight:650;color:#111111;max-width:none;flex:0 1 505px;text-wrap:wrap}
@media(max-width:1100px) and (min-width:801px){.overview-step p{font-size:27px}.learning-step-meta dd{font-size:21px}#change .section-heading>.change-intro-copy{font-size:22px}}
@media(max-width:800px){.overview-step p{font-size:26px;margin:10px 0 18px}.learning-step-meta dd{font-size:20px;gap:2px 6px}.hero-subsidy-notice{padding:18px 17px;gap:10px}.hero-subsidy-label{font-size:15px}.hero-subsidy-main{font-size:16px;display:block}.hero-subsidy-main strong{display:block;margin-top:5px;font-size:45px}.hero-subsidy-main small{font-size:22px}.program-set-description{display:inline;white-space:normal}#change .section-heading>.change-intro-copy{font-size:22px;line-height:1.85}}
@media(max-width:380px){.overview-step p{font-size:24px}.hero-subsidy-main strong{font-size:42px}.hero-subsidy-main small{font-size:20px}.learning-step-meta dd{font-size:20px}}
@media(min-width:1000px){#program .section-heading{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:32px}#program .section-heading>p{margin:0;padding:0;line-height:2}}
@media(min-width:801px) and (max-width:1199px){.program-set-description{white-space:normal}}
@media(min-width:1000px) and (max-width:1199px){#program .section-heading h2{font-size:36px}}

/* Keep learning-copy sentence boundaries and short terms together. */
.copy-no-break{white-space:nowrap}.learning-copy-sentence{display:block}.learning-step-description,.learning-copy-sentence{word-break:normal;line-break:strict;text-wrap:pretty}


/* 2026-10-29: unified mobile hero and readable before/after cards. */
.comparison-mobile-label,.comparison-mobile-arrow{display:none}
@media(max-width:800px){
 .hero-main{display:block;padding:34px 0 30px}
 .hero-main .hero-backdrop{position:absolute;inset:0;width:100%;height:100%;margin:0;aspect-ratio:auto;mask-image:none;-webkit-mask-image:none;pointer-events:none}
 .hero-main .hero-backdrop .hero-photo-frame{position:relative;width:100%;height:100%;transform:none}
 .hero-main .hero-backdrop img{position:absolute;top:85px;left:0;width:100%;height:auto;margin:0;object-fit:contain;object-position:center;transform:none;filter:none}
 .hero-main .hero-backdrop:after{background:linear-gradient(90deg,#fffffff5 0%,#ffffffb3 36%,#ffffff26 76%,transparent 100%),linear-gradient(180deg,#f8fcff 0%,#ffffff00 16%,#fff 50%)}
 .hero-main .hero-grid{position:relative;z-index:1}
 #why .problem-answer .approach-line{display:block;white-space:nowrap}
 #why .problem-answer p{font-size:clamp(20px,5.5vw,27px);line-height:1.85;letter-spacing:-.025em}
 .comparison{border-top:0;display:grid;gap:20px}
 .comparison>.comparison-header{display:none}
 .comparison>.comparison-row{display:flex;flex-direction:column;gap:0;padding:21px 18px;border:1px solid #cfdeed;border-radius:12px;background:#fff;overflow:hidden}
 .comparison>.comparison-row>h3{padding:0 0 17px;margin:0;font-size:22px;line-height:1.5;border:0;color:#13233b}
 .comparison>.comparison-row>p{width:100%;padding:17px 18px;font-size:17px;line-height:1.9;border-radius:8px;text-wrap:pretty;word-break:normal;line-break:strict;color:#111111}
 .comparison>.comparison-row>.comparison-before{background:#f5f7fa;border:1px solid #e1e7ee}
 .comparison>.comparison-row>.comparison-after{padding:17px 18px;background:#edf5ff;border:1px solid #bdd5ff}
 .comparison>.comparison-row>p br{display:none}
 .comparison>.comparison-row>p strong{font-weight:750;color:#164bed}
 .comparison .comparison-mobile-label{display:block;font-size:15px;line-height:1.5;font-weight:800;letter-spacing:.04em;margin:0 0 10px;color:#13233b}
 .comparison .comparison-after .comparison-mobile-label{color:#164bed}
 .comparison>.comparison-row>.comparison-mobile-arrow{display:block;align-self:center;flex:0 0 44px;height:44px;padding:0;margin:0;font-size:25px;line-height:44px;color:#164bed}
 .header nav{padding:12px 20px 22px;gap:0}
 .header nav>a:first-of-type{border-top:0}
}
