.page-privacy{
  --privacy-band-w:6px;
  --privacy-seal-size:3.2rem;
  background-color:var(--c-paper);
  background-image:
    radial-gradient(circle at 15% 20%, rgba(107,203,154,0.08) 0, transparent 40%),
    radial-gradient(circle at 85% 60%, rgba(0,168,157,0.06) 0, transparent 50%),
    linear-gradient(165deg, #F5F2E6 0%, #f3ecdd 55%, #eef0e2 100%);
  color:var(--c-ink);
  font-family:var(--font-body);
  line-height:1.8;
  overflow-x:hidden;
}
.page-privacy .page-wrap{
  width:min(100% - 2.5rem, var(--container));
  margin-inline:auto;
}
.page-privacy .section{
  padding-block:clamp(2.5rem, 6vw, 5rem);
}
.page-privacy .breadcrumb{
  display:flex;
  align-items:center;
  gap:.375rem;
  margin-bottom:2rem;
  font-size:.8125rem;
  color:var(--c-gray);
}
.page-privacy .breadcrumb a{
  color:var(--c-primary-dark);
  text-decoration:none;
  transition:opacity .2s;
}
.page-privacy .breadcrumb a:hover{
  opacity:.75;
}
.page-privacy .section-number,
.page-privacy .clause-number{
  font-family:var(--font-head);
  font-size:1.75rem;
  line-height:1;
  color:var(--c-accent);
  margin:0 0 .5rem;
  letter-spacing:.08em;
}
.page-privacy .section-title,
.page-privacy .hero-title,
.page-privacy .clause-title{
  font-family:var(--font-head);
  font-weight:700;
  margin:0;
  letter-spacing:.05em;
}
.page-privacy .hero{
  position:relative;
  isolation:isolate;
  padding-block:clamp(3rem, 8vw, 6rem) clamp(2rem, 5vw, 3.5rem);
  border-bottom:var(--privacy-band-w) solid var(--c-primary);
}
.page-privacy .hero-bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.16;
  pointer-events:none;
  mix-blend-mode:multiply;
  z-index:-1;
}
.page-privacy .hero-copy{
  position:relative;
  max-width:52rem;
  padding-left:clamp(1rem, 4vw, 3rem);
  border-left:var(--privacy-band-w) solid var(--c-primary);
}
.page-privacy .hero-title{
  font-size:clamp(2.4rem, 8vw, 4.2rem);
  color:var(--c-deep);
}
.page-privacy .hero-lead{
  font-family:var(--font-head);
  font-size:clamp(1rem, 2.6vw, 1.35rem);
  color:var(--c-accent-dark);
  margin:.75rem 0 1rem;
}
.page-privacy .hero-desc{
  font-size:1rem;
  max-width:42rem;
  color:var(--c-deep-dark);
}
.page-privacy .privacy-index{
  padding-top:clamp(2rem, 5vw, 3.5rem);
  padding-bottom:clamp(2.5rem, 6vw, 4rem);
  border-bottom:1px solid rgba(0,168,157,.25);
}
.page-privacy .privacy-index-nav{
  margin-top:2rem;
  display:flex;
  flex-direction:column;
  gap:.875rem;
}
.page-privacy .privacy-index-nav a{
  display:flex;
  align-items:center;
  gap:.875rem;
  width:fit-content;
  font-size:1.05rem;
  font-weight:600;
  color:var(--c-ink);
  text-decoration:none;
  padding:.375rem 1rem .375rem 0;
  border-bottom:2px solid transparent;
  transition:border-color .25s, color .25s, transform .25s;
}
.page-privacy .privacy-index-nav a:hover{
  color:var(--c-primary-dark);
  border-bottom-color:var(--c-primary);
  transform:translateX(.5rem);
}
.page-privacy .index-num{
  font-family:var(--font-head);
  font-size:1.15rem;
  color:var(--c-accent);
  width:1.6em;
  display:inline-block;
}
.page-privacy .privacy-clauses{
  padding-block:clamp(2.5rem, 6vw, 4.5rem);
}
.page-privacy .clause-block{
  padding:clamp(1.5rem, 4vw, 3rem) clamp(1.25rem, 4vw, 3rem) clamp(2rem, 5vw, 3.5rem);
  margin-bottom:clamp(2.5rem, 6vw, 4rem);
  background:rgba(245,242,230,.72);
  border:2px solid rgba(27,78,107,.18);
  box-shadow:var(--shadow-hard);
  position:relative;
  max-width:58rem;
  transition:box-shadow .25s, transform .25s;
}
.page-privacy .clause-block:hover{
  box-shadow:10px 10px 0 rgba(26,26,26,.22);
  transform:translateY(-2px);
}
.page-privacy .clause-head{
  display:flex;
  align-items:center;
  gap:1rem;
  margin-bottom:1.5rem;
  padding-bottom:1rem;
  border-bottom:2px solid rgba(0,168,157,.4);
}
.page-privacy .clause-title{
  font-size:clamp(1.4rem, 4vw, 2rem);
  color:var(--c-deep);
}
.page-privacy .clause-seal{
  margin-left:auto;
  width:var(--privacy-seal-size);
  height:var(--privacy-seal-size);
  display:grid;
  place-items:center;
  background:var(--c-danger);
  color:var(--c-paper);
  font-family:var(--font-head);
  font-size:1.4rem;
  line-height:1;
  border-radius:4px;
  box-shadow:3px 3px 0 rgba(192,57,43,.25);
  transform:rotate(-6deg);
  flex-shrink:0;
}
.page-privacy .clause-body{
  font-size:1rem;
}
.page-privacy .clause-body p{
  margin:0 0 1em;
  max-width:48rem;
}
.page-privacy .clause-body strong{
  color:var(--c-deep);
  font-weight:600;
}
.page-privacy .accordion{
  margin-top:1.5rem;
  border:1px solid rgba(0,168,157,.35);
  border-radius:var(--radius);
  overflow:hidden;
  background:rgba(255,255,255,.4);
  max-width:48rem;
}
.page-privacy .accordion-item + .accordion-item{
  border-top:1px solid rgba(0,168,157,.2);
}
.page-privacy .accordion-trigger{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:1rem 1.25rem;
  background:none;
  border:none;
  cursor:pointer;
  font-family:var(--font-body);
  font-size:1rem;
  font-weight:600;
  color:var(--c-ink);
  text-align:left;
  transition:background .2s;
}
.page-privacy .accordion-trigger:hover{
  background:rgba(0,168,157,.08);
}
.page-privacy .accordion-icon{
  position:relative;
  width:.875rem;
  height:.875rem;
  flex-shrink:0;
}
.page-privacy .accordion-icon::before,
.page-privacy .accordion-icon::after{
  content:"";
  position:absolute;
  background:var(--c-accent);
  transition:transform .25s;
}
.page-privacy .accordion-icon::before{
  width:100%;
  height:2px;
  top:50%;
  left:0;
  transform:translateY(-50%);
}
.page-privacy .accordion-icon::after{
  width:2px;
  height:100%;
  left:50%;
  top:0;
  transform:translateX(-50%);
}
.page-privacy .accordion-item[data-open="1"] .accordion-icon::after{
  transform:translateX(-50%) scaleY(0);
}
.page-privacy .accordion-panel{
  overflow:hidden;
  transition:max-height .3s ease;
  max-height:0;
}
.page-privacy .accordion-item[data-open="1"] .accordion-panel{
  max-height:24rem;
}
.page-privacy .accordion-panel-inner{
  padding:0 1.25rem 1.25rem;
  font-size:.925rem;
  color:var(--c-deep-dark);
  opacity:.9;
}
.page-privacy .clause-note{
  margin-top:1.5rem;
  padding:1rem 1.25rem;
  border-left:5px solid var(--c-accent);
  background:rgba(243,106,59,.07);
  border-radius:0 var(--radius) var(--radius) 0;
  max-width:48rem;
}
.page-privacy .clause-note p{
  margin:0;
  font-size:.925rem;
}
.page-privacy .privacy-trust{
  padding-top:clamp(2rem, 5vw, 3.5rem);
  padding-bottom:clamp(3rem, 7vw, 5rem);
}
.page-privacy .theme-band{
  background:var(--c-deep);
  color:var(--c-paper);
  padding:clamp(2rem, 5vw, 3.5rem) clamp(1.5rem, 4vw, 3.5rem);
  border-radius:var(--radius);
  box-shadow:var(--shadow-hard);
  position:relative;
  overflow:hidden;
}
.page-privacy .theme-band::before{
  content:"";
  position:absolute;
  width:16rem;
  height:16rem;
  border-radius:50%;
  background:rgba(0,168,157,.18);
  top:-6rem;
  right:-4rem;
}
.page-privacy .theme-band-inner{
  position:relative;
  max-width:44rem;
}
.page-privacy .theme-band .section-number{
  color:var(--c-accent);
  opacity:.8;
}
.page-privacy .trust-title{
  font-family:var(--font-head);
  font-size:clamp(1.3rem, 3.4vw, 2rem);
  margin:.5rem 0 .75rem;
  color:var(--c-paper);
}
.page-privacy .trust-desc{
  color:rgba(245,242,230,.85);
  font-size:1rem;
  margin:0 0 1.5rem;
}
.page-privacy .trust-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
}
.page-privacy .btn{
  display:inline-block;
  padding:.75rem 1.6rem;
  font-family:var(--font-body);
  font-size:.925rem;
  font-weight:600;
  text-decoration:none;
  border-radius:4px;
  transition:transform .2s, box-shadow .2s, background .2s;
}
.page-privacy .btn-primary{
  background:var(--c-primary);
  color:#fff;
  box-shadow:var(--shadow-hard-sm);
}
.page-privacy .btn-primary:hover{
  background:var(--c-primary-dark);
  transform:translateY(-2px);
}
.page-privacy .btn-accent{
  background:var(--c-accent);
  color:#fff;
  box-shadow:var(--shadow-hard-sm);
}
.page-privacy .btn-accent:hover{
  background:var(--c-accent-dark);
  transform:translateY(-2px);
}

@media (min-width: 768px){
  .page-privacy .privacy-index-nav{
    flex-direction:row;
    flex-wrap:wrap;
    gap:1.25rem 2.5rem;
  }
  .page-privacy .privacy-index-nav a{
    padding-right:0;
  }
  .page-privacy .clause-block{
    padding-left:3.5rem;
    padding-right:3.5rem;
  }
  .page-privacy .clause-body{
    font-size:1.0625rem;
    column-gap:2.5rem;
  }
  .page-privacy .accordion-panel-inner{
    padding-left:1.5rem;
    padding-right:1.5rem;
  }
  .page-privacy .trust-actions{
    gap:1.25rem;
  }
  .page-privacy .btn{
    padding:.875rem 1.8rem;
    font-size:1rem;
  }
}

@media (prefers-reduced-motion: reduce){
  .page-privacy *,
  .page-privacy *::before,
  .page-privacy *::after{
    transition:none !important;
    animation:none !important;
  }
}
