:root{
  --ink:#132E48;
  --ink-soft:#3c5674;
  --cream:#FDF8EF;
  --blush:#FBDCDE;
  --blush-deep:#F3B9C0;
  --sky:#B6DADD;
  --white:#FFFFFF;
  --radius:26px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Poppins', sans-serif;
  background:var(--cream);
  color:var(--ink);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
.wrap{max-width:900px; margin:0 auto; padding:0 24px;}
.eyebrow{
  font-weight:700; font-size:13px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--blush-deep); margin-bottom:14px; display:flex; align-items:center; gap:10px;
}
.eyebrow::before{content:""; width:22px; height:2px; background:var(--blush-deep); display:inline-block;}
.mail-link{border-bottom:2px solid transparent; transition:border-color .2s ease;}
.mail-link:hover{border-color:currentColor;}

/* NAV */
header{
  position:fixed; top:0; left:0; right:0; z-index:100;
  padding:22px 0; background:rgba(253,248,239,.92); backdrop-filter:blur(10px); box-shadow:0 6px 24px rgba(19,46,72,.08);
}
nav{display:flex; align-items:center; justify-content:space-between; max-width:1180px; margin:0 auto; padding:0 24px;}
.logo-mark{height:34px;}
.nav-links{display:flex; gap:32px; align-items:center;}
.nav-links a{font-weight:600; font-size:15px; position:relative;}
.nav-links a::after{content:""; position:absolute; left:0; bottom:-6px; width:0; height:2px; background:var(--ink); transition:width .25s ease;}
.nav-links a:hover::after{width:100%;}
.menu-toggle{display:none; background:none; border:none; font-size:26px; color:var(--ink); cursor:pointer;}

/* LEGAL HERO */
.legal-hero{padding:150px 0 40px;}
.legal-hero h1{font-size:clamp(32px,4.6vw,48px); font-weight:800; letter-spacing:-.02em; margin-bottom:10px;}
.legal-hero .updated{color:var(--ink-soft); font-size:14px;}

/* LEGAL CONTENT */
.legal-content{background:var(--white); padding:50px 0 90px;}
.legal-content h2{font-size:20px; font-weight:800; margin:34px 0 12px;}
.legal-content h2:first-child{margin-top:0;}
.legal-content p{color:var(--ink-soft); font-size:15px; margin-bottom:14px; max-width:720px;}
.legal-content ul{margin:0 0 14px 20px; color:var(--ink-soft); font-size:15px;}
.legal-content li{margin-bottom:6px;}
.legal-content a{color:var(--ink); text-decoration:underline; font-weight:600;}
.legal-content strong{color:var(--ink);}
.legal-content table{width:100%; border-collapse:collapse; margin:16px 0 24px; font-size:13.5px;}
.legal-content th, .legal-content td{text-align:left; padding:10px 12px; border-bottom:1px solid rgba(19,46,72,.1); color:var(--ink-soft);}
.legal-content th{color:var(--ink); font-weight:700; background:var(--cream);}
.legal-content .note{
  background:var(--blush); color:var(--ink); padding:14px 18px; border-radius:14px;
  font-size:13.5px; max-width:720px; margin-bottom:20px;
}

/* FOOTER */
footer{background:var(--ink); color:var(--cream); padding:56px 0 30px;}
.footer-grid{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:24px; padding-bottom:36px; border-bottom:1px solid rgba(255,255,255,.14); max-width:1180px; margin:0 auto; padding-left:24px; padding-right:24px;}
.footer-links{display:flex; gap:30px; flex-wrap:wrap;}
.footer-links a{font-weight:600; font-size:14px; color:#c4d3e3;}
.footer-legal{display:flex; gap:22px; flex-wrap:wrap; padding-top:26px; font-size:12.5px; max-width:1180px; margin:0 auto; padding-left:24px; padding-right:24px;}
.footer-legal a{color:#8fa3ba;}
.footer-legal a:hover, .footer-legal a.current{color:var(--cream);}
.footer-bottom{display:flex; justify-content:space-between; padding-top:14px; font-size:13px; color:#8fa3ba; flex-wrap:wrap; gap:10px; max-width:1180px; margin:0 auto; padding-left:24px; padding-right:24px;}
.footer-bottom a{color:#8fa3ba;}
.footer-bottom a:hover{color:var(--cream);}

@media (max-width:860px){
  .nav-links{position:fixed; top:0; right:0; height:100vh; width:74%; max-width:320px;
    background:var(--ink); flex-direction:column; justify-content:center; align-items:flex-start;
    padding:40px; gap:26px; transform:translateX(100%); transition:transform .35s ease; overflow-y:auto; }
  .nav-links.open{transform:translateX(0);}
  .nav-links a{color:var(--cream); font-size:18px;}
  .menu-toggle{display:block;}
  .legal-hero{padding:130px 0 30px;}
}
