:root{
  --cream:#F2EDE6;
  --cream-deep:#E9E2D8;
  --ink:#16342A;
  --ink-soft:#4A6358;
  --sage:#7FA9A6;
  --sage-deep:#5E8A87;
  --blush:#F2DDD3;
  --gold:#EFD08A;
  --maxw:860px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:"Heebo","Segoe UI",Arial,sans-serif;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}

.legal-header{
  padding:28px 0;
  border-bottom:1px solid rgba(22,52,42,.12);
}
.legal-header a{
  color:var(--sage-deep);
  text-decoration:none;
  font-weight:700;
  font-size:14px;
  letter-spacing:.02em;
}
.legal-header a:hover{color:var(--ink);}
.legal-brand{
  display:block;
  margin-top:10px;
  font-weight:900;
  font-size:19px;
  letter-spacing:.04em;
  color:var(--ink);
}

.legal-main{padding:44px 0 90px;}
.legal-updated{
  font-size:13px;
  color:var(--ink-soft);
  margin:0 0 36px;
}
h1.legal-title{
  font-size:clamp(26px,4vw,38px);
  line-height:1.2;
  font-weight:900;
  letter-spacing:-.01em;
  margin:0 0 6px;
}
.legal-main h2{
  font-size:clamp(18px,2.2vw,22px);
  font-weight:800;
  margin:40px 0 14px;
  padding-top:20px;
  border-top:1px solid rgba(22,52,42,.1);
}
.legal-main h2:first-of-type{border-top:none; padding-top:0; margin-top:30px;}
.legal-main p{
  font-size:15.5px;
  line-height:1.85;
  font-weight:300;
  color:var(--ink-soft);
  margin:0 0 14px;
}
.legal-main ul, .legal-main ol{
  margin:0 0 16px;
  padding-inline-start:22px;
}
.legal-main li{
  font-size:15.5px;
  line-height:1.8;
  font-weight:300;
  color:var(--ink-soft);
  margin-bottom:8px;
}
.legal-main strong{color:var(--ink); font-weight:700;}
.todo{
  display:inline-block;
  background:var(--gold);
  color:var(--ink);
  font-weight:700;
  font-size:13px;
  padding:1px 8px;
  border-radius:4px;
}
.legal-box{
  background:#fff;
  border:1px solid rgba(22,52,42,.1);
  border-radius:10px;
  padding:22px 24px;
  margin:0 0 22px;
}

.legal-form{display:flex; flex-direction:column; gap:14px; max-width:460px;}
.legal-form input, .legal-form textarea{
  border:1px solid rgba(22,52,42,.22);
  border-radius:10px;
  padding:13px 16px;
  font-family:inherit; font-size:15px;
  background:#fff; color:var(--ink);
  outline:none;
}
.legal-form input:focus, .legal-form textarea:focus{border-color:var(--sage-deep);}
.legal-form label{font-size:13.5px; font-weight:700; color:var(--ink); margin-bottom:-8px;}
.legal-btn{
  align-self:flex-start;
  background:var(--ink); color:var(--cream);
  border:none; border-radius:99px;
  padding:14px 30px;
  font-family:inherit; font-weight:700; font-size:15px;
  cursor:pointer;
}
.legal-btn:hover{background:var(--sage-deep);}
.legal-note{
  font-size:13.5px;
  color:var(--ink-soft);
  margin-top:18px;
}
.legal-footer{
  padding:30px 0 50px;
  border-top:1px solid rgba(22,52,42,.1);
  font-size:13px;
  color:var(--ink-soft);
}
.legal-footer a{color:var(--sage-deep); text-decoration:none;}
.legal-footer a:hover{color:var(--ink);}
.hp-field{position:absolute !important; inset-inline-start:-9999px !important; width:1px; height:1px; overflow:hidden;}
