/* The Stork Life — shared styling for the legal / policy pages
   (terms.html, privacy.html, refunds.html, shipping.html).
   Self-contained; matches the "Golden Hour Observatory" design system:
   deep indigo night · warm gold accent · Fraunces display / Hanken Grotesk body. */
:root{
  --bg:#0B0E1E;--surface:rgba(238,234,255,.05);--line:rgba(224,190,120,.17);
  --line-soft:rgba(234,231,255,.1);
  --text:#F2EFE6;--text-muted:#B6B4C9;--text-dim:#83819B;--accent:#E3B860;--accent-2:#F0CE85;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--text);
  background:
    radial-gradient(1000px 640px at 85% -10%,rgba(224,174,76,.13),transparent 60%),
    radial-gradient(820px 560px at -10% 34%,rgba(122,111,240,.1),transparent 58%),
    linear-gradient(170deg,#0B0E1E 0%,#10142B 52%,#0D1124 100%);
  background-attachment:fixed;
  font-family:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  line-height:1.75;-webkit-font-smoothing:antialiased;
}
a{color:var(--accent-2);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:820px;margin:0 auto;padding:0 1.4rem}

/* header */
.legal-top{border-bottom:1px solid var(--line);padding:1.4rem 0;position:sticky;top:0;
  background:rgba(11,14,30,.78);-webkit-backdrop-filter:blur(22px) saturate(1.3);backdrop-filter:blur(22px) saturate(1.3);z-index:10}
.legal-top .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:flex;align-items:center;gap:.65rem;color:var(--text);font-family:'Fraunces',Georgia,serif;
  font-weight:560;font-size:1.4rem;letter-spacing:.01em}
.brand img{width:30px;height:30px;object-fit:contain}
.legal-top a.back{font-size:.85rem;color:var(--text-muted)}
.legal-top a.back:hover{color:var(--accent-2);text-decoration:none}

/* body */
main.legal{padding:3.5rem 0 2rem}
.legal h1{font-family:'Fraunces',Georgia,serif;font-weight:540;font-size:clamp(2rem,5vw,2.9rem);
  line-height:1.1;margin:0 0 .4rem;letter-spacing:-.01em}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .legal h1{background:linear-gradient(100deg,#F7F3E8 25%,#EED9A8 60%,#CBA55E 95%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#F2EFE6}
}
.legal .updated{color:var(--text-dim);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;
  margin-bottom:2.4rem}
.legal h2{font-family:'Fraunces',Georgia,serif;font-weight:540;font-size:1.5rem;
  margin:2.6rem 0 .7rem;color:var(--text)}
.legal h2 .num{color:var(--accent);margin-right:.5rem;font-size:1.1rem;vertical-align:.08em}
.legal p,.legal li{color:var(--text-muted);font-size:1rem}
.legal p{margin:.7rem 0}
.legal ul{margin:.6rem 0;padding-left:1.3rem}
.legal li{margin:.35rem 0}
.legal strong{color:var(--text);font-weight:650}
.legal .lead{color:var(--text);font-size:1.08rem}
.callout{border:1px solid var(--line-soft);border-left:3px solid var(--accent);background:var(--surface);
  border-radius:10px;padding:1rem 1.2rem;margin:1.4rem 0}
.callout p{margin:.3rem 0}
.contact-block{border-top:1px solid var(--line-soft);margin-top:3rem;padding-top:1.6rem}
.contact-block p{margin:.2rem 0;font-size:.95rem}

/* cross-links + footer */
.policy-nav{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin:3rem 0 0;
  border-top:1px solid var(--line-soft);padding-top:1.6rem}
.policy-nav a{font-size:.9rem;color:var(--text-muted)}
.policy-nav a:hover,.policy-nav a[aria-current]{color:var(--accent-2);text-decoration:none}
.legal-foot{border-top:1px solid var(--line-soft);margin-top:2.5rem;padding:2rem 0 3rem;
  color:var(--text-dim);font-size:.8rem;text-align:center}

/* ── Day theme ("Dawn" — mirrors assets/design.css §12 tokens) ──────────────
   The pages load assets/theme.js, which sets <html data-theme="day|night">
   from the shared localStorage key, so the visitor's choice carries over. */
html[data-theme="day"]{
  --bg:#F4F1E9;--surface:rgba(255,255,255,.72);--line:rgba(22,176,196,.32);
  --line-soft:rgba(37,33,58,.16);
  --text:#25213A;--text-muted:#3C3855;--text-dim:#5E5A78;--accent:#0D7280;--accent-2:#0D7280;
}
html[data-theme="day"] body{
  background:
    radial-gradient(1000px 640px at 85% -10%,rgba(22,176,196,.14),transparent 60%),
    radial-gradient(820px 560px at -10% 34%,rgba(94,90,120,.1),transparent 58%),
    linear-gradient(170deg,#F4F1E9 0%,#FBF9F2 52%,#EFEBDF 100%);
  background-attachment:fixed;
}
html[data-theme="day"] .legal-top{background:rgba(251,249,242,.82)}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  html[data-theme="day"] .legal h1{background:linear-gradient(100deg,#332C52 20%,#25213A 80%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#25213A}
}
/* theme toggle pill (button injected/bound by assets/theme.js) */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;background:var(--surface);
  border:1px solid var(--line);border-radius:100px;width:38px;height:38px;color:var(--text);
  cursor:pointer;font-size:1rem;line-height:1;flex-shrink:0}
.theme-toggle:hover{border-color:var(--accent)}
/* day overrides for the per-page inline #legal-nav styles (body-prefixed to win the cascade) */
html[data-theme="day"] body #legal-nav{background:rgba(251,249,242,.8);border-color:rgba(37,33,58,.15)}
html[data-theme="day"] body #legal-nav .legal-tabs a{color:var(--text-muted)}
html[data-theme="day"] body #legal-nav .legal-tabs a:hover{color:var(--accent)}
html[data-theme="day"] body #legal-nav .legal-tabs a.active{color:#fff;background:var(--accent)}
