/* Spyon public legal documents — designer layout without changing document content.
   Applies to versioned DOCX editions and legacy public documents only. */
body.legal-page {
  --spyon-legal-ink:#12223E;
  --spyon-legal-muted:#90A3BF;
  --spyon-legal-gradient:linear-gradient(112deg,#24BDE8 0%,#1469DC 100%);
  --spyon-legal-tag:linear-gradient(100deg,#ECF7FF,#DFF6FC);
  background:#f6fafe;color:var(--spyon-legal-ink);
  font-family:"Inter Tight",Inter,Arial,sans-serif;font-weight:400;
}
.legal-page .site-header {
  background:#fff;min-height:64px;border-bottom:0;box-shadow:none;
}
.legal-page .site-header .site-brand {color:#12223e;font-family:"Golos Text",sans-serif}
.legal-page .language-select {width:107px;flex:0 0 107px}
.legal-page .language-select select {
  width:107px;height:40px;padding:0 20px 0 45px;
  font:600 14px/20px "Inter Tight",sans-serif;
  color:#12223e;border:0;box-shadow:none;
  background:#fff url("/static/icons/language-globe-24.svg") no-repeat 16px center;
  background-size:24px 24px;border-radius:8px;
}
.legal-page .language-select select:focus-visible {
  outline:2px solid #24BDE8;outline-offset:2px;
}
.legal-page .legal-design-shell {
  width:min(1280px,calc(100% - 80px));max-width:1280px;
  margin:0 auto;padding:80px 0 110px;background:transparent;
}
.legal-page .legal-page-title {
  margin:0 0 64px;color:#12223e;
  font:400 68px/66px Onest,"Inter Tight",sans-serif;
  letter-spacing:-.02em;
}
.legal-page .legal-design-shell .legal-layout {
  display:grid;grid-template-columns:minmax(0,416px) minmax(0,848px);
  justify-content:normal;align-items:start;gap:16px;
  width:100%;max-width:none;margin:0;padding:0;background:transparent;
}
.legal-page .legal-design-shell .legal-nav {
  position:static;top:auto;display:flex;flex-wrap:wrap;align-items:flex-start;
  align-content:flex-start;gap:8px 12px;
  min-width:0;max-width:416px;margin:0;padding:0;
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
.legal-page .legal-nav > span {display:none}
.legal-page .legal-nav a {
  position:relative;display:inline-block;flex:0 0 auto;min-width:0;max-width:100%;
  padding:0;margin:0;border:0;border-radius:0;
  color:#90A3BF;background:none;box-shadow:none;
  font:600 14px/20px "Inter Tight",sans-serif;
  white-space:normal;text-align:left;text-decoration:none;
  transition:color .16s ease;
}
.legal-page .legal-nav a::after {
  content:"";display:inline-block;width:1px;height:12px;
  margin:0 0 0 12px;vertical-align:-1px;
  background:linear-gradient(#24BDE8,#1469DC);
}
.legal-page .legal-nav a:last-child::after {display:none}
.legal-page .legal-nav a:hover {color:#1469dc;background:transparent}
.legal-page .legal-nav a.active,
.legal-page .legal-nav a[aria-current="page"] {
  color:#1469dc;background:var(--spyon-legal-gradient);
  background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;
  font-weight:600;
}
.legal-page .legal-nav a:focus-visible {
  outline:2px solid #24BDE8;outline-offset:4px;border-radius:2px;
}
.legal-page .legal-layout .legal-document,
.legal-page .legal-layout .legal-versioned-document {
  width:100%;max-width:848px;min-width:0;margin:0;padding:0;
  color:#12223e;background:transparent;border:0;box-shadow:none;
}
.legal-page .legal-document-head {
  display:grid;justify-items:start;gap:16px;margin:0 0 32px;
  padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
.legal-page .legal-document-head .eyebrow {display:none}
.legal-page .legal-document-head h1 {
  width:100%;max-width:848px;margin:0;padding:0;
  color:#12223e;
  font:400 56px/56px Onest,"Inter Tight",sans-serif;
  letter-spacing:-.02em;overflow-wrap:break-word;
}
.legal-page .legal-document-head .legal-lead {
  max-width:848px;margin:0;color:#60758f;
  font:400 14px/20px "Inter Tight",sans-serif;
}
.legal-page .legal-document-facts {
  display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;
}
.legal-page .legal-document-facts span {
  display:inline-flex;align-items:center;min-height:20px;width:max-content;
  padding:2px 8px;border:0;border-radius:8px;
  background:var(--spyon-legal-tag);color:#12223e;box-shadow:none;
  font:400 12px/16px "Inter Tight",sans-serif;
}
.legal-page .legal-document-facts b {font:600 12px/16px "Inter Tight",sans-serif;color:#12223e}
.legal-page .legal-document-head .legal-pdf-button {
  display:inline-flex;align-items:center;justify-content:center;gap:4px;
  width:auto;min-width:145px;height:40px;min-height:40px;margin:0;padding:0 8px 0 16px;
  border:1px solid #90A3BF;border-radius:8px;background:transparent;
  color:#12223e;font:700 14px/20px "Inter Tight",sans-serif;text-decoration:none;
  box-shadow:none;position:relative;overflow:hidden;isolation:isolate;
}
.legal-page .legal-document-head .legal-pdf-button .button-icon {
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;
  width:24px;height:24px;margin-left:auto;
}
.legal-page .legal-document-head .legal-pdf-button .button-icon img {
  display:block;width:16px;height:16px;object-fit:contain;
}
.legal-page .legal-document-head .legal-pdf-button:hover {
  border-color:#24BDE8;color:#1469DC;transform:translateY(-1px);
}
.legal-page .legal-document-head .legal-pdf-button::after {
  content:"";position:absolute;inset:-70% auto -70% -70%;width:35%;
  background:linear-gradient(90deg,transparent,#24BDE844,transparent);
  transform:translateX(-150%) skewX(-24deg);pointer-events:none;
  animation:spyon-legal-flash 5.2s ease-in-out infinite;
}
@keyframes spyon-legal-flash {
  0%,12% {transform:translateX(-150%) skewX(-24deg)}
  30%,100% {transform:translateX(700%) skewX(-24deg)}
}
.legal-page .legal-source-note {
  display:none; /* same published document; visual-only removal of technical annotation */
}
.legal-page .legal-source-content,
.legal-page .legal-sections,
.legal-page .legal-commercial-terms,
.legal-page .operator-card {
  width:100%;max-width:100%;margin:0;padding:0;
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
.legal-page .legal-source-content,
.legal-page .legal-document .legal-section p {
  color:#12223e;font:400 14px/20px "Inter Tight",sans-serif;
  letter-spacing:0;text-align:left;overflow-wrap:break-word;
}
.legal-page .legal-source-content p,
.legal-page .legal-source-content li {
  margin:0 0 16px;white-space:pre-wrap;
  color:inherit;font:inherit;
}
.legal-page .legal-source-content :is(h1,h2,h3,h4),
.legal-page .legal-document .legal-section h2 {
  margin:32px 0 16px;color:#12223e;
  font:600 26px/26px Onest,"Inter Tight",sans-serif;
  letter-spacing:-.01em;
}
.legal-page .legal-source-content > :first-child,
.legal-page .legal-document .legal-sections > :first-child h2 {margin-top:0}
.legal-page .legal-source-content a,
.legal-page .legal-section a {
  color:#1469DC;background:var(--spyon-legal-gradient);
  background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;
  text-decoration:underline;text-decoration-color:#24bde8;
}
.legal-page .legal-source-content :is(strong,b) {font-weight:700}
.legal-page .legal-source-content :is(ol,ul) {margin:0 0 16px;padding-left:24px}
.legal-page .legal-source-content table {width:100%;max-width:100%;border-collapse:collapse;table-layout:auto}
.legal-page .legal-source-content th,
.legal-page .legal-source-content td {border:1px solid #d7e5ee;padding:8px;vertical-align:top;font:400 14px/20px "Inter Tight",sans-serif}
.legal-page .legal-table-wrap {max-width:100%;overflow-x:auto}
.legal-page .legal-sections .legal-section {padding:0 0 24px}
.legal-page .legal-sections .legal-section h2 {margin-top:32px}
.legal-page .legal-commercial-terms {margin-top:32px}
.legal-page .legal-document .operator-card {
  margin:16px 0 32px;padding:24px 0;border-block:1px solid #dce7f1;
}
.legal-page .legal-document .legal-warning {box-shadow:none}
.legal-page .legal-meta {margin:42px 0 0;padding:16px 0 0}
.legal-page .legal-site-footer {margin-top:0}
@media(max-width:1100px) {
  .legal-page .legal-design-shell {width:calc(100% - 48px);padding-top:64px}
  .legal-page .legal-design-shell .legal-layout {
    grid-template-columns:minmax(0,32%) minmax(0,1fr);
  }
  .legal-page .legal-page-title {font-size:clamp(42px,5vw,68px);line-height:1}
  .legal-page .legal-document-head h1 {font-size:clamp(38px,5vw,56px);line-height:1.03}
}
@media(max-width:760px) {
  .legal-page .legal-design-shell {width:calc(100% - 32px);padding:40px 0 72px}
  .legal-page .legal-page-title {margin-bottom:30px;font-size:clamp(36px,7vw,52px);line-height:1.04}
  .legal-page .legal-design-shell .legal-layout {grid-template-columns:1fr;gap:28px}
  .legal-page .legal-nav {max-width:100%}
  .legal-page .legal-document-head h1 {font-size:clamp(32px,6vw,46px);line-height:1.06}
  .legal-page .legal-document-facts {display:flex;flex-wrap:wrap;gap:4px}
  .legal-page .legal-source-content :is(h1,h2,h3,h4),
  .legal-page .legal-document .legal-section h2 {font-size:23px;line-height:1.12}
  .legal-page .language-select {width:86px;flex-basis:86px}
  .legal-page .language-select select {width:86px;padding-left:35px;padding-right:4px;background-position:6px center}
}
@media(prefers-reduced-motion:reduce) {
  .legal-page .legal-document-head .legal-pdf-button::after {display:none;animation:none}
}

/* P0 mobile legal layout: content cannot force the CSS grid past its viewport. */
@media (max-width:760px) {
  .legal-page .legal-design-shell {
    width:calc(100% - 24px);
    min-width:0;
    padding:32px 0 64px;
  }
  .legal-page .legal-page-title {
    font-size:clamp(31px,8vw,44px);
    line-height:1.08;
    margin:0 0 26px;
    overflow-wrap:anywhere;
  }
  .legal-page .legal-design-shell .legal-layout {
    width:100%;
    min-width:0;
    grid-template-columns:minmax(0,1fr);
    gap:28px;
  }
  .legal-page .legal-design-shell .legal-nav {
    min-width:0;
    width:100%;
    max-width:100%;
    flex-wrap:wrap;
    gap:10px 12px;
  }
  .legal-page .legal-nav a {
    flex:0 1 auto;
    min-width:0;
    overflow-wrap:anywhere;
  }
  .legal-page .legal-design-shell .legal-document,
  .legal-page .legal-design-shell .legal-versioned-document,
  .legal-page .legal-document-head,
  .legal-page .legal-source-content,
  .legal-page .legal-sections,
  .legal-page .legal-section,
  .legal-page .legal-commercial-terms {
    min-width:0;
    max-width:100%;
  }
  .legal-page .legal-document-head h1 {
    font-size:clamp(30px,7vw,44px);
    line-height:1.08;
    overflow-wrap:anywhere;
  }
  .legal-page .legal-source-content :is(p,li,span,strong,a,td,th),
  .legal-page .legal-section :is(p,li,span,strong,a,td,th) {
    overflow-wrap:anywhere;
    word-break:normal;
  }
  .legal-page .legal-source-content :is(pre,code) {
    white-space:pre-wrap;
    overflow-wrap:anywhere;
  }
  .legal-page .legal-source-content table {
    display:block;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .legal-page .legal-document-facts {
    max-width:100%;
    flex-wrap:wrap;
  }
}
