:root{--navy:#102b4e;--blue:#1769aa;--gold:#f2b544;--ink:#243447;--muted:#617184;--bg:#f5f8fb;--line:#dce5ee}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.7;background:#fff}
header{background:var(--navy);color:white;padding:18px 6%;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.brand{font-size:20px;font-weight:700;letter-spacing:.3px;color:white;text-decoration:none}nav{display:flex;gap:18px;flex-wrap:wrap}nav a{color:#fff;text-decoration:none;font-size:14px}nav a:hover{color:var(--gold)}
main{max-width:1080px;margin:0 auto;padding:32px 24px 60px}.hero{background:linear-gradient(120deg,#102b4e,#1769aa);color:white;padding:54px 42px;border-radius:12px;margin:8px 0 38px}.hero.compact{padding:38px 36px}.hero h1{font-size:clamp(30px,4vw,44px);line-height:1.15;margin:8px 0 16px}.hero p{max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:bold;color:var(--gold)}h2{color:var(--navy);font-size:27px;margin-top:0}h3{color:var(--navy);margin-bottom:8px}section{margin:34px 0}.soft{background:var(--bg);padding:30px;border-radius:10px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.cards article,.course{border:1px solid var(--line);border-radius:10px;padding:22px;background:#fff}.cards a,.text-link{color:var(--blue);font-weight:bold;text-decoration:none}.button{display:inline-block;background:var(--gold);color:#17283a;text-decoration:none;padding:10px 18px;border-radius:5px;font-weight:bold;margin:10px 12px 0 0}.notice{border-left:4px solid var(--gold);padding:14px 18px;background:#fff7e6;margin-top:20px}.course{margin:14px 0}.course ul{margin-bottom:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;background:white}th,td{padding:13px 15px;border:1px solid var(--line);text-align:left}th{background:var(--navy);color:white}tr:nth-child(even){background:var(--bg)}footer{background:#0b1d33;color:#dce5ee;padding:30px 6%;font-size:14px}footer strong{color:white}.footer-inner{max-width:1080px;margin:auto}footer a{color:#fff} @media(max-width:600px){header{padding:18px 5%}.hero{padding:32px 24px}main{padding:22px 16px 40px}.soft{padding:22px}nav{gap:12px}}
