:root{--brand:#0b2a4a;--accent:#4fb3ff;--accent-2:#125eab;--bg:#f7f9fc;--text:#0e1726;--muted:#6b7280;--card:#ffffff;--ring:#e5eef9}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.65;font-size:16px}
a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid #94c3ff;outline-offset:2px;border-radius:6px}
img{max-width:100%;height:auto;display:block}.header{position:sticky;top:0;z-index:100;background:var(--card);border-bottom:1px solid var(--ring)}
.container{max-width:960px;margin:0 auto;padding:0 24px}.topbar{display:flex;align-items:center;gap:16px;justify-content:space-between;padding:16px 0;flex-wrap:wrap}
.brand img{width:280px;height:auto}.nav a{margin-left:16px;font-weight:600}.hero{background:linear-gradient(180deg,#eaf4ff,transparent);padding:28px 0 16px}
.hero h1{font-size:clamp(28px,4vw,42px);margin:0 0 8px}.hero p{margin:0;color:var(--muted)}.section{padding:24px 0}.section h2{font-size:clamp(20px,3vw,28px);margin:0 0 12px}
.prose h1,.prose h2,.prose h3{line-height:1.2}.prose p{margin:0 0 1em}.prose ul{padding-left:1.2em}
.list-articles{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.card{grid-column:span 12;background:var(--card);border:1px solid var(--ring);border-radius:14px;padding:16px}
.card h3{margin:0 0 6px}.card p{margin:0;color:var(--muted)}.meta{font-size:12px;color:#6b7280;margin-bottom:8px}
.footer{background:#0b2a4a;color:#c8e6ff;margin-top:32px}.footer a{color:#fff}.footer .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:24px 0}
.footer small{display:block;padding:16px 0;border-top:1px solid rgba(255,255,255,0.15)}@media (max-width:820px){.brand img{width:200px}.footer .cols{grid-template-columns:repeat(2,1fr)}}
.prose blockquote{border-left:3px solid var(--ring);margin:0;padding:8px 12px;color:#4b5563;background:#f9fbff}.notice{padding:12px 14px;border-radius:10px;background:#eef7ff;border:1px solid var(--ring)}
.badge{display:inline-block;padding:4px 8px;font-size:12px;border-radius:999px;background:#eef5ff;border:1px solid var(--ring);color:#0b2a4a;margin-right:6px}

.nav{display:flex;flex-wrap:wrap;align-items:center}
.nav a{margin:6px 12px 0 0}

/* Comfortable reading margins on phones */
@media (max-width: 820px){
  .container{padding:0 22px}
  .brand img{width:260px}
}
@media (max-width: 480px){
  .container{padding:0 20px}
  main.container, .section, .prose, .card{padding-left:0; padding-right:0}
  .card{padding:18px}
  .hero{padding:32px 0 16px}
}
