/* Shared by privacy.html, terms.html and cookies.html. Same ground, same
   type, same restraint as the rest of the site — a legal page that looks
   like a different website is the fastest way to make people doubt it.
   The tokens are the ones in house.css; see there for the contrast notes. */
:root{
  --primary:#052528; --teal:#2A4E53; --secondary:#3D646C;
  --limestone:#F7F6F2; --surface-mid:#EFEEEA; --parchment:#DCD7CC;
  --ink:#1B1C1A; --ink-2:#414849; --muted:#5E6465; --bronze:#9E8163; --bronze-ink:#7A6149;
  --display:"Playfair Display", Georgia, "Times New Roman", serif;
  --sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--limestone); color:var(--ink);
  font-family:var(--sans); font-size:1rem; line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--teal); text-decoration:underline; text-decoration-color:rgb(42 78 83 / .35);
  text-underline-offset:3px; transition:color .2s, text-decoration-color .2s}
a:hover{color:var(--primary); text-decoration-color:var(--primary)}
h1,h2{margin:0; font-weight:400; font-family:var(--display); color:var(--primary)}
h1{font-size:clamp(2.25rem, 5vw, 3rem); line-height:1.15; letter-spacing:-.01em}
h2{font-size:clamp(1.375rem, 2.4vw, 1.75rem); line-height:1.3; margin:3rem 0 .75rem}
p,ul,ol{margin:0 0 1rem}
ul,ol{padding-left:1.25rem}
li{margin-bottom:.5rem}
p, li{color:var(--ink-2)}
b{font-weight:600; color:var(--ink)}
::selection{background:#C0EAF3; color:#244C54}
:focus-visible{outline:2px solid var(--secondary); outline-offset:3px}

.wrap{max-width:72ch; margin:0 auto; padding:clamp(1.75rem, 5vw, 3.5rem) clamp(1.25rem, 5vw, 2.5rem) 5.5rem}
.top{
  display:flex; justify-content:space-between; align-items:center; gap:1.25rem; flex-wrap:wrap;
  padding-bottom:1.5rem; margin-bottom:clamp(2rem, 5vw, 3.5rem); border-bottom:1px solid var(--parchment);
}
.top a{text-decoration:none}
.brand{display:inline-flex; align-items:center; gap:.75rem; color:var(--primary)}
.brand__logo{width:2.25rem; height:2.25rem; flex:none; display:block}
.brand__txt{display:flex; flex-direction:column}
.brand__name{font-family:var(--display); font-size:1.5rem; line-height:1; letter-spacing:.05em; text-transform:uppercase}
.brand__sub{margin-top:.3rem; font-size:.71875rem; line-height:1rem; font-weight:600; letter-spacing:.2em;
  text-transform:uppercase; color:var(--muted); white-space:nowrap}
.brand:hover .brand__name{color:var(--teal)}
.top__end{display:flex; align-items:center; gap:1rem}
.langs{display:flex; gap:.125rem}
.top .langs a{padding:.3rem .45rem; border-radius:.25rem; font-size:.75rem; font-weight:600; letter-spacing:.12em; color:var(--muted)}
.top .langs a:hover, .top .langs a[aria-current]{color:var(--primary); background:var(--surface-mid)}
.top .back{font-size:.75rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--muted)}
.top .back:hover{color:var(--primary)}
.meta{margin:1rem 0 0; font-size:.75rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--bronze-ink)}

/* The box that must not survive to launch. Loud on purpose — it is the one
   thing on the page allowed to break the palette. */
.notice{
  background:#FFF6E1; border-left:3px solid #A9673A; border-radius:.25rem; color:#5E4222;
  padding:1.125rem 1.25rem; margin:2rem 0; font-size:.9375rem; line-height:1.65;
}
.notice b{
  display:block; margin-bottom:.5rem; font-size:.75rem; font-weight:600;
  letter-spacing:.18em; text-transform:uppercase; color:#6E4B22;
}
.notice a{color:inherit; text-decoration-color:rgb(94 66 34 / .4)}
.notice a:hover{color:#3E2B14; text-decoration-color:#3E2B14}

table{border-collapse:collapse; width:100%; margin:0 0 1.25rem; font-size:.9375rem}
th,td{text-align:left; padding:.75rem 1rem .75rem 0; border-bottom:1px solid var(--parchment); vertical-align:top}
th{font-size:.75rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--muted)}
td{color:var(--ink-2)}
code{font-family:ui-monospace, SFMono-Regular, Menlo, monospace; font-size:.85em; background:var(--surface-mid);
  padding:.1em .35em; border-radius:.125rem}

.foot{
  margin-top:4.5rem; padding-top:1.5rem; border-top:1px solid var(--parchment);
  display:flex; gap:.5rem 1.5rem; flex-wrap:wrap; align-items:baseline;
}
.foot a,.foot span{font-size:.8125rem; font-weight:500; letter-spacing:.12em; text-transform:uppercase;
  color:var(--muted); text-decoration:none}
.foot a:hover{color:var(--primary)}
