:root{color-scheme:light;--blue:#1a4b84;--deep:#102f58;--cyan:#08a6bf;--ink:#172439;--muted:#4b5d70;--line:#d8e5ed;--paper:#f6fafc;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Nunito,system-ui,sans-serif}
a{color:var(--blue);text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px;border-radius:3px}
.skip{position:absolute;left:16px;top:-80px;background:var(--white);padding:10px 14px;z-index:5}.skip:focus{top:12px}
.shell{width:min(1120px,calc(100% - 40px));margin:auto}
.top{background:var(--deep);color:var(--white)}
.top .shell{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:76px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--white);font-family:Outfit,system-ui,sans-serif;font-weight:800;font-size:21px;text-decoration:none;letter-spacing:-.03em}
.brand img{width:38px;height:38px;object-fit:contain}
.top nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.top nav a{color:var(--white);font-size:14px;font-weight:800;text-decoration:none}.top nav a:hover{text-decoration:underline}
.hero{background:linear-gradient(145deg,#173e70,#102f58 65%);color:var(--white);padding:58px 0 64px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.14);border-radius:50%;right:-60px;top:-140px;box-shadow:0 0 0 75px rgba(255,255,255,.035),0 0 0 150px rgba(255,255,255,.025);pointer-events:none}
.crumb{font-size:13px;color:#c4e4f1;margin:0 0 19px}.crumb a{color:#c4e4f1}
.eyebrow{color:#77d5e7;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.13em;margin:0 0 12px}
h1,h2,h3{font-family:Outfit,system-ui,sans-serif;line-height:1.14;letter-spacing:-.025em}
h1{font-size:clamp(2.3rem,5vw,4.15rem);max-width:900px;margin:0 0 20px}
.lead{font-size:clamp(1.08rem,2vw,1.3rem);max-width:730px;margin:0;color:#e3edf6}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:58px;align-items:start;padding:54px 0 76px}
article{min-width:0}.intro{font-size:1.1rem;margin-top:0}
h2{font-size:clamp(1.55rem,2.8vw,2rem);margin:42px 0 15px;color:var(--deep)}
h3{font-size:1.2rem;margin:25px 0 8px;color:var(--deep)}
p{margin:0 0 16px}ol,ul{padding-left:23px;margin:0 0 18px}li{padding-left:3px;margin:0 0 12px}
.steps{counter-reset:step;list-style:none;padding:0;margin:24px 0}.steps li{position:relative;padding:0 0 0 55px;min-height:42px;margin:0 0 22px}.steps li:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;background:var(--blue);color:#fff;width:36px;height:36px;border-radius:11px;text-align:center;line-height:36px;font-weight:900}
.note{border-left:4px solid var(--cyan);background:#e9f6fa;border-radius:0 13px 13px 0;padding:17px 20px;margin:29px 0}.note p:last-child{margin-bottom:0}
.action{background:#e9f2fb;border:1px solid #cbddec;border-radius:19px;padding:25px;margin:38px 0}.action h2{margin:0 0 9px;font-size:1.45rem}.action p{margin-bottom:18px}.buttons{display:flex;flex-wrap:wrap;gap:10px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:10px 18px;border-radius:10px;background:var(--blue);color:white;text-decoration:none;font-weight:900}.button.alt{background:white;color:var(--blue);border:1px solid var(--line)}
aside{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:0 8px 28px rgba(16,47,88,.055)}aside h2{font-size:1.14rem;margin:0 0 15px}aside a{display:block;padding:11px 0;border-top:1px solid var(--line);font-weight:800;text-decoration:none}aside a:hover{text-decoration:underline}aside .source{font-size:13px;color:var(--muted);margin:20px 0 0}
.source-list{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:45px}.source-list h2{font-size:1.15rem;margin:0 0 10px}.source-list li{margin-bottom:8px}
.footer{background:var(--deep);color:#dae8f3;padding:36px 0}.footer .shell{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px}.footer a{color:white}.footer p{margin:0;font-size:14px}
@media(max-width:800px){.layout{grid-template-columns:1fr;gap:20px;padding-top:37px}.top .shell{padding:16px 0;align-items:flex-start;flex-direction:column;gap:10px}.top nav{gap:8px 16px}.hero{padding:42px 0 48px}.hero:after{opacity:.4}aside{order:2}}
@media(max-width:500px){.shell{width:min(100% - 30px,1120px)}.top nav a{font-size:13px}h1{font-size:2.45rem}.buttons{display:grid}.button{width:100%}}
