:root{
  --mint:#98C0B6; --mint-light:#CDE5DF; --sand:#E9DEC9;
  --sand-dark:#DFCDAE; --green-dark:#2E5249; --white:#FFFFFF;
}
*{margin:0;padding:0;box-sizing:border-box;}
html,body{background:var(--sand);color:var(--green-dark);font-family:'Inter',sans-serif;line-height:1.65;}
h1,h2,h3{font-family:'Fraunces',serif;font-weight:500;line-height:1.15;}
a{color:var(--green-dark);transition:color .25s;}
a:hover{color:#5E9C8C;}
.legal-header{
  position:sticky;top:0;z-index:10;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:18px 28px;background:rgba(233,222,201,.92);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(46,82,73,.08);
}
.legal-logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:'Fraunces',serif;font-weight:600;font-size:18px;color:var(--green-dark);}
.legal-logo svg{width:28px;height:auto;flex:none;}
.legal-back{font-size:14px;font-weight:500;text-decoration:none;color:rgba(46,82,73,.75);}
.legal-back:hover{color:var(--green-dark);}
.legal-main{max-width:760px;margin:0 auto;padding:56px 28px 72px;}
.legal-main h1{font-size:clamp(32px,5vw,44px);margin-bottom:10px;}
.legal-updated{font-size:13px;opacity:.6;margin-bottom:36px;}
.legal-content h2{font-size:clamp(22px,3.5vw,28px);margin:36px 0 14px;}
.legal-content h2:first-child{margin-top:0;}
.legal-content p,.legal-content li{font-size:15px;font-weight:300;margin-bottom:14px;}
.legal-content ul{margin:0 0 14px 1.2em;}
.legal-content li{margin-bottom:8px;}
.legal-content a{font-weight:500;}
.legal-box{
  background:var(--white);border:1px solid rgba(46,82,73,.08);
  border-radius:16px;padding:22px 24px;margin:18px 0 24px;
  box-shadow:0 16px 40px -32px rgba(46,82,73,.35);
}
.legal-box p:last-child{margin-bottom:0;}
.legal-foot{
  background:var(--green-dark);color:rgba(255,255,255,.55);
  padding:18px 28px;text-align:center;font-size:12px;
}
.legal-foot a{color:rgba(255,255,255,.7);text-decoration:none;margin:0 8px;}
.legal-foot a:hover{color:#fff;}
.legal-foot .ms-brand{
  font-weight:700;font-family:'Fraunces',serif;font-style:italic;
  background-image:linear-gradient(120deg,#98C0B6,#CDE5DF,#E9DEC9,#98C0B6);
  background-size:220% auto;-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
@media(max-width:600px){
  .legal-header{padding:14px 18px;flex-wrap:wrap;}
  .legal-main{padding:40px 20px 56px;}
}
