:root {
  color-scheme: light;
  --ink:#172b3d;
  --muted:#526b79;
  --line:#668095;
  --paper:#fffdf1;
  --paper-soft:#edf5e9;
  --blue:#1b7dad;
  --red:#d63c4d;
  --gold:#e6b63d;
  font-family:Trebuchet MS,Segoe UI,Arial,sans-serif;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  min-height:100vh;
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 8% 5%,rgba(59,157,210,.16),transparent 24rem),
    radial-gradient(circle at 92% 92%,rgba(73,177,105,.14),transparent 27rem),
    linear-gradient(145deg,#f8f7e8,#e8f4ea);
}
body::before {
  content:"";
  position:fixed;
  z-index:-2;
  inset:0;
  background-image:linear-gradient(45deg,rgba(61,104,124,.035) 25%,transparent 25%,transparent 75%,rgba(61,104,124,.035) 75%);
  background-size:34px 34px;
}
a { color:var(--blue); }
button,a { -webkit-tap-highlight-color:transparent; }
.privacy-pixels {
  position:fixed;
  z-index:-1;
  inset:0;
  opacity:.11;
  pointer-events:none;
  background:
    linear-gradient(135deg,transparent 75%,#599bb4 75%) 0 0/52px 52px,
    linear-gradient(315deg,transparent 75%,#90bd96 75%) 26px 26px/52px 52px;
}
.privacy-shell {
  width:min(1120px,calc(100% - 28px));
  margin:18px auto 38px;
  padding:clamp(16px,3vw,34px);
  border:4px solid #506f84;
  border-radius:22px;
  background:rgba(255,253,241,.94);
  box-shadow:0 10px 0 rgba(36,65,76,.3),0 25px 60px rgba(37,71,81,.18),inset 0 0 0 3px rgba(255,255,255,.8);
}
.privacy-hero {
  position:relative;
  display:grid;
  grid-template-columns:minmax(160px,250px) 1fr auto;
  align-items:center;
  gap:clamp(18px,4vw,42px);
  padding:8px 4px 28px;
  border-bottom:3px solid #7992a1;
}
.privacy-brand { display:flex; align-items:center; gap:12px; text-decoration:none; }
.privacy-brand img:first-child { width:62px; height:62px; object-fit:contain; }
.privacy-brand img:last-child { width:min(165px,100%); height:auto; object-fit:contain; }
.privacy-title p { margin:0 0 6px; color:var(--blue); font-size:.65rem; font-weight:950; letter-spacing:.17em; }
.privacy-title h1 { margin:0; font-size:clamp(2rem,5vw,3.5rem); line-height:1; text-shadow:2px 2px 0 #fff; }
.privacy-title span { display:block; margin-top:9px; color:var(--muted); font-size:.75rem; font-weight:800; }
.privacy-actions { display:flex; gap:8px; align-self:start; }
.privacy-actions button {
  width:43px;
  height:41px;
  padding:0;
  border:2px solid #4c687c;
  border-radius:9px;
  background:#fff8dc;
  color:var(--ink);
  font:inherit;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 3px 0 #9ba9a7;
}
.privacy-actions button:hover { transform:translateY(-2px); border-color:var(--red); }
.privacy-summary {
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:18px;
  margin:24px 0 18px;
  padding:18px clamp(16px,3vw,26px);
  border:3px solid #4c7790;
  border-radius:16px;
  background:linear-gradient(135deg,#e3f2eb,#fff6cc);
  box-shadow:0 5px 0 rgba(76,99,103,.25);
}
.summary-ball {
  position:relative;
  width:65px;
  height:65px;
  overflow:hidden;
  border:4px solid #243c50;
  border-radius:50%;
  background:linear-gradient(#ed505a 0 45%,#243c50 45% 55%,#f8faf2 55%);
  box-shadow:0 4px 0 #8a9ca1;
}
.summary-ball i {
  position:absolute;
  top:50%;
  left:50%;
  width:19px;
  height:19px;
  border:4px solid #243c50;
  border-radius:50%;
  background:#fff;
  transform:translate(-50%,-50%);
}
.privacy-summary h2 { margin:0 0 4px; font-size:clamp(1.15rem,3vw,1.65rem); }
.privacy-summary p { margin:0; color:#405967; font-weight:750; line-height:1.5; }
.privacy-index {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
}
.privacy-index a {
  padding:7px 12px;
  border:2px solid #78909e;
  border-radius:999px;
  background:#f8f4df;
  color:#314a5a;
  font-size:.72rem;
  font-weight:900;
  text-decoration:none;
}
.privacy-index a:hover { border-color:var(--blue); color:var(--blue); transform:translateY(-1px); }
.privacy-card {
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:16px;
  margin-top:13px;
  padding:clamp(16px,3vw,25px);
  border:2px solid #8ba0aa;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(237,244,230,.72));
  box-shadow:0 4px 0 rgba(67,87,91,.16);
  scroll-margin-top:18px;
}
.section-number {
  display:grid;
  place-items:center;
  width:49px;
  height:49px;
  border:3px solid #35566d;
  border-radius:50%;
  background:#dceddb;
  color:#2c769e;
  font-size:.78rem;
  font-weight:950;
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.6);
}
.privacy-card h2 { margin:2px 0 10px; font-size:clamp(1.15rem,2.5vw,1.55rem); }
.privacy-card p,.privacy-card li { color:#3f5664; font-size:.91rem; font-weight:650; line-height:1.65; }
.privacy-card p { margin:8px 0; }
.privacy-card ul { display:grid; gap:5px; margin:8px 0; padding-left:20px; }
.privacy-card li::marker { color:var(--red); }
.privacy-note {
  padding:9px 12px;
  border-left:5px solid var(--gold);
  border-radius:6px;
  background:#fff2bd;
  color:#4e4218 !important;
}
.external-link { display:inline-block; margin-top:4px; font-weight:950; }
.privacy-footer { padding:27px 2px 4px; text-align:center; }
.back-button {
  display:inline-block;
  padding:11px 18px;
  border:2px solid #243c50;
  border-radius:9px;
  background:linear-gradient(#e9555f,#c93249);
  color:#fff;
  font-weight:950;
  text-decoration:none;
  box-shadow:0 4px 0 #7d8c8e;
}
.back-button:hover { filter:brightness(1.08); transform:translateY(-1px); }
.privacy-footer p { margin:18px 0 0; color:var(--muted); font-size:.72rem; font-weight:750; }

:root.dark {
  color-scheme:dark;
  --ink:#f2f7fb;
  --muted:#9fb4c4;
  --line:#7190a6;
  --paper:#0c1e2d;
  --paper-soft:#142c40;
  --blue:#76c9f4;
  --red:#ff6c7a;
  --gold:#e9bc4b;
}
:root.dark body {
  background:
    radial-gradient(circle at 8% 5%,rgba(46,135,190,.17),transparent 24rem),
    radial-gradient(circle at 92% 92%,rgba(45,126,77,.13),transparent 27rem),
    linear-gradient(145deg,#0b1c2b,#06131f);
}
:root.dark body::before { opacity:.5; }
:root.dark .privacy-shell {
  border-color:#7892aa;
  background:rgba(10,25,38,.96);
  box-shadow:0 10px 0 rgba(0,0,0,.48),0 25px 65px rgba(0,0,0,.42),inset 0 0 0 3px rgba(255,255,255,.05);
}
:root.dark .privacy-brand img:last-child { filter:drop-shadow(0 2px 0 #000); }
:root.dark .privacy-title h1 { text-shadow:2px 2px 0 #000; }
:root.dark .privacy-actions button { border-color:#7792a7; background:#1a344a; color:#fff; box-shadow:0 3px 0 #01070c; }
:root.dark .privacy-summary { border-color:#678ba3; background:linear-gradient(135deg,#15364a,#342b17); box-shadow:0 5px 0 #02080d; }
:root.dark .privacy-summary p,:root.dark .privacy-card p,:root.dark .privacy-card li { color:#bdcfdb; }
:root.dark .summary-ball { border-color:#c7d9e7; box-shadow:0 4px 0 #02070c; }
:root.dark .summary-ball i { border-color:#c7d9e7; }
:root.dark .privacy-index a { border-color:#58758a; background:#132d41; color:#c0d3df; }
:root.dark .privacy-index a:hover { border-color:var(--blue); color:var(--blue); }
:root.dark .privacy-card { border-color:#526f83; background:linear-gradient(135deg,rgba(23,49,70,.88),rgba(10,30,45,.88)); box-shadow:0 4px 0 #02080d; }
:root.dark .section-number { border-color:#7595ab; background:#18384c; color:#8edaff; box-shadow:inset 0 0 0 3px rgba(255,255,255,.05); }
:root.dark .privacy-note { background:#3e3213; color:#ffe79a !important; }

@media (max-width:760px) {
  .privacy-shell { width:calc(100% - 14px); margin:7px auto 22px; padding:14px; border-radius:14px; }
  .privacy-hero { grid-template-columns:1fr auto; gap:13px; }
  .privacy-brand { grid-column:1; }
  .privacy-brand img:first-child { width:47px; height:47px; }
  .privacy-brand img:last-child { width:132px; }
  .privacy-actions { grid-column:2; grid-row:1; }
  .privacy-title { grid-column:1 / -1; }
  .privacy-card { grid-template-columns:42px minmax(0,1fr); gap:11px; padding:14px 12px; }
  .section-number { width:39px; height:39px; border-width:2px; font-size:.66rem; }
  .privacy-card p,.privacy-card li { font-size:.82rem; }
}
@media (max-width:460px) {
  .privacy-summary { grid-template-columns:1fr; text-align:center; }
  .summary-ball { margin:auto; }
  .privacy-card { grid-template-columns:1fr; }
  .section-number { margin-bottom:-3px; }
  .privacy-index { gap:5px; }
  .privacy-index a { padding:6px 9px; font-size:.64rem; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  * { transition:none !important; }
}
