.page-privacy{
  --privacy-glass: rgba(245,240,230,0.74);
  --privacy-panel: rgba(255,255,255,0.42);
  --privacy-line: rgba(11,61,46,0.16);
  background:var(--cream);
  color:var(--ink-black);
  font-family:var(--body-font);
}
.page-privacy *,
.page-privacy *::before,
.page-privacy *::after{
  box-sizing:border-box;
}
.page-privacy img{
  max-width:100%;
  height:auto;
}
.page-privacy a{
  text-underline-offset:4px;
  text-decoration-color:var(--gold);
}

.privacy-hero{
  background:
    linear-gradient(118deg, rgba(212,168,66,0.18) 0%, rgba(212,168,66,0.02) 38%, transparent 62%),
    radial-gradient(circle at 88% 18%, rgba(212,168,66,0.16), transparent 38%),
    var(--deep-green);
  color:var(--cream);
}
.privacy-hero-inner{
  padding-top:24px;
  padding-bottom:84px;
}
.privacy-breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  color:rgba(245,240,230,0.7);
}
.privacy-breadcrumb a{
  color:var(--gold);
  text-decoration:none;
}
.privacy-breadcrumb a:hover{
  text-decoration:underline;
}
.privacy-breadcrumb-sep{
  opacity:0.5;
}
.privacy-hero-grid{
  display:grid;
  gap:34px;
  margin-top:36px;
}
.privacy-hero-kicker{
  font-family:var(--data-font);
  font-size:13px;
  letter-spacing:0.18em;
  color:var(--gold);
  text-transform:uppercase;
  margin:0 0 10px;
}
.privacy-hero h1{
  font-family:var(--heading-font);
  font-size:clamp(42px, 9vw, 76px);
  line-height:0.95;
  margin:0 0 18px;
  color:var(--cream);
  text-transform:uppercase;
  letter-spacing:0.03em;
}
.privacy-hero-desc{
  font-size:16px;
  line-height:1.8;
  color:rgba(245,240,230,0.86);
  max-width:54ch;
  margin:0;
}
.privacy-hero-stats{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
.privacy-hero-stat{
  min-width:0;
  padding:18px 14px;
  background:rgba(11,61,46,0.46);
  border:1px solid rgba(212,168,66,0.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.privacy-hero-stat:nth-child(1){
  clip-path:polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%);
}
.privacy-hero-stat:nth-child(2){
  clip-path:polygon(0 10px, 10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px));
}
.privacy-hero-stat:nth-child(3){
  clip-path:polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
}
.privacy-hero-stat-num{
  display:block;
  font-family:var(--data-font);
  font-size:clamp(22px, 4vw, 30px);
  font-weight:700;
  color:var(--gold);
  line-height:1.1;
  margin-bottom:6px;
  white-space:nowrap;
}
.privacy-hero-stat-label{
  display:block;
  font-size:12px;
  line-height:1.45;
  color:rgba(245,240,230,0.78);
}

.privacy-overview{
  position:relative;
  z-index:5;
  max-width:820px;
  margin:-38px auto 0;
  padding:22px 24px 24px;
  background:var(--privacy-glass);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid var(--privacy-line);
  border-top:4px solid var(--gold);
  box-shadow:var(--shadow-card);
}
.privacy-overview-label{
  display:block;
  font-family:var(--heading-font);
  font-size:18px;
  font-weight:700;
  letter-spacing:0.08em;
  color:var(--deep-green);
  margin-bottom:8px;
}
.privacy-overview p:last-of-type{
  margin:0;
  font-size:15px;
  line-height:1.75;
}

.privacy-layout{
  display:grid;
  gap:30px;
  padding:30px 0 72px;
}

.privacy-toc{
  background:var(--privacy-glass);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid var(--privacy-line);
  border-top:4px solid var(--gold);
  padding:18px 16px 16px;
  box-shadow:var(--shadow-card);
}
.privacy-toc-label{
  font-family:var(--data-font);
  font-size:12px;
  letter-spacing:0.14em;
  color:var(--dark-red);
  text-transform:uppercase;
  margin:0 0 12px;
}
.privacy-toc-list{
  list-style:none;
  margin:0;
  padding:0 0 4px;
  display:flex;
  gap:8px;
  overflow-x:auto;
  scrollbar-width:thin;
}
.privacy-toc-item{
  flex:0 0 auto;
}
.privacy-toc-item a{
  display:flex;
  align-items:center;
  gap:11px;
  padding:9px 10px;
  color:var(--deep-green);
  text-decoration:none;
  font-weight:500;
  font-size:14px;
  line-height:1.3;
  border-left:3px solid transparent;
  transition:color 0.22s ease, border-color 0.22s ease, background-color 0.22s ease;
  white-space:nowrap;
}
.privacy-toc-item a:hover{
  border-left-color:var(--gold);
  background:rgba(212,168,66,0.12);
}
.privacy-toc-num{
  font-family:var(--data-font);
  font-size:12px;
  color:var(--gold);
  letter-spacing:0.04em;
}
.privacy-toc-meta{
  margin:16px 0 0;
  padding-top:14px;
  border-top:1px dashed var(--privacy-line);
  font-family:var(--data-font);
  font-size:12px;
  line-height:1.7;
  color:var(--rock-gray);
}

.privacy-main{
  display:grid;
  gap:18px;
  min-width:0;
}
.privacy-section{
  position:relative;
  padding:26px 18px 30px;
  background:var(--privacy-panel);
  border:1px solid var(--privacy-line);
  box-shadow:0 6px 22px rgba(11,61,46,0.06);
}
.privacy-section-head{
  display:flex;
  align-items:flex-start;
  gap:16px;
  background:linear-gradient(115deg, rgba(91,138,76,0.2), rgba(245,240,230,0.5) 72%);
  padding:16px 18px;
  margin:-26px -18px 20px;
  border-left:4px solid var(--gold);
}
.privacy-section-id{
  flex:0 0 auto;
  font-family:var(--heading-font);
  font-size:42px;
  font-weight:700;
  line-height:1;
  color:var(--gold);
  letter-spacing:0.04em;
}
.privacy-section-head h2{
  margin:0 0 4px;
  font-family:var(--heading-font);
  font-size:clamp(24px, 3.6vw, 34px);
  line-height:1.1;
  color:var(--deep-green);
  letter-spacing:0.05em;
  text-transform:uppercase;
}
.privacy-section-desc{
  margin:0;
  font-size:14px;
  color:var(--rock-gray);
}

.privacy-grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(1, minmax(0, 1fr));
}
.privacy-card{
  background:rgba(245,240,230,0.6);
  border:1px solid var(--privacy-line);
  border-left:4px solid var(--gold);
  padding:20px 20px 22px;
  min-width:0;
}
.privacy-card h3{
  margin:0 0 10px;
  font-size:18px;
  color:var(--deep-green);
  letter-spacing:0.02em;
}
.privacy-card p{
  margin:0;
  font-size:14px;
  line-height:1.75;
}

.privacy-usage-list{
  list-style:none;
  margin:0;
  padding:0;
}
.privacy-usage-item{
  position:relative;
  padding:22px 12px 24px 64px;
  border-top:1px solid var(--privacy-line);
}
.privacy-usage-item:first-child{
  border-top:none;
}
.privacy-usage-item::before{
  content:attr(data-num);
  position:absolute;
  top:16px;
  left:4px;
  font-family:var(--heading-font);
  font-weight:700;
  font-size:38px;
  line-height:1;
  color:var(--gold);
  opacity:0.9;
}
.privacy-usage-item h3{
  margin:0 0 8px;
  font-size:18px;
  color:var(--deep-green);
}
.privacy-usage-item p{
  margin:0;
  font-size:14px;
  line-height:1.75;
}

.privacy-alert{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-top:22px;
  padding:16px 18px;
  background:rgba(139,46,46,0.08);
  border:1px solid rgba(139,46,46,0.22);
}
.privacy-alert p{
  margin:0;
  font-size:14px;
  line-height:1.7;
  color:var(--ink-black);
}

.privacy-security-grid{
  display:grid;
  gap:24px;
  margin-top:8px;
}
.privacy-security-media{
  margin:0;
}
.privacy-media-frame{
  padding:8px;
  background:var(--deep-green);
  border:1px solid rgba(212,168,66,0.5);
  clip-path:polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 0 100%);
}
.privacy-media-frame img{
  display:block;
  width:100%;
  height:auto;
  clip-path:polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%);
  object-fit:cover;
}
.privacy-media-caption{
  margin-top:12px;
  font-size:13px;
  color:var(--rock-gray);
  display:flex;
  align-items:center;
  gap:8px;
}
.privacy-media-kicker{
  font-family:var(--data-font);
  font-size:11px;
  letter-spacing:0.12em;
  color:var(--gold);
  text-transform:uppercase;
}

.privacy-security-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.privacy-security-item{
  display:grid;
  grid-template-columns:34px minmax(0, 1fr);
  gap:10px;
  padding:16px 16px 14px;
  border:1px solid var(--privacy-line);
  background:rgba(245,240,230,0.55);
  min-width:0;
}
.privacy-security-index{
  font-family:var(--data-font);
  font-size:14px;
  font-weight:700;
  color:var(--gold);
}
.privacy-security-body h3{
  margin:0 0 6px;
  font-size:17px;
  color:var(--deep-green);
}
.privacy-security-body p{
  margin:0;
  font-size:14px;
  line-height:1.75;
}
.privacy-section a{
  color:var(--deep-green);
  text-decoration-color:var(--gold);
}

.privacy-term{
  position:relative;
  display:inline-block;
  font-family:var(--data-font);
  font-size:0.94em;
  color:var(--deep-green);
  border-bottom:1px dashed rgba(212,168,66,0.85);
  cursor:help;
}
.privacy-term-tip{
  position:absolute;
  z-index:30;
  bottom:calc(100% + 10px);
  left:50%;
  transform:translateX(-50%) translateY(6px);
  width:min(250px, 60vw);
  padding:10px 14px;
  background:var(--deep-green);
  color:var(--cream);
  font-family:var(--body-font);
  font-size:13px;
  line-height:1.6;
  letter-spacing:0.01em;
  font-weight:400;
  clip-path:polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity 0.22s ease, transform 0.22s ease;
}
.privacy-term:hover .privacy-term-tip,
.privacy-term:focus .privacy-term-tip{
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0);
}

.privacy-rights-list{
  list-style:none;
  margin:0 0 22px;
  padding:0;
  display:grid;
  gap:12px;
}
.privacy-rights-item{
  position:relative;
  background:rgba(245,240,230,0.6);
  border:1px solid var(--privacy-line);
  padding:20px 18px 18px 58px;
  min-width:0;
}
.privacy-rights-index{
  position:absolute;
  top:18px;
  left:16px;
  font-family:var(--data-font);
  font-weight:700;
  font-size:14px;
  color:var(--dark-red);
}
.privacy-rights-item h3{
  margin:0 0 8px;
  font-size:17px;
  color:var(--deep-green);
}
.privacy-rights-item p{
  margin:0;
  font-size:14px;
  line-height:1.7;
}

.privacy-notice{
  padding:18px 20px 20px;
  background:linear-gradient(115deg, var(--deep-green), var(--moss-green) 140%);
  color:var(--cream);
  border-left:6px solid var(--gold);
}
.privacy-notice-title{
  font-family:var(--heading-font);
  font-size:18px;
  font-weight:700;
  letter-spacing:0.05em;
  margin:0 0 8px;
  color:var(--gold);
  text-transform:uppercase;
}
.privacy-notice p:last-of-type{
  margin:0;
  font-size:14px;
  line-height:1.75;
}
.privacy-notice a,
.privacy-cookie-control a,
.privacy-contact-panel a{
  color:var(--gold);
}

.privacy-cookie-grid{
  display:grid;
  gap:14px;
  margin-top:8px;
}
.privacy-cookie-card{
  position:relative;
  padding:20px 18px;
  background:rgba(245,240,230,0.6);
  border:1px solid var(--privacy-line);
  border-top:4px solid var(--gold);
  min-width:0;
}
.privacy-cookie-card-functional{
  border-top-color:var(--moss-green);
}
.privacy-cookie-card-analytics{
  border-top-color:var(--terracotta);
}
.privacy-cookie-card h3{
  margin:0 0 8px;
  font-size:17px;
  color:var(--deep-green);
}
.privacy-cookie-card p{
  margin:0 0 12px;
  font-size:13px;
  line-height:1.7;
}
.privacy-cookie-tag{
  display:inline-block;
  padding:3px 10px;
  font-family:var(--data-font);
  font-size:12px;
  letter-spacing:0.06em;
  color:var(--deep-green);
  background:rgba(212,168,66,0.3);
  border:1px solid rgba(212,168,66,0.6);
}
.privacy-cookie-control{
  display:flex;
  flex-direction:column;
  gap:18px;
  margin-top:22px;
  padding:22px 20px;
  background:var(--deep-green);
  color:var(--cream);
  border:1px solid rgba(212,168,66,0.4);
  clip-path:polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%);
}
.privacy-cookie-control h3{
  margin:0 0 8px;
  font-family:var(--heading-font);
  font-size:19px;
  letter-spacing:0.05em;
  color:var(--gold);
  text-transform:uppercase;
}
.privacy-cookie-control p{
  margin:0;
  font-size:14px;
  line-height:1.75;
}
.privacy-cookie-control .btn{
  flex:0 0 auto;
}

.privacy-contact-panel{
  margin-top:26px;
  padding:30px 22px 32px;
  background:
    linear-gradient(135deg, rgba(212,168,66,0.22), transparent 46%),
    var(--deep-green);
  color:var(--cream);
  border-top:6px solid var(--gold);
}
.privacy-contact-kicker{
  display:block;
  font-family:var(--data-font);
  font-size:11px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  margin-bottom:10px;
  color:var(--gold);
}
.privacy-contact-panel h2{
  margin:0 0 10px;
  font-family:var(--heading-font);
  font-size:clamp(22px, 4vw, 34px);
  letter-spacing:0.05em;
  color:var(--cream);
  text-transform:uppercase;
}
.privacy-contact-panel-head > p:last-of-type{
  margin:0 0 24px;
  color:rgba(245,240,230,0.82);
}
.privacy-contact-list{
  display:grid;
  gap:6px;
  margin-bottom:24px;
  font-size:14px;
  line-height:1.8;
}
.privacy-contact-list strong{
  color:var(--gold);
  font-weight:600;
  margin-right:6px;
}
.privacy-contact-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px;
}
.privacy-contact-links{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}
.privacy-contact-links a{
  color:var(--cream);
  text-decoration:none;
  border-bottom:1px solid rgba(212,168,66,0.5);
  transition:border-color 0.2s ease, color 0.2s ease;
}
.privacy-contact-links a:hover{
  color:var(--gold);
  border-color:var(--gold);
}

@media (min-width: 640px){
  .privacy-hero-stat{
    padding:20px 16px;
  }
  .privacy-toc-list{
    gap:10px;
  }
  .privacy-section{
    padding:30px 24px 34px;
  }
  .privacy-section-head{
    margin:-30px -24px 22px;
    padding:18px 22px;
  }
  .privacy-usage-item{
    padding-left:76px;
  }
  .privacy-usage-item::before{
    left:8px;
    font-size:42px;
  }
  .privacy-contact-panel{
    padding:34px 30px 36px;
  }
}

@media (min-width: 760px){
  .privacy-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:18px;
  }
  .privacy-usage-list{
    margin-top:6px;
  }
  .privacy-rights-list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:14px;
  }
  .privacy-cookie-control{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:26px;
  }
  .privacy-cookie-control p{
    max-width:62ch;
  }
}

@media (min-width: 860px){
  .privacy-cookie-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:16px;
  }
}

@media (min-width: 900px){
  .privacy-security-grid{
    grid-template-columns:minmax(0, 0.85fr) minmax(0, 1.15fr);
    gap:32px;
    align-items:start;
    margin-top:4px;
  }
}

@media (min-width: 960px){
  .privacy-hero-grid{
    grid-template-columns:minmax(0, 1.6fr) minmax(0, 1fr);
    align-items:end;
    gap:48px;
  }
}

@media (min-width: 1024px){
  .privacy-layout{
    grid-template-columns:240px minmax(0, 1fr);
    gap:56px;
    align-items:start;
    padding:40px 0 96px;
  }
  .privacy-toc{
    position:sticky;
    top:calc(var(--header-height) + 24px);
    padding:22px 18px;
  }
  .privacy-toc-list{
    flex-direction:column;
    gap:2px;
    overflow:visible;
    padding-bottom:0;
  }
  .privacy-toc-item{
    flex:none;
  }
  .privacy-toc-item a{
    white-space:normal;
  }
  .privacy-main{
    gap:22px;
  }
}
