/* Disclaimer, terms and privacy: same palette and type as the home page (proto/d.css), set for long reading. */
:root{--ivory:#fbf5ec;--cream:#f5e8d6;--gold:#e6a24a;--gold-deep:#9a5a1a;--ink:#2b231d;--ink-soft:#5e5046;--line:rgba(43,35,29,.14);
  --display:'Gloock',Georgia,serif;--body:'Hanken Grotesk',system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--ivory);color:var(--ink);font:400 17px/1.7 var(--body);-webkit-font-smoothing:antialiased}
a{color:var(--gold-deep);text-underline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:50;background:var(--ink);color:var(--ivory);padding:10px 14px}
:focus-visible{outline:2px solid var(--gold-deep);outline-offset:4px;border-radius:4px}
.bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px clamp(16px,4vw,48px);background:rgba(251,245,236,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);font:400 21px/1 var(--display);white-space:nowrap}
.orb{position:relative;width:30px;height:30px;flex:none;border-radius:50%;
  background:radial-gradient(circle at 38% 34%,#fffaf0 0,#ffe3b3 24%,var(--gold) 58%,#cf7a32 100%);
  animation:orbBreath 8s ease-in-out infinite}
.orb::after{content:"";position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(230,162,74,.75);animation:orbHalo 8s ease-out infinite}
/* in 3 s, hold 1 s, out 4 s: the logo breathes */
@keyframes orbBreath{0%,100%{transform:scale(.72);box-shadow:0 0 6px 1px rgba(238,178,127,.35)}37%,50%{transform:scale(1.08);box-shadow:0 0 22px 8px rgba(238,178,127,.85)}}
.back{font-size:14.5px;font-weight:500;color:var(--ink);text-decoration:none;padding:10px 0}
.back:hover{color:var(--gold-deep)}
main{max-width:46rem;margin:0 auto;padding:clamp(40px,7vw,88px) 16px 40px}
.kicker{margin:0 0 14px;font-size:13.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep)}
h1{font:400 clamp(38px,6vw,60px)/1.05 var(--display);margin:0 0 24px;text-wrap:balance}
.lede{font-size:clamp(18px,2vw,20.5px);line-height:1.6;margin:0 0 16px}
.intro p:last-child{color:var(--ink-soft);font-size:15.5px}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin:36px 0 8px;padding:0}
.toc a{font-size:14px;font-weight:500;color:var(--ink);text-decoration:none;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#fffaf2}
.toc a:hover{border-color:var(--gold-deep)}
section{padding:40px 0 8px;border-top:1px solid var(--line);margin-top:40px}
section.important{background:var(--cream);border:0;border-radius:18px;padding:32px clamp(20px,4vw,40px) 18px;margin-top:40px}
h2{font:400 clamp(26px,3.4vw,34px)/1.15 var(--display);margin:0 0 18px;text-wrap:balance}
h3{font:600 15.5px/1.4 var(--body);margin:28px 0 6px}
p{margin:0 0 16px}
.sign{font:400 22px/1.35 var(--display);margin-top:28px}
.end{max-width:46rem;margin:0 auto;padding:24px 16px 64px;border-top:1px solid var(--line);font-size:15px}
@media (max-width:520px){.brand{font-size:18px;gap:10px}.back{font-size:13.5px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orb,.orb::after{animation:none}}
@keyframes orbHalo{0%,30%{transform:scale(1);opacity:0}40%{opacity:.9}75%,100%{transform:scale(1.8);opacity:0}}
