
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font-family:'Plus Jakarta Sans',system-ui,sans-serif;background:#fdfefe;-webkit-font-smoothing:antialiased;color:#272727}
a{color:#0a387c;text-decoration:none}
a:hover{color:#0071e3}
h1,h2,h3,h4,p{margin:0}
@keyframes emFadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes emPulse{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes emShimmer{0%{background-position:200% 50%}100%{background-position:-200% 50%}}
@keyframes emDrift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(34px,-26px) scale(1.14)}}
.hv0:hover{border-bottom:2px solid #ffb000 !important;color:#0a387c !important}
.hv1:hover{transform:translateY(-2px) scale(1.03) !important;box-shadow:0 14px 28px -10px rgba(255,176,0,.8) !important}
.hv7:hover{transform:translateY(-4px) !important;box-shadow:0 22px 42px -20px rgba(10,56,124,.5) !important;border-color:#ffb000 !important}
.hv16:hover{background:#ffb000 !important;color:#0a1f3d !important;border-color:#ffb000 !important}
.hv17:hover{background:#5dcf8b !important;color:#0a1f3d !important}
.hv19:hover{color:#ffb000 !important}
.rvl{transition:opacity .6s ease,transform .6s ease}.rvl.armed{opacity:0;transform:translateY(24px)}
.rvl.on{opacity:1;transform:none}
.gridtex{background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:44px 44px}
.modchip{display:inline-flex;align-items:center;gap:6px;background:#f7fafd;border:1px solid rgba(44,90,160,.16);border-radius:99px;padding:7px 13px;font-weight:700;font-size:12px;color:#0a387c}
.tcard{background:#fff;border:1px solid rgba(44,90,160,.16);border-radius:13px;padding:15px 16px;box-shadow:0 10px 24px -18px rgba(10,56,124,.3);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.tcard b{font-weight:800;font-size:13.5px;color:#12233f;display:block}
.tcard p{font-size:12px;color:#5a6675;line-height:1.5;margin-top:5px}
.grp{background:#fff;border:1px solid rgba(44,90,160,.16);border-radius:13px;padding:15px 16px;box-shadow:0 10px 24px -18px rgba(10,56,124,.3);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.grp:hover{transform:translateY(-4px);box-shadow:0 22px 42px -20px rgba(10,56,124,.5);border-color:#ffb000}
.grp h4{font-weight:800;font-size:13.5px;color:#12233f}
.grp .chips{display:block;margin-top:6px;font-size:12px;color:#5a6675;line-height:1.65}
.grp .chips span{font-weight:600;color:#5a6675}
.grp .chips span:not(:last-child)::after{content:" · ";color:#c3ccd8;font-weight:800}
.sec{scroll-margin-top:84px}
.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#2c5aa0;font-weight:800}
.toc a{display:flex;gap:9px;align-items:center;padding:7px 11px;border-radius:9px;color:#3d4654;font-size:13px;font-weight:600;transition:background .2s ease,color .2s ease}
.toc a:hover{background:#eef4fd;color:#0a387c}
.toc a.active{background:#0a387c;color:#fff}
.toc a.active .n{color:rgba(255,255,255,.6)}
.toc .n{color:#93a0b4;font-weight:800;width:16px;flex-shrink:0}
.toclabel{font-size:10.5px;font-weight:800;color:#93a0b4;text-transform:uppercase;letter-spacing:.1em;margin:16px 0 8px}
.toclabel:first-child{margin-top:0}
