.policy-hero{
  background:linear-gradient(150deg, var(--purple-deep), #402A5C);
  color:var(--white);
  padding:70px 0 56px;
  text-align:center;
}
.policy-hero .eyebrow{
  font-family:'Cormorant Garamond', serif; font-style:italic; color:var(--gold-light);
  display:inline-flex; align-items:center; gap:12px; margin-bottom:14px; font-size:1.05rem;
}
.policy-hero .eyebrow::before, .policy-hero .eyebrow::after{ content:""; width:30px; height:1px; background:var(--gold-light); }
.policy-hero h1{ color:var(--white); font-size:clamp(2rem,4vw,2.6rem); }
.policy-hero p{ margin-top:14px; color:rgba(255,255,255,0.75); max-width:520px; margin-left:auto; margin-right:auto; }

.toc{
  display:flex; flex-wrap:wrap; gap:12px; justify-content:center;
  margin-top:34px;
}
.toc a{
  padding:10px 20px;
  border:1px solid rgba(232,212,168,0.4);
  color:var(--gold-light);
  font-size:0.78rem; letter-spacing:0.08em; text-transform:uppercase;
  text-decoration:none;
  transition:all 0.3s ease;
}
.toc a:hover{ background:var(--gold); color:var(--purple-deep); border-color:var(--gold); }

.policy-main{ max-width:900px; margin:0 auto; padding:70px 32px 100px; }
.policy-block{ margin-bottom:70px; scroll-margin-top:110px; }
.policy-block h2{ font-size:1.7rem; padding-bottom:16px; margin-bottom:22px; border-bottom:1px solid var(--blush); }
.policy-block h3{ font-size:1.15rem; margin:26px 0 10px; color:var(--purple); }
.policy-block p{ color:var(--ink-soft); margin-bottom:14px; line-height:1.75; }
.policy-block ul{ margin:0 0 16px 0; list-style:none; }
.policy-block ul li{ color:var(--ink-soft); padding-left:20px; position:relative; margin-bottom:8px; }
.policy-block ul li::before{ content:""; position:absolute; left:0; top:10px; width:5px; height:5px; background:var(--gold); border-radius:50%; }
.policy-block strong{ color:var(--purple-deep); font-weight:500; }
.updated{
  display:inline-block; margin-top:8px; font-size:0.78rem;
  letter-spacing:0.06em; text-transform:uppercase; color:var(--gold-deep);
}
.note-box{
  background:var(--blush); border-left:2px solid var(--gold);
  padding:20px 24px; margin:18px 0; font-size:0.92rem; color:var(--ink-soft);
}
@media (max-width:640px){
  .policy-main{ padding:50px 22px 70px; }
}
