
:root {
 --ink:#102a43; --muted:#486581; --accent:#087f8c;
 --bg:#f4f7fa; --line:#d9e2ec; --paper:#fff; --soft:#e9f6f5;
}
* { box-sizing:border-box }
html { scroll-behavior:smooth }
body {
 margin:0; color:var(--ink); background:var(--bg);
 font:17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
a { color:#075f72; text-underline-offset:3px; overflow-wrap:anywhere }
a:hover { color:#023d4a }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible {
 outline:3px solid #b45309; outline-offset:4px;
}
.container { width:min(1160px,calc(100% - 40px)); margin-inline:auto }
.top-note { background:var(--ink); color:#fff; padding:10px 0; font-size:13px }
.site-header { background:var(--paper); border-bottom:1px solid var(--line) }
.header-top { display:flex; align-items:center; justify-content:space-between;
 gap:24px; padding:24px 0; flex-wrap:wrap }
.brand { display:flex; align-items:center; gap:12px; color:var(--ink);
 font-size:19px; font-weight:800; text-decoration:none }
.brand-icon { display:grid; place-items:center; width:44px; height:44px;
 border-radius:12px; background:var(--ink); color:#fff; flex-shrink:0 }
.languages { display:flex; flex-wrap:wrap; gap:7px; font-size:13px }
.languages a { padding:4px 8px; border:1px solid var(--line);
 border-radius:6px; text-decoration:none }
.languages a[aria-current] { color:#fff; background:var(--ink) }
.main-nav { display:flex; flex-wrap:wrap; gap:6px 25px; padding:0 0 16px }
.main-nav a { text-decoration:none; color:var(--muted); font-weight:650 }
.main-nav a[aria-current] { color:var(--ink); text-decoration:underline }
main.container { padding-bottom:64px }
.hero { padding:65px 0 40px; max-width:900px }
.eyebrow { color:var(--accent); font-size:13px; font-weight:800;
 letter-spacing:.1em; text-transform:uppercase }
h1,h2,h3 { line-height:1.2; overflow-wrap:anywhere }
h1 { font-size:clamp(32px,5.5vw,60px); letter-spacing:-.035em; margin:14px 0 22px }
h2 { font-size:clamp(23px,3vw,31px); margin:0 0 15px; letter-spacing:-.02em }
h3 { font-size:21px; margin:0 0 13px }
p { margin:0 0 18px }
.lead { font-size:21px; color:var(--muted); max-width:790px }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin:27px 0 0 }
.button,button {
 display:inline-block; border:1px solid var(--ink); border-radius:8px;
 background:var(--ink); color:#fff; padding:12px 19px;
 text-decoration:none; font:inherit; font-weight:700; cursor:pointer;
}
.button:hover,button:hover { background:#234966; color:#fff }
.button.secondary { background:#fff; color:var(--ink) }
.button.secondary:hover { background:#e9f1f7 }
.section { margin:35px 0 }
.grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px }
.card { display:flex; flex-direction:column; background:var(--paper);
 padding:26px; border:1px solid var(--line); border-radius:12px }
.card h3 a { text-decoration:none; color:var(--ink) }
.card p { color:var(--muted); font-size:15px; flex:1 }
.read { font-size:14px; font-weight:750 }
.disclosure { background:var(--soft); border:1px solid #a9d9d3;
 border-radius:12px; padding:28px; margin:35px 0 }
.disclosure h2 { font-size:22px }
.disclosure .small { margin:15px 0 0 }
.risk-box { background:#fff8e7; border-left:4px solid #a8690b;
 padding:20px 24px; border-radius:5px; margin:25px 0 }
.breadcrumb { color:var(--muted); font-size:14px; padding:25px 0 }
.article { max-width:830px; margin:0 auto }
.article-head { padding:17px 0 15px }
.article-head h1 { font-size:clamp(31px,4vw,47px) }
.article section { margin:32px 0 }
.article section h2 { font-size:25px }
.article p { overflow-wrap:anywhere }
.small,.meta { font-size:14px; color:var(--muted) }
.sources { border-top:1px solid var(--line); padding-top:25px; margin-top:35px }
.sources ul { padding-left:20px }
.related { border-top:1px solid var(--line); margin-top:40px; padding-top:30px }
.contact-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);
 gap:25px; align-items:start }
.panel { background:#fff; border:1px solid var(--line); border-radius:12px; padding:28px }
form { position:relative }
label { display:block; font-weight:650; margin-bottom:17px }
input,textarea {
 display:block; width:100%; margin-top:7px; padding:12px 13px;
 border:1px solid #9fb3c8; border-radius:6px; background:#fff;
 font:inherit; color:var(--ink);
}
textarea { min-height:190px; resize:vertical }
.hp { position:absolute; left:-10000px; top:auto; width:1px;
 height:1px; overflow:hidden }
.site-footer { background:#e8eef4; border-top:1px solid var(--line); padding:38px 0 20px }
.footer-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:35px }
.site-footer h2 { font-size:17px }
.site-footer p,.site-footer address { font-size:14px }
.footer-links { display:flex; flex-direction:column; gap:7px; font-size:14px }
address { font-style:normal; overflow-wrap:anywhere }
.copyright { border-top:1px solid #c6d2df; margin-top:28px; padding-top:20px;
 font-size:12px; color:var(--muted) }
.skip { position:absolute; left:12px; top:-100px; background:#fff; padding:10px; z-index:99 }
.skip:focus { top:10px }
.language-hub { max-width:850px; margin:70px auto; padding:30px }
.language-hub .grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
@media(max-width:850px) {
 .grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
 .footer-grid { grid-template-columns:1fr 1fr }
 .footer-grid section:first-child { grid-column:1/-1 }
 .contact-grid { grid-template-columns:1fr }
}
@media(max-width:540px) {
 .container { width:calc(100% - 28px) }
 .hero { padding-top:38px }
 .grid,.footer-grid,.language-hub .grid { grid-template-columns:1fr }
 .footer-grid section:first-child { grid-column:auto }
 .lead { font-size:18px }
 .card,.panel,.disclosure { padding:21px }
 .brand { font-size:16px }
 .languages { gap:5px }
 .main-nav { gap:8px 18px; font-size:15px }
 .language-hub { margin:20px auto; padding:15px }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto } }
