@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-latin-400.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-latin-500.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-latin-600.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/inter-latin-700.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/inter-latin-800.woff2') format('woff2')}

:root,
[data-theme="dark"]{
  --bg:#0a1220; --bg-2:#0e1828; --surface:#131e30; --surface-2:#1a2640;
  --line:#1f2d44; --text:#e6edf6; --muted:#8b9bb4;
  --accent:#5BA3D9; --accent-2:#7BB7E0; --accent-soft:rgba(91,163,217,.14);
  --nav-bg:rgba(10,18,32,.7); --on-accent:#ffffff;
  --grad: linear-gradient(135deg,#2D5A87 0%, #4A90C2 50%, #7BB7E0 100%);
  --maxw:920px;
}
[data-theme="light"]{
  --bg:#f6f9fc; --bg-2:#eef3f9; --surface:#ffffff; --surface-2:#f6f9fc;
  --line:#dde5ef; --text:#0f1c2e; --muted:#5b6b80;
  --accent:#2D5A87; --accent-2:#4A90C2; --accent-soft:rgba(45,90,135,.08);
  --nav-bg:rgba(246,249,252,.8); --on-accent:#ffffff;
  --grad: linear-gradient(135deg,#2D5A87 0%, #4A90C2 50%, #7BB7E0 100%);
}
*{box-sizing:border-box}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.skip-link{position:absolute;left:12px;top:12px;z-index:1000;padding:10px 16px;background:var(--surface);color:var(--text);border:1px solid var(--accent);border-radius:8px;font-weight:600;font-size:14px;text-decoration:none;transform:translateY(-200%);transition:transform .2s}
.skip-link:focus{transform:translateY(0);text-decoration:none}
html{scroll-behavior:smooth;scroll-padding-top:84px}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}

body::before{
  content:"";position:fixed;inset:-20% -10% auto -10%;height:60vh;z-index:-1;
  background:radial-gradient(60% 60% at 20% 10%, rgba(74,144,194,.22), transparent 70%),
             radial-gradient(50% 50% at 80% 20%, rgba(123,183,224,.18), transparent 70%);
  filter:blur(20px);
}
[data-theme="light"] body::before{opacity:.55}

header.nav{position:sticky;top:0;z-index:50;backdrop-filter:saturate(140%) blur(10px);background:var(--nav-bg);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:68px;max-width:1180px;margin:0 auto;padding:0 24px}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;color:var(--text);text-decoration:none}
.brand:hover{text-decoration:none}
.brand img{width:34px;height:34px;border-radius:9px;display:block;box-shadow:0 4px 14px rgba(45,90,135,.35)}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{color:var(--muted);font-size:14px;font-weight:500;text-decoration:none}
.nav-links a:hover{color:var(--text);text-decoration:none}
.theme-toggle{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer}
.theme-toggle:hover{border-color:var(--accent)}
.theme-toggle svg{width:16px;height:16px}
.theme-toggle .icon-sun{display:none}
.theme-toggle .icon-moon{display:block}
[data-theme="light"] .theme-toggle .icon-sun{display:block}
[data-theme="light"] .theme-toggle .icon-moon{display:none}

main.legal{padding:72px 0 48px}
.legal-header{margin-bottom:40px}
.kicker{font-size:13px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px}
.legal h1{font-size:clamp(32px,4vw,48px);margin:0 0 12px;font-weight:800;letter-spacing:-.02em;line-height:1.1;text-wrap:balance}
.legal-intro{color:var(--muted);font-size:17px;margin:0}

.legal-content h2{font-size:24px;margin:48px 0 14px;font-weight:700;color:var(--text);text-wrap:balance;padding-bottom:8px;border-bottom:1px solid var(--line)}
.legal-content h3{font-size:18px;margin:28px 0 8px;font-weight:600;color:var(--text)}
.legal-content h4{font-size:15px;margin:20px 0 6px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.legal-content p{margin:0 0 14px;color:var(--text);font-size:15.5px}
.legal-content ul{padding-left:22px;margin:0 0 14px;color:var(--text)}
.legal-content li{margin-bottom:8px;font-size:15.5px}
.legal-content strong{color:var(--text);font-weight:600}
.legal-content a{color:var(--accent);word-break:break-word}

footer{padding:48px 0 32px;border-top:1px solid var(--line);margin-top:64px}
.foot{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;color:var(--muted);font-size:13.5px;max-width:1180px;margin:0 auto;padding:0 24px}
.foot a{color:var(--muted)}
.foot a:hover{color:var(--text);text-decoration:none}
.foot-links{display:flex;align-items:center;gap:24px}
.foot-social{display:flex;align-items:center;gap:14px;margin-left:8px;padding-left:20px;border-left:1px solid var(--line)}
.foot-social a{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;color:var(--muted)}
.foot-social a:hover{color:var(--text);background:var(--surface)}

/* MOBILE */
@media (max-width:720px){
  .nav-inner{height:60px}
  .nav-links{gap:14px}
  .nav-links a{display:none}
  .brand span{font-size:15px}
  main.legal{padding:48px 0 32px}
  .legal h1{font-size:32px}
  .legal-content h2{font-size:20px;margin:36px 0 12px}
  .legal-content h3{font-size:16px;margin:22px 0 6px}
  .legal-content h4{font-size:14px}
  .legal-content p, .legal-content li{font-size:14.5px}
  .foot{justify-content:flex-start;gap:14px}
  .foot-links{gap:16px}
  .foot-social{margin-left:0;padding-left:14px}
}

/* PRINT */
@media print{
  :root, [data-theme="dark"], [data-theme="light"]{
    --bg:#ffffff;--bg-2:#ffffff;--surface:#ffffff;
    --line:#cccccc;--text:#000000;--muted:#444444;
    --accent:#2D5A87;--nav-bg:#ffffff;
  }
  html,body{background:#fff !important;color:#000 !important;font-size:11pt;line-height:1.45}
  body::before{display:none}
  header.nav, footer, .theme-toggle{display:none !important}
  main.legal{padding:0}
  .legal-header{margin-bottom:20px}
  .legal h1{font-size:24pt;color:#000 !important}
  .legal-content h2{font-size:14pt;margin:18pt 0 6pt;page-break-after:avoid;border-bottom:1px solid #999;color:#000 !important}
  .legal-content h3{font-size:12pt;margin:12pt 0 4pt;page-break-after:avoid;color:#000 !important}
  .legal-content h4{font-size:10pt;color:#333 !important}
  .legal-content p, .legal-content li{font-size:10.5pt;color:#000 !important;orphans:3;widows:3}
  .legal-content a{color:#2D5A87 !important;text-decoration:underline;word-break:break-all}
  .kicker{color:#666 !important}
  @page{margin:18mm 16mm}
}
