:root{color-scheme:dark;--bg:#111827;--surface:#1f2937;--line:#43516a;--text:#f8fafc;--dim:#cbd5e1;--accent:#fb6f9f;--link:#7dd3fc}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(145deg,#111827,#172554);color:var(--text);font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}
main{width:min(860px,calc(100% - 32px));margin:36px auto;padding:clamp(22px,5vw,52px);background:rgba(31,41,55,.94);border:1px solid var(--line);border-radius:24px;box-shadow:0 22px 70px #0007}
h1,h2{font-family:Georgia,serif}h1{font-size:clamp(34px,7vw,54px);margin:0 0 6px}h2{margin:34px 0 8px;font-size:23px}p,li{color:var(--dim)}a{color:var(--link)}.kicker{color:var(--accent);font-weight:700;letter-spacing:.13em;text-transform:uppercase;font-size:12px}.notice{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#0f172a}.back{display:inline-block;margin-top:34px;padding:11px 16px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-weight:700}

/* ---------- Mobile/Safari: respeita área visível e mantém saída acessível ---------- */
html{scroll-padding-top:max(82px,calc(env(safe-area-inset-top) + 64px));}
body{
  min-height:100dvh;
  padding-top:env(safe-area-inset-top);
  padding-right:env(safe-area-inset-right);
  padding-bottom:env(safe-area-inset-bottom);
  padding-left:env(safe-area-inset-left);
}
.legal-topbar{
  position:sticky;
  top:max(8px,env(safe-area-inset-top));
  z-index:20;
  width:min(860px,calc(100% - 32px));
  margin:12px auto -18px;
  pointer-events:none;
}
.legal-topbar a{
  pointer-events:auto;
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:9px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(15,23,42,.94);
  color:var(--text);
  text-decoration:none;
  font-weight:700;
  box-shadow:0 10px 28px #0005;
  backdrop-filter:blur(12px);
}
section[id],h2[id]{scroll-margin-top:max(82px,calc(env(safe-area-inset-top) + 64px));}
@media(max-width:600px){
  main{width:min(100% - 20px,860px);margin:24px auto;padding:20px 18px 28px;border-radius:19px;}
  .legal-topbar{width:calc(100% - 20px);margin:8px auto -12px;}
  h1{font-size:clamp(32px,10vw,46px);line-height:1.04;}
  h2{font-size:21px;line-height:1.2;}
}
