:root { --ink:#2d1837; --purple:#5b326b; --purple-dark:#3e204d; --pink:#d99aae; --pink-soft:#efd4dc; --paper:#fbf7f4; --cream:#f4ece8; --line:rgba(65,34,76,.16); --white:#fffdfb; color-scheme:light; font-family:"Helvetica Neue",Arial,sans-serif; color:var(--ink); background:var(--paper); }
* { box-sizing:border-box; }
body { margin:0; min-width:320px; line-height:1.6; background:var(--paper); }
a { color:inherit; }
.legal-shell { width:min(1080px,calc(100% - 48px)); margin-inline:auto; }
.legal-header { position:sticky; z-index:10; top:0; border-bottom:1px solid var(--line); background:rgba(251,247,244,.9); backdrop-filter:blur(16px); }
.legal-header__inner { min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.legal-brand { display:flex; align-items:center; gap:12px; text-decoration:none; }
.legal-brand > span { width:32px; height:32px; border:1px solid var(--purple); border-radius:50%; background:radial-gradient(circle at 38% 50%,var(--pink) 0 28%,transparent 29%); }
.legal-brand div { display:grid; }
.legal-brand strong { font:500 14px/1.3 Georgia,serif; }
.legal-brand small { color:rgba(45,24,55,.55); font-size:8px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.legal-back { padding-bottom:5px; border-bottom:1px solid var(--pink); font-size:9px; font-weight:700; letter-spacing:.12em; text-decoration:none; text-transform:uppercase; }
.legal-back span { margin-left:13px; }
.legal-document { padding:clamp(80px,10vw,130px) 0 120px; display:grid; grid-template-columns:150px minmax(0,720px); justify-content:center; gap:clamp(45px,8vw,100px); }
.legal-index { padding-top:13px; display:flex; flex-direction:column; gap:7px; color:rgba(45,24,55,.5); font-size:8px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.legal-index strong { color:var(--pink); font:500 13px/1 Georgia,serif; }
.legal-kicker { margin:0 0 23px; color:var(--purple); font-size:9px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.legal-document h1 { margin:0 0 45px; color:var(--ink); font:400 clamp(48px,6vw,76px)/.95 Georgia,serif; letter-spacing:-.045em; }
.legal-lead { margin:0 0 65px; padding-bottom:38px; border-bottom:1px solid var(--line); color:rgba(45,24,55,.7); font:400 clamp(19px,2vw,24px)/1.55 Georgia,serif; }
.legal-document section { padding:31px 0; display:grid; grid-template-columns:210px 1fr; gap:40px; border-bottom:1px solid var(--line); }
.legal-document h2 { margin:0; color:var(--purple); font:400 21px/1.25 Georgia,serif; }
.legal-document section p { margin:0; color:rgba(45,24,55,.67); font-size:14px; line-height:1.8; }
.legal-updated { margin:35px 0 0; color:rgba(45,24,55,.45); font-size:8px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.legal-review { margin-top:60px; padding:25px 28px; border-left:3px solid var(--pink); background:var(--pink-soft); }
.legal-review strong { color:var(--purple); font:400 18px/1.3 Georgia,serif; }
.legal-review p { margin:7px 0 0; color:rgba(45,24,55,.65); font-size:12px; line-height:1.7; }
.legal-footer { padding:28px 0; color:rgba(244,236,232,.55); background:var(--purple-dark); font-size:8px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.legal-footer > div { display:flex; align-items:center; justify-content:space-between; gap:25px; }
.legal-footer p { margin:0; }
.legal-footer nav { display:flex; gap:25px; }
.legal-footer a { text-decoration:none; }
.legal-footer a:hover { color:var(--white); }
@media(max-width:700px){.legal-shell{width:min(100% - 32px,1080px)}.legal-document{grid-template-columns:1fr;gap:22px}.legal-index{padding:0}.legal-document section{grid-template-columns:1fr;gap:12px}.legal-footer>div{align-items:flex-start;flex-direction:column}.legal-footer nav{align-items:flex-start;flex-direction:column;gap:10px}}