/* Fora — legal page styles, matched to the Fora app landing page (/fora/).
   Theme: First Light (default). Signature motif: a topographic contour field
   with an accent-tinted halo (assets/topo.svg). */
:root{
  --bg:#F4F2EE; --surface:#FFFFFF; --surf2:#EDEAE3;
  --text:#111318; --mute:rgba(17,19,24,.60); --faint:rgba(17,19,24,.34);
  --line:rgba(17,19,24,.12); --hair:rgba(17,19,24,.08);
  --accent:#D9531E;
  --glass:rgba(244,242,238,.72);
  --sans:-apple-system,BlinkMacSystemFont,'Inter',system-ui,'Helvetica Neue',Arial,sans-serif;
  --mono:'SF Mono',ui-monospace,'JetBrains Mono','Courier New',monospace;
  --maxw:760px;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#111318; --surface:#16181E; --surf2:#1C1F26;
    --text:#F2F0EC; --mute:rgba(242,240,236,.62); --faint:rgba(242,240,236,.36);
    --line:rgba(242,240,236,.14); --hair:rgba(242,240,236,.08);
    --accent:#F07C20;
    --glass:rgba(17,19,24,.72);
  }
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth;}
body{margin:0; background:var(--bg); color:var(--text);
  font-family:var(--sans); font-size:17px; line-height:1.65; -webkit-font-smoothing:antialiased;}
img{max-width:100%; height:auto; display:block;}
a{color:var(--accent); text-decoration:none;}
.mark{font-weight:800; letter-spacing:-.04em;}
.mark .dot{color:var(--accent);}

/* ---------- Nav (matches landing) ---------- */
nav{position:sticky; top:0; z-index:60; background:var(--glass);
  backdrop-filter:saturate(180%) blur(14px); -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--hair);}
.nav-in{max-width:1120px; margin:0 auto; padding:0 24px; height:62px;
  display:flex; align-items:center; justify-content:space-between;}
.brand{font-size:23px; color:var(--text);}
.nav-links{display:flex; align-items:center; gap:26px;}
.nav-links a{font-size:14.5px; color:var(--mute); transition:color .15s;}
.nav-links a:hover,.nav-links a.active{color:var(--accent);}
@media(max-width:620px){ .nav-links a.hide-sm{display:none;} }

/* ---------- Content ---------- */
main{max-width:var(--maxw); margin:0 auto; padding:58px 24px 84px;}

header{position:relative; overflow:hidden; border-bottom:1px solid var(--hair);
  padding:10px 0 30px; margin-bottom:36px;}
header::before{content:""; position:absolute; inset:-40px -60px 0 -60px; z-index:0; pointer-events:none;
  background:url(assets/topo.svg) right -40px top -120px / 1100px auto no-repeat; opacity:.13;
  -webkit-mask-image:linear-gradient(to bottom, #000 35%, transparent);
  mask-image:linear-gradient(to bottom, #000 35%, transparent);}
header::after{content:""; position:absolute; inset:-30px -60px 0 -60px; z-index:0; pointer-events:none;
  background:radial-gradient(55% 130% at 92% -10%, color-mix(in srgb,var(--accent) 22%, transparent), transparent 70%);}
@media (prefers-color-scheme:dark){ header::before{opacity:.17;} }
header>*{position:relative; z-index:1;}
.eyebrow{font-family:var(--mono); font-size:11.5px; font-weight:500;
  letter-spacing:.2em; text-transform:uppercase; color:var(--accent); margin-bottom:14px;}
h1{font-size:clamp(36px,6vw,52px); font-weight:800; letter-spacing:-.035em; line-height:1.04; margin:0;}
.last-updated{font-family:var(--mono); font-size:12px; letter-spacing:.06em; color:var(--faint); margin-top:14px;}

h1,h2,h3{color:var(--text);}
h2{font-size:24px; font-weight:700; letter-spacing:-.02em; margin:48px 0 12px;}
h3{font-size:17px; font-weight:700; margin:28px 0 8px;}
p,ul,ol{color:var(--mute); margin:0 0 16px;}
ul,ol{padding-left:22px;}
li{margin-bottom:8px;}
strong{color:var(--text); font-weight:600;}
a{border-bottom:1px solid transparent; transition:border-color .15s;}
a:hover{border-bottom-color:var(--accent);}

/* ---------- Footer (matches landing) ---------- */
footer{background:var(--surf2); border-top:1px solid var(--hair); padding:52px 0 40px; margin-top:72px;}
.foot-in{max-width:1120px; margin:0 auto; padding:0 24px;}
.foot-grid{display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:30px;}
.foot-brand .brand{font-size:23px; display:inline-block;}
.foot-brand p{font-size:14px; color:var(--mute); max-width:25em; margin:12px 0 0;}
.foot-col h4{font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--faint); margin:0 0 14px;}
.foot-col a{display:block; font-size:14.5px; color:var(--mute); margin-bottom:10px; border:none;}
.foot-col a:hover{color:var(--accent);}
.foot-bottom{display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap;
  margin-top:38px; padding-top:22px; border-top:1px solid var(--hair);
  font-family:var(--mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--faint);}
@media(max-width:760px){ .foot-grid{grid-template-columns:1fr 1fr;} .foot-brand{grid-column:1/-1;} }
