
:root{
  --bg:#ffffff;
  --text:#1a1a1a;
  --muted:#666;
  --brand:#0f766e;
  --brand-2:#059669;
  --border:#e5e7eb;
  --card:#f9fafb;
  --link:#0d6efd;
  --maxw:960px;
  --radius:16px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:var(--maxw);margin:0 auto;padding:24px}
.header{position:sticky;top:0;background:#fffefcaa;backdrop-filter:saturate(1.2) blur(6px);border-bottom:1px solid var(--border);z-index:10}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;max-width:var(--maxw);margin:0 auto}
.logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px}
.logo img{height:28px;width:auto}
nav ul{display:flex;gap:14px;list-style:none;padding:0;margin:0;flex-wrap:wrap}
nav a{padding:8px 12px;border-radius:12px}
nav a.active, nav a:hover{background:var(--card)}
.hero{padding:56px 24px;border-bottom:1px solid var(--border)}
.hero h1{font-size:clamp(28px,4.5vw,40px);margin:0 0 8px}
.hero p.lead{font-size:clamp(16px,2.8vw,20px);color:var(--muted);margin:0}
.grid{display:grid;gap:18px;grid-template-columns:repeat(12,1fr)}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px}
.card h2{margin-top:0}
.footer{border-top:1px solid var(--border);margin-top:40px;background:#fff}
.footer-inner{max-width:var(--maxw);margin:0 auto;padding:24px;color:var(--muted);font-size:14px}
.badges{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.badges img{height:40px;width:auto;filter:grayscale(0)}
.notice{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px dashed var(--border);border-radius:14px;background:#fff}
.lang-list a{display:block;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:#fff}
figure{margin:0}
figure > img{max-width:100%;height:auto;border-radius:12px}
blockquote{border-left:4px solid var(--brand-2);padding-left:12px;margin:0 0 12px;color:#0f3d3a;background:#ecfdf5;border-radius:8px}
.kv{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}
.small{font-size:13px;color:var(--muted)}
hr{border:none;border-top:1px solid var(--border);margin:24px 0}
@media (max-width:640px){
  nav ul{gap:8px}
  .header-inner{padding:12px}
}
