:root{
  --purple:#3D3672;--teal:#1B7895;--mint:#75E6DA;--ltblue:#DBEAFF;
  --ink:#171531;--body:#4B4A63;--faint:#8E8DA6;--bg:#F7F8FC;--line:#E7E8F2;
  --grad:linear-gradient(135deg,#3D3672 0%,#1B7895 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--body);background:#FFF;line-height:1.75;font-size:16px;-webkit-font-smoothing:antialiased}
.wrap{max-width:820px;margin:0 auto;padding:0 28px}
h1,h2,h3{font-family:"Sora","Inter",sans-serif;color:var(--ink);line-height:1.25;letter-spacing:-.01em}

nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
nav .inner{max-width:1160px;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:26px;height:78px}
nav img{height:58px;width:auto;display:block}
nav .sp{flex:1}
nav a.nl{font-size:14.5px;font-weight:600;color:var(--body);text-decoration:none}
nav a.nl:hover{color:var(--purple)}

.lead{background:var(--grad);color:#FFF;padding:56px 0 48px}
.lead .wrap{max-width:820px}
.lead h1{font-size:clamp(29px,4vw,40px);font-weight:800;color:#FFF}
.lead .upd{font-size:14px;color:#C6CFF5;margin-top:12px}
.lead .who{font-size:15px;color:#DBEAFF;margin-top:16px;line-height:1.7}
.lead .who b{color:#FFF}

main{padding:52px 0 80px}
h2{font-size:21px;font-weight:700;margin:40px 0 14px;padding-top:6px}
h2:first-of-type{margin-top:0}
h3{font-size:17px;font-weight:600;margin:26px 0 10px;color:var(--ink)}
p{margin-bottom:16px}
ul,ol{margin:0 0 18px 22px}
li{margin-bottom:9px}
a{color:var(--teal)}
strong,b{color:var(--ink);font-weight:600}
.toc{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:24px 28px;margin-bottom:40px}
.toc h2{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);margin:0 0 12px}
.toc ol{margin:0 0 0 20px;font-size:14.5px}
.toc li{margin-bottom:6px}
.toc a{text-decoration:none}
.toc a:hover{text-decoration:underline}

.exact{background:var(--bg);border-left:3px solid var(--mint);border-radius:0 12px 12px 0;padding:18px 22px;margin:0 0 18px;color:var(--ink)}
.exact p:last-child{margin-bottom:0}
.callout{background:#FFF9E9;border:1px solid #FBE3A2;border-radius:14px;padding:20px 24px;margin:24px 0}
.callout .lbl{font-family:"Sora";font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#A16207;display:block;margin-bottom:8px}
.callout p:last-child{margin-bottom:0}
.disc{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:22px 26px;margin-top:48px;font-size:14px;color:var(--faint);line-height:1.7}
.disc b{color:var(--body)}
.ph{background:#FFF4DE;color:#A16207;border-radius:4px;padding:1px 6px;font-weight:600;font-size:.94em}
table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:14.5px}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:600;color:var(--ink);background:var(--bg)}

footer{background:#0E0C22;color:#7E88B8;padding:40px 0;font-size:13.5px}
footer .inner{max-width:1160px;margin:0 auto;padding:0 28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
footer a{color:#B9C2E8;text-decoration:none;margin-left:24px;font-weight:500}
footer a:hover{color:var(--mint)}
@media(max-width:640px){
  nav a.nl{display:none}
  .lead{padding:40px 0 34px}
  main{padding:36px 0 60px}
  footer .inner{flex-direction:column;align-items:flex-start}
  footer a{margin:0 20px 0 0}
}
