:root {
  --wsm-navy: #0d2c3d;
  --wsm-blue: #176caa;
  --wsm-blue-dark: #0f568a;
  --wsm-sky: #e9f5fb;
  --wsm-pale: #f6fafc;
  --wsm-line: #d9e7ef;
  --wsm-ink: #17313f;
  --wsm-muted: #5b7180;
  --wsm-radius: 18px;
  --wsm-shadow: 0 18px 48px rgba(13, 44, 61, .10);
}

body.wsm-experience-upgrade,
body.wsm-experience-upgrade input,
body.wsm-experience-upgrade button,
body.wsm-experience-upgrade textarea,
body.wsm-experience-upgrade select {
  font-family: "Manrope", Arial, sans-serif !important;
  color: var(--wsm-ink);
}

body.wsm-experience-upgrade h1,
body.wsm-experience-upgrade h2,
body.wsm-experience-upgrade h3,
body.wsm-experience-upgrade h4,
body.wsm-experience-upgrade h5,
body.wsm-experience-upgrade h6 {
  font-family: "Manrope", Arial, sans-serif !important;
  color: var(--wsm-navy);
  letter-spacing: -.025em;
}

body.wsm-experience-upgrade #header-outer,
body.wsm-experience-upgrade #header-secondary-outer {
  font-family: "Manrope", Arial, sans-serif !important;
}

body.wsm-experience-upgrade #top nav > ul > li > a {
  font-weight: 700 !important;
  letter-spacing: -.01em;
}

body.wsm-experience-upgrade #top nav .sub-menu {
  border: 1px solid var(--wsm-line);
  border-radius: 14px;
  box-shadow: var(--wsm-shadow);
  padding: 10px !important;
}

body.wsm-experience-upgrade #top nav .sub-menu a {
  border-radius: 9px;
  line-height: 1.35 !important;
  padding: 11px 14px !important;
}

body.wsm-experience-upgrade .wsm-page-hero,
body.wsm-experience-upgrade .wsm-hero {
  background: linear-gradient(135deg, #f9fcfe 0%, var(--wsm-sky) 100%) !important;
  overflow: hidden;
}

body.wsm-experience-upgrade .wsm-container {
  width: min(1160px, calc(100% - 48px));
  margin-inline: auto;
}

body.wsm-experience-upgrade .wsm-section {
  padding-block: clamp(62px, 7vw, 104px);
}

body.wsm-experience-upgrade .wsm-card,
body.wsm-experience-upgrade .wsm-service-card,
body.wsm-experience-upgrade .wsm-visual-card,
body.wsm-experience-upgrade .wsm-highlight-box {
  border: 1px solid var(--wsm-line) !important;
  border-radius: var(--wsm-radius) !important;
  box-shadow: var(--wsm-shadow) !important;
}

body.wsm-experience-upgrade .nectar-button,
body.wsm-experience-upgrade a.wsm-button,
body.wsm-experience-upgrade .wsm-button a {
  border-radius: 999px !important;
  font-weight: 800 !important;
  letter-spacing: -.01em;
}

body.wsm-experience-upgrade a:focus-visible,
body.wsm-experience-upgrade button:focus-visible {
  outline: 3px solid rgba(23,108,170,.34) !important;
  outline-offset: 3px;
}

/* Full content containers are always visible. Motion is applied only to cards by JS. */
body.wsm-experience-upgrade .wpb_row,
body.wsm-experience-upgrade .vc_row,
body.wsm-experience-upgrade .wsm-reveal-row {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

@media (min-width: 1001px) and (prefers-reduced-motion: no-preference) {
  body.wsm-experience-upgrade .wsm-safe-reveal {
    opacity: 0;
    transform: translateY(14px);
    transition: opacity .42s ease, transform .42s ease;
  }
  body.wsm-experience-upgrade .wsm-safe-reveal.wsm-in-view {
    opacity: 1;
    transform: none;
  }
}

@media (max-width: 1000px) {
  body.wsm-experience-upgrade .wsm-container { width: min(100% - 32px, 720px); }
  body.wsm-experience-upgrade .wsm-section { padding-block: 56px; }
  body.wsm-experience-upgrade h1 { font-size: clamp(34px, 9vw, 48px) !important; line-height: 1.08 !important; }
  body.wsm-experience-upgrade h2 { font-size: clamp(28px, 7vw, 38px) !important; line-height: 1.14 !important; }
  body.wsm-experience-upgrade .wsm-safe-reveal,
  body.wsm-experience-upgrade [class*="wsm-"] {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
  }
}

@media (max-width: 480px) {
  body.wsm-experience-upgrade .wsm-container { width: calc(100% - 24px); }
  body.wsm-experience-upgrade .wsm-card,
  body.wsm-experience-upgrade .wsm-service-card,
  body.wsm-experience-upgrade .wsm-visual-card { border-radius: 14px !important; }
}
