.page-privacy{
  background:var(--deep-black);
  color:var(--ink-white);
  font-family:var(--body-font);
  line-height:var(--body-line-height);
  padding-bottom:clamp(4rem,8vw,7rem);
}
.page-privacy .privacy-breadcrumb{
  display:flex;
  align-items:center;
  gap:var(--space-xs);
  max-width:var(--container-width);
  margin:0 auto;
  padding:var(--space-md) var(--container-pad) 0;
  font-size:var(--caption-size);
  color:var(--dim-gray);
  letter-spacing:.08em;
}
.page-privacy .privacy-breadcrumb a{
  color:var(--champagne-gold);
  text-decoration:none;
  transition:color var(--dur-fast) var(--ease-out);
}
.page-privacy .privacy-breadcrumb a:hover{
  color:var(--ink-white);
}
.page-privacy .crumb-sep{
  color:var(--lafei-red);
  font-weight:900;
}
.page-privacy .privacy-hero{
  max-width:var(--container-width);
  margin:0 auto;
  padding:clamp(3rem,7vw,6.5rem) var(--container-pad) clamp(1.5rem,4vw,3rem);
}
.page-privacy .privacy-kicker{
  display:inline-flex;
  align-items:center;
  gap:var(--space-sm);
  margin:0 0 var(--space-md);
  padding:.25rem .75rem;
  color:var(--champagne-gold);
  font-family:var(--heading-font);
  font-size:var(--caption-size);
  font-weight:700;
  letter-spacing:.14em;
  border:1px solid rgba(212,175,55,.4);
  border-left:3px solid var(--lafei-red);
  clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);
}
.page-privacy .privacy-hero h1{
  margin:0 0 var(--space-md);
  font-family:var(--heading-font);
  font-size:var(--heading-size-xl);
  font-weight:900;
  line-height:1.16;
  letter-spacing:-.01em;
  color:var(--ink-white);
  max-width:18em;
}
.page-privacy .privacy-lead{
  margin:0;
  max-width:42em;
  font-size:clamp(1rem,1.6vw,1.125rem);
  line-height:1.85;
  color:rgba(245,243,239,.86);
}
.page-privacy .privacy-divider{
  height:2px;
  margin-top:var(--space-lg);
  background:linear-gradient(90deg,var(--lafei-red) 0%,var(--champagne-gold) 50%,transparent 100%);
  transform:skewX(-42deg);
  transform-origin:left center;
  max-width:34rem;
}
.page-privacy .privacy-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--space-xl) var(--space-lg);
  max-width:var(--container-width);
  margin:0 auto;
  padding:clamp(1rem,4vw,3rem) var(--container-pad) 0;
}
@media (min-width:64rem){
  .page-privacy .privacy-layout{
    grid-template-columns:minmax(0,1fr) 18rem;
    align-items:start;
  }
}
.page-privacy .privacy-main{
  min-width:0;
}
.page-privacy .privacy-clause{
  padding:clamp(2rem,5vw,4rem) 0;
}
.page-privacy .clause-header{
  display:flex;
  align-items:flex-start;
  gap:var(--space-md);
  padding-right:var(--space-sm);
  position:relative;
}
.page-privacy .clause-no{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:clamp(3.25rem,8vw,4.75rem);
  height:clamp(3.25rem,8vw,4.75rem);
  background:var(--lafei-red);
  color:#fff;
  font-family:var(--heading-font);
  font-size:clamp(1.5rem,2.6vw,2rem);
  font-weight:900;
  clip-path:polygon(0 0,100% 0,calc(100% - var(--cut-size)) 100%,0 100%);
  position:relative;
}
.page-privacy .clause-no::after{
  content:"";
  position:absolute;
  right:6px;
  top:6px;
  width:22px;
  height:4px;
  background:var(--champagne-gold);
  clip-path:polygon(0 0,100% 40%,100% 100%,0 60%);
  opacity:.85;
}
.page-privacy .clause-heading{
  padding-top:clamp(.25rem,1vw,.75rem);
}
.page-privacy .clause-title{
  margin:0 0 .25rem;
  font-family:var(--heading-font);
  font-size:var(--heading-size-lg);
  font-weight:900;
  line-height:1.3;
  color:var(--ink-white);
}
.page-privacy .clause-en{
  margin:0;
  color:var(--champagne-gold);
  font-size:var(--caption-size);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.page-privacy .clause-body{
  margin-top:var(--space-lg);
  max-width:58rem;
}
.page-privacy .clause-lead{
  margin:0 0 var(--space-md);
  color:rgba(245,243,239,.82);
  font-size:var(--body-size);
  line-height:var(--body-line-height);
  max-width:45em;
}
.page-privacy .clause-body p{
  color:rgba(245,243,239,.8);
}
.page-privacy .privacy-table-wrap{
  margin:var(--space-md) 0;
  overflow-x:auto;
  background:var(--soft-black);
  border:1px solid var(--border-red);
  clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut-size)),0 100%);
}
.page-privacy .privacy-table{
  width:100%;
  min-width:34rem;
  border-collapse:collapse;
  font-size:.9rem;
  line-height:1.6;
}
.page-privacy .privacy-table th{
  text-align:left;
  padding:var(--space-sm) var(--space-md);
  color:var(--champagne-gold);
  background:rgba(200,16,46,.12);
  font-family:var(--heading-font);
  font-size:.8125rem;
  font-weight:700;
  letter-spacing:.06em;
  border-bottom:1px solid var(--border-red);
}
.page-privacy .privacy-table td{
  padding:var(--space-sm) var(--space-md);
  color:rgba(245,243,239,.88);
  border-bottom:1px solid rgba(138,11,30,.35);
  vertical-align:top;
}
.page-privacy .privacy-table tbody tr:last-child td{
  border-bottom:0;
}
.page-privacy .privacy-table tbody tr:hover td{
  background:rgba(200,16,46,.06);
}
.page-privacy .privacy-callout{
  margin-top:var(--space-lg);
  padding:var(--space-md) var(--space-md) var(--space-md) var(--space-lg);
  background:linear-gradient(135deg,rgba(200,16,46,.15),rgba(212,175,55,.05)),var(--soft-black);
  border-left:4px solid var(--lafei-red);
  border-right:1px solid var(--border-red);
  border-top:1px solid var(--border-red);
  border-bottom:1px solid var(--border-red);
  clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut-size)),0 100%);
}
.page-privacy .privacy-callout h3{
  margin:0 0 var(--space-sm);
  color:var(--ink-white);
  font-family:var(--heading-font);
  font-size:var(--heading-size-sm);
  font-weight:900;
  display:inline-flex;
  align-items:center;
  gap:var(--space-xs);
}
.page-privacy .privacy-callout h3::before{
  content:"";
  width:2.25rem;
  height:2px;
  background:var(--champagne-gold);
  clip-path:polygon(0 0,100% 40%,100% 100%,0 70%);
}
.page-privacy .privacy-callout ul{
  margin:0;
  padding:0;
  list-style:none;
  column-count:1;
}
@media (min-width:48rem){
  .page-privacy .privacy-callout ul{
    column-count:2;
    column-gap:var(--space-lg);
  }
}
.page-privacy .privacy-callout li{
  margin:0 0 var(--space-xs);
  padding-left:1.25rem;
  position:relative;
  color:rgba(245,243,239,.85);
  font-size:.9rem;
  line-height:1.65;
}
.page-privacy .privacy-callout li::before{
  content:"";
  position:absolute;
  left:0;
  top:.6em;
  width:.55rem;
  height:.55rem;
  background:var(--lafei-red);
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
  transform:rotate(45deg);
}
.page-privacy .privacy-split{
  height:1px;
  background:linear-gradient(90deg,transparent 0%,var(--champagne-gold) 20%,var(--lafei-red) 70%,transparent 100%);
  transform:skewX(-36deg);
  max-width:70%;
  margin-left:auto;
  margin-right:0;
}
.page-privacy .privacy-retention-list{
  list-style:none;
  margin:var(--space-lg) 0;
  padding:0;
}
.page-privacy .privacy-retention-list li{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:var(--space-xs) var(--space-md);
  padding:var(--space-sm) 0;
  border-bottom:1px solid rgba(138,11,30,.4);
}
@media (min-width:40rem){
  .page-privacy .privacy-retention-list li{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1.1fr);
    align-items:baseline;
  }
}
.page-privacy .retention-name{
  color:var(--ink-white);
  font-family:var(--heading-font);
  font-weight:700;
}
.page-privacy .retention-days{
  color:var(--champagne-gold);
  font-family:var(--heading-font);
  font-weight:900;
  letter-spacing:.02em;
  white-space:nowrap;
}
.page-privacy .retention-desc{
  color:var(--dim-gray);
  font-size:.85rem;
  grid-column:1 / -1;
}
@media (min-width:40rem){
  .page-privacy .retention-desc{
    grid-column:auto;
    text-align:right;
  }
}
.page-privacy .privacy-figure{
  margin:var(--space-lg) 0;
  padding:0;
  border:1px solid rgba(212,175,55,.35);
  background:var(--soft-black);
  clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut-size)),0 100%);
}
.page-privacy .privacy-figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  aspect-ratio:2 / 1;
  border-bottom:1px solid rgba(212,175,55,.25);
}
.page-privacy .privacy-figure-caption{
  padding:var(--space-sm) var(--space-md);
  margin:0;
  color:var(--dim-gray);
  font-size:var(--caption-size);
  line-height:1.6;
}
.page-privacy .privacy-purpose-list{
  list-style:none;
  margin:var(--space-lg) 0 0;
  padding:0;
}
.page-privacy .privacy-purpose-list li{
  display:flex;
  align-items:flex-start;
  gap:var(--space-md);
  padding:var(--space-sm) 0;
  border-bottom:1px solid rgba(138,11,30,.4);
}
.page-privacy .purpose-no{
  flex:0 0 auto;
  color:var(--lafei-red);
  font-family:var(--heading-font);
  font-size:.875rem;
  font-weight:900;
  letter-spacing:.04em;
  padding-top:.35rem;
}
.page-privacy .privacy-purpose-list li p{
  margin:0;
  color:rgba(245,243,239,.88);
  font-size:var(--body-size);
  max-width:45em;
}
.page-privacy .privacy-rights-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-sm);
  margin:var(--space-lg) 0;
}
@media (min-width:40rem){
  .page-privacy .privacy-rights-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--space-md);
  }
}
.page-privacy .right-card{
  padding:var(--space-md);
  background:var(--soft-black);
  border:1px solid var(--border-red);
  border-top:3px solid var(--champagne-gold);
  position:relative;
  overflow:hidden;
}
.page-privacy .right-card::after{
  content:"";
  position:absolute;
  right:-8px;
  bottom:-8px;
  width:30px;
  height:30px;
  background:linear-gradient(135deg,rgba(200,16,46,.55),rgba(212,175,55,.3));
  clip-path:polygon(0 0,100% 100%,0 100%);
}
.page-privacy .right-card h3{
  margin:0 0 var(--space-xs);
  color:var(--ink-white);
  font-family:var(--heading-font);
  font-size:1.0625rem;
  font-weight:900;
}
.page-privacy .right-card p{
  margin:0;
  color:rgba(245,243,239,.75);
  font-size:.875rem;
  line-height:1.7;
}
.page-privacy .right-card a{
  color:var(--champagne-gold);
  text-decoration:underline;
  text-underline-offset:3px;
}
.page-privacy .privacy-collapse-btn{
  display:inline-block;
  margin:var(--space-md) 0 0;
  padding:.6rem 1rem;
  background:transparent;
  border:1px solid rgba(212,175,55,.5);
  border-left:3px solid var(--lafei-red);
  color:var(--champagne-gold);
  font-family:var(--heading-font);
  font-size:.875rem;
  font-weight:700;
  letter-spacing:.04em;
  cursor:pointer;
  clip-path:polygon(0 0,100% 0,calc(100% - .5rem) 100%,0 100%);
  transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);
}
.page-privacy .privacy-collapse-btn:hover{
  background:rgba(200,16,46,.2);
  color:var(--ink-white);
}
.page-privacy .privacy-collapse-panel{
  margin-top:var(--space-sm);
  padding:var(--space-md);
  background:var(--soft-black);
  border-left:3px solid var(--champagne-gold);
  color:rgba(245,243,239,.8);
  font-size:.875rem;
  line-height:1.8;
}
.page-privacy .privacy-collapse-panel p{
  margin:0;
}
.page-privacy .privacy-security-list{
  list-style:none;
  margin:var(--space-lg) 0 0;
  padding:0;
  display:grid;
  gap:var(--space-sm);
}
@media (min-width:48rem){
  .page-privacy .privacy-security-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--space-md);
  }
}
.page-privacy .privacy-security-list li{
  display:flex;
  gap:var(--space-sm);
  padding:var(--space-sm) var(--space-md) var(--space-sm) var(--space-sm);
  background:var(--soft-black);
  border:1px solid var(--border-red);
  border-left:4px solid var(--lafei-red);
  align-items:flex-start;
}
.page-privacy .privacy-security-list .security-icon{
  flex:0 0 auto;
  width:12px;
  height:12px;
  margin-top:.5rem;
  background:var(--champagne-gold);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
  box-shadow:0 0 0 3px rgba(212,175,55,.12);
}
.page-privacy .privacy-security-list strong{
  display:block;
  color:var(--ink-white);
  font-family:var(--heading-font);
  font-size:.95rem;
  font-weight:900;
  margin-bottom:.125rem;
}
.page-privacy .privacy-security-list span:last-child{
  color:var(--dim-gray);
  font-size:.875rem;
  line-height:1.7;
}
.page-privacy .privacy-aside{
  min-width:0;
}
@media (min-width:64rem){
  .page-privacy .privacy-aside{
    position:sticky;
    top:8rem;
    max-height:calc(100vh - 10rem);
    overflow-y:auto;
  }
}
.page-privacy .privacy-toc{
  padding:var(--space-md);
  background:var(--soft-black);
  border:1px solid var(--border-red);
  border-top:3px solid var(--lafei-red);
}
.page-privacy .privacy-toc h2,
.page-privacy .privacy-related h2{
  margin:0 0 var(--space-sm);
  color:var(--ink-white);
  font-family:var(--heading-font);
  font-size:.8125rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding-bottom:var(--space-xs);
  border-bottom:1px solid rgba(212,175,55,.35);
}
.page-privacy .privacy-toc ol{
  list-style:none;
  margin:0;
  padding:0;
}
.page-privacy .privacy-toc li + li{
  border-top:1px solid rgba(138,11,30,.3);
}
.page-privacy .privacy-toc a{
  display:block;
  padding:.55rem .25rem;
  color:rgba(245,243,239,.8);
  text-decoration:none;
  font-size:.875rem;
  transition:color var(--dur-fast) var(--ease-out),padding-left var(--dur-fast) var(--ease-out);
}
.page-privacy .privacy-toc a:hover{
  color:var(--champagne-gold);
  padding-left:.75rem;
}
.page-privacy .privacy-version-card{
  margin-top:var(--space-sm);
  padding:var(--space-md);
  background:linear-gradient(135deg,rgba(200,16,46,.18),rgba(212,175,55,.08));
  border:1px solid var(--border-red);
}
.page-privacy .privacy-version-card p{
  margin:var(--space-xs) 0 0;
  color:rgba(245,243,239,.72);
  font-size:.8125rem;
  line-height:1.7;
}
.page-privacy .privacy-facts{
  margin:var(--space-sm) 0 0;
  padding:var(--space-md);
  background:var(--soft-black);
  border:1px solid var(--border-red);
}
.page-privacy .privacy-fact-item{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:var(--space-sm);
  padding:.5rem 0;
}
.page-privacy .privacy-fact-item + .privacy-fact-item{
  border-top:1px solid rgba(138,11,30,.3);
}
.page-privacy .privacy-facts dt{
  color:var(--dim-gray);
  font-size:.8125rem;
}
.page-privacy .privacy-facts dd{
  margin:0;
  color:var(--champagne-gold);
  font-family:var(--heading-font);
  font-weight:900;
  font-size:.9375rem;
}
.page-privacy .privacy-related{
  margin-top:var(--space-sm);
  padding:var(--space-md);
  background:var(--soft-black);
  border:1px solid var(--border-red);
  border-left:3px solid var(--champagne-gold);
}
.page-privacy .privacy-related ul{
  list-style:none;
  margin:0;
  padding:0;
}
.page-privacy .privacy-related li + li{
  margin-top:.25rem;
}
.page-privacy .privacy-related a{
  display:block;
  padding:.4rem 0;
  color:rgba(245,243,239,.8);
  text-decoration:none;
  font-size:.875rem;
  transition:color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);
}
.page-privacy .privacy-related a:hover{
  color:var(--champagne-gold);
  transform:translateX(4px);
}
