*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:1rem/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;color:#123149;background:#f5f8fa}
img{max-width:100%}
.wrap{width:min(1120px,calc(100% - 40px));margin-inline:auto}
.site-header{background:#fff;border-bottom:1px solid #d9e5eb}
.header-inner{min-height:76px;display:flex;align-items:center}
.brand-lockup{display:flex;align-items:center;gap:11px;color:#0b4055;font-size:1.03rem;font-weight:800;letter-spacing:-.02em}
.brand{display:block;width:54px;height:54px;object-fit:contain;flex:none}
.hero{position:relative;isolation:isolate;overflow:hidden;background:#092d42;color:#f6fbfc;min-height:calc(100vh - 76px);display:flex;align-items:center}
.hero-figure{position:absolute;inset:0;z-index:-2;margin:0}
.hero-figure img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--focal,center)}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#06283ff2 0%,#06283fe6 24%,#06283fbf 42%,#06283f57 58%,transparent 76%)}
.hero-inner{width:min(1120px,calc(100% - 40px));padding-block:46px 54px}
.hero-copy{max-width:540px}
.eyebrow{color:#82e4ed;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem;font-weight:800;margin:0 0 12px}
.hero h1{font-size:clamp(2.5rem,4.1vw,4rem);line-height:1.08;letter-spacing:-.035em;margin:0 0 15px;max-width:15ch}
.course-names{font-weight:700;color:#d9f6f7;margin:0 0 14px;font-size:1rem}
.hero-price{margin:0 0 13px;display:flex;flex-direction:column;align-items:flex-start}
.price-label{font-size:.9rem;font-weight:700;color:#d6eef0}
.hero-price strong{font-size:clamp(2.5rem,3.8vw,3rem);line-height:1.13;letter-spacing:-.03em;color:#fff}
.price-note{font-size:.8rem;color:#e0eff2;margin:3px 0 0}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:0}
.button,.text-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;font:700 .95rem/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;padding:11px 17px}
.button{border:1px solid #83d9e1;background:#b4f3f4;color:#092d42;text-decoration:none}
.button:hover{background:#dbfcfd}
.button:focus-visible{outline:3px solid #f0bd66;outline-offset:3px}
.text-link{color:#b4f3f4;text-decoration:underline;text-underline-offset:4px}
.text-link:focus-visible{outline:3px solid #f0bd66;outline-offset:3px}
.lead{font-size:1rem;line-height:1.55;color:#e4f0f4;margin:18px 0 0;max-width:52ch}
.status{color:#c8dce3;font-size:.8rem;margin:10px 0 0}
.content{padding-block:72px}.content .lead{color:#355267;margin:0 0 12px;max-width:720px}
.section-heading{max-width:720px}
.section-heading h2,.offer h2,.faq h2,.next h2{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.2;letter-spacing:-.025em;margin:0 0 14px}
.section-heading p{margin:0;color:#355267}
.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.course{background:#fff;padding:26px;border:1px solid #d5e4e9;border-top:4px solid #168aa1;border-radius:13px;box-shadow:0 8px 24px #102f4610}
.course h3{font-size:1.25rem;line-height:1.3;margin:0 0 12px;color:#0b4259}.course p{margin:0}
.offer{background:#e5f5f6;padding-block:64px}.offer .wrap,.faq .wrap,.next .wrap{max-width:1120px}
.offer-price{font-size:clamp(2.5rem,4vw,3rem);line-height:1.15;font-weight:800;color:#0b4055;margin:10px 0 0;letter-spacing:-.03em}
.offer p:last-child{margin-bottom:0}
.faq{padding-block:70px}.faq-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.faq h3{font-size:1.05rem;line-height:1.4;margin:0 0 10px}.faq p{margin:0;color:#355267}
.next{background:#0c3449;color:#f4fbfd;padding-block:60px}.next p{max-width:640px}.next .status{color:#c8dce3}
.footer{background:#072334;color:#e2f1f3;padding:24px 0;font-size:.85rem}.footer p{margin:0}
@media(max-width:760px){
 .header-inner{min-height:64px}.brand{width:48px;height:48px}
 .hero{display:block;min-height:0;padding-bottom:220px}
 .hero-figure{top:auto;bottom:0;height:260px}
 .hero-figure img{object-position:var(--mobile-focal,75% center)}
 .hero::before{background:linear-gradient(180deg,#092d42 0%,#092d42 50%,#092d42e8 62%,#092d4200 85%)}
 .hero-inner{padding-block:27px 0}.hero-copy{max-width:100%}
 .hero h1{font-size:clamp(2rem,6vw,2.6rem);max-width:22ch;margin-bottom:10px}
 .course-grid,.faq-list{grid-template-columns:1fr}.content,.faq{padding-block:52px}
}
@media(max-width:380px){
 .wrap,.hero-inner{width:calc(100% - 32px)}
 .hero{padding-bottom:170px}.hero-figure{height:250px}
 .hero-inner{padding-top:18px}
 .eyebrow{font-size:.71rem;margin-bottom:7px}
 .hero h1{font-size:1.85rem;line-height:1.08;margin-bottom:8px}
 .course-names{font-size:.84rem;line-height:1.3;margin-bottom:9px}
 .hero-price{margin-bottom:10px}.price-label{font-size:.82rem}.hero-price strong{font-size:2.25rem}.price-note{font-size:.74rem}
 .button,.text-link{font-size:.86rem;padding:10px 12px}
 .lead{font-size:.94rem;line-height:1.4;margin-top:15px}.status{font-size:.74rem;margin-top:7px}
}
