@charset "utf-8";
/* Privacy Policy page only. Shared page styles and scripts remain unchanged. */
.privacy-page {
  --c-blue: #0064ff;
  --c-focus: #004fd6;
  color: #35415e;
  background: #fff;
  overflow-wrap: normal;
  line-break: strict;
}
.privacy-page .header { background: #fff; }
.privacy-page .header__inner { max-width: 1440px; min-height: 88px; }
.privacy-page .pp-brand { font-size: 28px; letter-spacing: .16em; }
.privacy-page .pp-brand::before { display: none; }
.privacy-page .pp-brand-mark {
  display: inline-block;
  width: 35px;
  height: 36px;
  flex-shrink: 0;
  background: linear-gradient(135deg, #99eaff 8%, #0878ff 45%, #001338 75%);
  clip-path: polygon(43% 4%, 64% 0, 100% 90%, 71% 87%, 55% 39%, 29% 92%, 0 100%);
}
.privacy-page .nav__link { min-height: 44px; display: flex; align-items: center; }
.privacy-page .nav .btn,
.privacy-page .mobile-nav .btn {
  border-radius: 7px;
  background: linear-gradient(115deg, #0874e0, #0050ed);
  gap: 16px;
}
.privacy-page .pp-arrow { font-size: 1.25em; line-height: 1; font-weight: 400; -webkit-text-stroke: 1px currentColor; }
.privacy-page :focus-visible { outline: 3px solid #004fd6; outline-offset: 5px; }
.privacy-page #main:focus { outline: none; }
.privacy-page .pp-wrap { width: 100%; max-width: 1440px; padding-inline: 64px; margin-inline: auto; }
.privacy-page main { font-weight: 500; line-height: 1.95; }
.privacy-page main :is(h1, h2, h3) { color: #080b11; font-weight: 800; word-break: normal; overflow-wrap: normal; }
.privacy-page main p { text-wrap: pretty; }
.privacy-page .pp-phrase { display: inline-block; }

.privacy-page .pp-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: linear-gradient(105deg, #fff 35%, #f4faff 66%, #dcefff);
  border-bottom: 1px solid #e5f1fc;
}
.privacy-page .pp-hero-inner {
  min-height: 340px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 200px;
  align-items: center;
  gap: 32px;
  padding-block: 60px;
}
.privacy-page .pp-hero-copy { position: relative; z-index: 1; }
.privacy-page .pp-eyebrow {
  margin: 0 0 14px;
  color: #005bea;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .18em;
  line-height: 1.5;
}
.privacy-page .pp-hero h1 {
  font-size: clamp(38px, 4.1vw, 60px);
  line-height: 1.35;
  letter-spacing: -.055em;
}
.privacy-page .pp-hero h1 span { display: inline-block; white-space: nowrap; }
.privacy-page .pp-lead { margin-top: 18px; color: #35415e; font-size: clamp(16px, 1.4vw, 19px); line-height: 1.85; }
.privacy-page .pp-hero-caption {
  justify-self: end;
  position: relative;
  z-index: 1;
  border-left: 1px solid #9abce9;
  padding-left: 18px;
  color: #6983ae;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.6;
}
.privacy-page .pp-facets { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.privacy-page .pp-facets i {
  position: absolute;
  top: -60%; left: 57%;
  width: 170px; height: 230%;
  transform: rotate(28deg);
  border-right: 1px solid #fff;
  background: linear-gradient(90deg, #d8edff11, #94cbff70 70%, #fff9 71%, #a7d6ff66);
}
.privacy-page .pp-facets i:nth-child(2) { left: 73%; width: 220px; background: linear-gradient(90deg, #008fff13, #7bcaff55, #ffffffbc); }
.privacy-page .pp-facets i:nth-child(3) { left: 96%; width: 115px; }
.privacy-page .pp-facets i:nth-child(4) { left: 77%; width: 1px; background: #0875ff; border: 0; }

.privacy-page .pp-content { padding-block: 24px 56px; }
.privacy-page .pp-content-wrap { max-width: 1260px; }
.privacy-page .pp-policy-list { list-style: none; }
.privacy-page .pp-item {
  display: grid;
  grid-template-columns: 52px minmax(235px, 320px) minmax(0, 1fr);
  align-items: start;
  column-gap: 24px;
  padding-block: 34px 38px;
  border-bottom: 1px solid #d9e8f9;
}
.privacy-page .pp-item:last-child { border-bottom: 0; }
.privacy-page .pp-number {
  color: #005bea;
  font-size: 25px;
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: -.04em;
  font-variant-numeric: tabular-nums;
}
.privacy-page .pp-item h2 {
  border-left: 1px solid #b8d6f5;
  padding: 2px 0 2px 22px;
  font-size: clamp(19px, 1.55vw, 23px);
  line-height: 1.6;
  letter-spacing: -.045em;
}
.privacy-page .pp-item h2 span { display: inline-block; }
.privacy-page .pp-copy { min-width: 0; max-width: 62ch; color: #35415e; font-size: 16px; line-height: 1.95; }
.privacy-page .pp-copy p + p { margin-top: 12px; }
.privacy-page .pp-copy ul { margin-top: 8px; padding-left: 1.3em; }
.privacy-page .pp-copy li { padding-left: .15em; }
.privacy-page .pp-copy a { color: #0054d9; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.privacy-page .pp-copy a:hover { color: #003fa8; }
.privacy-page .pp-placeholder { color: #243c66; font-weight: 700; overflow-wrap: anywhere; }
.privacy-page .pp-support-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.privacy-page .pp-support {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px 12px;
  align-items: center;
  padding: 22px 20px;
  border-radius: 4px;
  background: linear-gradient(120deg, #f4faff, #eaf5ff);
}
.privacy-page .pp-support-icon { color: #0064ff; line-height: 1; }
.privacy-page .pp-support-icon svg { display: block; width: 28px; height: 28px; }
.privacy-page .pp-support h3 { font-size: 17px; line-height: 1.6; letter-spacing: -.03em; }
.privacy-page .pp-support p { grid-column: 1 / -1; margin: 0; font-size: 15px; line-height: 1.85; }
.privacy-page .pp-support p + p { margin-top: 2px; }
.privacy-page .pp-dates { display: grid; gap: 3px; }
.privacy-page .pp-dates div { display: grid; grid-template-columns: 4.5em minmax(0, 1fr); gap: 10px; }
.privacy-page .pp-dates dt { font-weight: 700; }
.privacy-page .pp-dates dd { margin: 0; }

.privacy-page .pp-contact { padding-bottom: 64px; }
.privacy-page .pp-contact-inner {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  padding-block: 34px;
}
.privacy-page .pp-contact-inner::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 64px;
  background: linear-gradient(110deg, #f2f9ff, #eaf5ff);
}
.privacy-page .pp-contact-inner > * { min-width: 0; }
.privacy-page .pp-contact-inner > div { padding-left: 44px; }
.privacy-page .pp-contact .pp-eyebrow { margin-bottom: 6px; }
.privacy-page .pp-contact h2 { font-size: clamp(22px, 2vw, 29px); line-height: 1.5; letter-spacing: -.045em; }
.privacy-page .pp-contact h2 span { display: inline-block; }
.privacy-page .pp-contact p:not(.pp-eyebrow) { border-left: 1px solid #0064ff; padding-left: 24px; font-size: 16px; line-height: 1.85; }
.privacy-page .pp-contact-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 58px;
  margin-right: 44px;
  padding: 14px 24px;
  border: 1px solid #137bff;
  border-radius: 6px;
  background: linear-gradient(115deg, #0874e0, #0050ed);
  box-shadow: 0 5px 16px #0074ff21;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
  transition: box-shadow .18s, transform .18s;
}
.privacy-page .pp-contact-button:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 8px 22px #0064ff35; }
.privacy-page .footer { background: #fff; }
.privacy-page .footer__list a { display: inline-flex; align-items: center; min-height: 44px; }

@media (max-width: 1199px) {
  .privacy-page .pp-wrap { padding-inline: 40px; }
  .privacy-page .pp-contact-inner::before { inset-inline: 40px; }
  .privacy-page .pp-item { grid-template-columns: 44px minmax(210px, 275px) minmax(0, 1fr); gap: 20px; }
  .privacy-page .pp-contact-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .privacy-page .pp-contact-button { justify-self: start; grid-column: 2; margin-right: 0; }
}
@media (max-width: 899px) {
  .privacy-page .pp-hero-inner { min-height: 300px; grid-template-columns: 1fr; }
  .privacy-page .pp-hero-caption { display: none; }
  .privacy-page .pp-item { grid-template-columns: 44px minmax(0, 1fr); gap: 10px 18px; padding-block: 28px 32px; }
  .privacy-page .pp-item h2 { align-self: center; }
  .privacy-page .pp-copy { grid-column: 2; max-width: 66ch; }
  .privacy-page .pp-contact-inner { grid-template-columns: 1fr; gap: 20px; padding-block: 30px; }
  .privacy-page .pp-contact-inner > div { padding-inline: 36px; }
  .privacy-page .pp-contact p:not(.pp-eyebrow) { margin-inline: 36px; }
  .privacy-page .pp-contact-button { grid-column: 1; margin-left: 36px; }
}
@media (max-width: 599px) {
  .privacy-page .pp-wrap { padding-inline: 24px; }
  .privacy-page .pp-contact-inner::before { inset-inline: 24px; }
  .privacy-page .header__inner { min-height: 76px; }
  .privacy-page .pp-hero-inner { min-height: 260px; padding-block: 42px 48px; }
  .privacy-page .pp-hero h1 { font-size: 30px; line-height: 1.45; }
  .privacy-page .pp-lead { margin-top: 16px; font-size: 16px; }
  .privacy-page .pp-facets { opacity: .5; }
  .privacy-page .pp-content { padding-block: 10px 32px; }
  .privacy-page .pp-item { grid-template-columns: 38px minmax(0, 1fr); gap: 12px 12px; padding-block: 26px 30px; }
  .privacy-page .pp-number { font-size: 22px; }
  .privacy-page .pp-item h2 { padding-left: 14px; font-size: 20px; }
  .privacy-page .pp-copy { grid-column: 1 / -1; font-size: 16px; }
  .privacy-page .pp-support-grid { grid-template-columns: 1fr; gap: 12px; }
  .privacy-page .pp-support { padding: 20px; }
  .privacy-page .pp-contact { padding-bottom: 48px; }
  .privacy-page .pp-contact-inner { gap: 18px; padding-block: 28px; }
  .privacy-page .pp-contact-inner > div { padding-inline: 24px; }
  .privacy-page .pp-contact h2 { font-size: 23px; }
  .privacy-page .pp-contact p:not(.pp-eyebrow) { margin-inline: 24px; padding-left: 16px; }
  .privacy-page .pp-contact-button { margin-inline: 24px; width: calc(100% - 48px); }
  .privacy-page .mobile-nav .btn { font-size: 16px; }
}
@media (max-width: 359px) {
  .privacy-page .pp-wrap { padding-inline: 18px; }
  .privacy-page .pp-contact-inner::before { inset-inline: 18px; }
  .privacy-page .pp-hero h1 { font-size: 29px; }
  .privacy-page .pp-item h2 { font-size: 19px; }
  .privacy-page .pp-contact-inner > div { padding-inline: 18px; }
  .privacy-page .pp-contact p:not(.pp-eyebrow) { margin-inline: 18px; }
  .privacy-page .pp-contact-button { margin-inline: 18px; width: calc(100% - 36px); }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.privacy-page) { scroll-behavior: auto; }
  .privacy-page *, .privacy-page *::before, .privacy-page *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media print {
  .privacy-page .pp-facets, .privacy-page .pp-hero-caption { display: none; }
  .privacy-page .pp-item { break-inside: avoid; }
}
