/* shared styles for privacy / terms / 404 pages */
:root{
  --navy:#0c1a33;--navy2:#33445f;--mute:#4a5870;--ink-blue:#1d4fd1;
  --btn:linear-gradient(110deg,#2ee6d6 0%,#a3f25c 100%);
  --txt:linear-gradient(100deg,#1d4fd1 0%,#08766c 100%);
  --edge:rgba(255,255,255,.85);--line:rgba(12,26,51,.1);
  --fd:"Unbounded","Arial Black",system-ui,sans-serif;
  --fb:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;color:var(--navy);font-family:var(--fb);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;
  background:linear-gradient(#6fa3e6 0,#bcd6f5 360px,#dfeaf7 900px,#f4f1ee 100%) fixed;background-color:#dfeaf7}
a{color:var(--ink-blue);font-weight:700;text-underline-offset:3px}
:focus-visible{outline:3px solid #2463eb;outline-offset:3px}
.skip{position:fixed;left:12px;top:-60px;z-index:50;background:var(--navy);color:#fff;padding:10px 16px;border-radius:10px;text-decoration:none}
.skip:focus{top:12px}
.top{position:sticky;top:12px;z-index:5;margin:12px clamp(10px,3vw,40px) 0;display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:10px 10px 10px 20px;border-radius:20px;background:rgba(255,255,255,.8);border:1px solid var(--edge);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 10px 40px -18px rgba(20,50,110,.35)}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--fd);font-weight:700;font-size:15px;color:var(--navy);text-decoration:none}
.logo i{width:12px;height:12px;border-radius:50%;background:var(--btn);box-shadow:0 0 0 3px rgba(46,230,214,.2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--fb);font-size:14px;font-weight:800;color:var(--navy);
  background:var(--btn);border:0;border-radius:12px;padding:11px 20px;text-decoration:none;box-shadow:0 10px 30px -10px rgba(18,181,167,.7)}
.btn.ghost{background:#fff;border:1px solid rgba(12,26,51,.12);box-shadow:none}
.doc{max-width:860px;margin:36px auto 40px;padding:0 16px}
.card{background:rgba(255,255,255,.94);border:1px solid #fff;border-radius:26px;padding:clamp(22px,4vw,48px);box-shadow:0 30px 70px -35px rgba(20,50,110,.45)}
.eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-blue)}
h1,h2,h3{font-family:var(--fd);letter-spacing:-.02em;line-height:1.15}
h1{font-size:clamp(28px,4.4vw,44px);margin:10px 0 6px}
h2{font-size:clamp(19px,2.2vw,23px);margin:38px 0 10px;padding-top:6px}
h3{font-size:17px;margin:22px 0 6px}
.meta{color:var(--mute);font-size:15px;margin:0 0 24px}
p,li{color:var(--navy2)}
ul,ol{padding-left:1.3em}
li{margin:4px 0}
.toc{background:#f2f6fc;border-radius:18px;padding:16px 22px;margin:20px 0 6px}
.toc ol{margin:6px 0;columns:2;column-gap:28px}
.toc a{font-weight:600}
table{width:100%;border-collapse:collapse;margin:12px 0;font-size:15px}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:800;color:var(--navy);background:#f2f6fc}
.tbl{overflow-x:auto}
.note{background:#fff8e6;border:1px solid #f1dfb0;border-radius:14px;padding:12px 16px;font-size:15px;color:#5a4a1f}
footer{margin:0 clamp(10px,3vw,40px) 14px;padding:20px 24px;border-radius:22px;background:rgba(255,255,255,.8);border:1px solid var(--edge);
  font-size:14px;color:var(--navy2);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 18px}
footer nav{display:flex;flex-wrap:wrap;gap:4px 18px}
footer a,footer button{all:unset;cursor:pointer;color:var(--navy2);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(12,26,51,.25);padding:4px 0}
footer a:hover,footer button:hover{color:var(--navy)}
footer :focus-visible{outline:3px solid #2463eb;outline-offset:2px}
@media (max-width:440px){
  .top .btn{display:none}
}
@media (max-width:640px){
  body{font-size:16px}
  .top{padding-left:14px}
  .logo{font-size:13px}
  .top .btn{white-space:nowrap;padding:10px 14px;font-size:13px}
  .toc ol{columns:1}
  footer{flex-direction:column}
}

/* smooth cross-page transitions (Chrome/Edge; ignored elsewhere) */
@view-transition{navigation:auto}
.btn:active{transform:scale(.97)}
footer .legal{flex-basis:100%;font-size:13px;color:var(--mute)}
