/* Shared styling for the legal pages: privacy, terms, cookies, data request.
   Same palette, type and focus treatment as the main page, kept deliberately
   plain - these are documents to be read, not marketing. */

@font-face{
  font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;
  src:url("../fonts/inter-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,
                U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,
                U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{
  --ink:#0b0d10;
  --ink-2:rgba(11,13,16,.72);
  --ink-3:rgba(11,13,16,.55);
  --line:rgba(11,13,16,.12);
  --paper:#f5f5f7;
  --card:#ffffff;
  --focus:#0b63f6;
}
@media (prefers-color-scheme:dark){
  :root{
    --ink:#f5f5f7;
    --ink-2:rgba(245,245,247,.74);
    --ink-3:rgba(245,245,247,.55);
    --line:rgba(245,245,247,.16);
    --paper:#0b0d10;
    --card:#14171c;
    --focus:#7fb0ff;
  }
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;
}

/* skip link, same as the main page */
.skip{
  position:absolute;left:12px;top:-60px;z-index:50;padding:12px 18px;
  border-radius:0 0 8px 8px;background:var(--ink);color:var(--paper);
  font-size:14px;font-weight:500;text-decoration:none;transition:top .18s ease;
}
.skip:focus{top:0}

:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:3px}

header.top{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  max-width:760px;margin:0 auto;padding:22px 16px 0;
}
header.top a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}
header.top nav{display:flex;flex-wrap:wrap;gap:6px 16px}
header.top nav a{font-weight:500;font-size:14px;color:var(--ink-2)}
header.top nav a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-underline-offset:4px}

main{max-width:760px;margin:0 auto;padding:36px 16px 56px}

.eyebrow{
  margin:0 0 14px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);
}
h1{
  margin:0 0 10px;font-size:clamp(30px,5.5vw,42px);line-height:1.08;
  letter-spacing:-.025em;font-weight:600;
}
.lede{margin:0 0 26px;font-size:17px;color:var(--ink-2)}
.meta{
  margin:0 0 34px;padding:14px 16px;border-radius:10px;background:var(--card);
  border:1px solid var(--line);font-size:14px;line-height:1.7;color:var(--ink-2);
}
.meta b{color:var(--ink);font-weight:600}

h2{
  margin:38px 0 10px;font-size:20px;line-height:1.25;letter-spacing:-.015em;font-weight:600;
  scroll-margin-top:24px;
}
h3{margin:24px 0 8px;font-size:16px;font-weight:600}
p,li{color:var(--ink-2)}
p{margin:0 0 14px}
ul,ol{margin:0 0 14px;padding-left:22px}
li{margin:0 0 6px}
a{color:var(--ink);text-underline-offset:3px}
address{font-style:normal}
hr{border:0;border-top:1px solid var(--line);margin:36px 0}

/* the "draft" notice - honest about what this document is until reviewed */
.notice{
  margin:0 0 30px;padding:14px 16px;border-radius:10px;
  background:rgba(255,184,0,.12);border:1px solid rgba(255,184,0,.35);
  color:var(--ink);font-size:14px;line-height:1.6;
}
@media (prefers-color-scheme:dark){
  .notice{background:rgba(255,184,0,.1);border-color:rgba(255,184,0,.3)}
}

/* contents list on the longer pages */
.toc{
  margin:0 0 30px;padding:16px 18px;border-radius:10px;background:var(--card);
  border:1px solid var(--line);
}
.toc p{margin:0 0 8px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.toc ol{margin:0;padding-left:20px;columns:2;column-gap:24px}
.toc li{break-inside:avoid;font-size:15px}
@media (max-width:560px){ .toc ol{columns:1} }

/* forms (data request page) */
form{display:grid;gap:18px;max-width:560px}
label{display:block;font-weight:600;font-size:15px;margin-bottom:6px;color:var(--ink)}
.hint{display:block;font-weight:400;font-size:13px;color:var(--ink-3);margin-top:3px}
input[type=text],input[type=email],select,textarea{
  width:100%;padding:12px 14px;border-radius:8px;border:1px solid var(--line);
  background:var(--card);color:var(--ink);font:inherit;
}
textarea{min-height:120px;resize:vertical}
fieldset{border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:0}
legend{font-weight:600;padding:0 6px}
.check{display:flex;gap:12px;align-items:flex-start;font-weight:400;font-size:15px;color:var(--ink-2)}
.check input{margin-top:4px;width:18px;height:18px;flex:0 0 auto}
.check span{display:block}
button,.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:13px 22px;border-radius:8px;border:0;cursor:pointer;
  background:var(--ink);color:var(--paper);font:inherit;font-weight:500;font-size:15px;
  text-decoration:none;transition:transform .2s ease,opacity .2s ease;
}
button:hover,.btn:hover{transform:translateY(-1px)}
button:disabled{opacity:.45;cursor:not-allowed;transform:none}
.status{
  margin:0;padding:12px 14px;border-radius:8px;font-size:14px;line-height:1.55;
  border:1px solid var(--line);background:var(--card);color:var(--ink-2);
}
.status[data-kind=ok]{border-color:rgba(20,150,80,.4);background:rgba(20,150,80,.08);color:var(--ink)}
.status[data-kind=err]{border-color:rgba(200,50,40,.4);background:rgba(200,50,40,.08);color:var(--ink)}
.status:empty{display:none}

footer.bottom{
  max-width:760px;margin:0 auto;padding:22px 16px 40px;border-top:1px solid var(--line);
  font-size:13px;line-height:1.7;color:var(--ink-3);
}
footer.bottom nav{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:10px}
footer.bottom a{color:var(--ink-2);text-decoration:none}
footer.bottom a:hover{text-decoration:underline}

@media (prefers-reduced-motion:reduce){
  .skip,button,.btn{transition:none}
  button:hover,.btn:hover{transform:none}
}
