:root{
  --ivory:#F5EFE6;
  --sand:#E7DDD0;
  --taupe:#C8B8A6;
  --mocha:#7A6150;
  --espresso:#3D2B23;
  --espresso-dark:#2A1D17;
  --gold:#C68F2F;
  --gold-soft:#D1A861;
  --white:#FFFFFF;
}

*{ box-sizing:border-box; }

body{
  margin:0;
  min-height:100vh;
  font-family:'Jost',sans-serif;
  background:
    radial-gradient(120% 60% at 50% 0%, #4a3629 0%, transparent 55%),
    linear-gradient(180deg, var(--espresso) 0%, #4a3629 28%, var(--mocha) 60%, #8a7159 100%);
}

.policy-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  max-width:820px;
  margin:0 auto;
  padding:40px 24px 0;
}

.policy-mark{
  font-family:'Bodoni Moda',serif;
  font-size:20px;
  letter-spacing:.18em;
  color:var(--gold);
  text-decoration:none;
}

.policy-back{
  font-size:12px;
  font-weight:500;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--white);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color 200ms ease, color 200ms ease;
}
.policy-back:hover{ color:var(--gold-soft); border-color:var(--gold-soft); }

.policy-card{
  max-width:820px;
  margin:40px auto 96px;
  background:var(--white);
  color:#141414;
  border-radius:24px;
  padding:56px 40px;
  box-shadow:0 30px 80px rgba(20,20,14,.45);
}
@media (min-width:640px){
  .policy-card{ padding:72px; }
}

.policy-card h1{
  font-family:'Bodoni Moda',serif;
  font-weight:600;
  font-size:clamp(28px,4vw,40px);
  color:#000;
  margin:0 0 8px;
}

.policy-updated{
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--mocha);
  margin:0 0 40px;
}

.policy-card h2{
  font-family:'Bodoni Moda',serif;
  font-weight:600;
  font-size:clamp(19px,2.4vw,23px);
  color:#000;
  margin:2.25em 0 0.75em;
  padding-top:1.5em;
  border-top:1px solid var(--sand);
}
.policy-card h2:first-of-type{ margin-top:1.5em; }

.policy-card p{
  font-size:15px;
  line-height:1.8;
  color:#242424;
  margin:0 0 1em;
}

.policy-card ul{
  margin:0 0 1.25em;
  padding-left:0;
  list-style:none;
}
.policy-card li{
  position:relative;
  padding-left:22px;
  font-size:15px;
  line-height:1.75;
  color:#242424;
  margin-bottom:0.5em;
}
.policy-card li::before{
  content:'';
  position:absolute;
  left:2px;
  top:0.65em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--gold);
}

.policy-table{
  width:100%;
  border-collapse:collapse;
  margin:0 0 1.5em;
  font-size:14px;
}
.policy-table th,
.policy-table td{
  text-align:left;
  padding:12px 16px;
  border:1px solid var(--sand);
  vertical-align:top;
  line-height:1.6;
}
.policy-table th{
  background:var(--ivory);
  font-weight:600;
  color:#000;
}
.policy-table td{ color:#242424; }
.policy-table-wrap{ overflow-x:auto; margin:0 0 1.5em; }

.policy-card a{ color:var(--mocha); }
.policy-card a:hover{ color:var(--gold); }

.policy-footer-note{
  margin-top:3rem;
  padding-top:1.5rem;
  border-top:1px solid var(--sand);
  font-size:13px;
  color:var(--mocha);
}
