.page-privacy{
  --legal-toc-w:250px;
  --legal-rule:rgba(200,150,62,.38);
  --legal-hair:rgba(23,21,15,.12);
  background:var(--paper);
  color:var(--ink);
}
.page-privacy .legal-hero{
  position:relative;
  overflow:hidden;
  background:var(--ink-green);
  color:var(--paper);
  padding:clamp(1.25rem,3.5vw,2.25rem) 0 clamp(2.25rem,5.5vw,4rem);
}
.page-privacy .legal-hero::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:clamp(6px,2vw,24px);
  background:linear-gradient(180deg,var(--gold-light),var(--gold) 42%,var(--gold-deep));
  opacity:.9;
}
.page-privacy .legal-hero::after{
  content:"";
  position:absolute;
  right:-12%;
  top:-45%;
  width:52%;
  aspect-ratio:1;
  background:radial-gradient(circle at center,rgba(232,163,61,.26),transparent 66%);
  pointer-events:none;
}
.page-privacy .legal-hero__inner{
  position:relative;
  z-index:1;
  padding-left:clamp(1rem,4vw,2.75rem);
}
.page-privacy .legal-hero .breadcrumb{margin-bottom:.9rem;}
.page-privacy .legal-hero__version{
  display:inline-block;
  margin:0 0 1rem;
  padding:.34rem .7rem;
  border:1px solid rgba(200,150,62,.6);
  border-radius:2px;
  color:var(--gold-light);
  font-size:12px;
  letter-spacing:.08em;
}
.page-privacy .legal-hero__title{
  margin:0 0 1rem;
  max-width:20ch;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(29px,5.2vw,56px);
  line-height:1.2;
  letter-spacing:-.01em;
  color:var(--paper);
}
.page-privacy .legal-hero__lede{
  margin:0;
  max-width:62ch;
  font-size:clamp(15px,1.7vw,18px);
  line-height:1.9;
  color:rgba(247,241,230,.84);
}
.page-privacy .legal-banner{
  margin:0;
  line-height:0;
  background:var(--ink-green);
}
.page-privacy .legal-banner img{
  display:block;
  width:100%;
  height:clamp(130px,24vw,280px);
  object-fit:cover;
}
.page-privacy .legal-layout{
  display:grid;
  gap:1.75rem;
  padding-block:2.25rem 4rem;
}
.page-privacy .legal-toc{
  border:1px solid var(--legal-rule);
  border-radius:3px;
  background:linear-gradient(180deg,rgba(232,220,198,.6),rgba(247,241,230,0) 88%);
  padding:1rem 1.05rem 1.15rem;
}
.page-privacy .legal-toc__title{
  margin:0 0 .7rem;
  font-size:11px;
  letter-spacing:.18em;
  color:var(--gold-deep);
}
.page-privacy .legal-toc__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.1rem;
}
.page-privacy .legal-toc__link{
  display:flex;
  align-items:baseline;
  gap:.55rem;
  min-height:44px;
  padding:.55rem .2rem;
  border-bottom:1px solid rgba(23,21,15,.08);
  color:var(--ink);
  font-size:14px;
  text-decoration:none;
  transition:color .18s var(--ease),background-color .18s var(--ease);
}
.page-privacy .legal-toc__link::after{
  content:"";
  flex:1 1 auto;
  height:1px;
  background:var(--gold);
  opacity:.4;
  transform:translateY(-4px);
}
.page-privacy .legal-toc__num{
  color:var(--gold-deep);
  font-size:12px;
  letter-spacing:.06em;
}
.page-privacy .legal-toc__link:hover,
.page-privacy .legal-toc__link:focus-visible{
  color:var(--gold-deep);
  background:rgba(232,163,61,.12);
  outline:none;
}
.page-privacy .legal-toc__link:focus-visible{
  outline:2px solid var(--amber);
  outline-offset:2px;
}
.page-privacy .legal-toc__foot{
  margin:1rem 0 0;
  font-size:12.5px;
  line-height:1.8;
  color:var(--mist);
}
.page-privacy .legal-body{
  min-width:0;
  max-width:70ch;
}
.page-privacy .legal-section{
  padding-block:.5rem 2rem;
}
.page-privacy .legal-section + .legal-section{
  margin-top:1.75rem;
  padding-top:2rem;
  border-top:1px solid var(--legal-rule);
}
.page-privacy .legal-section__title{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.55rem;
  margin:0 0 .6rem;
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(20px,2.7vw,27px);
  line-height:1.42;
  color:var(--ink-green);
}
.page-privacy .legal-section__num{
  font-size:12px;
  letter-spacing:.14em;
  color:var(--gold-deep);
  border-bottom:2px solid var(--gold);
  padding-bottom:2px;
}
.page-privacy .legal-anchor{
  font-family:var(--font-mono);
  font-size:14px;
  color:var(--gold);
  text-decoration:none;
  opacity:.42;
  transition:opacity .18s var(--ease);
}
.page-privacy .legal-anchor:hover,
.page-privacy .legal-anchor:focus-visible{
  opacity:1;
}
.page-privacy .legal-anchor:focus-visible{
  outline:2px solid var(--amber);
  outline-offset:2px;
}
.page-privacy .legal-body p{
  margin:.7rem 0;
  font-size:16px;
  line-height:1.92;
}
.page-privacy .legal-cards{
  display:grid;
  gap:.9rem;
  margin-top:1.3rem;
}
.page-privacy .legal-card{
  padding:.95rem 1rem 1.1rem;
  background:rgba(232,220,198,.5);
  border-top:2px solid var(--gold);
  border-radius:2px;
}
.page-privacy .legal-card__title{
  margin:0;
  font-family:var(--font-display);
  font-weight:700;
  font-size:16px;
  letter-spacing:.02em;
  color:var(--ink-green);
}
.page-privacy .legal-list{
  list-style:none;
  margin:.65rem 0 0;
  padding:0;
  display:grid;
  gap:.45rem;
}
.page-privacy .legal-list li{
  position:relative;
  padding-left:1rem;
  font-size:14.5px;
  line-height:1.76;
  color:rgba(23,21,15,.88);
}
.page-privacy .legal-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.78em;
  width:.5rem;
  height:1px;
  background:var(--gold);
}
.page-privacy .legal-rows{
  margin:1.25rem 0;
  border-top:1px solid var(--legal-hair);
}
.page-privacy .legal-row{
  display:grid;
  gap:.15rem;
  padding:.75rem .85rem;
  border-bottom:1px solid var(--legal-hair);
}
.page-privacy .legal-row:nth-child(odd){
  background:rgba(232,220,198,.42);
}
.page-privacy .legal-row__key{
  font-weight:500;
  font-size:15px;
  line-height:1.6;
  color:var(--ink-green);
}
.page-privacy .legal-row__val{
  margin:0;
  font-size:14.5px;
  line-height:1.82;
  color:rgba(23,21,15,.86);
}
.page-privacy .legal-callout{
  margin:1.6rem 0 0;
  padding:1rem 1.1rem 1.15rem;
  background:var(--ticket);
  border-left:3px solid var(--gold);
  border-radius:0 3px 3px 0;
}
.page-privacy .legal-callout p{
  margin:.35rem 0;
  font-size:14.5px;
  line-height:1.82;
}
.page-privacy .legal-callout__label{
  color:var(--gold-deep);
  font-size:11px;
  letter-spacing:.16em;
}
.page-privacy .legal-foot{
  margin-top:2rem;
  padding-top:1.6rem;
  border-top:1px solid var(--legal-rule);
}
.page-privacy .legal-foot__text{
  margin:0;
  font-size:15px;
  line-height:1.85;
  color:rgba(23,21,15,.82);
}
.page-privacy .legal-foot__actions{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-top:1rem;
}
.page-privacy .legal-totop{
  position:fixed;
  right:1rem;
  bottom:1rem;
  z-index:20;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:50%;
  border:1px solid rgba(200,150,62,.62);
  background:var(--ink-green);
  color:var(--gold-light);
  font-size:16px;
  line-height:1;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(14,42,34,.38);
  transition:background-color .2s var(--ease),color .2s var(--ease);
}
.page-privacy .legal-totop:hover,
.page-privacy .legal-totop:focus-visible{
  background:var(--gold);
  color:var(--ink-green);
}
.page-privacy .legal-totop:focus-visible{
  outline:2px solid var(--amber);
  outline-offset:2px;
}
@media (min-width:700px){
  .page-privacy .legal-cards{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1rem;
  }
  .page-privacy .legal-row{
    grid-template-columns:minmax(0,12rem) minmax(0,1fr);
    gap:1.1rem;
    align-items:baseline;
  }
  .page-privacy .legal-body p{
    font-size:17px;
  }
}
@media (min-width:900px){
  .page-privacy .legal-layout{
    grid-template-columns:var(--legal-toc-w) minmax(0,1fr);
    gap:clamp(2rem,5vw,4.5rem);
    align-items:start;
    padding-block:3.5rem 5.5rem;
  }
  .page-privacy .legal-toc{
    position:sticky;
    top:1.5rem;
  }
  .page-privacy .legal-hero__inner{
    padding-left:clamp(2rem,5vw,4rem);
  }
}
@media (prefers-reduced-motion:reduce){
  .page-privacy .legal-toc__link,
  .page-privacy .legal-anchor,
  .page-privacy .legal-totop{
    transition:none;
  }
}
</main>
