/* ContractPro legal pages. Colourway: Navy #1B2A4A + Safety Orange #F97316.
   Structure copied from /lifeshelf/legal.css. Light by default, dark via prefers-color-scheme.
   Text colours verified AA (4.5:1+) in both modes; orange is used as text only on navy or dark. */
:root{
  --bg:#F6F8FC; --panel:#FFFFFF;
  --line:rgba(27,42,74,.14); --line-2:rgba(27,42,74,.28);
  --ink:#1B2A4A; --muted:#46557A;
  --navy:#1B2A4A; --orange:#F97316;
  --link:#B83C05; --link-h:#1B2A4A;
  --hdr:#1B2A4A; --hdr-ink:#FFFFFF; --hdr-muted:#C7D0E4;
  --maxw:800px; color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#0E1830; --panel:#16233F;
    --line:rgba(160,185,235,.16); --line-2:rgba(160,185,235,.32);
    --ink:#EEF2FA; --muted:#AEBAD3;
    --link:#FB923C; --link-h:#FDBA74;
    --hdr:#0A1224; --hdr-ink:#FFFFFF; --hdr-muted:#C7D0E4;
    color-scheme:dark;
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0; font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; background:var(--bg);
  color:var(--ink); line-height:1.7; -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
.wrap{position:relative; width:100%; max-width:var(--maxw); margin:0 auto; padding:0 26px}
a{color:var(--link); text-decoration:underline; text-underline-offset:2px; transition:color .2s}
a:hover{color:var(--link-h)}
a:focus-visible{outline:3px solid var(--orange); outline-offset:2px; border-radius:3px}

header.nav{position:fixed; top:0; left:0; right:0; z-index:60; border-bottom:3px solid var(--orange); background:var(--hdr)}
.nav-in{display:flex; align-items:center; justify-content:space-between; height:66px}
.brand{display:flex; align-items:center; gap:11px; font-weight:700; letter-spacing:-.01em; font-size:1.05rem; color:var(--hdr-ink); text-decoration:none}
.brand:hover{color:var(--hdr-ink)}
.brand b{color:var(--orange)}
.brand .tld{color:var(--hdr-muted); font-weight:500}
.back-link{font-size:.92rem; color:var(--hdr-muted); display:flex; align-items:center; gap:6px; text-decoration:none; transition:color .2s}
.back-link:hover{color:var(--hdr-ink)}
.back-link svg{width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:2}

.content{padding:110px 0 80px}
.content h1{font-weight:800; letter-spacing:-.02em; font-size:clamp(1.8rem,5vw,2.4rem); line-height:1.15; margin:0 0 .4rem; overflow-wrap:anywhere}
.content h1::after{content:""; display:block; width:56px; height:4px; background:var(--orange); border-radius:2px; margin-top:.7rem}
.content .eff-date{color:var(--muted); font-size:.92rem; margin:1rem 0 2rem}
.content h2{font-weight:700; font-size:1.2rem; color:var(--ink); margin:2.2rem 0 .6rem; letter-spacing:-.01em}
.content h3{font-weight:700; font-size:1.02rem; color:var(--ink); margin:1.6rem 0 .3rem}
.content p{color:var(--muted); font-size:1rem; margin:0 0 1rem; max-width:68ch; overflow-wrap:anywhere}
.content ul{color:var(--muted); margin:0 0 1rem; padding-left:1.4em}
.content ul li{margin-bottom:.5em; font-size:1rem; overflow-wrap:anywhere}
.content strong{color:var(--ink)}
.content em{color:var(--ink)}
.content .email-link{display:inline-block; margin-top:.2rem; font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:.95rem}
.content .note{margin-top:2rem; padding:14px 16px; border:1px solid var(--line-2); border-left:4px solid var(--orange); border-radius:12px; background:var(--panel); font-size:.9rem; color:var(--muted)}
.content .callout{margin:0 0 1.6rem; padding:16px 18px; border:1px solid var(--line-2); border-left:4px solid var(--orange); border-radius:12px; background:var(--panel)}
.content .callout p{margin:0; color:var(--ink)}

footer.ft{border-top:1px solid var(--line); padding:32px 0; text-align:center}
footer.ft p{color:var(--muted); font-size:.82rem; margin:0}
footer.ft a{color:var(--muted)}
footer.ft a:hover{color:var(--link-h)}
