:root{--ink:#122033;--muted:#64748b;--line:#d9e4ef;--blue:#0b3a75;--blue2:#1263a6;--sky:#eaf5ff;--pale:#f7fbff;--ok:#14835c}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,system-ui,sans-serif;color:var(--ink);background:var(--pale);line-height:1.55}
a{color:var(--blue);text-decoration:none}
img{max-width:100%;display:block}
.topbar{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:12px 5vw;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
nav::-webkit-scrollbar,.topbar::-webkit-scrollbar{display:none}
nav,.topbar{scrollbar-width:none}
.brand{display:grid;color:var(--blue);font-weight:900;font-size:24px;line-height:1}
.brand small{font-size:11px;color:var(--muted);font-weight:700}
.nav-link{padding:8px 10px;border-radius:6px;color:#26364d;white-space:nowrap}
.nav-link:hover{background:var(--sky)}
.nav-btn,.btn,.ghost,button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border-radius:7px;border:1px solid var(--blue);font-weight:800;cursor:pointer}
.nav-btn,.btn,button{background:var(--blue);color:#fff}
.ghost{background:#fff;color:var(--blue)}
main{max-width:1200px;margin:0 auto;padding:30px 20px 56px}
footer{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:30px 5vw;background:#071f40;color:#e8f3ff}
footer a{color:#e8f3ff}
footer p,footer span{display:block;margin:.25rem 0;color:#bed2e8}
h1{font-size:clamp(34px,5vw,64px);line-height:1.02;margin:0 0 16px;letter-spacing:0}
h2{font-size:30px;margin:0 0 14px}
h3{margin:0 0 8px}
.lead{font-size:20px;color:#334155;max-width:850px}
.eyebrow{margin:0 0 10px;color:var(--blue2);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,520px);gap:34px;align-items:center}
.hero-strong{min-height:70vh}
.hero figure{margin:0;position:relative}
.hero img{height:540px;width:100%;object-fit:cover;border-radius:8px}
.hero figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:10px 12px;border-radius:7px;background:rgba(7,31,64,.82);color:#fff}
.home-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:end;min-height:640px;margin:-30px -20px 28px;padding:90px max(20px,5vw) 42px;background:linear-gradient(90deg,rgba(5,24,49,.88),rgba(5,24,49,.54),rgba(5,24,49,.18)),url("/assets/hero-training.png") center/cover no-repeat;color:#fff;overflow:hidden}
.home-hero:after{content:"";position:absolute;inset:auto 5vw 22px auto;width:240px;height:4px;border-radius:99px;background:#65c7ff}
.hero-copy{position:relative;z-index:1;max-width:780px}
.hero-copy h1{font-size:clamp(38px,4.8vw,64px);max-width:760px;text-wrap:balance}
.hero-copy .lead{color:#e7f3ff;font-size:21px;max-width:680px}
.ghost.light{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.45);color:#fff;backdrop-filter:blur(8px)}
.hero-panel{position:relative;z-index:1;align-self:center;background:rgba(255,255,255,.94);color:var(--ink);border:1px solid rgba(255,255,255,.65);border-radius:8px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.hero-panel div:first-child{display:flex;justify-content:space-between;gap:16px;align-items:center}
.hero-panel span{font-size:36px;font-weight:900;color:var(--blue)}
.hero-panel b{max-width:150px;text-align:right}
.hero-panel ul{margin:18px 0;padding-left:20px;color:#334155}
.hero-panel a{display:block;margin-top:16px;font-weight:900}
.mini-progress{height:12px;margin-top:18px;background:var(--sky);border-radius:99px;overflow:hidden}
.mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#0b3a75,#22a06b)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0}
.stat{display:block;background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:0 8px 24px rgba(11,58,117,.07)}
.stat b{display:block;color:var(--blue);font-size:34px;line-height:1}
.stat span{color:var(--muted);font-weight:700}
.section-head{max-width:820px;margin:42px 0 18px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.two-col{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:20px;align-items:start}
.card,.module-card,.publication-card,.material-card,.lesson,.auth,.result,.page-hero,.request-panel,.dashboard,fieldset{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px;box-shadow:0 8px 24px rgba(11,58,117,.07)}
.flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.flow div{padding:22px;border-left:4px solid var(--blue2);background:#fff;border-radius:8px}
.flow b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--sky);color:var(--blue)}
.photo-story{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:16px;margin:30px 0 48px}
.photo-story img{width:100%;height:280px;object-fit:cover;border-radius:8px;box-shadow:0 14px 35px rgba(11,58,117,.14)}
.photo-story img:nth-child(2){height:360px;margin-top:-36px}
.course-photos{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin:24px 0 40px}
.course-photos img{width:100%;height:260px;object-fit:cover;border-radius:8px;box-shadow:0 14px 35px rgba(11,58,117,.12)}
.platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.platform-grid article{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px;box-shadow:0 8px 24px rgba(11,58,117,.07)}
.platform-grid b{display:inline-block;margin-bottom:18px;color:#22a06b;font-size:13px;letter-spacing:.08em}
.normative-band{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:stretch;margin:42px 0;padding:28px;background:#fff;border:1px solid var(--line);border-left:5px solid #22a06b;border-radius:8px;box-shadow:0 14px 34px rgba(11,58,117,.09)}
.normative-band h2{max-width:780px}
.normative-band p{max-width:850px;color:#334155}
.normative-band aside{display:grid;align-content:center;gap:10px;padding:22px;border-radius:8px;background:#071f40;color:#fff}
.normative-band aside b{font-size:22px}
.normative-band aside p,.normative-band aside small{margin:0;color:#d9ecff}
.normative-docs{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.normative-docs span{padding:7px 10px;border-radius:999px;background:#eaf5ff;color:var(--blue);font-size:12px;font-weight:900}
.price-note{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:22px 0;padding:18px 22px;background:#fff;border:1px solid var(--line);border-left:4px solid #22a06b;border-radius:8px;box-shadow:0 8px 24px rgba(11,58,117,.07)}
.price-note b{color:var(--blue);font-size:18px}
.price-note p{margin:0;color:#334155;max-width:720px}
.tools-preview{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:40px 0;padding:28px;background:#061f3f;color:#e8f3ff;border-radius:8px}
.tools-preview h2{color:#fff}
.tools-preview p{max-width:680px;color:#bed2e8}
.tools-preview .btn{background:#fff;color:var(--blue);border-color:#fff}
.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.module-card{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start}
.module-card span{display:grid;place-items:center;min-height:48px;border-radius:7px;background:var(--sky);color:var(--blue);font-weight:900;text-align:center}
.module-card p{margin:0;color:var(--muted)}
.module-card small{display:block;margin-top:8px;color:var(--muted)}
.publication-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.publication-card{display:flex;flex-direction:column;min-height:250px}
.publication-card small{width:max-content;max-width:100%;margin-bottom:12px;padding:5px 9px;border-radius:999px;background:var(--sky);color:var(--blue);font-weight:900}
.publication-card p{color:var(--muted);flex:1}
.publication-card .ghost{align-self:flex-start}
.materials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.material-card{display:flex;flex-direction:column;min-height:260px;border-top:4px solid #22a06b}
.material-card small{margin-bottom:12px;color:var(--blue2);font-size:12px;font-weight:900;text-transform:uppercase}
.material-card p{color:var(--muted);flex:1}
.material-card .ghost{align-self:flex-start}
.material-body{max-width:900px}
.material-body ul{padding-left:20px}
.material-body li{margin:8px 0}
.book-list{margin:32px 0}
.book-section{margin:10px 0;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(11,58,117,.05);overflow:hidden}
.book-section summary{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:center;padding:16px 18px;cursor:pointer}
.book-section summary span{color:var(--blue2);font-size:12px;font-weight:900;text-transform:uppercase}
.book-section summary b{font-size:18px}
.book-section article{padding:0 22px 22px;color:#243246}
.book-section article h3{margin-top:22px;color:var(--blue)}
.book-section article p{margin:10px 0}
.book-bullet{padding-left:16px;border-left:3px solid var(--sky)}
.publication-body{max-width:900px}
.publication-body ul{padding-left:20px}
.publication-body li{margin:8px 0}
.media-band{display:grid;grid-template-columns:420px 1fr;gap:24px;align-items:center;margin:40px 0;padding:22px;background:#fff;border:1px solid var(--line);border-radius:8px}
.media-band img{height:340px;width:100%;object-fit:cover;border-radius:7px}
.media-band.refined{padding:0;overflow:hidden}
.media-band.refined>div{padding:28px}
.media-band.refined img{height:420px;border-radius:0}
.request-panel{display:grid;grid-template-columns:340px 1fr;gap:24px;margin-top:40px}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form textarea,.form .check,.form button{grid-column:1/-1}
.form input,.form textarea,.form select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:7px;padding:10px 12px;font:inherit;background:#fff}
.form textarea{min-height:110px}
.check,.muted{color:var(--muted)}
.auth,.result{max-width:720px;margin:40px auto}
.dashboard{display:grid;grid-template-columns:1fr 320px;gap:24px}
.dash-actions{display:grid;gap:10px;align-content:start}
.progress{height:14px;background:var(--sky);border-radius:99px;overflow:hidden;margin:18px 0 8px}
.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--ok))}
.lesson-row{display:grid;grid-template-columns:44px 1fr;gap:8px;margin:10px 0;padding:14px;background:#fff;border:1px solid var(--line);border-radius:8px}
.lesson-row span{display:grid;place-items:center;background:var(--sky);border-radius:6px;color:var(--blue);font-weight:900}
.lesson-row.done span{background:#e9f8f1;color:var(--ok)}
.lesson-row small{grid-column:2;color:var(--muted)}
.lesson-head{max-width:900px}
.lesson{margin:16px 0}
.lesson h2{font-size:24px}
.source-note{border-left:4px solid var(--blue2);padding-left:16px}
.test{display:grid;gap:14px}
.test fieldset{border:1px solid var(--line)}
.test label{display:block;margin:8px 0}
.test small{color:var(--muted)}
.glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.scheme{margin:0;background:#061f3f;border:1px solid #24496f;border-radius:8px;padding:16px;color:#dceeff}
.scheme svg{width:100%;height:auto}
.scheme rect{fill:#0d315e;stroke:#7bc4ff;stroke-width:2}
.scheme text{fill:#eaf5ff;font-size:18px;text-anchor:middle;font-weight:800}
.scheme .line{fill:none;stroke:#8bd3ff;stroke-width:5;marker-end:url(#arrow)}
.scheme .pulse{fill:none;stroke:#4bd3ff;stroke-width:3;stroke-dasharray:8 9}
.scheme figcaption{margin-top:10px;color:#bed2e8;font-size:14px}
.skill-grid,.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.skill-card,.tool,.map-module{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px;box-shadow:0 8px 24px rgba(11,58,117,.07)}
.skill-card b{display:grid;place-items:center;width:42px;height:42px;border-radius:7px;background:var(--sky);color:var(--blue)}
.skill-card p{font-weight:800}
.course-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;position:relative}
.map-module{border-top:4px solid var(--blue2)}
.map-module span{color:var(--blue2);font-size:12px;font-weight:900;text-transform:uppercase}
.map-module ul{margin:12px 0 0;padding-left:18px;color:var(--muted)}
.scales{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:40px 0}
.scales>div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px;box-shadow:0 8px 24px rgba(11,58,117,.07)}
.scale{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border-radius:8px;border:1px solid var(--line)}
.scale span{min-height:64px;display:grid;place-items:center;padding:10px;text-align:center;font-weight:800;background:linear-gradient(90deg,#f8fbff,#dff2ff)}
.scale.leak span{background:linear-gradient(90deg,#eefaf6,#eaf5ff)}
.tool{display:grid;gap:10px;align-content:start}
.tool label{display:grid;gap:6px;color:var(--muted);font-weight:700}
.tool input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:7px;padding:9px 10px;font:inherit}
.tool output{font-weight:900;color:var(--blue)}
.checklist label{display:block;color:var(--ink)}
.manager-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}
.manager-grid article{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px;box-shadow:0 8px 24px rgba(11,58,117,.07)}
.manager-grid b{display:block;color:var(--blue);font-size:34px;line-height:1}
.manager-grid p{color:var(--muted)}
.two-col .card img{border-radius:8px;margin-bottom:16px}
table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}
td,th{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{background:var(--sky);color:var(--blue)}
td small{display:block;color:var(--muted);max-width:460px;word-break:break-word}
@media(max-width:860px){
  .topbar{align-items:center;flex-direction:row;overflow-x:auto}
  nav{flex-wrap:nowrap;overflow-x:auto}
  .brand{min-width:104px}
  .hero,.home-hero,.grid,.flow,.two-col,.media-band,.request-panel,.dashboard,.glossary,.module-grid,.publication-grid,.materials-grid,.stats,.skill-grid,.tool-grid,.course-map,.scales,.photo-story,.platform-grid,.course-photos,.manager-grid,.normative-band{grid-template-columns:1fr}
  .home-hero{margin:-22px -14px 20px;min-height:680px;padding:64px 18px 28px}
  .hero-panel{align-self:end}
  .photo-story img,.photo-story img:nth-child(2){height:240px;margin-top:0}
  .tools-preview{display:grid}
  .hero-strong{min-height:auto}
  .hero img{height:300px}
  .form{grid-template-columns:1fr}
  main{padding:22px 14px}
  h1{font-size:34px}
  .book-section summary{grid-template-columns:1fr}
  .stats{margin-top:16px}
}
