/* ══════════════════════════════════════════════════════════
   PLAN A REALTY CORP. · Privacy, Terms and the 404 page
   (privacy.html, terms.html, 404.html). Page-only styles on
   style.css tokens; no new colours. Contrast: body copy is
   --ink on --paper, quiet text --mute / --mute-2 (both pass AA
   on all three ivory grounds), small brass text only --brass-tx.
   ══════════════════════════════════════════════════════════ */

/* anchors land below the fixed nav */
main [id]{scroll-margin-top:5.75rem}

/* ══ HERO ══ */
.lhero{padding:clamp(8.5rem,14vw,10.5rem) 0 clamp(2.4rem,5vw,3.4rem);border-bottom:1px solid var(--line)}
.lhero__h1{font-size:clamp(2.5rem,6.4vw,4.4rem);margin:0 0 1.2rem;max-width:16ch}
.lhero__h1 .ital{font-style:italic;color:var(--brass);font-weight:300}
.lhero__lede{font-size:clamp(1rem,1.6vw,1.1rem);color:var(--mute);max-width:62ch;margin:0 0 1.1rem}
.lhero__date{font-size:.8rem;color:var(--mute-2);letter-spacing:.02em;margin:0}

/* ══ BODY ══ */
.legal{padding:clamp(2.6rem,6vw,4.4rem) 0 clamp(4.5rem,9vw,7rem)}
/* .legal__body is also .wrap, so the column starts on the hero's left edge; only its children are capped. */
.legal__body > *{max-width:72ch}
.legal__body section + section{margin-top:clamp(2.2rem,4.4vw,3rem);padding-top:clamp(2.2rem,4.4vw,3rem);border-top:1px solid var(--line)}
.legal__body h2{font-size:clamp(1.45rem,2.6vw,1.85rem);margin:0 0 .95rem}
.legal__body p{color:var(--ink-2)}
.legal__body p:last-child{margin-bottom:0}
.legal__body ul{list-style:none;margin:0 0 1em;padding:0;display:grid;gap:.7rem}
.legal__body li{position:relative;padding-left:1.35rem;color:var(--ink-2)}
.legal__body li::before{content:"";position:absolute;left:0;top:.72em;width:.5rem;height:1px;background:var(--brass)}
.legal__body b{font-weight:600;color:var(--ink)}
.legal__body a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--brass);text-underline-offset:3px;overflow-wrap:anywhere;transition:color .3s}
.legal__body a:hover{color:var(--brass-tx)}
.legal__note{margin-top:clamp(2.2rem,4.4vw,3rem);padding:1.1rem 1.3rem;border:1px solid var(--line);border-radius:12px;background:var(--paper-2);font-size:.92rem;color:var(--mute)}

/* ══ 404 ══ */
.nf{min-height:100svh;display:grid;place-items:center;text-align:center;padding:clamp(3rem,8vw,5rem) 0}
.nf .lang{margin:0 auto 2rem}
.nf__logo{width:76px;height:76px;border-radius:9px;margin:0 auto 2rem}
.nf h1{font-size:clamp(2.2rem,6vw,3.4rem);margin-bottom:1rem}
.nf__lede{color:var(--mute);max-width:46ch;margin-inline:auto}
.nf__cta{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;margin-top:1.8rem}
.nf__links{list-style:none;margin:2.2rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;justify-content:center;font-size:.92rem}
.nf__links a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--brass);text-underline-offset:3px}
.nf__links a:hover{color:var(--brass-tx)}
