.page-privacy{
  --pv-measure:720px;
  --pv-rail:158px;
  background:var(--paper);
  color:var(--ink);
  padding-bottom:clamp(40px,6vw,72px);
}

.page-privacy .breadcrumb{margin-top:clamp(14px,2.4vw,24px);}

.page-privacy .pv-hero{
  padding-top:clamp(18px,3.6vw,34px);
}

.page-privacy .pv-kicker{
  font-size:12px;
  letter-spacing:.2em;
  color:var(--muted);
  margin:0;
  text-transform:uppercase;
}

.page-privacy h1{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(29px,5.2vw,52px);
  line-height:1.2;
  letter-spacing:-.01em;
  margin:12px 0 0;
  max-width:16em;
}

.page-privacy .pv-lead{
  font-size:clamp(15px,1.5vw,17px);
  line-height:1.92;
  color:var(--muted);
  max-width:34em;
  margin:16px 0 0;
}

.page-privacy .pv-figure{
  margin:clamp(22px,4vw,38px) 0 0;
  position:relative;
  border:1px solid var(--line-gold);
  background:
    repeating-linear-gradient(135deg,rgba(200,150,62,.07) 0 1px,transparent 1px 9px),
    var(--sand);
  overflow:hidden;
}

.page-privacy .pv-figure::before,
.page-privacy .pv-figure::after{
  content:"";
  position:absolute;
  width:14px;
  height:14px;
  border:1px solid var(--gold);
  z-index:2;
}
.page-privacy .pv-figure::before{top:8px;left:8px;border-right:0;border-bottom:0;}
.page-privacy .pv-figure::after{bottom:8px;right:8px;border-left:0;border-top:0;}

.page-privacy .pv-figure img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1200/360;
  object-fit:cover;
  max-width:100%;
}

.page-privacy .pv-shell{
  margin-top:clamp(28px,5vw,52px);
}

.page-privacy .pv-rail-title{
  font-size:11px;
  letter-spacing:.22em;
  color:var(--gold);
  margin:0 0 10px;
}

.page-privacy .pv-toc{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.page-privacy .pv-toc a{
  display:inline-flex;
  align-items:baseline;
  gap:7px;
  padding:6px 11px;
  border:1px solid var(--line);
  font-size:13px;
  line-height:1.5;
  color:var(--ink);
  text-decoration:none;
  transition:border-color var(--ease),color var(--ease),background var(--ease);
}

.page-privacy .pv-toc a .mono{
  font-size:11px;
  color:var(--gold);
  letter-spacing:.06em;
}

.page-privacy .pv-toc a:hover{
  border-color:var(--gold);
  color:var(--cinnabar);
}

.page-privacy .pv-toc a:focus-visible{
  outline:2px solid var(--gold-hi);
  outline-offset:2px;
}

.page-privacy .pv-body{
  margin-top:clamp(26px,4vw,0px);
  max-width:var(--pv-measure);
}

.page-privacy .pv-sec{
  padding-block:clamp(26px,4vw,40px);
  scroll-margin-top:96px;
  position:relative;
}

.page-privacy .pv-sec:first-child{padding-top:0;}

.page-privacy .pv-sec + .pv-sec{
  border-top:1px solid var(--line-gold);
}

.page-privacy .pv-sec:target::before{
  content:"";
  position:absolute;
  left:-14px;
  top:clamp(26px,4vw,40px);
  bottom:clamp(26px,4vw,40px);
  width:3px;
  background:var(--gold);
}

.page-privacy .pv-sec:first-child:target::before{top:0;}

.page-privacy .pv-h2{
  display:flex;
  align-items:baseline;
  gap:12px;
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(20px,2.6vw,27px);
  line-height:1.35;
  margin:0;
}

.page-privacy .pv-num{
  font-size:13px;
  font-weight:700;
  letter-spacing:.1em;
  color:var(--gold);
  flex:none;
  transition:color var(--ease);
}

.page-privacy .pv-sec:target .pv-num{color:var(--cinnabar);}

.page-privacy .pv-body p{
  margin:14px 0 0;
  font-size:15.5px;
  line-height:1.92;
  max-width:34em;
}

.page-privacy .pv-body p a{
  color:var(--cinnabar);
  text-decoration:none;
  border-bottom:1px solid var(--line-gold);
  transition:border-color var(--ease),color var(--ease);
}

.page-privacy .pv-body p a:hover{
  color:var(--gold);
  border-bottom-color:var(--gold);
}

.page-privacy .pv-sec--sand .pv-note{
  margin-top:18px;
  background:var(--sand);
  border-left:3px solid var(--gold);
  padding:20px 20px 22px;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%);
}

.page-privacy .pv-note p{
  margin:0;
  max-width:33em;
  color:var(--ink);
}

.page-privacy .pv-note p + p{margin-top:12px;}

.page-privacy .pv-more{
  margin-top:14px;
  border:1px solid var(--line);
  background:rgba(231,218,196,.42);
}

.page-privacy .pv-more summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:12px 16px;
  cursor:pointer;
  list-style:none;
  font-size:14px;
  font-weight:600;
  color:var(--navy);
  line-height:1.6;
  transition:background var(--ease);
}

.page-privacy .pv-more summary::-webkit-details-marker{display:none;}

.page-privacy .pv-more summary::after{
  content:"+";
  font-family:var(--mono);
  font-size:16px;
  color:var(--gold);
  flex:none;
}

.page-privacy .pv-more[open] summary::after{content:"−";}
.page-privacy .pv-more summary:hover{background:rgba(200,150,62,.1);}

.page-privacy .pv-more summary:focus-visible{
  outline:2px solid var(--gold-hi);
  outline-offset:-2px;
}

.page-privacy .pv-more p{
  margin:0;
  padding:0 16px 16px;
  font-size:14px;
  line-height:1.9;
  color:var(--muted);
  max-width:33em;
}

.page-privacy .pv-contact{
  margin:18px 0 0;
  display:grid;
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}

.page-privacy .pv-row{
  background:var(--paper);
  display:grid;
  gap:4px;
  padding:14px 16px;
}

.page-privacy .pv-row dt{
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:.1em;
  color:var(--celadon);
}

.page-privacy .pv-row dd{
  margin:0;
  display:grid;
  gap:4px;
  font-size:15px;
  line-height:1.75;
  word-break:break-word;
}

.page-privacy .pv-row dd a{
  color:var(--navy);
  text-decoration:none;
  border-bottom:1px solid var(--line-gold);
  justify-self:start;
  transition:color var(--ease),border-color var(--ease);
}

.page-privacy .pv-row dd a:hover{
  color:var(--cinnabar);
  border-bottom-color:var(--cinnabar);
}

.page-privacy .pv-row dd span{
  font-size:13px;
  color:var(--muted);
  line-height:1.7;
}

.page-privacy .pv-plain{
  color:var(--ink);
  font-size:15px;
}

.page-privacy .pv-tail{
  margin-top:clamp(24px,3.6vw,34px);
  font-size:14px;
  line-height:1.95;
  color:var(--muted);
}

.page-privacy .pv-tail--end{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid var(--line-soft);
}

.page-privacy .pv-tail .btn{
  display:inline-block;
  text-decoration:none;
}

@media (min-width:900px){
  .page-privacy .pv-shell{
    display:grid;
    grid-template-columns:var(--pv-rail) minmax(0,1fr);
    gap:clamp(28px,4vw,56px);
    align-items:start;
  }

  .page-privacy .pv-rail{
    position:sticky;
    top:96px;
    padding-left:2px;
    border-left:1px solid var(--line);
  }

  .page-privacy .pv-rail-title{
    padding-left:12px;
  }

  .page-privacy .pv-toc{
    flex-direction:column;
    flex-wrap:nowrap;
    gap:2px;
  }

  .page-privacy .pv-toc a{
    border:0;
    border-left:2px solid transparent;
    padding:7px 0 7px 12px;
    font-size:13px;
    line-height:1.55;
    background:none;
  }

  .page-privacy .pv-toc a:hover{
    border-left-color:var(--gold);
    background:rgba(200,150,62,.09);
  }

  .page-privacy .pv-body{
    margin-top:0;
    padding-left:clamp(0px,1.5vw,18px);
  }

  .page-privacy .pv-row{
    grid-template-columns:132px minmax(0,1fr);
    gap:16px;
    align-items:baseline;
    padding:16px 18px;
  }

  .page-privacy .pv-row dt{
    padding-top:2px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-privacy .pv-toc a,
  .page-privacy .pv-body p a,
  .page-privacy .pv-more summary,
  .page-privacy .pv-row dd a,
  .page-privacy .pv-num{
    transition:none;
  }
}
