/* ── Subalans legal pages — shared stylesheet ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:#fff;color:#1A1A2E;-webkit-font-smoothing:antialiased}

:root{
  --navy:#0A1628;
  --navy-light:#1B2A4A;
  --blue:#2563EB;
  --blue-dark:#1E40AF;
  --blue-subtle:#EFF6FF;
  --gray-50:#F8FAFC;
  --gray-100:#F1F5F9;
  --gray-200:#E2E8F0;
  --gray-300:#CBD5E1;
  --gray-400:#94A3B8;
  --gray-500:#64748B;
  --gray-600:#475569;
  --gray-700:#334155;
  --gray-900:#0F172A;
  --white:#fff;
}

.container{max-width:880px;margin:0 auto;padding:0 32px}

/* ── Nav ── */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--gray-200)}
.nav .container{max-width:1140px;display:flex;align-items:center;justify-content:space-between;height:64px}
.nav-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy)}
.nav-brand span{font-weight:700;font-size:1.05rem;letter-spacing:-.02em}
.nav-brand small{font-weight:400;color:var(--gray-500);font-size:.8rem;margin-left:2px}
.nav-links{display:flex;gap:32px;list-style:none}
.nav-links a{color:var(--gray-600);text-decoration:none;font-size:.875rem;font-weight:500;transition:color .2s}
.nav-links a:hover{color:var(--navy)}
.nav-cta{background:var(--navy);color:#fff;border:none;padding:9px 22px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;text-decoration:none;transition:background .2s}
.nav-cta:hover{background:var(--navy-light)}

/* ── Legal hero ── */
.legal-hero{padding:140px 0 56px;border-bottom:1px solid var(--gray-200);background:var(--gray-50)}
.legal-hero .container{text-align:center}
.legal-breadcrumb{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;color:var(--gray-500);margin-bottom:18px}
.legal-breadcrumb a{color:var(--gray-500);text-decoration:none}
.legal-breadcrumb a:hover{color:var(--blue)}
.legal-breadcrumb span{color:var(--gray-300)}
.legal-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
.legal-hero h1{font-size:clamp(2rem,4vw,2.75rem);font-weight:800;letter-spacing:-.035em;color:var(--navy);margin-bottom:14px;line-height:1.15}
.legal-hero-desc{font-size:1rem;color:var(--gray-500);max-width:620px;margin:0 auto;line-height:1.6}
.legal-meta{margin-top:28px;display:flex;gap:28px;justify-content:center;flex-wrap:wrap;font-size:.78rem;color:var(--gray-500)}
.legal-meta span strong{color:var(--navy);font-weight:600}

/* ── Legal body ── */
.legal-body{padding:72px 0 96px}
.legal-toc{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:14px;padding:26px 30px;margin-bottom:56px}
.legal-toc h4{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-500);margin-bottom:14px}
.legal-toc ol{list-style:decimal;margin-left:22px;columns:2;column-gap:32px}
.legal-toc li{font-size:.88rem;margin-bottom:8px;line-height:1.5}
.legal-toc a{color:var(--navy);text-decoration:none;font-weight:500}
.legal-toc a:hover{color:var(--blue)}

.legal-body h2{font-size:1.5rem;font-weight:700;color:var(--navy);margin:48px 0 16px;letter-spacing:-.02em;scroll-margin-top:88px}
.legal-body h2:first-of-type{margin-top:0}
.legal-body h3{font-size:1.05rem;font-weight:700;color:var(--navy);margin:28px 0 10px}
.legal-body p{font-size:.95rem;color:var(--gray-700);line-height:1.8;margin-bottom:16px}
.legal-body ul,.legal-body ol{margin:0 0 16px 24px;color:var(--gray-700)}
.legal-body li{font-size:.95rem;line-height:1.8;margin-bottom:8px}
.legal-body strong{color:var(--navy);font-weight:600}
.legal-body a{color:var(--blue);text-decoration:none}
.legal-body a:hover{text-decoration:underline}

.legal-callout{background:var(--blue-subtle);border-left:3px solid var(--blue);padding:20px 24px;border-radius:8px;margin:28px 0;font-size:.92rem;color:var(--navy);line-height:1.7}
.legal-callout strong{color:var(--navy)}

.legal-contact{margin-top:56px;padding:32px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:14px;text-align:center}
.legal-contact h3{font-size:1.1rem;font-weight:700;color:var(--navy);margin-bottom:10px}
.legal-contact p{font-size:.92rem;color:var(--gray-600);margin-bottom:0;line-height:1.65}
.legal-contact a{color:var(--blue);font-weight:600;text-decoration:none}
.legal-contact a:hover{text-decoration:underline}

/* ── Footer ── */
.footer{padding:64px 0 32px;border-top:1px solid var(--gray-200);background:var(--white)}
.footer>.container{max-width:1140px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.footer-col h4{font-size:.75rem;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.footer-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.footer-col a{color:var(--gray-500);text-decoration:none;font-size:.85rem;transition:color .2s}
.footer-col a:hover{color:var(--blue)}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.footer-brand span{font-weight:700;font-size:1.05rem;color:var(--navy);letter-spacing:-.02em}
.footer-tagline{font-size:.85rem;color:var(--gray-500);line-height:1.6;max-width:280px}
.footer-bottom{padding-top:24px;border-top:1px solid var(--gray-200);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-bottom p{font-size:.78rem;color:var(--gray-400);margin:0}
.footer-bottom-links{display:flex;gap:20px}
.footer-bottom-links a{font-size:.78rem;color:var(--gray-400);text-decoration:none;transition:color .2s}
.footer-bottom-links a:hover{color:var(--gray-600)}

/* ── Responsive ── */
@media (max-width:860px){
  .nav-links{display:none}
  .container{padding:0 24px}
  .legal-hero{padding:100px 0 40px}
  .legal-hero h1{font-size:1.75rem}
  .legal-body{padding:48px 0 72px}
  .legal-body h2{font-size:1.25rem}
  .legal-toc{padding:20px 22px;margin-bottom:40px}
  .legal-toc ol{columns:1}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .footer-bottom{flex-direction:column;gap:10px;text-align:center}
}
