/* AIEGIS unified theme for all legal/policy pages
   Matches the home page: cream bg, ink ink, Josefin Sans display, Inter body. */

:root{
  --bg:#f5f2ed;
  --bg2:#eeeae4;
  --border:#ddd9d2;
  --ink:#0f1419;
  --muted:#6b7280;
  --dim:#9ca3af;
}

*{box-sizing:border-box;margin:0;padding:0}

html,body{background:var(--bg);color:var(--ink)}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{opacity:0.7}
::selection{background:var(--ink);color:var(--bg)}

/* ── shared NAV ── */
.legal-nav{
  position:sticky;top:0;z-index:100;
  background:rgba(245,242,237,0.92);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border);
  padding:18px 32px;
  display:flex;align-items:center;justify-content:space-between;
}
.legal-nav .nav-logo{
  font-family:'Josefin Sans',sans-serif;
  font-weight:700;
  font-size:1rem;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--ink);
  text-decoration:none;
}
.legal-nav .nav-links{display:flex;gap:24px;flex-wrap:wrap}
.legal-nav .nav-links a{
  font-family:'Inter',sans-serif;
  font-size:0.72rem;
  font-weight:500;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--muted);
  text-decoration:none;
}
.legal-nav .nav-links a:hover{color:var(--ink);opacity:1}

/* ── main article ── */
.legal-wrap{
  max-width:780px;
  margin:0 auto;
  padding:64px 32px 80px;
}
.legal-wrap h1{
  font-family:'Josefin Sans',sans-serif;
  font-size:clamp(28px,4vw,42px);
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  line-height:1.15;
  margin-bottom:8px;
  color:var(--ink);
}
.legal-wrap h2{
  font-family:'Josefin Sans',sans-serif;
  font-size:1.25rem;
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  margin-top:40px;
  margin-bottom:14px;
  padding-bottom:8px;
  border-bottom:1px solid var(--border);
  color:var(--ink);
}
.legal-wrap h3{
  font-family:'Josefin Sans',sans-serif;
  font-size:1rem;
  font-weight:700;
  letter-spacing:0.06em;
  text-transform:uppercase;
  margin-top:28px;
  margin-bottom:10px;
  color:var(--ink);
}
.legal-wrap p,
.legal-wrap li{
  font-size:0.95rem;
  color:var(--ink);
  margin-bottom:14px;
}
.legal-wrap ul,
.legal-wrap ol{padding-left:22px;margin-bottom:14px}
.legal-wrap li{margin-bottom:6px}
.legal-wrap strong{color:var(--ink);font-weight:600}

.legal-wrap .meta{
  font-family:'Josefin Sans',sans-serif;
  color:var(--dim);
  font-size:0.72rem;
  letter-spacing:0.15em;
  text-transform:uppercase;
  margin-bottom:36px;
}

/* Highlight callouts — neutral, on-brand */
.legal-wrap .scope,
.legal-wrap .note{
  background:var(--bg2);
  border-left:3px solid var(--ink);
  padding:14px 18px;
  margin:18px 0;
  font-size:0.92rem;
  border-radius:0;
}
.legal-wrap blockquote{
  border-left:3px solid var(--ink);
  padding:8px 18px;
  margin:16px 0;
  color:var(--muted);
  font-style:normal;
  background:var(--bg2);
}

/* Tables — minimal, brand-consistent */
.legal-wrap table{
  width:100%;
  border-collapse:collapse;
  margin:16px 0;
  font-size:0.9rem;
}
.legal-wrap th,
.legal-wrap td{
  text-align:left;
  padding:10px 14px;
  border-bottom:1px solid var(--border);
  vertical-align:top;
}
.legal-wrap th{
  background:var(--bg2);
  font-family:'Josefin Sans',sans-serif;
  font-weight:600;
  letter-spacing:0.05em;
  text-transform:uppercase;
  font-size:0.75rem;
  color:var(--ink);
  width:30%;
}

.legal-wrap code{
  background:var(--bg2);
  padding:2px 6px;
  border:1px solid var(--border);
  font-size:0.85em;
  font-family:'SF Mono',Menlo,Monaco,Consolas,monospace;
  border-radius:2px;
}
.legal-wrap pre{
  background:var(--bg2);
  border:1px solid var(--border);
  padding:14px 18px;
  overflow-x:auto;
  margin:14px 0;
  font-size:0.85em;
}
.legal-wrap pre code{background:transparent;border:0;padding:0}

/* ── shared FOOTER ── */
.legal-footer{
  background:var(--ink);
  color:rgba(245,242,237,0.6);
  padding:24px 24px 18px;
  text-align:center;
  font-family:'Inter',sans-serif;
  margin-top:48px;
}
.legal-footer a{color:rgba(245,242,237,0.6);text-decoration:none}
.legal-footer a:hover{color:var(--bg)}
.legal-footer .foot-logo{
  font-family:'Josefin Sans',sans-serif;
  font-size:0.7rem;
  font-weight:700;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--bg);
  margin-bottom:6px;
}
.legal-footer .foot-meta{font-size:0.62rem;letter-spacing:0.04em;margin-top:8px}
.legal-footer .foot-links{
  display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin:10px 0;
}
.legal-footer .foot-links a{
  font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:500;
}

/* Phone */
@media(max-width:768px){
  .legal-nav{padding:14px 16px}
  .legal-nav .nav-logo{font-size:0.8rem;letter-spacing:0.18em}
  .legal-nav .nav-links{display:none}   /* keep it clean on phone */
  .legal-wrap{padding:40px 18px 60px}
  .legal-wrap h1{font-size:1.6rem}
  .legal-wrap h2{font-size:1.05rem}
  .legal-footer{padding:18px 12px 14px}
}


/* canonical footer additions */
.legal-footer .foot-logo-img{display:block;margin:0 auto 4px;height:42px;width:auto;filter:brightness(0) saturate(100%) invert(95%) sepia(8%) saturate(173%) hue-rotate(347deg) brightness(98%) contrast(91%)}
.legal-footer .foot-tag{margin-bottom:11px;color:rgba(245,242,237,0.85);font-family:'Inter',sans-serif;font-size:0.62rem}
.legal-footer .foot-eu{}
