*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
:root{--pink:#e8429a;--purple:#9b4dca;--grad:linear-gradient(135deg,#e8429a,#9b4dca);--cream:#fdf9f6;--border:#f0e8ec;--muted:#9a8a90;--dark:#1a1218;}
body{font-family:"Montserrat",sans-serif;font-weight:300;color:#2a2020;background:#fff;-webkit-font-smoothing:antialiased;}
.top-bar{height:4px;background:var(--grad);}

nav{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;}
.nav-inner{max-width:820px;margin:0 auto;padding:16px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;}
.nav-logo img{width:44px;height:44px;object-fit:contain;}
.logo-h{font-family:"Great Vibes",cursive;font-size:27px;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;}
.logo-s{font-size:8px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);display:block;margin-top:2px;}
.nav-back{color:var(--muted);text-decoration:none;font-size:11.5px;letter-spacing:0.5px;white-space:nowrap;transition:color 0.2s;}
.nav-back:hover{color:var(--pink);}

.legal-hero{background:var(--cream);border-bottom:1px solid var(--border);padding:56px 32px 48px;}
.legal-hero-inner{max-width:820px;margin:0 auto;}
.eyebrow{font-size:9px;letter-spacing:4px;text-transform:uppercase;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600;display:block;margin-bottom:14px;}
.legal-hero h1{font-family:"Cormorant Garamond",serif;font-size:44px;font-weight:300;line-height:1.1;margin-bottom:14px;}
.updated{font-size:12px;color:var(--muted);}

main{max-width:820px;margin:0 auto;padding:56px 32px 72px;}
section{margin-bottom:40px;}
h2{font-family:"Cormorant Garamond",serif;font-size:25px;font-weight:400;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border);}
h3{font-size:13px;font-weight:600;margin:20px 0 8px;letter-spacing:0.2px;}
p{font-size:14px;line-height:1.85;color:#4a3d43;margin-bottom:14px;}
ul{margin:0 0 16px 0;padding-left:20px;}
li{font-size:14px;line-height:1.8;color:#4a3d43;margin-bottom:8px;}
a{color:var(--pink);}
strong{font-weight:600;color:#2a2020;}

.callout{background:var(--cream);border:1px solid var(--border);border-left:3px solid var(--pink);border-radius:0 12px 12px 0;padding:20px 24px;margin:0 0 20px;}
.callout p:last-child{margin-bottom:0;}
.callout p{font-size:13.5px;}

.contact-card{background:var(--dark);border-radius:18px;padding:32px;}
.contact-card h2{color:#fff;border-bottom-color:rgba(255,255,255,0.12);}
.contact-card p{color:rgba(255,255,255,0.65);font-size:13.5px;}
.contact-card a{color:#f584bd;}
.contact-rows{display:grid;gap:2px;margin-top:6px;}
.crow{display:flex;gap:10px;font-size:13.5px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,0.08);}
.crow:last-child{border-bottom:none;}
.crow dt{color:rgba(255,255,255,0.45);min-width:76px;font-size:9px;letter-spacing:2px;text-transform:uppercase;padding-top:4px;}
.crow dd{color:#fff;}
.crow dd a{color:#fff;text-decoration:none;}
.crow dd a:hover{color:#f584bd;}

footer{background:var(--dark);padding:24px 32px;border-top:1px solid rgba(255,255,255,0.06);}
.footer-inner{max-width:820px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;}
.footer-brand{font-family:"Great Vibes",cursive;font-size:21px;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.footer-links{display:flex;gap:18px;}
.footer-links a{color:#6b5b62;font-size:11px;text-decoration:none;transition:color 0.2s;}
.footer-links a:hover{color:var(--pink);}

a:focus-visible,button:focus-visible{outline:2px solid var(--pink);outline-offset:3px;border-radius:2px;}

@media(max-width:640px){
  .legal-hero{padding:40px 22px 36px;}
  .legal-hero h1{font-size:33px;}
  main{padding:40px 22px 56px;}
  .nav-inner{padding:14px 22px;}
  .logo-h{font-size:23px;}
  .contact-card{padding:24px;}
  .crow{flex-direction:column;gap:2px;}
}
