/* Privacy presentation only. Content, anchors and language/print actions stay
   in the existing document; every rule is scoped away from the homepage. */
body[data-page="privacy"] {
  --navy: #253f83;
  --teal: #087f77;
  --ink: #18243d;
  --muted: #647087;
  --line: #e5eaf2;
  --soft: #f5f8fc;
  background: #fff;
  color: var(--ink);
}

body[data-page="privacy"] .shell {
  width: min(1180px, calc(100% - 80px));
}

body[data-page="privacy"] .site-header {
  min-height: 104px;
  padding-block: 22px;
  border-color: var(--line);
}

body[data-page="privacy"] .brand { gap: 11px; flex-shrink: 0; }
body[data-page="privacy"] .brand img { width: 42px; height: 42px; border-radius: 13px; }
body[data-page="privacy"] .brand span { font-size: 27px; }
body[data-page="privacy"] .site-nav { gap: 28px; }
body[data-page="privacy"] .site-nav a { font-size: 13px; }
body[data-page="privacy"] .control {
  min-height: 44px;
  background: #fff;
  border-color: #dce4f0;
  border-radius: 12px;
  font-size: 12px;
}
body[data-page="privacy"] .control:hover { background: var(--soft); border-color: #b7c6e1; }
body[data-page="privacy"] a:focus-visible,
body[data-page="privacy"] button:focus-visible { outline-color: var(--teal); outline-offset: 4px; }

body[data-page="privacy"] .policy-date {
  margin-block: 35px 0;
  color: var(--muted);
  font-size: 11px;
  letter-spacing: .1px;
}
body[data-page="privacy"] .hero { max-width: 870px; padding: 32px 0 42px; }
body[data-page="privacy"] .eyebrow { color: var(--teal); font-size: 10px; letter-spacing: 1.8px; }
body[data-page="privacy"] .hero h1 {
  margin-block: 15px 24px;
  color: var(--navy);
  font-size: clamp(40px, 6vw, 68px);
  line-height: 1.38;
  font-weight: 850;
  letter-spacing: -1.8px;
}
body[data-page="privacy"] .hero-line { width: 44px; height: 3px; margin-bottom: 24px; }
body[data-page="privacy"] .hero-label { font-size: 24px; font-weight: 750; margin-bottom: 10px; }
body[data-page="privacy"] .hero-description { color: var(--muted); font-size: 17px; line-height: 1.95; }

body[data-page="privacy"] .summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0;
  margin-block: 0 20px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #f8fafc;
}
body[data-page="privacy"] .summary > div,
body[data-page="privacy"] .summary > div:first-child {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr);
  column-gap: 13px;
  align-content: start;
  padding: 25px 27px;
  border-inline-end: 1px solid var(--line);
}
body[data-page="privacy"] .summary > div:last-child { border: 0; }
body[data-page="privacy"] .summary-dot {
  position: static;
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 7px;
  height: 7px;
  margin: 10px 0 0;
}
body[data-page="privacy"] .summary h2 { grid-column: 2; font-size: 15px; margin: 0 0 5px; }
body[data-page="privacy"] .summary p { grid-column: 2; font-size: 13px; line-height: 1.9; }
body[data-page="privacy"] .availability-note {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.9;
  margin-bottom: 42px;
  gap: 10px;
}
body[data-page="privacy"] .availability-note > span { color: var(--teal); border-color: #b4d5d0; }

body[data-page="privacy"] .document-layout {
  grid-template-columns: 225px minmax(0, 1fr);
  gap: 64px;
  align-items: start;
}
body[data-page="privacy"] .contents { top: 28px; padding-top: 23px; min-width: 0; max-width: 100%; }
body[data-page="privacy"] .contents h2 { color: var(--muted); font-size: 12px; margin-bottom: 17px; }
body[data-page="privacy"] .contents nav { gap: 3px; }
body[data-page="privacy"] .contents a {
  min-height: 43px;
  padding-block: 9px;
  color: #53627e;
  font-size: 12px;
  line-height: 1.8;
  gap: 11px;
}
body[data-page="privacy"] .contents a span { color: #8c9bb4; font-size: 10px; }
body[data-page="privacy"] .contents a:hover { color: var(--teal); }
body[data-page="privacy"] .document { border: 0; padding: 0; border-radius: 0; background: transparent; }
body[data-page="privacy"] .policy-section { padding-block: 29px 34px; border-color: var(--line); scroll-margin-top: 30px; }
body[data-page="privacy"] .section-number { color: var(--teal); font-size: 11px; letter-spacing: 1.1px; margin-bottom: 9px; }
body[data-page="privacy"] .policy-section h2 { color: var(--navy); font-size: 25px; line-height: 1.65; margin-bottom: 17px; }
body[data-page="privacy"] .policy-section p { color: #536078; font-size: 16px; line-height: 2.05; overflow-wrap: break-word; }
body[data-page="privacy"] .policy-section strong { color: var(--ink); }
body[data-page="privacy"] .provider { padding: 21px 24px; margin-block: 22px; background: #f6f9fc; border-color: var(--line); border-radius: 17px; }
body[data-page="privacy"] .provider h3 { font-size: 17px; margin-bottom: 7px; }
body[data-page="privacy"] .provider p { font-size: 15px; line-height: 1.95; }
body[data-page="privacy"] .contact { background: var(--navy); border-radius: 23px; padding: 31px 34px; margin-top: 34px; }
body[data-page="privacy"] .contact .eyebrow { color: #a9dbd5; }
body[data-page="privacy"] .contact h2 { color: #fff; font-size: 25px; margin-block: 12px; }
body[data-page="privacy"] .contact p { color: #dce5f7; font-size: 14px; line-height: 2; }
body[data-page="privacy"] .contact a { color: #fff; font-size: 15px; line-height: 1.8; border-color: #91a7d5; }
body[data-page="privacy"] footer { padding-block: 38px 42px; gap: 26px; font-size: 12px; }
body[data-page="privacy"] footer > span { font-size: 22px; }
body[data-page="privacy"] footer p { font-size: 11px; }
body[data-page="privacy"] .footer-links { gap: 24px; }

@media (max-width: 960px) {
  body[data-page="privacy"] .shell { width: calc(100% - 48px); }
  body[data-page="privacy"] .document-layout { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  body[data-page="privacy"] .contents { position: static; padding: 0; }
  body[data-page="privacy"] .contents h2 { margin-bottom: 6px; }
  body[data-page="privacy"] .contents nav {
    flex-direction: row;
    max-width: 100%;
    overflow-x: auto;
    gap: 8px;
    padding: 8px 4px 18px;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }
  body[data-page="privacy"] .contents a {
    flex-shrink: 0;
    min-height: 44px;
    padding: 9px 14px;
    white-space: nowrap;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 11px;
    font-size: 12px;
  }
  body[data-page="privacy"] .contents a span { display: none; }
  body[data-page="privacy"] .availability-note { margin-bottom: 28px; }
  body[data-page="privacy"] .summary > div,
  body[data-page="privacy"] .summary > div:first-child { padding: 22px 20px; }
}

@media (max-width: 640px) {
  body[data-page="privacy"] .shell { width: calc(100% - 32px); }
  body[data-page="privacy"] .site-header { min-height: 110px; padding-block: 18px 14px; gap: 12px; }
  body[data-page="privacy"] .brand { gap: 9px; }
  body[data-page="privacy"] .brand img { width: 38px; height: 38px; border-radius: 11px; }
  body[data-page="privacy"] .brand span { font-size: 24px; }
  body[data-page="privacy"] .site-nav { gap: 24px; }
  body[data-page="privacy"] .site-nav a { font-size: 12px; }
  body[data-page="privacy"] .header-controls { gap: 7px; }
  body[data-page="privacy"] .control { font-size: 11px; padding-inline: 10px; }
  body[data-page="privacy"] .language { min-width: 76px; }
  body[data-page="privacy"] .policy-date { margin-top: 27px; font-size: 10px; }
  body[data-page="privacy"] .hero { padding-block: 25px 31px; }
  body[data-page="privacy"] .hero h1 { font-size: 40px; line-height: 1.45; letter-spacing: -1.1px; margin-bottom: 18px; }
  body[data-page="privacy"] .hero-line { margin-bottom: 20px; }
  body[data-page="privacy"] .hero-label { font-size: 21px; }
  body[data-page="privacy"] .hero-description { font-size: 15px; line-height: 1.95; }
  body[data-page="privacy"] .summary { grid-template-columns: minmax(0, 1fr); border-radius: 17px; }
  body[data-page="privacy"] .summary > div,
  body[data-page="privacy"] .summary > div:first-child { padding: 18px 20px; border-inline-end: 0; border-bottom: 1px solid var(--line); }
  body[data-page="privacy"] .summary > div:last-child { border: 0; }
  body[data-page="privacy"] .summary h2 { font-size: 14px; }
  body[data-page="privacy"] .summary p { font-size: 12px; }
  body[data-page="privacy"] .availability-note { font-size: 11px; margin-bottom: 24px; }
  body[data-page="privacy"] .policy-section { padding-block: 25px 28px; }
  body[data-page="privacy"] .policy-section h2 { font-size: 22px; line-height: 1.65; }
  body[data-page="privacy"] .policy-section p { font-size: 15px; line-height: 2.05; }
  body[data-page="privacy"] .provider { padding: 18px; border-radius: 15px; }
  body[data-page="privacy"] .provider h3 { font-size: 16px; }
  body[data-page="privacy"] .provider p { font-size: 14px; }
  body[data-page="privacy"] .contact { padding: 25px 21px; border-radius: 19px; }
  body[data-page="privacy"] .contact h2 { font-size: 22px; }
  body[data-page="privacy"] .contact p { font-size: 13px; }
  body[data-page="privacy"] .contact a { font-size: 13px; }
  body[data-page="privacy"] footer { gap: 16px; padding-block: 29px 34px; }
  body[data-page="privacy"] footer p { min-width: 0; flex-basis: 180px; font-size: 10px; }
  body[data-page="privacy"] .footer-links { gap: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  body[data-page="privacy"] *,
  body[data-page="privacy"] *::before,
  body[data-page="privacy"] *::after { transition: none !important; animation: none !important; }
}

@media print {
  body[data-page="privacy"] { background: #fff; color: #111; }
  body[data-page="privacy"] .shell { width: 100%; max-width: none; }
  body[data-page="privacy"] .site-header { min-height: 55px; padding-block: 10px; }
  body[data-page="privacy"] .header-controls,
  body[data-page="privacy"] .site-nav,
  body[data-page="privacy"] .contents,
  body[data-page="privacy"] .footer-links { display: none !important; }
  body[data-page="privacy"] .policy-date { margin-top: 17px; color: #444; font-size: 9pt; }
  body[data-page="privacy"] .hero { padding-block: 20px; }
  body[data-page="privacy"] .hero h1 { color: #111; font-size: 28pt; line-height: 1.4; margin-block: 8px 15px; }
  body[data-page="privacy"] .hero-label { font-size: 14pt; }
  body[data-page="privacy"] .hero-description { color: #333; font-size: 10pt; }
  body[data-page="privacy"] .eyebrow { color: #444; }
  body[data-page="privacy"] .summary { grid-template-columns: repeat(3, minmax(0, 1fr)); border-radius: 0; background: #fff; }
  body[data-page="privacy"] .summary > div,
  body[data-page="privacy"] .summary > div:first-child { padding: 13px; border-bottom: 0; border-inline-end: 1px solid #ccc; }
  body[data-page="privacy"] .summary > div:last-child { border: 0; }
  body[data-page="privacy"] .summary h2 { font-size: 9pt; }
  body[data-page="privacy"] .summary p { color: #333; font-size: 8pt; }
  body[data-page="privacy"] .availability-note { color: #444; font-size: 8pt; margin-bottom: 10px; }
  body[data-page="privacy"] .document-layout { display: block; }
  body[data-page="privacy"] .document { padding: 0; border: 0; }
  body[data-page="privacy"] .policy-section { padding-block: 17px; break-inside: avoid; }
  body[data-page="privacy"] .policy-section h2 { color: #111; font-size: 15pt; break-after: avoid; }
  body[data-page="privacy"] .policy-section p { color: #222; font-size: 9.5pt; line-height: 1.8; }
  body[data-page="privacy"] .provider { background: #fff; border-color: #ccc; padding: 15px; break-inside: avoid; }
  body[data-page="privacy"] .provider h3 { color: #111; font-size: 11pt; }
  body[data-page="privacy"] .provider p { font-size: 9pt; }
  body[data-page="privacy"] .contact { background: #fff; color: #111; border: 1px solid #aaa; border-radius: 0; padding: 20px; break-inside: avoid; }
  body[data-page="privacy"] .contact h2 { color: #111; font-size: 15pt; }
  body[data-page="privacy"] .contact p,
  body[data-page="privacy"] .contact a,
  body[data-page="privacy"] .contact .eyebrow { color: #222; }
  body[data-page="privacy"] .contact p { font-size: 9pt; }
  body[data-page="privacy"] .contact a { font-size: 10pt; }
  body[data-page="privacy"] footer { padding-block: 18px; font-size: 8pt; }
}
