:root {
  --navy: #06172d;
  --deep: #001326;
  --blue: #0568ee;
  --sky: #6fb8ff;
  --ice: #eef7ff;
  --ink: #07162f;
  --muted: #53647a;
  --white: #fff;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  background: var(--deep);
}
body {
  color: var(--ink);
  font-family: var(--font-geist), Arial, sans-serif;
  background: #fff;
  margin: 0;
  overflow-x: hidden;
}
button,
input,
textarea {
  font: inherit;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}
button {
  color: inherit;
}
a {
  color: inherit;
  text-decoration: none;
}
.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}
.section-kicker {
  color: var(--blue);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin: 0 0 22px;
  font-size: 12px;
  font-weight: 780;
}
.audience-page {
  color: #fff;
  opacity: 0;
  background: #06172d;
  min-height: 100svh;
  transition:
    opacity 0.8s,
    transform 1.2s cubic-bezier(0.2, 0.8, 0.2, 1);
  position: relative;
  overflow: hidden;
  transform: scale(1.012);
}
.audience-page.is-ready {
  opacity: 1;
  transform: none;
}
.audience-header {
  z-index: 10;
  pointer-events: none;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  height: 116px;
  padding: 18px clamp(28px, 4vw, 70px);
  display: grid;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.audience-header:before {
  content: "";
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  background: linear-gradient(#f4f9feeb, #f4f9fe80 58%, #0000);
  position: absolute;
  inset: 0;
  -webkit-mask-image: linear-gradient(#000 70%, #0000);
  mask-image: linear-gradient(#000 70%, #0000);
}
.audience-header > * {
  position: relative;
}
.brand-lockup {
  align-items: center;
  width: clamp(152px, 13vw, 202px);
  display: inline-flex;
}
.brand-horizontal-logo {
  object-fit: contain;
  width: 100%;
  height: auto;
  display: block;
}
.audience-header p {
  color: #0c1d37;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  margin: 0;
  font-size: 15px;
  font-weight: 620;
}
.language-toggle {
  color: #10223c;
  cursor: pointer;
  background: #ffffffd1;
  border: 1px solid #08203e24;
  border-radius: 999px;
  padding: 9px 13px;
  transition:
    transform 0.2s,
    background 0.2s;
  box-shadow: 0 5px 18px #061d3b12;
}
.language-toggle:hover {
  background: #fff;
  transform: translateY(-2px);
}
.audience-language {
  pointer-events: auto;
  justify-self: end;
}
.audience-panels {
  grid-template-columns: 1fr 1fr;
  min-height: 100svh;
  display: grid;
}
.audience-panel {
  text-align: left;
  cursor: pointer;
  background: #dceaf5;
  border: 0;
  min-width: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}
.audience-panel-art,
.audience-panel-shade,
.audience-content {
  position: absolute;
  inset: 0;
}
.audience-panel-art img {
  object-fit: cover;
  width: 200%;
  max-width: none;
  height: 100%;
  transition:
    transform 1.1s cubic-bezier(0.2, 0.7, 0.2, 1),
    filter 0.6s;
  position: absolute;
  top: 0;
}
.patient-panel .audience-panel-art img {
  left: 0;
}
.provider-panel .audience-panel-art img {
  right: 0;
}
.audience-panel-shade {
  background: linear-gradient(
    #02122b00 36%,
    #03163447 58%,
    #03142ff0 92%,
    #03152f
  );
  transition: opacity 0.45s;
}
.audience-panel:after {
  content: "";
  border: 1px solid #0000;
  transition:
    border 0.35s,
    box-shadow 0.45s;
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 #0568ee00;
}
.audience-panel:hover:after,
.audience-panel:focus-visible:after {
  border-color: #70beffb3;
  box-shadow: inset 0 0 100px #0568ee33;
}
.audience-panel:hover .audience-panel-art img,
.audience-panel:focus-visible .audience-panel-art img {
  filter: saturate(1.04) contrast(1.02);
  transform: scale(1.035);
}
.audience-panel:hover .audience-panel-shade {
  opacity: 0.9;
}
.audience-content {
  z-index: 2;
  color: #fff;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  height: 56%;
  padding: 0 clamp(36px, 7vw, 110px) clamp(72px, 7vh, 105px);
  display: flex;
  top: auto;
}
.audience-content small {
  opacity: 0.72;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-size: 10px;
  font-style: normal;
  font-weight: 750;
  transition:
    transform 0.35s,
    opacity 0.35s;
  transform: translateY(8px);
}
.audience-content strong {
  letter-spacing: -0.045em;
  font-family:
    Georgia,
    Times New Roman,
    serif;
  font-size: clamp(48px, 4.8vw, 82px);
  font-weight: 400;
  line-height: 0.88;
}
.audience-content em {
  color: #ffffffd1;
  max-width: 330px;
  margin-top: 22px;
  font-size: clamp(14px, 1.1vw, 18px);
  font-style: normal;
  line-height: 1.45;
}
.selector-button {
  color: #fff;
  background: var(--blue);
  background-size: 200% 100%;
  border-radius: 999px;
  align-items: center;
  gap: 28px;
  margin-top: 32px;
  padding: 15px 22px;
  font-size: 13px;
  font-weight: 590;
  transition:
    transform 0.3s,
    box-shadow 0.3s;
  display: inline-flex;
  box-shadow: 0 12px 30px #03306f47;
}
.selector-button.light {
  color: #13233d;
  background: #fff;
}
.selector-button i {
  font-style: normal;
  transition: transform 0.3s;
}
.audience-panel:hover .selector-button {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px #003c9366;
}
.audience-panel:hover .selector-button i {
  transform: translate(6px);
}
.audience-panel:hover .audience-content small {
  opacity: 1;
  transform: none;
}
.audience-footnote {
  z-index: 3;
  color: #ffffff80;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  margin: 0;
  font-size: 10px;
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translate(-50%);
}
.motion-button {
  isolation: isolate;
  cursor: pointer;
  border: 0;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 26px;
  min-height: 48px;
  padding: 13px 22px;
  font-size: 13px;
  font-weight: 680;
  transition:
    transform 0.25s,
    box-shadow 0.25s,
    color 0.25s;
  display: inline-flex;
  position: relative;
  overflow: hidden;
}
.motion-button:before {
  content: "";
  z-index: -1;
  background: linear-gradient(110deg, #0000 15%, #ffffff59 45%, #0000 75%);
  transition: transform 0.65s;
  position: absolute;
  inset: 0;
  transform: translate(-130%);
}
.motion-button:hover {
  transform: translateY(-3px);
}
.motion-button:hover:before {
  transform: translate(130%);
}
.motion-button b {
  font-size: 17px;
  font-weight: 450;
  transition: transform 0.25s;
}
.motion-button:hover b {
  transform: translate(5px);
}
.motion-button.primary {
  color: #fff;
  background: var(--blue);
  box-shadow: 0 12px 28px #0568ee3b;
}
.motion-button.primary:hover {
  box-shadow: 0 18px 38px #0568ee52;
}
.motion-button.secondary {
  color: #17304f;
  background: #edf3f8;
}
.motion-button.light {
  color: #071d38;
  background: #fff;
  box-shadow: 0 12px 30px #000c1e1f;
}
.motion-button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  box-shadow: none;
  transform: none;
}
.modal-backdrop {
  z-index: 200;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  background: #000d20c2;
  place-items: center;
  padding: 24px;
  animation: 0.28s both fadeIn;
  display: grid;
  position: fixed;
  inset: 0;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
}
.disclaimer-modal,
.detail-modal,
.contact-modal {
  width: min(720px, 100%);
  max-height: 90svh;
  color: var(--ink);
  background: #fffffffa;
  border-radius: 28px;
  padding: clamp(30px, 5vw, 58px);
  animation: 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) both modalIn;
  position: relative;
  overflow: auto;
  box-shadow: 0 35px 100px #000a1e73;
}
@keyframes modalIn {
  0% {
    opacity: 0;
    transform: translateY(24px) scale(0.97);
  }
}
.modal-close {
  z-index: 3;
  color: #0c2648;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d8e3ef;
  border-radius: 50%;
  width: 42px;
  height: 42px;
  font-size: 24px;
  transition:
    transform 0.25s,
    background 0.25s;
  position: absolute;
  top: 18px;
  right: 20px;
}
.modal-close:hover {
  background: #edf6ff;
  transform: rotate(90deg);
}
.disclaimer-modal h1 {
  letter-spacing: -0.05em;
  max-width: 590px;
  margin: 0;
  font-size: clamp(34px, 5vw, 54px);
  line-height: 0.98;
}
.modal-rule {
  background: var(--blue);
  width: 54px;
  height: 3px;
  margin: 26px 0;
}
.disclaimer-copy {
  color: #4f6177;
  font-size: 14px;
  line-height: 1.65;
}
.acknowledgement {
  color: #213a59;
  cursor: pointer;
  align-items: flex-start;
  gap: 12px;
  margin: 26px 0;
  font-size: 14px;
  display: flex;
}
.acknowledgement input {
  width: 19px;
  height: 19px;
  accent-color: var(--blue);
}
.modal-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px;
  display: flex;
}
.detail-modal h2,
.contact-modal h2 {
  letter-spacing: -0.05em;
  margin: 0 0 20px;
  font-size: clamp(36px, 5vw, 62px);
  line-height: 0.98;
}
.detail-modal > p:not(.section-kicker),
.contact-modal > p {
  color: var(--muted);
  line-height: 1.65;
}
.detail-note {
  border-left: 3px solid var(--blue);
  background: #f1f7fd;
  margin: 24px 0;
  padding: 16px 18px;
  font-size: 13px;
}
.contact-modal form {
  gap: 15px;
  margin-top: 28px;
  display: grid;
}
.contact-modal label {
  color: #38506b;
  letter-spacing: 0.04em;
  gap: 7px;
  font-size: 12px;
  font-weight: 700;
  display: grid;
}
.contact-modal input,
.contact-modal textarea {
  width: 100%;
  color: var(--ink);
  resize: vertical;
  background: #f8fbfd;
  border: 1px solid #d7e1eb;
  border-radius: 12px;
  outline: none;
  padding: 13px 14px;
  transition:
    border 0.2s,
    box-shadow 0.2s;
}
.contact-modal input:focus,
.contact-modal textarea:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 4px #0568ee1a;
}
.contact-modal .motion-button {
  justify-self: start;
  margin-top: 6px;
}
.whatsapp-option {
  border-top: 1px solid #dbe5ed;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 4px;
  padding-top: 15px;
  display: flex;
}
.whatsapp-option > span {
  color: #6b7b8c;
  font-size: 11px;
}
.whatsapp-option a {
  color: #08753f;
  background: #effbf5;
  border: 1px solid #22a864;
  border-radius: 999px;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px 16px;
  font-size: 12px;
  font-weight: 760;
  transition:
    transform 0.2s,
    box-shadow 0.2s,
    background 0.2s;
  display: inline-flex;
}
.whatsapp-option a:hover {
  background: #e2f8ed;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px #12914f24;
}
.whatsapp-option b {
  font-size: 14px;
}
.contact-success {
  text-align: center;
  padding: 35px 0;
}
.contact-success > span {
  color: #fff;
  background: var(--blue);
  border-radius: 50%;
  place-items: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 24px;
  font-size: 28px;
  display: grid;
}
.site-shell {
  background: #fff;
  min-height: 100svh;
}
.scroll-progress {
  z-index: 190;
  transform-origin: 0;
  background: linear-gradient(90deg, #39aaff, var(--blue), #99d7ff);
  width: 100%;
  height: 3px;
  position: fixed;
  top: 0;
  left: 0;
  box-shadow: 0 0 14px #0568ee80;
}
.site-header {
  z-index: 50;
  color: #0b203a;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 36px;
  height: 104px;
  padding: 12px clamp(28px, 5vw, 78px);
  display: grid;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.site-header:before {
  content: "";
  z-index: -1;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  background: linear-gradient(#ffffffe0, #ffffff6b 70%, #0000);
  position: absolute;
  inset: 0;
  -webkit-mask-image: linear-gradient(#000 80%, #0000);
  mask-image: linear-gradient(#000 80%, #0000);
}
.site-header nav {
  justify-content: center;
  align-items: center;
  gap: clamp(18px, 2.2vw, 38px);
  display: flex;
}
.site-header nav a,
.site-header nav button {
  color: #10243f;
  cursor: pointer;
  background: 0 0;
  border: 0;
  padding: 8px 0;
  font-size: 12px;
  font-weight: 670;
  position: relative;
}
.site-header nav a:after,
.site-header nav button:after {
  content: "";
  background: var(--blue);
  transform-origin: 100%;
  height: 1px;
  transition: transform 0.3s;
  position: absolute;
  bottom: 2px;
  left: 0;
  right: 0;
  transform: scaleX(0);
}
.site-header nav a:hover:after,
.site-header nav button:hover:after {
  transform-origin: 0;
  transform: scaleX(1);
}
.nav-solutions {
  position: relative;
}
.nav-solutions > button {
  align-items: center;
  gap: 6px;
  display: flex;
}
.nav-solutions > button span {
  color: var(--blue);
  font-size: 13px;
  transition: transform 0.25s;
}
.solutions-menu {
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform-origin: top;
  background: #fffffff5;
  border: 1px solid #6999c23d;
  border-radius: 18px;
  width: 310px;
  padding: 10px;
  transition:
    opacity 0.22s,
    transform 0.3s cubic-bezier(0.16, 1, 0.3, 1),
    visibility 0.22s;
  display: grid;
  position: absolute;
  top: calc(100% + 13px);
  left: 50%;
  transform: translate(-50%, -8px) scale(0.98);
  box-shadow: 0 24px 65px #0423422e;
}
.solutions-menu:before {
  content: "";
  height: 18px;
  position: absolute;
  top: -16px;
  left: 0;
  right: 0;
}
.nav-solutions:hover .solutions-menu,
.nav-solutions:focus-within .solutions-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%) scale(1);
}
.nav-solutions:hover > button span,
.nav-solutions:focus-within > button span {
  transform: rotate(180deg);
}
.site-header nav .solutions-menu a {
  color: #15324e;
  text-align: left;
  border-radius: 11px;
  grid-template-columns: 28px 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 10px 12px;
  transition:
    color 0.2s,
    background 0.2s,
    transform 0.2s;
  display: grid;
}
.site-header nav .solutions-menu a:after {
  display: none;
}
.site-header nav .solutions-menu a:hover {
  color: #0568ee;
  background: #eef7ff;
  transform: translate(3px);
}
.solutions-menu a b {
  color: #83a1ba;
  letter-spacing: 0.1em;
  font-size: 9px;
}
.solutions-menu a span {
  font-size: 13px;
  font-weight: 680;
}
.solutions-menu a i {
  color: #0568ee;
  font-style: normal;
}
.header-tools {
  align-items: center;
  gap: 9px;
  display: flex;
}
.audience-switch {
  color: #fff;
  background: #051830ed;
  border-radius: 999px;
  align-items: center;
  gap: 8px;
  padding: 11px 15px;
  font-size: 11px;
  font-weight: 720;
  transition:
    transform 0.25s,
    background 0.25s;
  display: inline-flex;
  box-shadow: 0 8px 24px #00132d29;
}
.audience-switch:hover {
  background: var(--blue);
  transform: translateY(-2px);
}
.mobile-menu-toggle,
.mobile-navigation {
  display: none;
}
.real-hero {
  background: #eef6fb;
  align-items: center;
  min-height: max(760px, 100svh);
  display: flex;
  position: relative;
  overflow: hidden;
}
.real-hero:after {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    #f9fcfffa 0%,
    #f9fcffe8 31%,
    #f9fcff6b 54%,
    #0000 72%
  );
  position: absolute;
  inset: 0;
}
.hero-copy {
  z-index: 3;
  align-self: center;
  max-width: 760px;
  padding: clamp(150px, 13vw, 210px) 4vw 90px clamp(34px, 6vw, 96px);
  position: relative;
}
.hero-copy h1 {
  letter-spacing: -0.07em;
  max-width: 720px;
  margin: 0;
  font-size: clamp(58px, 6.3vw, 104px);
  font-weight: 540;
  line-height: 0.91;
}
.hero-copy .lead {
  color: #3f5269;
  max-width: 500px;
  margin: 30px 0;
  font-size: clamp(16px, 1.25vw, 21px);
  line-height: 1.55;
}
.hero-photo {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero-photo img,
.process-photo img,
.featured-media img,
.contact-media img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: calc(100% + 54px);
  transform: translate3d(0, var(--media-shift, 0), 0) scale(1.025);
  will-change: transform;
}
.hero-aura {
  z-index: 2;
  filter: blur(70px);
  background: #74c1ff33;
  border-radius: 50%;
  width: 260px;
  height: 260px;
  position: absolute;
  bottom: -80px;
  right: 35%;
}
.process-section {
  background: #fff;
  align-items: center;
  min-height: 780px;
  display: flex;
  position: relative;
  overflow: hidden;
}
.process-section:after {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    #fffffffc 0%,
    #ffffffeb 43%,
    #ffffff24 72%,
    #0000
  );
  position: absolute;
  inset: 0;
}
.process-copy {
  z-index: 2;
  width: min(68%, 950px);
  padding: 90px clamp(32px, 5vw, 90px);
  position: relative;
}
.process-copy h2,
.section-heading h2 {
  letter-spacing: -0.065em;
  max-width: 680px;
  margin: 0;
  font-size: clamp(48px, 5vw, 82px);
  font-weight: 520;
  line-height: 0.98;
}
.step-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-top: 70px;
  display: grid;
}
.process-step {
  min-width: 0;
  position: relative;
}
.process-step > span {
  color: var(--blue);
  font-size: 22px;
  font-weight: 660;
}
.process-step i {
  background: linear-gradient(90deg, #acc1d5, #0000);
  width: 100%;
  height: 1px;
  margin: 18px 0;
  display: block;
}
.process-step h3 {
  margin: 0 0 14px;
  font-size: 17px;
}
.process-step p {
  color: #5b6877;
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
}
.process-step b {
  color: var(--blue);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  align-items: center;
  gap: 7px;
  margin-top: 20px;
  font-size: 11px;
  font-weight: 760;
  transition: transform 0.25s;
  display: inline-flex;
}
.process-step:hover b {
  transform: translate(5px);
}
.process-step:focus-visible {
  border-radius: 12px;
}
.process-photo {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.solutions-section {
  color: #fff;
  background: #000a16;
  height: 190svh;
  padding: 0;
  position: relative;
}
.solutions-sticky {
  background: #000a16;
  height: 100svh;
  min-height: 700px;
  position: sticky;
  top: 0;
  overflow: hidden;
}
.solutions-cinematic-bg {
  object-fit: contain;
  object-position: center;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
  width: 100%;
  height: 100%;
  animation: 9s ease-in-out infinite alternate solutionBreath;
  position: absolute;
  inset: 0;
  transform: scale(1.025);
}
@keyframes solutionBreath {
  to {
    filter: saturate(1.14) brightness(1.05);
    transform: scale(1.055);
  }
}
.solutions-vignette {
  pointer-events: none;
  background:
    linear-gradient(#00081342, #0000 38%, #000710c2 68%, #000710 100%),
    radial-gradient(circle, #0000 20%, #00050e8a 80%);
  position: absolute;
  inset: 0;
}
.solutions-scan {
  aspect-ratio: 1;
  border: 1px solid #4ebaff33;
  border-radius: 50%;
  width: min(58vw, 820px);
  animation: 4.8s ease-in-out infinite scanPulse;
  position: absolute;
  top: 9%;
  left: 50%;
  transform: translate(-50%);
  box-shadow:
    0 0 0 35px #2c9dff05,
    0 0 90px #0f84ff1f;
}
.solutions-scan:before,
.solutions-scan:after {
  content: "";
  border: 1px dashed #73d3ff21;
  border-radius: 50%;
  animation: 20s linear infinite scanRotate;
  position: absolute;
  inset: 12%;
}
.solutions-scan:after {
  border-style: solid;
  animation-duration: 13s;
  animation-direction: reverse;
  inset: 28%;
}
@keyframes scanPulse {
  50% {
    opacity: 0.55;
    transform: translate(-50%) scale(1.025);
  }
}
@keyframes scanRotate {
  to {
    transform: rotate(360deg);
  }
}
.immersive-heading {
  z-index: 3;
  text-align: center;
  width: min(940px, 100% - 150px);
  position: absolute;
  top: clamp(42px, 6vh, 68px);
  left: 50%;
  transform: translate(-50%);
}
.immersive-heading .section-kicker {
  color: #49a9ff;
  margin-bottom: 12px;
}
.immersive-heading h2 {
  letter-spacing: -0.066em;
  text-shadow: 0 12px 45px #00000073;
  max-width: 940px;
  margin: 0 auto;
  font-size: clamp(48px, 5vw, 78px);
  font-weight: 520;
  line-height: 0.93;
}
.solution-points {
  z-index: 4;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(28px, 5vw, 88px);
  padding: 0 clamp(46px, 7vw, 112px);
  display: grid;
  position: absolute;
  bottom: clamp(44px, 7vh, 78px);
  left: 0;
  right: 0;
}
.solution-point {
  color: #fff;
  text-align: center;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  min-width: 0;
  min-height: 220px;
  transition:
    opacity 0.75s,
    transform 0.9s cubic-bezier(0.2, 0.8, 0.2, 1),
    filter 0.4s;
  transition-delay: calc(var(--point-index) * 0.1s);
  background: 0 0;
  border: 0;
  padding: 38px 8px 0;
  position: relative;
  transform: translateY(42px);
}
.solution-point.is-revealed {
  opacity: 0.72;
  pointer-events: auto;
  transform: none;
}
.solution-points:not(.is-visible) .solution-point {
  opacity: 0;
  transform: translateY(36px);
}
.solution-points.is-visible .solution-point {
  transition-delay: calc(var(--point-index) * 80ms);
}
.solution-point:not(.is-active).is-revealed {
  opacity: 0.72;
}
.solution-point:hover,
.solution-point.is-active {
  transform: translateY(-8px);
  opacity: 1 !important;
}
.solution-node {
  background: #011022c7;
  border: 1px solid #fff6;
  border-radius: 50%;
  place-items: center;
  width: 22px;
  height: 22px;
  display: grid;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%);
  box-shadow: 0 0 24px #30b1ff66;
}
.solution-node i {
  background: #42d9ff;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  animation: 1.9s ease-in-out infinite nodePulse;
  box-shadow:
    0 0 0 6px #42d9ff1f,
    0 0 18px #42d9ff;
}
.solution-point:nth-child(2) .solution-node i {
  background: #0ca8ff;
  box-shadow:
    0 0 0 6px #0ca8ff1f,
    0 0 18px #0ca8ff;
}
.solution-point:nth-child(3) .solution-node i {
  background: #a77bff;
  box-shadow:
    0 0 0 6px #a77bff1f,
    0 0 18px #a77bff;
}
@keyframes nodePulse {
  50% {
    opacity: 0.72;
    transform: scale(0.65);
  }
}
.solution-connector {
  opacity: 0.45;
  transform-origin: 0;
  background: linear-gradient(90deg, #3fcfff, #3fcfff14);
  width: calc(50% + 7vw);
  height: 1px;
  transition: transform 0.85s 0.25s;
  position: absolute;
  top: 10px;
  left: calc(50% + 14px);
  transform: scaleX(0);
}
.solution-point.is-revealed .solution-connector {
  transform: scaleX(1);
}
.solution-point:last-child .solution-connector {
  display: none;
}
.solution-point strong {
  letter-spacing: -0.045em;
  text-wrap: balance;
  max-width: 320px;
  margin: 8px auto 14px;
  font-size: clamp(25px, 2.3vw, 38px);
  font-weight: 560;
  line-height: 1.02;
  display: block;
}
.solution-point small {
  color: #ffffffb3;
  max-width: 360px;
  min-height: 64px;
  margin: auto;
  font-size: 13px;
  line-height: 1.55;
  display: block;
}
.solution-point b {
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0;
  border-bottom: 1px solid #ffffff57;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  padding-bottom: 4px;
  font-size: 11px;
  font-weight: 720;
  transition:
    opacity 0.3s,
    transform 0.3s,
    border 0.3s;
  display: inline-flex;
  transform: translateY(8px);
}
.solution-point b i {
  font-style: normal;
  transition: transform 0.25s;
}
.solution-point:hover b,
.solution-point.is-active b {
  opacity: 1;
  border-color: #55c7ff;
  transform: none;
}
.solution-point:hover b i {
  transform: translate(5px);
}
.solution-progress {
  z-index: 5;
  background: #ffffff26;
  width: 2px;
  height: 32%;
  position: absolute;
  top: 34%;
  right: 25px;
}
.solution-progress span {
  transform-origin: top;
  background: linear-gradient(#54ccff, #8d78ff);
  width: 100%;
  height: 100%;
  transition: transform 0.6s;
  display: block;
  box-shadow: 0 0 12px #3ebdff;
}
.solution-scroll-cue {
  z-index: 5;
  color: #ffffff7a;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  align-items: center;
  gap: 9px;
  margin: 0;
  font-size: 9px;
  display: flex;
  position: absolute;
  bottom: 28px;
  right: 18px;
}
.solution-scroll-cue i {
  font-size: 16px;
  font-style: normal;
  animation: 1.5s ease-in-out infinite scrollCue;
}
@keyframes scrollCue {
  50% {
    transform: translateY(5px);
  }
}
.solution-mobile-status,
.resource-swipe-cue {
  display: none;
}
.resource-card i {
  color: #fff;
  background: var(--blue);
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 40px;
  height: 40px;
  font-style: normal;
  transition:
    transform 0.3s,
    background 0.3s;
  display: grid;
}
.resources-section {
  background: #fff;
  padding: 100px clamp(30px, 6vw, 96px) 110px;
}
.resources-section .section-heading {
  justify-content: space-between;
  align-items: flex-end;
  gap: 30px;
  display: flex;
}
.resources-section .section-heading h2 {
  max-width: 800px;
}
.featured-resource {
  background: #f6f9fb;
  border-radius: 4px;
  grid-template-columns: 42% 58%;
  align-items: stretch;
  margin-top: 60px;
  display: grid;
  overflow: hidden;
  box-shadow: 0 18px 55px #102f4f12;
}
.featured-copy {
  align-self: center;
  padding: clamp(38px, 5vw, 78px);
}
.featured-copy > span {
  color: var(--blue);
  font-size: 11px;
  font-weight: 760;
}
.featured-copy h3 {
  letter-spacing: -0.045em;
  margin: 14px 0;
  font-family: Georgia, serif;
  font-size: clamp(34px, 3.5vw, 58px);
  font-weight: 400;
  line-height: 1;
}
.featured-copy p {
  color: #586878;
  max-width: 390px;
  margin: 0 0 28px;
  font-size: 14px;
  line-height: 1.55;
}
.featured-media {
  min-height: 430px;
  position: relative;
  overflow: hidden;
}
.resource-card-grid {
  border-top: 1px solid #d7e0e8;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 36px;
  padding-top: 36px;
  display: grid;
}
.resource-card {
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  min-width: 0;
  padding: 0;
}
.resource-media {
  aspect-ratio: 16/9;
  background: #eaf3f9;
  border-radius: 10px;
  transition:
    transform 0.6s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.4s;
  display: block;
  position: relative;
  overflow: hidden;
}
.resource-media > img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition:
    transform 0.8s cubic-bezier(0.16, 1, 0.3, 1),
    filter 0.4s;
}
.resource-media > em {
  color: #fff;
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
  letter-spacing: 0.03em;
  background: #011328c2;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  position: absolute;
  bottom: 14px;
  left: 14px;
}
.resource-media .resource-play {
  color: #061a33;
  background: #ffffffe6;
  border: 1px solid #ffffffb8;
  border-radius: 50%;
  place-items: center;
  width: 58px;
  height: 58px;
  display: grid;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-shadow: 0 12px 35px #000e2438;
}
.resource-card-copy {
  padding: 19px 3px 0;
  display: block;
}
.resource-card strong {
  letter-spacing: -0.025em;
  font-size: 21px;
  display: block;
}
.resource-card small {
  color: #667585;
  min-height: 48px;
  margin-top: 9px;
  font-size: 13px;
  line-height: 1.5;
  display: block;
}
.resource-card b {
  color: #075dcf;
  align-items: center;
  gap: 9px;
  margin-top: 15px;
  font-size: 12px;
  display: inline-flex;
}
.resource-card b i {
  width: auto;
  height: auto;
  color: inherit;
  background: 0 0;
  border: 0;
  display: inline;
}
.resource-card:hover .resource-media {
  transform: translateY(-7px);
  box-shadow: 0 22px 48px #0a2b4d2e;
}
.resource-card:hover .resource-media > img {
  filter: saturate(1.07);
  transform: scale(1.045);
}
.resource-card:hover b i {
  transform: translate(5px);
}
.contact-banner {
  background: #eaf4f9;
  align-items: center;
  min-height: clamp(520px, 38vw, 670px);
  display: flex;
  position: relative;
  overflow: hidden;
}
.contact-banner:after {
  content: "";
  background: linear-gradient(90deg, #f6fafdfa 0%, #f6fafdd6 38%, #0000 66%);
  position: absolute;
  inset: 0;
}
.contact-copy {
  z-index: 3;
  align-self: center;
  padding: 60px clamp(34px, 6vw, 96px);
  position: relative;
}
.contact-copy h2 {
  letter-spacing: -0.065em;
  max-width: 660px;
  margin: 0 0 30px;
  font-size: clamp(47px, 4.8vw, 78px);
  font-weight: 520;
  line-height: 0.97;
}
.contact-media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.reveal {
  opacity: 0;
  transition:
    opacity 0.7s ease var(--reveal-delay, 0s),
    transform 1s cubic-bezier(0.16, 1, 0.3, 1) var(--reveal-delay, 0s);
  will-change: opacity, transform;
  transform: translateY(46px) scale(0.988);
}
.reveal.is-visible {
  opacity: 1;
  transform: none;
}
.immersive-heading.reveal {
  transform: translate(-50%, 46px) scale(0.988);
}
.immersive-heading.reveal.is-visible {
  transform: translate(-50%);
}
.back-to-top {
  z-index: 90;
  color: #fff;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  opacity: 0;
  pointer-events: none;
  cursor: pointer;
  background: #011227d6;
  border: 1px solid #ffffff52;
  border-radius: 50%;
  width: 52px;
  height: 52px;
  transition:
    opacity 0.25s,
    transform 0.25s,
    background 0.25s;
  position: fixed;
  bottom: 24px;
  right: 24px;
  transform: translateY(18px);
}
.back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: none;
}
.back-to-top:hover {
  background: var(--blue);
  transform: translateY(-3px);
}
.aion-footer {
  color: #ffffffd6;
  background:
    radial-gradient(circle at 0 0, #0c70ec38, #0000 35%),
    linear-gradient(135deg, #020b17, #00182f 60%, #020b17);
  padding: clamp(72px, 8vw, 126px) clamp(28px, 6vw, 100px) 28px;
  position: relative;
  overflow: hidden;
}
.footer-orbit {
  border: 1px solid #3197ff33;
  border-radius: 50%;
  width: 560px;
  height: 560px;
  position: absolute;
  top: -320px;
  left: -300px;
  box-shadow:
    0 0 0 45px #1782f406,
    0 0 0 100px #1782f405;
}
.footer-grid {
  grid-template-columns: 1.4fr 0.75fr 0.85fr 0.8fr 1.55fr;
  gap: clamp(28px, 4vw, 70px);
  max-width: 1500px;
  margin: auto;
  display: grid;
  position: relative;
}
.footer-brand-column .brand-lockup {
  margin-bottom: 18px;
}
.footer-brand-column > p {
  color: #ffffff9e;
  max-width: 280px;
  font-size: 14px;
  line-height: 1.65;
}
.footer-email {
  border-bottom: 1px solid #ffffff40;
  margin-top: 10px;
  padding-bottom: 5px;
  font-size: 13px;
  transition:
    color 0.2s,
    border 0.2s;
  display: inline-block;
}
.footer-email:hover {
  color: #73bbff;
  border-color: #73bbff;
}
.social-row {
  gap: 8px;
  margin-top: 24px;
  display: flex;
}
.social-row button {
  color: #fff;
  cursor: pointer;
  background: 0 0;
  border: 1px solid #ffffff38;
  border-radius: 50%;
  width: 38px;
  height: 38px;
  transition:
    transform 0.2s,
    color 0.2s,
    background 0.2s;
}
.social-row button:hover {
  color: var(--navy);
  background: #fff;
  transform: translateY(-3px);
}
.footer-label {
  color: #6aaef8;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin: 0 0 22px;
  font-size: 10px;
  font-weight: 800;
}
.footer-column {
  flex-direction: column;
  align-items: flex-start;
  gap: 13px;
  display: flex;
}
.footer-column a {
  color: #ffffffbd;
  font-size: 13px;
  line-height: 1.3;
  transition:
    color 0.18s,
    transform 0.18s;
  position: relative;
}
.footer-column a:before {
  content: "";
  opacity: 0;
  background: #3c9dff;
  width: 5px;
  height: 1px;
  transition:
    opacity 0.18s,
    transform 0.18s;
  position: absolute;
  top: 50%;
  left: -13px;
  transform: translate(-5px);
}
.footer-column a:hover {
  color: #fff;
  transform: translate(8px);
}
.footer-column a:hover:before {
  opacity: 1;
  transform: none;
}
.footer-newsletter h2 {
  color: #fff;
  letter-spacing: -0.045em;
  max-width: 380px;
  margin: 0 0 14px;
  font-size: clamp(25px, 2.2vw, 38px);
  line-height: 1.03;
}
.footer-newsletter > p:not(.footer-label) {
  color: #ffffff91;
  max-width: 380px;
  font-size: 13px;
  line-height: 1.55;
}
.footer-newsletter form {
  border-bottom: 1px solid #ffffff57;
  margin-top: 26px;
  display: flex;
}
.footer-newsletter input {
  color: #fff;
  background: 0 0;
  border: 0;
  outline: 0;
  flex: 1;
  min-width: 0;
  padding: 14px 4px;
}
.footer-newsletter input::placeholder {
  color: #ffffff6b;
}
.footer-newsletter button {
  color: #00142d;
  cursor: pointer;
  background: #fff;
  border: 0;
  border-radius: 12px 12px 0 0;
  width: 48px;
  transition:
    transform 0.2s,
    color 0.2s,
    background 0.2s;
}
.footer-newsletter button:hover {
  color: #fff;
  background: var(--blue);
  transform: translateY(-3px);
}
.newsletter-success {
  color: #fff;
  background: #0568ee2e;
  border: 1px solid #52b1ff66;
  border-radius: 14px;
  margin-top: 26px;
  padding: 16px 18px;
}
.footer-bottom {
  color: #ffffff6b;
  border-top: 1px solid #ffffff21;
  justify-content: space-between;
  gap: 24px;
  max-width: 1500px;
  margin: 72px auto 0;
  padding-top: 24px;
  font-size: 10px;
  display: flex;
  position: relative;
}
.footer-bottom div {
  gap: 22px;
  display: flex;
}
.footer-bottom a:hover {
  color: #fff;
}
@media (width<=1050px) {
  .audience-header p {
    display: none;
  }
  .audience-header {
    grid-template-columns: 1fr auto;
  }
  .site-header {
    height: 86px;
    padding-top: max(10px, env(safe-area-inset-top));
    gap: 16px;
    position: fixed;
  }
  .site-header:before {
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
    backdrop-filter: blur(18px) saturate(1.15);
    background: #f9fcffd6;
    border-bottom: 1px solid #07203c14;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .site-header nav {
    display: none;
  }
  .site-header {
    grid-template-columns: 1fr auto;
  }
  .header-tools {
    justify-self: end;
  }
  .mobile-menu-toggle {
    cursor: pointer;
    background: #ffffffc2;
    border: 1px solid #071f3b24;
    border-radius: 50%;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    display: grid;
    position: relative;
  }
  .mobile-menu-toggle i {
    background: #071a34;
    border-radius: 2px;
    width: 17px;
    height: 1.5px;
    transition:
      transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),
      top 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    position: absolute;
  }
  .mobile-menu-toggle i:first-child {
    top: 17px;
  }
  .mobile-menu-toggle i:last-child {
    top: 24px;
  }
  .mobile-menu-toggle.is-open i:first-child {
    top: 21px;
    transform: rotate(45deg);
  }
  .mobile-menu-toggle.is-open i:last-child {
    top: 21px;
    transform: rotate(-45deg);
  }
  .mobile-navigation {
    z-index: 45;
    color: #fff;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform-origin: 100% 0;
    background: linear-gradient(145deg, #01132bf7, #03274cf7);
    border: 1px solid #7eb0db47;
    border-radius: 26px;
    gap: 28px;
    max-height: calc(100svh - 116px);
    padding: 30px;
    transition:
      opacity 0.28s,
      transform 0.42s cubic-bezier(0.16, 1, 0.3, 1),
      visibility 0.28s;
    display: grid;
    position: fixed;
    top: 98px;
    left: 18px;
    right: 18px;
    overflow: auto;
    transform: translateY(-18px) scale(0.97);
    box-shadow: 0 30px 80px #00122b52;
  }
  .mobile-navigation.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
  }
  .mobile-navigation nav {
    display: grid;
  }
  .mobile-navigation nav a,
  .mobile-navigation nav button {
    color: #fff;
    text-align: left;
    letter-spacing: -0.035em;
    background: 0 0;
    border: 0;
    border-bottom: 1px solid #ffffff1f;
    align-items: center;
    gap: 18px;
    width: 100%;
    padding: 17px 2px;
    font-size: clamp(22px, 4vw, 32px);
    font-weight: 590;
    display: flex;
  }
  .mobile-navigation .mobile-solution-links {
    grid-template-columns: 1fr;
    padding: 5px 0 12px 34px;
    display: grid;
  }
  .mobile-navigation .mobile-solution-links a {
    color: #b9daf6;
    letter-spacing: 0;
    border: 0;
    min-height: 0;
    padding: 10px 2px;
    font-size: 15px;
    font-weight: 560;
  }
  .mobile-navigation .mobile-solution-links a span {
    color: #55b8ff;
  }
  .mobile-navigation nav span {
    color: #5aaeff;
    letter-spacing: 0.12em;
    font-size: 9px;
    font-weight: 800;
  }
  .mobile-navigation > a {
    color: #07203f;
    background: #fff;
    border-radius: 999px;
    justify-content: space-between;
    align-items: center;
    padding: 15px 18px;
    font-size: 12px;
    font-weight: 760;
    display: flex;
  }
  body.menu-open {
    overflow: hidden;
  }
  .hero-copy h1 {
    font-size: clamp(54px, 7vw, 78px);
  }
  .process-copy {
    width: 72%;
  }
  .step-grid {
    gap: 14px;
  }
  .footer-grid {
    grid-template-columns: 1.3fr 1fr 1fr;
  }
  .footer-newsletter {
    grid-column: 2/-1;
  }
}
@media (width<=760px) {
  html {
    scroll-padding-top: 82px;
  }
  .audience-header {
    height: 82px;
    padding: 8px 18px max(8px, env(safe-area-inset-top));
    position: fixed;
  }
  .audience-header:before {
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    background: #f8fcffdb;
    border-bottom: 1px solid #07203c14;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .brand-lockup {
    width: 136px;
  }
  .audience-panels {
    grid-template-rows: none;
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .audience-panel {
    min-height: 56svh;
  }
  .audience-panel-art img {
    object-fit: cover;
    width: auto;
    min-width: 200%;
    max-width: none;
    height: 100%;
    top: 0;
  }
  .patient-panel .audience-panel-art img {
    top: 0;
    left: 0;
    right: auto;
  }
  .provider-panel .audience-panel-art img {
    top: 0;
    left: auto;
    right: 0;
  }
  .audience-panel-shade {
    background: linear-gradient(#0000 24%, #03153142 48%, #03152f 94%);
  }
  .audience-content {
    height: 75%;
    padding: 28px 24px 34px;
  }
  .audience-content small {
    margin-bottom: 7px;
    font-size: 9px;
  }
  .audience-content strong {
    font-size: clamp(39px, 11.5vw, 50px);
    line-height: 0.9;
  }
  .audience-content em {
    max-width: 290px;
    margin-top: 10px;
    font-size: 12px;
  }
  .selector-button {
    min-height: 44px;
    margin-top: 15px;
    padding: 11px 16px;
  }
  .audience-footnote {
    display: none;
  }
  .site-header {
    height: 80px;
    padding: 8px 15px;
  }
  .site-header .brand-lockup {
    width: 132px;
  }
  .language-toggle {
    min-width: 48px;
    min-height: 42px;
    padding: 8px 9px;
    font-size: 10px;
  }
  .audience-switch {
    display: none;
  }
  .header-tools {
    gap: 6px;
  }
  .mobile-navigation {
    border-radius: 22px;
    max-height: calc(100svh - 102px);
    padding: 24px;
    top: 90px;
    left: 12px;
    right: 12px;
  }
  .mobile-navigation nav a,
  .mobile-navigation nav button {
    min-height: 54px;
    font-size: 25px;
  }
  .real-hero {
    align-items: flex-end;
    min-height: max(760px, 100svh);
  }
  .real-hero:after {
    background: linear-gradient(
      #ffffff05 12%,
      #f8fcff1f 34%,
      #f8fcffed 56%,
      #f8fcff 76%
    );
  }
  .hero-photo img {
    object-position: 68% top;
    height: 62%;
    transform: translate3d(0, var(--media-shift, 0), 0) scale(1.035);
  }
  .hero-copy {
    width: 100%;
    max-width: none;
    padding: clamp(360px, 50svh, 430px) 22px 58px;
  }
  .hero-copy h1 {
    letter-spacing: -0.065em;
    text-wrap: balance;
    max-width: 620px;
    font-size: clamp(43px, 13.2vw, 57px);
    line-height: 0.91;
  }
  .hero-copy .lead {
    max-width: 430px;
    margin: 18px 0 22px;
    font-size: 14px;
    line-height: 1.48;
  }
  .section-kicker {
    margin-bottom: 14px;
    font-size: 10px;
  }
  .motion-button {
    min-height: 50px;
  }
  .process-section {
    align-items: flex-end;
    min-height: 900px;
  }
  .process-section:after {
    background: linear-gradient(#0000 9%, #fff3 28%, #ffffffed 45%, #fff 62%);
  }
  .process-photo img {
    object-position: 70% top;
    height: 49%;
    transform: translate3d(0, var(--media-shift, 0), 0) scale(1.035);
  }
  .process-copy {
    width: 100%;
    padding: 380px 0 62px 22px;
  }
  .process-copy > .section-kicker,
  .process-copy > h2 {
    padding-right: 22px;
  }
  .process-copy h2,
  .section-heading h2 {
    text-wrap: balance;
    max-width: 570px;
    font-size: clamp(40px, 11.8vw, 52px);
    line-height: 0.95;
  }
  .step-grid {
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    touch-action: pan-x;
    gap: 14px;
    margin-top: 34px;
    padding: 2px 22px 20px 0;
    display: flex;
    overflow-x: auto;
  }
  .step-grid::-webkit-scrollbar {
    display: none;
  }
  .process-step {
    scroll-snap-align: start;
    background: #f9fcfef0;
    border: 1px solid #dfe9f1;
    border-radius: 20px;
    flex: 0 0 min(78vw, 340px);
    min-height: 205px;
    padding: 24px;
    box-shadow: 0 18px 42px #11365714;
  }
  .process-step > span {
    font-size: 18px;
  }
  .process-step h3 {
    font-size: 19px;
  }
  .process-step p {
    font-size: 13px;
  }
  .solutions-section {
    height: auto;
    min-height: 880px;
  }
  .solutions-sticky {
    height: 880px;
    min-height: 100svh;
    position: relative;
    top: auto;
  }
  .solutions-cinematic-bg {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    animation: 8s ease-in-out infinite alternate solutionBreathMobile;
    inset: 0;
    transform: scale(1.2);
  }
  @keyframes solutionBreathMobile {
    to {
      filter: saturate(1.12) brightness(1.06);
      transform: scale(1.27);
    }
  }
  .solutions-vignette {
    background:
      linear-gradient(#00071052, #00071014 34%, #000710ad 60%, #000710 100%),
      radial-gradient(circle at 50% 34%, #0000 9%, #00050e7a 72%);
  }
  .solutions-scan {
    width: 112vw;
    top: 18%;
  }
  .immersive-heading {
    width: calc(100% - 36px);
    top: 84px;
    left: 50%;
    right: auto;
  }
  .immersive-heading .section-kicker {
    margin-bottom: 10px;
  }
  .immersive-heading h2 {
    text-wrap: balance;
    max-width: 540px;
    font-size: clamp(39px, 11vw, 50px);
    line-height: 0.93;
  }
  .solution-points {
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    touch-action: pan-x;
    grid-template-columns: none;
    grid-auto-columns: min(82vw, 390px);
    grid-auto-flow: column;
    align-items: center;
    gap: 16px;
    padding: 0 9vw 20px;
    display: grid;
    inset: 280px 0 62px;
    overflow-x: auto;
  }
  .solution-points::-webkit-scrollbar {
    display: none;
  }
  .solution-point,
  .solution-point:not(.is-active).is-revealed {
    opacity: 0.78;
    pointer-events: auto;
    -webkit-backdrop-filter: blur(14px) saturate(1.12);
    backdrop-filter: blur(14px) saturate(1.12);
    scroll-snap-align: center;
    background: linear-gradient(155deg, #041f3db8, #010e1fd6);
    border: 1px solid #ffffff29;
    border-radius: 26px;
    min-height: 420px;
    padding: 72px 24px 32px;
    transition:
      opacity 0.35s,
      transform 0.45s cubic-bezier(0.16, 1, 0.3, 1),
      border-color 0.35s;
    transform: scale(0.97);
    box-shadow: 0 25px 60px #00000040;
  }
  .solution-point.is-active {
    border-color: #4fc2ff94;
    transform: none;
    opacity: 1 !important;
  }
  .solution-node {
    top: 34px;
  }
  .solution-point strong {
    margin-top: 10px;
    font-size: clamp(29px, 8.2vw, 38px);
  }
  .solution-point small {
    min-height: 0;
    margin-top: 16px;
    font-size: 13px;
  }
  .solution-point b {
    opacity: 1;
    margin-top: 28px;
    transform: none;
  }
  .solution-connector,
  .solution-progress,
  .solution-scroll-cue {
    display: none;
  }
  .solution-mobile-status {
    z-index: 6;
    color: #ffffffa3;
    justify-content: center;
    align-items: center;
    gap: 7px;
    display: flex;
    position: absolute;
    bottom: 25px;
    left: 0;
    right: 0;
  }
  .solution-mobile-status > span {
    background: #ffffff40;
    border-radius: 999px;
    width: 6px;
    height: 6px;
    transition:
      width 0.3s,
      background 0.3s;
  }
  .solution-mobile-status > span.is-active {
    background: #55c7ff;
    width: 22px;
  }
  .solution-mobile-status small {
    letter-spacing: 0.11em;
    text-transform: uppercase;
    margin-left: 8px;
    font-size: 9px;
    font-weight: 720;
  }
  .resources-section {
    padding: 78px 0 86px 22px;
    overflow: hidden;
  }
  .resources-section .section-heading {
    padding-right: 22px;
    display: block;
  }
  .featured-resource {
    border-radius: 18px;
    grid-template-columns: 1fr;
    margin: 42px 22px 0 0;
  }
  .featured-copy {
    padding: 32px 26px 36px;
  }
  .featured-copy h3 {
    font-size: 42px;
  }
  .featured-media {
    order: -1;
    min-height: 270px;
  }
  .featured-media img {
    object-position: 64% center;
  }
  .resource-card-grid {
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    touch-action: pan-x;
    gap: 16px;
    margin-top: 30px;
    padding: 30px 22px 20px 0;
    display: flex;
    overflow-x: auto;
  }
  .resource-card-grid::-webkit-scrollbar {
    display: none;
  }
  .resource-card {
    scroll-snap-align: start;
    flex: 0 0 min(84vw, 370px);
  }
  .resource-card strong {
    font-size: 22px;
  }
  .resource-card small {
    min-height: 58px;
  }
  .resource-swipe-cue {
    color: #64778b;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
    margin: 2px 22px 0 0;
    font-size: 10px;
    font-weight: 720;
    display: flex;
  }
  .resource-swipe-cue span {
    color: var(--blue);
    font-size: 18px;
    animation: 1.5s ease-in-out infinite swipeCue;
  }
  @keyframes swipeCue {
    50% {
      transform: translate(5px);
    }
  }
  .contact-banner {
    align-items: flex-end;
    min-height: max(680px, 88svh);
  }
  .contact-banner:after {
    background: linear-gradient(
      #0000 13%,
      #f6fafd0f 32%,
      #f6fafded 62%,
      #f6fafd 82%
    );
  }
  .contact-media img {
    object-position: 68% center;
    transform: translate3d(0, var(--media-shift, 0), 0) scale(1.03);
  }
  .contact-copy {
    width: 100%;
    padding: 360px 22px 62px;
  }
  .contact-copy h2 {
    text-wrap: balance;
    max-width: 520px;
    font-size: clamp(43px, 12vw, 54px);
  }
  .modal-backdrop {
    align-items: end;
    padding: 10px;
  }
  .disclaimer-modal,
  .detail-modal,
  .contact-modal {
    width: 100%;
    max-height: 92svh;
    padding: 34px 22px calc(26px + env(safe-area-inset-bottom));
    border-radius: 24px;
  }
  .detail-modal h2,
  .contact-modal h2 {
    padding-right: 30px;
    font-size: 42px;
  }
  .modal-actions {
    flex-direction: column-reverse;
  }
  .modal-actions .motion-button,
  .detail-modal .motion-button,
  .contact-modal .motion-button {
    width: 100%;
  }
  .aion-footer {
    padding: 72px 22px calc(26px + env(safe-area-inset-bottom));
  }
  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 42px 24px;
  }
  .footer-brand-column,
  .footer-newsletter {
    grid-column: 1/-1;
  }
  .footer-brand-column .brand-lockup {
    width: 172px;
  }
  .footer-newsletter {
    margin-top: 4px;
  }
  .footer-newsletter h2 {
    font-size: 34px;
  }
  .footer-bottom {
    flex-direction: column;
    margin-top: 54px;
  }
  .footer-bottom div {
    flex-wrap: wrap;
  }
  .back-to-top {
    width: 48px;
    height: 48px;
    bottom: 16px;
    right: 16px;
  }
  .reveal {
    transition-duration: 0.72s;
    transform: translateY(28px) scale(0.995);
  }
  .immersive-heading.reveal {
    transform: translate(-50%, 28px) scale(0.995);
  }
  .immersive-heading.reveal.is-visible {
    transform: translate(-50%);
  }
}
@media (width<=520px) {
  .footer-grid {
    grid-template-columns: 1fr;
  }
  .footer-brand-column,
  .footer-newsletter {
    grid-column: auto;
  }
  .footer-column {
    border-top: 1px solid #ffffff1a;
    padding-top: 24px;
  }
  .footer-newsletter {
    border-top: 1px solid #ffffff1a;
    order: 2;
    padding-top: 28px;
  }
  .footer-bottom div {
    gap: 14px;
  }
}
@media (hover: none) and (pointer: coarse) {
  .motion-button:active,
  .selector-button:active {
    transform: scale(0.97);
  }
  .resource-card:active .resource-media {
    transform: scale(0.985);
  }
  .solution-point:active {
    transform: scale(0.985) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  :before,
  :after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
button,
a,
input,
select,
textarea {
  outline-offset: 5px;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid #258bff;
}
.internal-header {
  position: relative;
}
.internal-hero {
  color: #fff;
  background: #051a33;
  align-items: center;
  min-height: 540px;
  padding: 80px 7% 100px;
  display: flex;
  position: relative;
  overflow: hidden;
}
.internal-hero > div {
  z-index: 1;
  max-width: 1000px;
  position: relative;
}
.internal-hero h1 {
  letter-spacing: -0.055em;
  max-width: 900px;
  margin: 24px 0;
  font-size: clamp(42px, 6vw, 82px);
  line-height: 1.04;
}
.internal-hero .lead {
  color: #d9eafa;
  max-width: 790px;
  font-size: clamp(18px, 1.5vw, 22px);
  line-height: 1.7;
}
.internal-hero .section-kicker {
  color: #78bfff;
  margin-top: 50px;
}
.breadcrumb {
  opacity: 0.7;
  font-size: 12px;
}
.internal-hero-image {
  object-fit: cover;
  opacity: 0.44;
  width: 106%;
  height: 106%;
  animation: 14s ease-in-out infinite alternate hero-breathe;
  position: absolute;
  inset: -3%;
}
.internal-hero.with-image:after {
  content: "";
  background: linear-gradient(
    90deg,
    #03162cf5 0%,
    #03162cc9 36%,
    #03162c55 68%,
    #03162c85
  );
  position: absolute;
  inset: 0;
}
.internal-section {
  padding: 90px 7%;
}
.internal-section h2,
.internal-cta h2,
.science-article h2 {
  letter-spacing: -0.045em;
  margin: 10px 0 25px;
  font-size: clamp(30px, 3.5vw, 49px);
  line-height: 1.13;
}
.internal-section p,
.science-article p,
.legal-content p {
  color: #53647a;
  font-size: 18px;
  line-height: 1.8;
}
.ice {
  background: #eef7ff;
}
.editorial-grid {
  grid-template-columns: 1fr 1.15fr;
  gap: 9%;
  display: grid;
}
.article-layout {
  grid-template-columns: 250px 1fr;
  gap: 7%;
  max-width: 1500px;
  margin: auto;
  padding: 80px 7%;
  display: grid;
}
.article-toc {
  align-self: start;
  gap: 20px;
  font-size: 14px;
  display: grid;
  position: sticky;
  top: 35px;
}
.article-toc a {
  transition:
    color 0.2s,
    transform 0.2s;
}
.article-toc a:hover {
  color: #0568ee;
  transform: translate(5px);
}
.science-section {
  border-bottom: 1px solid #dce6ed;
  margin-bottom: 45px;
  padding: 15px 0 65px;
  scroll-margin-top: 30px;
}
.section-number {
  color: #0570ed;
  letter-spacing: 0.2em;
  font-size: 12px;
}
.science-item {
  background: #f2f8fc;
  border-left: 2px solid #6bb8ff;
  margin: 9px 0;
  padding: 8px 20px;
}
.text-link {
  color: #0568ee;
  margin: 12px 0;
  font-weight: 650;
  display: inline-block;
}
.internal-reveal {
  opacity: 0;
  transition:
    opacity 0.75s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.9s cubic-bezier(0.2, 0.8, 0.2, 1);
  transition-delay: var(--reveal-delay, 0s);
  transform: translateY(34px);
}
.internal-reveal.is-visible {
  opacity: 1;
  transform: none;
}
.partner-band {
  background: #f5f9fc;
  padding: 75px 0;
  overflow: hidden;
}
.partner-band .section-heading {
  padding: 0 7%;
}
.partner-window {
  overflow: hidden;
}
.partner-track {
  gap: 24px;
  width: max-content;
  padding: 20px 0;
  animation: 30s linear infinite partner-drift;
  display: flex;
}
.partner-track:hover,
.partner-track:focus-within {
  animation-play-state: paused;
}
.partner-card {
  background: #fff;
  border: 1px solid #e1e9f1;
  border-radius: 18px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 320px;
  min-height: 150px;
  padding: 30px;
  transition:
    transform 0.25s,
    box-shadow 0.25s;
  display: flex;
}
.partner-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 40px #001d3410;
}
.partner-card img {
  object-fit: contain;
  width: 210px;
  height: 90px;
}
.partner-detail {
  grid-template-columns: 1fr 1.5fr;
  align-items: center;
  gap: 8%;
  scroll-margin-top: 20px;
  display: grid;
}
.partner-logo-panel {
  background: #fff;
  border: 1px solid #deebf5;
  border-radius: 24px;
  place-items: center;
  min-height: 250px;
  display: grid;
  position: relative;
  overflow: hidden;
}
.partner-logo-panel:after {
  content: "";
  border: 1px solid #78bfff55;
  border-radius: 50%;
  width: 170px;
  height: 170px;
  animation: 4s ease-in-out infinite orbit-pulse;
  position: absolute;
}
.partner-logo-panel img {
  object-fit: contain;
  z-index: 1;
  max-width: 75%;
  max-height: 130px;
  position: relative;
}
.button-row {
  flex-wrap: wrap;
  gap: 16px;
  display: flex;
}
.internal-cta {
  color: #fff;
  background: linear-gradient(125deg, #03254c, #064384);
  padding: 90px 7%;
  position: relative;
  overflow: hidden;
}
.internal-cta:after {
  content: "";
  border: 1px solid #73baff66;
  border-radius: 50%;
  width: 420px;
  height: 420px;
  position: absolute;
  top: -220px;
  right: -130px;
  box-shadow:
    0 0 0 55px #73baff0a,
    0 0 0 110px #73baff08;
}
.internal-cta > * {
  z-index: 1;
  position: relative;
}
.internal-cta .section-kicker {
  color: #81c5ff;
}
.internal-cta h2 {
  max-width: 650px;
}
.contact-layout {
  grid-template-columns: 1fr 1.2fr;
  gap: 9%;
  display: grid;
}
.inquiry-form {
  background: #f4f9fd;
  border: 1px solid #d8e7f2;
  border-radius: 20px;
  gap: 22px;
  padding: 34px;
  display: grid;
}
.library-tools label,
.inquiry-form label {
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  display: grid;
}
.library-tools input,
.library-tools select,
.inquiry-form input,
.inquiry-form textarea,
.inquiry-form select {
  color: #07162f;
  width: 100%;
  font: inherit;
  background: #fff;
  border: 1px solid #cbd9e5;
  border-radius: 8px;
  padding: 16px;
}
.form-consent {
  align-items: start;
  line-height: 1.5;
  grid-template-columns: auto 1fr !important;
  font-weight: 400 !important;
}
.form-consent input {
  height: 18px;
  width: 18px !important;
}
.form-note {
  font-size: 12px !important;
  line-height: 1.65 !important;
}
.form-trap {
  width: 1px;
  height: 1px;
  left: -9999px;
  overflow: hidden;
  position: absolute !important;
}
.newsletter-email-label {
  flex: 1;
  min-width: 0;
}
.footer-newsletter form input {
  width: 100%;
}
.values-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
  margin-top: 45px;
  display: grid;
}
.values-grid article {
  background: #f1f7fc;
  border-radius: 12px;
  padding: 32px;
  transition:
    transform 0.25s,
    background 0.25s;
}
.values-grid article:hover {
  background: #e6f3fc;
  transform: translateY(-7px);
}
.values-grid span {
  color: #0568ee;
  font-size: 12px;
}
.values-grid h3 {
  font-size: 26px;
}
.wide-intro {
  max-width: 850px;
}
.team-principle {
  grid-template-columns: 1fr 1.3fr;
  align-items: start;
  gap: 8%;
  display: grid;
}
.team-principle .motion-button {
  grid-column: 2;
}
.network-explorer {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 7%;
  display: grid;
}
.network-list {
  display: grid;
}
.network-list button {
  text-align: left;
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-bottom: 1px solid #d9e5ee;
  padding: 22px 15px;
  font-size: 17px;
  transition:
    padding 0.25s,
    color 0.25s,
    background 0.25s;
}
.network-list button span {
  color: #6b7d8f;
  letter-spacing: 0.1em;
  width: 42px;
  font-size: 11px;
  display: inline-block;
}
.network-list button[aria-selected="true"] {
  color: #0568ee;
  background: #eef7ff;
  padding-left: 28px;
}
.network-detail {
  color: #fff;
  background: #061a32;
  border-radius: 22px;
  min-height: 410px;
  padding: 42px;
  position: sticky;
  top: 35px;
}
.network-detail p {
  color: #c9dced;
}
.network-detail .section-kicker {
  color: #74bdff;
}
.partner-invite {
  max-width: 900px;
}
.legal-content {
  max-width: 980px;
  margin: auto;
  padding: 70px 6%;
}
.legal-content section {
  margin: 0 0 60px;
  scroll-margin-top: 30px;
}
.legal-content h2 {
  letter-spacing: -0.025em;
  font-size: 29px;
}
.legal-index {
  background: #eef7ff;
  border-radius: 14px;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px 30px;
  margin: 0 0 70px;
  padding: 26px;
  display: grid;
}
.legal-index a {
  color: #2e5373;
  padding: 8px;
  font-size: 13px;
}
.legal-index a:hover {
  color: #0568ee;
}
.faq-list details {
  border-bottom: 1px solid #d7e5ef;
  padding: 25px 0;
}
.faq-list summary {
  cursor: pointer;
  font-size: 21px;
  font-weight: 600;
  list-style: none;
}
.faq-list summary span {
  color: #0568ee;
  margin-right: 20px;
  font-size: 11px;
}
.faq-list details[open] summary {
  color: #0568ee;
}
.inner-mobile {
  z-index: 99;
  background: #fff;
  padding: 30px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  box-shadow: 0 20px 30px #001d3420;
  display: grid !important;
}
.partner-cards {
  gap: 24px;
  display: flex;
}
.footer-brand-column > a {
  margin-top: 18px;
  display: block;
}
.contact-modal {
  max-height: 90svh;
  overflow: auto;
}
.internal-header .header-tools {
  flex-shrink: 0;
}
.footer-bottom > div {
  flex-wrap: wrap;
  gap: 16px;
  display: flex;
}
.hub-trust-section {
  background: linear-gradient(135deg, #f4faff, #fff);
  grid-template-columns: 0.9fr 1.5fr;
  align-items: start;
  gap: 7%;
  padding: clamp(70px, 8vw, 120px) 6%;
  display: grid;
}
.hub-trust-intro {
  position: sticky;
  top: 40px;
}
.hub-trust-intro h2 {
  letter-spacing: -0.05em;
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1.08;
}
.hub-trust-intro > p:not(.section-kicker) {
  color: #53647a;
  font-size: 18px;
  line-height: 1.8;
}
.hub-trust-grid {
  gap: 18px;
  display: grid;
}
.hub-trust-card {
  background: #fff;
  border: 1px solid #dce8f2;
  border-radius: 16px;
  grid-template-columns: 60px 1fr auto;
  align-items: center;
  gap: 18px;
  padding: 30px;
  transition:
    transform 0.3s,
    box-shadow 0.3s;
  display: grid;
  position: relative;
  overflow: hidden;
}
.hub-trust-card:before {
  content: "";
  background: linear-gradient(90deg, #e9f6ff, #0000);
  transition: transform 0.45s;
  position: absolute;
  inset: 0;
  transform: translate(-105%);
}
.hub-trust-card:hover {
  transform: translate(7px);
  box-shadow: 0 18px 45px #0a3d6812;
}
.hub-trust-card:hover:before {
  transform: none;
}
.hub-trust-card > * {
  position: relative;
}
.hub-trust-card > span {
  color: #0568ee;
  letter-spacing: 0.16em;
  font-size: 12px;
}
.hub-trust-card h3 {
  margin: 0 0 7px;
  font-size: 24px;
}
.hub-trust-card p {
  color: #5b6d7f;
  grid-column: 2;
  margin: 0;
  line-height: 1.65;
}
.hub-trust-card b {
  color: #0568ee;
  grid-area: 1/3/3;
  font-size: 13px;
}
.resource-library-page {
  background: #f7fbfe;
}
.quick-filters {
  z-index: 3;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  max-width: 1150px;
  margin: -125px auto 55px;
  display: grid;
  position: relative;
}
.quick-filters button {
  cursor: pointer;
  background: #fff;
  border: 1px solid #d8e6f0;
  border-radius: 16px;
  min-height: 110px;
  padding: 20px;
  font-weight: 650;
  transition:
    transform 0.25s,
    border 0.25s,
    color 0.25s;
  box-shadow: 0 14px 40px #092c4c0d;
}
.quick-filters button span {
  color: #0568ee;
  margin-bottom: 10px;
  font-size: 24px;
  display: block;
}
.quick-filters button:hover,
.quick-filters button.is-active {
  color: #0568ee;
  border-color: #0568ee;
  transform: translateY(-6px);
}
.results-line {
  justify-content: space-between;
  align-items: center;
  display: flex;
}
.results-line > div {
  background: #dce8f1;
  width: 180px;
  height: 3px;
}
.results-line > div span {
  background: #0568ee;
  height: 100%;
  transition: width 0.4s;
  display: block;
}
.rich-library-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.rich-library-card {
  text-align: left;
  cursor: pointer;
  border: 0;
  padding: 0;
  overflow: hidden;
  box-shadow: 0 10px 35px #0b315214;
}
.resource-preview {
  background: #062445;
  height: 190px;
  display: block;
  position: relative;
  overflow: hidden;
}
.resource-preview > img:first-child {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform 0.6s;
}
.rich-library-card:hover .resource-preview > img:first-child {
  transform: scale(1.07);
}
.preview-wash {
  background: linear-gradient(135deg, #02152dbd, #0575d53d);
  position: absolute;
  inset: 0;
}
.preview-logo {
  object-fit: contain;
  background: #fff;
  border-radius: 8px;
  width: 125px;
  height: 55px;
  padding: 8px;
  position: absolute;
  bottom: 22px;
  left: 22px;
}
.resource-preview > b {
  color: #0568ee;
  background: #fff;
  border-radius: 50%;
  place-items: center;
  width: 48px;
  height: 48px;
  font-style: normal;
  display: grid;
  position: absolute;
  top: 20px;
  right: 20px;
}
.resource-card-body {
  flex-direction: column;
  min-height: 230px;
  padding: 25px;
  display: flex;
}
.resource-card-body small {
  color: #6d7c8a;
}
.resource-card-body > strong {
  margin: 12px 0;
  font-size: 22px;
  line-height: 1.3;
}
.resource-card-body > span {
  color: #0568ee;
  font-size: 12px;
}
.resource-card-body > em {
  color: #0568ee;
  margin-top: auto;
  padding-top: 20px;
  font-style: normal;
  font-weight: 650;
}
.empty-library {
  text-align: center;
  background: #eef7ff;
  border-radius: 18px;
  padding: 70px;
}
.empty-library span {
  color: #0568ee;
  font-size: 40px;
}
.library-note {
  margin-top: 35px;
}
.resource-modal {
  background: #fff;
  border-radius: 24px;
  grid-template-columns: 0.85fr 1.15fr;
  width: min(1040px, 92vw);
  max-height: 90vh;
  display: grid;
  position: relative;
  overflow: auto;
  box-shadow: 0 35px 100px #00152b66;
}
.resource-modal-visual {
  background: #061a32;
  border-radius: 24px 0 0 24px;
  min-height: 520px;
  position: relative;
  overflow: hidden;
}
.resource-modal-visual > img {
  object-fit: cover;
  opacity: 0.65;
  width: 100%;
  height: 100%;
}
.resource-modal-visual:after {
  content: "";
  background: linear-gradient(#0000, #031a35bb);
  position: absolute;
  inset: 0;
}
.resource-modal-visual > div {
  z-index: 1;
  justify-content: space-between;
  align-items: center;
  display: flex;
  position: absolute;
  bottom: 35px;
  left: 35px;
  right: 35px;
}
.resource-modal-visual > div img {
  object-fit: contain;
  background: #fff;
  border-radius: 8px;
  width: 150px;
  height: 70px;
  padding: 10px;
}
.resource-modal-visual > div span {
  color: #fff;
  letter-spacing: 0.14em;
  font-size: 12px;
}
.resource-modal-copy {
  padding: 60px 50px;
}
.resource-modal-copy h2 {
  letter-spacing: -0.04em;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.12;
}
.resource-modal-copy p {
  color: #53647a;
  line-height: 1.7;
}
.resource-modal-copy dl {
  grid-template-columns: 1fr 1fr;
  gap: 15px;
  margin: 30px 0;
  display: grid;
}
.resource-modal-copy dl div {
  background: #f0f7fb;
  padding: 16px;
}
.resource-modal-copy dt {
  text-transform: uppercase;
  color: #687989;
  font-size: 10px;
}
.resource-modal-copy dd {
  margin: 6px 0 0;
  font-weight: 650;
}
.access-notice {
  background: #eef7ff;
  border-left: 3px solid #0568ee;
  padding: 15px;
}
.resource-modal .modal-close {
  z-index: 4;
}
.internal-header nav {
  gap: 26px;
}
@keyframes partner-drift {
  to {
    transform: translate(-50%);
  }
}
@keyframes hero-breathe {
  0% {
    transform: scale(1);
  }
  to {
    transform: scale(1.035) translate(-0.7%, 0.5%);
  }
}
@keyframes orbit-pulse {
  50% {
    opacity: 0.45;
    transform: scale(1.18);
  }
}
@media (width<=1100px) {
  .values-grid,
  .rich-library-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .hub-trust-section {
    grid-template-columns: 1fr;
  }
  .hub-trust-intro {
    position: static;
  }
  .quick-filters {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width<=1000px) {
  .article-layout {
    grid-template-columns: 190px 1fr;
  }
  .internal-header nav {
    display: none;
  }
  .library-tools {
    grid-template-columns: 1fr 1fr;
  }
  .library-tools label:first-child {
    grid-column: 1/-1;
  }
  .network-explorer {
    grid-template-columns: 1fr;
  }
  .network-detail {
    position: static;
  }
  .team-principle {
    grid-template-columns: 1fr;
  }
  .team-principle .motion-button {
    grid-column: auto;
  }
  .resource-modal {
    grid-template-columns: 1fr;
  }
  .resource-modal-visual {
    border-radius: 24px 24px 0 0;
    min-height: 260px;
  }
}
@media (width<=700px) {
  .internal-hero {
    min-height: 470px;
    padding: 45px 7% 65px;
  }
  .internal-section {
    padding: 60px 7%;
  }
  .editorial-grid,
  .partner-detail,
  .contact-layout,
  .article-layout {
    display: block;
  }
  .article-toc {
    display: none;
    position: static;
  }
  .article-layout {
    padding: 50px 7%;
  }
  .rich-library-grid,
  .values-grid {
    grid-template-columns: 1fr;
  }
  .library-tools {
    grid-template-columns: 1fr;
    gap: 15px;
    display: grid;
  }
  .library-tools label:first-child {
    grid-column: auto;
  }
  .partner-logo-panel {
    min-height: 190px;
    margin-bottom: 35px;
  }
  .internal-header .audience-switch {
    display: none;
  }
  .internal-hero h1 {
    font-size: 42px;
  }
  .contact-layout > div {
    margin-bottom: 35px;
  }
  .legal-content {
    padding: 45px 7%;
  }
  .legal-index {
    grid-template-columns: 1fr;
  }
  .partner-card {
    width: 250px;
  }
  .internal-hero .lead {
    font-size: 17px;
  }
  .hub-trust-card {
    grid-template-columns: 40px 1fr;
    padding: 23px;
  }
  .hub-trust-card p {
    grid-column: 1/-1;
  }
  .hub-trust-card b {
    grid-area: auto/2;
  }
  .quick-filters {
    grid-template-columns: 1fr 1fr;
    margin: -85px auto 45px;
  }
  .quick-filters button {
    min-height: 92px;
    padding: 12px;
    font-size: 13px;
  }
  .results-line > div {
    display: none;
  }
  .resource-modal-copy {
    padding: 42px 25px;
  }
  .resource-modal-copy dl {
    grid-template-columns: 1fr;
  }
  .resource-modal-visual {
    min-height: 220px;
  }
  .resource-preview {
    height: 170px;
  }
  .footer-bottom > div {
    justify-content: center;
  }
}
.footer-brand-column .social-row {
  gap: 9px;
  margin-top: 22px;
  display: flex;
}
.footer-brand-column .social-row a,
.footer-brand-column .social-row .social-pending {
  color: #fff;
  border: 1px solid #ffffff40;
  border-radius: 50%;
  place-items: center;
  width: 42px;
  height: 42px;
  margin: 0;
  transition:
    transform 0.2s,
    background 0.2s,
    color 0.2s,
    box-shadow 0.2s;
  display: grid;
}
.footer-brand-column .social-row a:hover {
  color: #052445;
  background: #fff;
  transform: translateY(-4px);
  box-shadow: 0 12px 28px #00101f4d;
}
.footer-brand-column .social-row .social-pending {
  opacity: 0.48;
  cursor: default;
}
.social-icon {
  fill: currentColor;
  width: 20px;
  height: 20px;
  display: block;
}
.whatsapp-float {
  z-index: 175;
  color: #fff;
  -webkit-backdrop-filter: blur(14px);
  background: #06355ee8;
  border: 1px solid #ffffff52;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 0;
  width: 52px;
  height: 52px;
  padding: 0;
  transition:
    width 0.38s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.25s,
    box-shadow 0.25s,
    background 0.25s,
    gap 0.3s;
  display: flex;
  position: fixed;
  bottom: clamp(18px, 3vw, 34px);
  left: clamp(18px, 3vw, 38px);
  right: auto;
  overflow: hidden;
  box-shadow: 0 14px 35px #031b3452;
}
.whatsapp-float:before {
  content: "";
  background: #25d366;
  border: 2px solid #fff;
  border-radius: 50%;
  width: 9px;
  height: 9px;
  position: absolute;
  top: 5px;
  right: 5px;
  box-shadow: 0 0 0 4px #25d36626;
}
.whatsapp-float .social-icon {
  flex: none;
  width: 23px;
  height: 23px;
}
.whatsapp-float span {
  opacity: 0;
  white-space: nowrap;
  letter-spacing: 0.01em;
  max-width: 0;
  font-size: 12px;
  font-weight: 740;
  transition:
    max-width 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
    opacity 0.2s;
  overflow: hidden;
}
.whatsapp-float:hover,
.whatsapp-float:focus-visible {
  background: #052b50f2;
  gap: 9px;
  width: 142px;
  transform: translateY(-4px);
  box-shadow: 0 20px 44px #031b3466;
}
.whatsapp-float:hover span,
.whatsapp-float:focus-visible span {
  opacity: 1;
  max-width: 75px;
}
.whatsapp-float:focus-visible {
  outline-color: #66b8ff;
}
@media (width<=700px) {
  .whatsapp-float {
    left: 14px;
    right: auto;
    bottom: max(14px, env(safe-area-inset-bottom));
    width: 48px;
    height: 48px;
  }
  .whatsapp-float:hover,
  .whatsapp-float:focus-visible {
    gap: 0;
    width: 48px;
    transform: translateY(-3px);
  }
  .whatsapp-float span {
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    width: 1px;
    height: 1px;
    position: absolute;
    overflow: hidden;
  }
  .whatsapp-float .social-icon {
    width: 21px;
    height: 21px;
  }
  .whatsapp-float:before {
    width: 8px;
    height: 8px;
    top: 4px;
    right: 4px;
  }
}
.provider-access-page {
  background: #f6fafd;
  grid-template-columns: 1fr 1fr;
  min-height: 100svh;
  display: grid;
}
.provider-access-art {
  color: #fff;
  background:
    linear-gradient(145deg, #03172eeb, #064b8bd9),
    url(/wp-content/plugins/aion-experience/assets/aion-provider-hero-hd-v2.webp)
      50% / cover;
  flex-direction: column;
  justify-content: space-between;
  height: 100svh;
  padding: 55px 8%;
  display: flex;
  position: sticky;
  top: 0;
}
.provider-access-art .brand-lockup {
  width: 190px;
}
.provider-access-art h1 {
  letter-spacing: -0.055em;
  max-width: 720px;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1.02;
}
.provider-access-art > div > p:last-child {
  color: #d6e9fa;
  max-width: 620px;
  font-size: 18px;
  line-height: 1.7;
}
.provider-access-art ul {
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  list-style: none;
  display: flex;
}
.provider-access-art li {
  letter-spacing: 0.06em;
  border: 1px solid #ffffff35;
  border-radius: 999px;
  padding: 9px 13px;
  font-size: 11px;
}
.provider-access-card {
  width: min(680px, 88%);
  margin: auto;
  padding: 60px 0;
}
.provider-access-card h2 {
  letter-spacing: -0.045em;
  font-size: clamp(32px, 3.3vw, 48px);
  line-height: 1.08;
}
.back-link,
.forgot-link {
  color: #176dcc;
  margin-bottom: 35px;
  font-size: 13px;
  display: inline-block;
}
.forgot-link {
  margin: 25px 0 0;
}
.auth-tabs {
  border-bottom: 1px solid #d8e4ee;
  grid-template-columns: 1fr 1fr;
  margin: 32px 0 24px;
  display: grid;
}
.auth-tabs button {
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-bottom: 2px solid #0000;
  padding: 15px;
  font-weight: 650;
}
.auth-tabs button.active {
  color: #0568ee;
  border-color: #0568ee;
}
.google-button {
  cursor: pointer;
  background: #fff;
  border: 1px solid #cfdde8;
  border-radius: 8px;
  width: 100%;
  padding: 14px;
  font-weight: 650;
}
.google-button span {
  color: #4285f4;
  border: 1px solid #d5e0eb;
  border-radius: 50%;
  place-items: center;
  width: 25px;
  height: 25px;
  margin-right: 14px;
  display: inline-grid;
}
.auth-divider {
  color: #708091;
  align-items: center;
  gap: 16px;
  margin: 22px 0;
  font-size: 12px;
  display: flex;
}
.auth-divider:before,
.auth-divider:after {
  content: "";
  background: #dce6ee;
  flex: 1;
  height: 1px;
}
.provider-auth-form {
  gap: 18px;
  display: grid;
}
.provider-auth-form label {
  gap: 8px;
  font-size: 13px;
  font-weight: 650;
  display: grid;
}
.provider-auth-form input,
.provider-auth-form select {
  width: 100%;
  font: inherit;
  background: #fff;
  border: 1px solid #cbd9e5;
  border-radius: 8px;
  padding: 14px;
}
.auth-grid {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}
.field-hint {
  color: #758595;
  font-size: 11px;
  font-weight: 400;
}
.auth-consent {
  line-height: 1.55;
  grid-template-columns: auto 1fr !important;
  font-weight: 400 !important;
}
.auth-consent input {
  width: 18px;
  height: 18px;
}
.auth-consent a {
  color: #0568ee;
  text-decoration: underline;
}
.auth-error {
  color: #a12727;
  background: #fff0f0;
  border-left: 3px solid #c73535;
  padding: 14px;
  font-size: 13px;
}
.auth-note {
  color: #6b7c8e;
  border-top: 1px solid #d9e4ec;
  margin-top: 30px;
  padding-top: 24px;
  font-size: 12px;
  line-height: 1.7;
}
.auth-status-page {
  background: radial-gradient(circle at 75% 15%, #107de821, #0000 30%), #edf7ff;
  place-items: center;
  min-height: 100svh;
  padding: 7%;
  display: grid;
}
.auth-status-card {
  text-align: center;
  background: #fff;
  border-radius: 28px;
  max-width: 760px;
  padding: clamp(40px, 7vw, 80px);
  box-shadow: 0 30px 90px #06284914;
}
.auth-status-card h1 {
  letter-spacing: -0.05em;
  font-size: clamp(38px, 5vw, 64px);
  line-height: 1.05;
}
.auth-status-card p {
  color: #586b7d;
  font-size: 18px;
  line-height: 1.7;
}
.auth-status-card .button-row {
  justify-content: center;
  margin-top: 35px;
}
.status-icon {
  color: #fff;
  background: #0568ee;
  border-radius: 50%;
  place-items: center;
  width: 70px;
  height: 70px;
  margin: 0 auto 30px;
  font-size: 28px;
  display: grid;
  box-shadow: 0 15px 35px #0568ee44;
}
.provider-access-page {
  background: linear-gradient(145deg, #eef7ff, #fbfdff 48%, #f3f9fd);
  grid-template-columns: minmax(420px, 0.88fr) minmax(520px, 1.12fr);
}
.provider-access-art {
  border-radius: 34px;
  height: calc(100svh - 36px);
  margin: 18px;
  padding: 44px clamp(38px, 5vw, 80px);
  overflow: hidden;
  box-shadow: 0 30px 90px #03274925;
}
.provider-access-art:after {
  content: "";
  border: 1px solid #8ac8ff42;
  border-radius: 50%;
  width: 480px;
  height: 480px;
  position: absolute;
  bottom: -250px;
  right: -220px;
  box-shadow:
    0 0 0 70px #8ac8ff0b,
    0 0 0 140px #8ac8ff08;
}
.provider-access-art > * {
  z-index: 1;
  position: relative;
}
.provider-access-art ul {
  gap: 8px;
}
.provider-access-art li {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #ffffff0c;
  padding: 10px 14px;
}
.provider-access-card {
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background: #ffffffde;
  border: 1px solid #fff;
  border-radius: 32px;
  width: min(680px, 100% - 56px);
  margin: 34px auto;
  padding: clamp(36px, 4vw, 58px);
  box-shadow: 0 28px 80px #092d4e12;
}
.provider-access-card > .section-kicker {
  background: #eaf5ff;
  border-radius: 999px;
  margin-bottom: 16px;
  padding: 8px 11px;
  display: inline-flex;
}
.provider-access-card h2 {
  margin: 0 0 10px;
}
.back-link {
  color: #60768b;
  margin-bottom: 30px;
  transition:
    color 0.2s,
    transform 0.2s;
}
.back-link:hover {
  color: #0568ee;
  transform: translate(-3px);
}
.auth-tabs {
  background: #eef4f8;
  border: 0;
  border-radius: 15px;
  gap: 6px;
  margin: 30px 0 26px;
  padding: 5px;
}
.auth-tabs button {
  color: #6a7d8e;
  border-radius: 11px;
  padding: 13px;
  transition:
    background 0.2s,
    color 0.2s,
    box-shadow 0.2s;
  border: 0 !important;
}
.auth-tabs button.active {
  color: #052b50;
  background: #fff;
  box-shadow: 0 5px 18px #082b4810;
}
.google-button {
  border-color: #dfe8ef;
  border-radius: 14px;
  padding: 15px;
  transition:
    transform 0.2s,
    box-shadow 0.2s,
    border-color 0.2s;
}
.google-button:hover {
  border-color: #9fbfdb;
  transform: translateY(-2px);
  box-shadow: 0 12px 30px #092d4e12;
}
.provider-auth-form {
  gap: 19px;
}
.provider-auth-form label {
  color: #263f57;
  letter-spacing: 0.01em;
  gap: 9px;
  font-size: 12px;
}
.provider-auth-form input,
.provider-auth-form select {
  color: #102b44;
  background: #f2f6f9;
  border: 1px solid #0000;
  border-radius: 14px;
  min-height: 52px;
  padding: 14px 16px;
  transition:
    background 0.2s,
    border-color 0.2s,
    box-shadow 0.2s,
    transform 0.2s;
}
.provider-auth-form input:hover,
.provider-auth-form select:hover {
  background: #edf4f8;
}
.provider-auth-form input:focus,
.provider-auth-form select:focus {
  background: #fff;
  border-color: #5aa9f1;
  outline: 0;
  box-shadow:
    0 0 0 4px #1886ec16,
    0 12px 24px #082e5010;
}
.provider-auth-form .motion-button {
  background: linear-gradient(115deg, #0568ee, #0788ed);
  border-radius: 14px;
  width: 100%;
  min-height: 54px;
  margin-top: 4px;
  box-shadow: 0 15px 32px #0568ee2e;
}
.provider-auth-form .motion-button:hover {
  box-shadow: 0 20px 38px #0568ee3d;
}
.auth-consent {
  background: #f6f9fb;
  border-radius: 14px;
  padding: 15px;
}
.auth-consent input {
  accent-color: #0568ee;
  min-height: 18px;
  margin-top: 1px;
  padding: 0;
}
.auth-note {
  background: #f6f9fb;
  border: 0;
  border-radius: 14px;
  margin-bottom: 0;
  padding: 20px;
}
.forgot-link {
  text-align: center;
  width: 100%;
  margin: 22px 0 0;
}
.field-hint {
  color: #8292a1;
  margin-left: 5px;
}
.auth-divider span {
  padding: 0 5px;
}
@media (width<=900px) {
  .provider-access-page {
    padding-bottom: 30px;
    display: block;
  }
  .provider-access-art {
    border-radius: 25px;
    height: auto;
    min-height: 430px;
    margin: 10px;
    padding: 34px 7% 70px;
    position: relative;
  }
  .provider-access-art h1 {
    font-size: clamp(39px, 9vw, 58px);
  }
  .provider-access-card {
    border-radius: 25px;
    width: calc(100% - 28px);
    margin: -38px auto 0;
    padding: 34px clamp(20px, 6vw, 42px);
    position: relative;
  }
  .auth-grid {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  :before,
  :after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
  .reveal,
  .internal-reveal {
    opacity: 1 !important;
    transform: none !important;
  }
}
.science-graphic {
  margin-top: 26px;
}
.science-graphic-intro {
  max-width: 780px;
  margin-bottom: 28px;
}
.science-item-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  display: grid;
}
.science-graphic-item {
  min-height: 148px;
  animation: 0.65s both science-card-in;
  animation-delay: calc(var(--item-index) * 65ms);
  background: linear-gradient(145deg, #fff, #f5faff);
  border: 1px solid #dce8f1;
  border-radius: 20px;
  padding: 24px 22px;
  transition:
    transform 0.32s cubic-bezier(0.2, 0.8, 0.2, 1),
    border-color 0.25s,
    box-shadow 0.3s;
  position: relative;
  overflow: hidden;
}
.science-graphic-item:hover {
  border-color: #78bfff;
  transform: translateY(-6px);
  box-shadow: 0 20px 45px #072d4d12;
}
.science-graphic-item:before {
  content: "";
  border: 1px solid #3d9cf22c;
  border-radius: 50%;
  width: 115px;
  height: 115px;
  transition: transform 0.4s;
  position: absolute;
  top: -50px;
  right: -48px;
  box-shadow: 0 0 0 20px #1689ed08;
}
.science-graphic-item:hover:before {
  transform: scale(1.18);
}
.science-icon {
  justify-content: space-between;
  align-items: center;
  display: flex;
}
.science-icon i {
  color: #fff;
  background: linear-gradient(135deg, #0568ee, #43a7f5);
  border-radius: 13px;
  place-items: center;
  width: 42px;
  height: 42px;
  font-size: 20px;
  font-style: normal;
  display: grid;
  box-shadow: 0 10px 20px #0568ee26;
}
.science-icon b {
  color: #90a3b3;
  letter-spacing: 0.14em;
  font-size: 10px;
}
.science-graphic-item p {
  color: #18334d;
  margin: 18px 0 0;
  font-weight: 650;
  position: relative;
  font-size: 16px !important;
  line-height: 1.45 !important;
}
.science-graphic-item em {
  background: linear-gradient(90deg, #0568ee, #7dc8ff);
  width: 0;
  height: 3px;
  transition: width 0.45s;
  position: absolute;
  bottom: 0;
  left: 0;
}
.science-graphic-item:hover em {
  width: 100%;
}
.science-closing {
  background: #eaf5fd;
  border-radius: 18px;
  align-items: flex-start;
  gap: 15px;
  padding: 20px 22px;
  display: flex;
  color: #436078 !important;
  margin: 22px 0 0 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}
.science-closing span {
  color: #fff;
  background: #0568ee;
  border-radius: 50%;
  flex: 0 0 26px;
  place-items: center;
  width: 26px;
  height: 26px;
  font-family: Georgia, serif;
  font-style: italic;
  display: grid;
}
.research-focus {
  background:
    radial-gradient(circle at 92% 8%, #71bfff24, #0000 27%),
    linear-gradient(145deg, #f5fbff, #edf7ff);
  border: 1px solid #d9e9f5;
  border-radius: 30px;
  margin: 25px -4vw 55px;
  padding: 48px 4vw 55px;
  position: relative;
  box-shadow: 0 25px 70px #0632580b;
}
.research-focus .section-number {
  color: #fff;
  background: #0568ee;
  border-radius: 99px;
  padding: 7px 10px;
  display: inline-flex;
}
.research-focus h2 {
  max-width: 720px;
}
.research-focus .science-graphic-item {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #ffffffd9;
}
@keyframes science-card-in {
  0% {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (width<=700px) {
  .science-item-grid {
    grid-template-columns: 1fr;
  }
  .science-graphic-item {
    min-height: 125px;
  }
  .research-focus {
    border-radius: 24px;
    margin: 20px -2vw 45px;
    padding: 35px 5vw;
  }
}
.research-image {
  background: #031a35;
  border-radius: 30px 30px 20px 20px;
  height: clamp(260px, 36vw, 460px);
  margin: -48px -4vw 44px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 25px 60px #041f391c;
}
.research-image:after {
  content: "";
  background: linear-gradient(#0000 42%, #02162db5);
  position: absolute;
  inset: 0;
}
.research-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition:
    transform 1s cubic-bezier(0.2, 0.8, 0.2, 1),
    filter 0.5s;
}
.research-image:hover img {
  filter: saturate(1.08);
  transform: scale(1.045);
}
.research-image span {
  z-index: 1;
  color: #fff;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  background: #042546a8;
  border: 1px solid #ffffff40;
  border-radius: 999px;
  padding: 9px 13px;
  font-size: 11px;
  font-weight: 700;
  position: absolute;
  bottom: 24px;
  left: 28px;
}
.contact-layout .inquiry-form {
  box-shadow: 0 24px 65px #072c4d10;
}
.internal-hero.with-image .breadcrumb,
.internal-hero.with-image .section-kicker,
.internal-hero.with-image h1,
.internal-hero.with-image .lead {
  text-shadow: 0 2px 25px #00132650;
}
@media (width<=700px) {
  .research-image {
    border-radius: 24px 24px 16px 16px;
    height: 260px;
    margin: -35px -5vw 34px;
  }
  .research-image span {
    font-size: 9px;
    bottom: 17px;
    left: 18px;
  }
}
.resource-modal.is-youtube {
  width: min(1050px, 94vw);
  max-height: 94svh;
  display: block;
}
.resource-modal-player {
  aspect-ratio: 16/9;
  background: #020913;
  border-radius: 24px 24px 0 0;
  width: 100%;
  overflow: hidden;
}
.resource-modal-player iframe {
  border: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.resource-modal.is-youtube .resource-modal-copy {
  padding: 36px 48px 42px;
}
.resource-modal.is-youtube .resource-modal-copy h2 {
  margin: 8px 0 14px;
}
.resource-modal.is-youtube .resource-modal-copy dl {
  margin: 22px 0;
}
.resource-modal.is-youtube .modal-close {
  color: #fff;
  background: #051a33cc;
  border-color: #ffffff42;
}
.review-access {
  background: linear-gradient(135deg, #e9f6ff, #f7fbff);
  border: 1px solid #b9daf5;
  border-radius: 18px;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 22px;
  margin: 25px 0;
  padding: 22px;
  display: grid;
}
.review-access strong {
  color: #063765;
}
.review-access p {
  color: #587187;
  margin: 7px 0 0;
  font-size: 13px;
  line-height: 1.5;
}
.review-access .motion-button {
  white-space: nowrap;
}
@media (width<=700px) {
  .resource-modal.is-youtube {
    width: 96vw;
  }
  .resource-modal.is-youtube .resource-modal-copy {
    padding: 28px 22px 34px;
  }
  .review-access {
    grid-template-columns: 1fr;
  }
  .review-access .motion-button {
    text-align: center;
    width: 100%;
  }
}
.science-layout {
  background: linear-gradient(#f8fbfd, #fff 18%);
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 4.5%;
  padding-top: 58px;
  padding-bottom: 58px;
}
.science-layout .article-toc {
  background: #ffffffed;
  border: 1px solid #e0eaf1;
  border-radius: 22px;
  gap: 4px;
  padding: 22px 18px;
  position: sticky;
  top: 24px;
  overflow: hidden;
  box-shadow: 0 18px 55px #052b4a0b;
}
.science-layout .article-toc .section-kicker {
  margin: 4px 10px 16px;
}
.science-layout .article-toc a {
  color: #496176;
  border-radius: 11px;
  grid-template-columns: 28px 1fr;
  align-items: center;
  gap: 8px;
  padding: 12px 10px;
  line-height: 1.3;
  display: grid;
}
.science-layout .article-toc a b {
  color: #8b9cab;
  letter-spacing: 0.1em;
  font-size: 10px;
}
.science-layout .article-toc a span {
  font-size: 12px;
}
.science-layout .article-toc a.is-active {
  color: #064b8d;
  background: #eaf5fd;
  transform: translate(4px);
}
.science-layout .article-toc a.is-active b {
  color: #0570ed;
}
.toc-progress {
  background: #e4edf3;
  width: 3px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}
.toc-progress span {
  background: linear-gradient(#64b6ff, #0568ee);
  width: 100%;
  transition: height 0.45s;
  display: block;
}
.science-article {
  min-width: 0;
}
.science-article .category-intro {
  background: #f4f9fd;
  border: 1px solid #dce9f2;
  border-radius: 22px;
  grid-template-columns: 150px 1fr;
  align-items: start;
  gap: 30px;
  margin: 0 0 24px;
  padding: 26px 30px;
  display: grid;
}
.science-article .category-intro > span {
  color: #0570ed;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding-top: 6px;
  font-size: 11px;
  font-weight: 700;
}
.science-article .category-intro p {
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
}
.science-section {
  background: #fff;
  border: 1px solid #e1eaf1;
  border-radius: 26px;
  margin: 0 0 22px;
  padding: 38px 34px;
  box-shadow: 0 12px 40px #072d4d08;
}
.section-title-row {
  grid-template-columns: 48px 1fr;
  align-items: start;
  gap: 12px;
  display: grid;
}
.section-title-row .section-number {
  background: #eff8ff;
  border: 1px solid #b8d8f3;
  border-radius: 13px;
  place-items: center;
  width: 42px;
  height: 42px;
  display: grid;
}
.section-title-row h2 {
  margin: 0 0 22px !important;
  font-size: clamp(27px, 3vw, 43px) !important;
}
.science-story-grid {
  grid-template-columns: minmax(0, 1fr) minmax(310px, 0.9fr);
  align-items: start;
  gap: 34px;
  display: grid;
}
.science-story-grid > p,
.science-partner-grid > p {
  margin: 0;
}
.concept-explorer {
  color: #fff;
  background: radial-gradient(circle at 90% 10%, #1b8cf055, #0000 30%), #041e39;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 22px 55px #031c3425;
}
.concept-heading {
  justify-content: space-between;
  padding: 22px 24px 15px;
  display: flex;
}
.concept-heading span {
  color: #80c6ff;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 700;
}
.concept-heading small {
  color: #a9bfd3;
}
.concept-nodes {
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  padding: 0 18px;
  display: grid;
  position: relative;
}
.concept-nodes:before {
  content: "";
  background: #6fb9f74d;
  height: 1px;
  position: absolute;
  top: 18px;
  left: 16%;
  right: 16%;
}
.concept-nodes button {
  color: #a9bfd3;
  cursor: pointer;
  background: 0 0;
  border: 0;
  justify-items: center;
  gap: 8px;
  padding: 0 3px 12px;
  font-size: 11px;
  display: grid;
  position: relative;
}
.concept-nodes button i {
  color: #a8d8ff;
  background: #06294b;
  border: 1px solid #6fb9f76e;
  border-radius: 50%;
  place-items: center;
  width: 37px;
  height: 37px;
  font-style: normal;
  transition:
    transform 0.25s,
    background 0.25s,
    box-shadow 0.25s;
  display: grid;
}
.concept-nodes button[aria-selected="true"] {
  color: #fff;
}
.concept-nodes button[aria-selected="true"] i {
  color: #fff;
  background: #087ae3;
  transform: scale(1.12);
  box-shadow: 0 0 0 7px #1688ee18;
}
.concept-detail {
  background: #ffffff0b;
  border-top: 1px solid #ffffff13;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  min-height: 138px;
  padding: 24px;
  display: grid;
}
.concept-detail > span {
  color: #65b8ff;
  letter-spacing: 0.12em;
  font-size: 11px;
}
.concept-detail strong {
  font-size: 19px;
}
.concept-detail p {
  margin: 8px 0 0;
  color: #c9dcec !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}
.science-partner-grid {
  grid-template-columns: minmax(0, 1fr) 300px;
  align-items: stretch;
  gap: 35px;
  display: grid;
}
.science-partner-visual {
  background: linear-gradient(145deg, #f0f8fe, #fff);
  border: 1px solid #d7e7f2;
  border-radius: 22px;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 230px;
  padding: 25px;
  transition:
    transform 0.3s,
    box-shadow 0.3s;
  display: flex;
  position: relative;
  overflow: hidden;
}
.science-partner-visual:after {
  content: "";
  border: 1px solid #55a9f34d;
  border-radius: 50%;
  width: 150px;
  height: 150px;
  position: absolute;
  top: -60px;
  right: -65px;
  box-shadow: 0 0 0 24px #1689ed08;
}
.science-partner-visual:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 48px #072d4d12;
}
.science-partner-visual span,
.science-partner-visual strong {
  z-index: 1;
  color: #0966ba;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 11px;
  position: relative;
}
.science-partner-visual img {
  z-index: 1;
  object-fit: contain;
  align-self: center;
  width: 78%;
  height: 85px;
  position: relative;
}
.section-kind-4 {
  background: radial-gradient(circle at 96% 0, #5bb2ff25, #0000 34%), #eef7ff;
  padding: 38px;
}
.section-kind-4 > .button-row {
  margin-top: 24px;
}
.research-focus {
  border-radius: 26px;
  margin: 0 0 22px;
  padding: 32px;
}
.research-focus .research-image {
  border-radius: 26px 26px 18px 18px;
  height: clamp(240px, 30vw, 380px);
  margin: -32px -32px 32px;
}
.research-focus .section-title-row .section-number {
  color: #fff;
  background: #0568ee;
}
.science-item-grid {
  gap: 11px;
}
.science-graphic-item {
  min-height: 130px;
  padding: 20px;
}
.science-graphic-item p {
  margin-top: 13px;
}
.science-closing {
  margin-top: 16px !important;
}
.science-section:hover {
  border-color: #c8deed;
}
@media (width<=1000px) {
  .science-layout {
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 3%;
  }
  .science-story-grid,
  .science-partner-grid {
    grid-template-columns: 1fr;
  }
  .concept-explorer {
    max-width: 620px;
  }
  .science-partner-visual {
    min-height: 190px;
  }
}
@media (width<=700px) {
  .science-layout {
    padding: 0 5% 42px;
    display: block;
  }
  .science-layout .article-toc {
    z-index: 8;
    border: 0;
    border-radius: 0;
    gap: 7px;
    margin: 0 -5.5% 22px;
    padding: 10px 5%;
    display: flex;
    position: sticky;
    top: 0;
    overflow-x: auto;
    box-shadow: 0 8px 25px #052b4a12;
  }
  .science-layout .article-toc .section-kicker,
  .science-layout .article-toc .toc-progress {
    display: none;
  }
  .science-layout .article-toc a {
    background: #fff;
    border: 1px solid #e1eaf1;
    border-radius: 999px;
    flex: none;
    padding: 10px 12px;
    display: flex;
  }
  .science-layout .article-toc a b {
    font-size: 9px;
  }
  .science-layout .article-toc a span {
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 115px;
    overflow: hidden;
  }
  .science-layout .article-toc a.is-active {
    border-color: #75b9f3;
    transform: none;
  }
  .science-article .category-intro {
    margin-bottom: 14px;
    padding: 22px;
    display: block;
  }
  .science-article .category-intro > span {
    margin-bottom: 10px;
    display: block;
  }
  .science-section,
  .section-kind-4 {
    border-radius: 21px;
    margin-bottom: 14px;
    padding: 25px 20px;
  }
  .section-title-row {
    grid-template-columns: 38px 1fr;
    gap: 10px;
  }
  .section-title-row .section-number {
    border-radius: 10px;
    width: 34px;
    height: 34px;
  }
  .section-title-row h2 {
    font-size: 29px !important;
  }
  .science-story-grid {
    display: block;
  }
  .concept-explorer {
    margin-top: 24px;
  }
  .concept-heading small {
    display: none;
  }
  .research-focus {
    padding: 25px 20px;
  }
  .research-focus .research-image {
    border-radius: 21px 21px 15px 15px;
    height: 225px;
    margin: -25px -20px 26px;
  }
  .science-item-grid {
    grid-template-columns: 1fr;
  }
  .science-partner-grid {
    display: block;
  }
  .science-partner-visual {
    margin-top: 24px;
  }
  .concept-nodes button span {
    font-size: 9px;
  }
}
.inner-mobile > strong {
  color: #176dcc;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 12px 0 3px;
  font-size: 11px;
}
.inner-solution-links {
  border-left: 2px solid #d9ebfa;
  margin: 0 0 8px;
  padding: 6px 0 8px 15px;
  display: grid;
}
.inner-solution-links a {
  color: #405b74 !important;
  padding: 9px 0 !important;
  font-size: 14px !important;
}
.internal-header .solutions-menu {
  z-index: 120;
}
.values-grid.is-static article,
.values-grid.is-static article:hover {
  background: #f1f7fc;
  transform: none;
}
.team-section {
  color: #fff;
  background: linear-gradient(#04182f 0%, #082d55 100%);
  overflow: hidden;
}
.team-heading {
  max-width: 820px;
  margin-bottom: 75px;
}
.team-heading .section-kicker {
  color: #78c6ff;
}
.team-heading h2 {
  letter-spacing: -0.06em;
  margin: 0 0 22px;
  font-size: clamp(44px, 5vw, 76px);
  line-height: 0.98;
}
.team-heading > p:last-child {
  color: #c5daec;
  max-width: 670px;
}
.team-group {
  margin-top: 65px;
}
.team-group-heading {
  border-bottom: 1px solid #ffffff2b;
  align-items: center;
  gap: 20px;
  margin-bottom: 30px;
  padding-bottom: 18px;
  display: flex;
}
.team-group-heading span {
  color: #78c6ff;
  letter-spacing: 0.18em;
  font-size: 11px;
}
.team-group-heading h3 {
  margin: 0;
  font-size: clamp(24px, 2.4vw, 37px);
  font-weight: 520;
}
.team-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 25px;
  display: grid;
}
.team-card {
  min-width: 0;
}
.team-photo {
  aspect-ratio: 4/4.7;
  background: radial-gradient(circle at 50% 24%, #4777a6, #0b2748 72%);
  border-radius: 20px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 18px 50px #00102242;
}
.team-photo img {
  object-fit: cover;
  object-position: center 24%;
  filter: saturate(0.84) contrast(1.04);
  width: 100%;
  height: 100%;
  transition:
    transform 0.65s,
    filter 0.4s;
  display: block;
}
.team-photo i {
  pointer-events: none;
  background: linear-gradient(#0000 58%, #03162c8c);
  position: absolute;
  inset: 0;
}
.team-photo > span {
  letter-spacing: -0.05em;
  color: #d9efff;
  place-items: center;
  width: 100%;
  height: 100%;
  font-size: 54px;
  font-weight: 330;
  display: grid;
}
.team-card:hover .team-photo img {
  filter: saturate(0.95) contrast(1.04);
  transform: scale(1.035);
}
.team-card h4 {
  margin: 18px 0 6px;
  font-size: 20px;
}
.team-card > div:last-child p {
  color: #9fc4e3;
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
}
.team-card:nth-child(4n + 2) .team-photo {
  background: radial-gradient(circle at 50% 24%, #4f83ae, #102c4d 72%);
}
.resource-home {
  z-index: 5;
  color: #fff;
  background: #041b35db;
  border: 1px solid #ffffff45;
  border-radius: 50%;
  place-items: center;
  width: 42px;
  height: 42px;
  font-size: 22px;
  display: grid;
  position: absolute;
  top: 18px;
  left: 18px;
  box-shadow: 0 8px 25px #00142833;
}
.resource-document-preview {
  background: #dfe8ef;
  border-radius: 24px 0 0 24px;
  min-height: 620px;
  position: relative;
  overflow: hidden;
}
.resource-document-preview iframe {
  z-index: 2;
  background: #fff;
  border: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}
.resource-document-page {
  object-fit: contain;
  object-position: center;
  background: #eef3f6;
  width: 100%;
  height: 100%;
  display: block;
}
.document-preview-label {
  z-index: 3;
  color: #fff;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: #041d38d9;
  border: 1px solid #ffffff80;
  border-radius: 999px;
  padding: 9px 13px;
  font-size: 10px;
  font-weight: 780;
  position: absolute;
  bottom: 16px;
  left: 18px;
  box-shadow: 0 8px 24px #00162c2b;
}
.document-preview-fallback {
  place-items: center;
  display: grid;
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.document-preview-fallback img {
  object-fit: cover;
  opacity: 0.35;
  width: 100%;
  height: 100%;
}
.document-preview-fallback span {
  color: #fff;
  background: #062747d9;
  border-radius: 999px;
  padding: 12px 18px;
  font-size: 12px;
  font-weight: 700;
  position: absolute;
}
.resource-share-note {
  margin-top: 18px;
  color: #728396 !important;
  font-size: 12px !important;
}
.resource-modal.is-document {
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  width: min(1180px, 94vw);
}
.resource-modal.is-document > .resource-document-preview,
.resource-modal.is-document > .resource-modal-copy {
  min-width: 0;
}
@media (width<=1100px) {
  .team-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (width<=1000px) {
  .resource-modal.is-document {
    grid-template-columns: 1fr;
  }
  .resource-document-preview {
    border-radius: 24px 24px 0 0;
    min-height: 340px;
  }
}
@media (width<=700px) {
  .team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
  .team-heading {
    margin-bottom: 50px;
  }
  .team-card h4 {
    font-size: 16px;
  }
  .team-photo {
    border-radius: 15px;
  }
  .resource-document-preview {
    min-height: 250px;
  }
}
.header-socials {
  border-right: 1px solid #dbe5ed;
  align-items: center;
  gap: 5px;
  margin-right: 4px;
  padding-right: 12px;
  display: flex;
}
.header-socials a {
  color: #153b5f;
  background: #ffffffad;
  border: 1px solid #d9e4ec;
  border-radius: 50%;
  place-items: center;
  width: 31px;
  height: 31px;
  transition:
    transform 0.2s,
    color 0.2s,
    border-color 0.2s,
    background 0.2s;
  display: grid;
}
.header-socials a:hover {
  color: #0568ee;
  background: #fff;
  border-color: #9bc9ef;
  transform: translateY(-2px);
}
.header-socials .social-icon {
  width: 15px;
  height: 15px;
}
.mobile-socials {
  border-top: 1px solid #e3ebf1;
  margin-top: 12px;
  padding-top: 18px;
  justify-content: flex-start !important;
  gap: 9px !important;
  display: flex !important;
}
.mobile-socials a {
  border-radius: 999px;
  align-items: center;
  gap: 7px;
  border: 1px solid #dce7ef !important;
  padding: 9px 12px !important;
  font-size: 11px !important;
  display: inline-flex !important;
}
.mobile-socials a:after {
  display: none !important;
}
.mobile-socials .social-icon {
  width: 16px;
  height: 16px;
}
.resource-direct-stage {
  color: #fff;
  background:
    radial-gradient(circle at 78% 18%, #168aef4c, #0000 27%),
    linear-gradient(145deg, #03162c, #073f73);
  place-items: center;
  min-height: calc(100svh - 104px);
  padding: 8%;
  display: grid;
}
.resource-direct-stage > div {
  text-align: center;
  justify-items: center;
  gap: 12px;
  display: grid;
}
.resource-direct-stage span {
  color: #82c8ff;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 750;
}
.resource-direct-stage strong {
  letter-spacing: -0.05em;
  max-width: 750px;
  font-size: clamp(36px, 6vw, 76px);
  line-height: 1.04;
}
.resource-direct-stage i {
  color: #cce3f6;
  font-style: normal;
}
.resource-preview {
  aspect-ratio: 16/9;
  height: auto;
}
.rich-library-card {
  background: #fff;
  border: 1px solid #e1ebf2;
  border-radius: 20px;
  transition:
    transform 0.3s,
    box-shadow 0.3s,
    border-color 0.3s;
  box-shadow: 0 14px 42px #0b315210;
}
.rich-library-card:hover {
  border-color: #bedcf2;
  transform: translateY(-7px);
  box-shadow: 0 26px 58px #082e4e1c;
}
.rich-library-card.is-video .preview-wash {
  background: linear-gradient(#02152d08, #02152d66);
}
.rich-library-card.is-pdf .resource-preview > img:first-child {
  opacity: 0.84;
  filter: saturate(0.72);
}
.rich-library-card.is-pdf .preview-wash {
  background: linear-gradient(135deg, #031b36ad, #167bc742);
}
.preview-partner {
  color: #fff;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  white-space: nowrap;
  text-overflow: ellipsis;
  background: #031a35b8;
  border: 1px solid #ffffff75;
  border-radius: 999px;
  align-items: center;
  gap: 8px;
  max-width: calc(100% - 95px);
  padding: 7px 10px 7px 7px;
  font-size: 10px;
  font-weight: 700;
  display: flex;
  position: absolute;
  bottom: 15px;
  left: 16px;
  overflow: hidden;
}
.preview-partner img {
  object-fit: contain;
  background: #fff;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  padding: 3px;
}
.resource-preview > b {
  width: 42px;
  height: 42px;
  font-size: 12px;
  top: 15px;
  right: 16px;
  box-shadow: 0 8px 24px #00182e30;
}
.rich-library-card.is-video .resource-preview > b {
  font-size: 17px;
}
.resource-card-body {
  min-height: 205px;
  padding: 23px;
}
.resource-card-body > strong {
  font-size: 20px;
}
.resource-modal {
  scrollbar-width: thin;
}
.resource-home {
  border-radius: 999px;
  align-items: center;
  gap: 7px;
  width: auto;
  height: 42px;
  padding: 0 13px 0 11px;
  text-decoration: none;
  display: flex;
}
.resource-home span {
  font-size: 20px;
  line-height: 1;
}
.resource-home em {
  letter-spacing: 0.03em;
  font-size: 11px;
  font-style: normal;
  font-weight: 750;
}
.resource-modal.is-document .resource-home {
  color: #fff;
}
.resource-modal-player iframe {
  background: #020913;
}
.resource-document-preview {
  background: linear-gradient(145deg, #dbe6ee, #eff4f7);
}
.resource-document-preview:after {
  content: "PDF";
  z-index: 1;
  color: #fff;
  letter-spacing: 0.12em;
  background: #062747d9;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 10px;
  font-weight: 800;
  position: absolute;
  bottom: 16px;
  right: 18px;
}
@media (width<=1120px) {
  .header-socials {
    display: none;
  }
}
@media (width<=1000px) {
  .header-socials {
    display: none;
  }
  .resource-direct-stage {
    min-height: 100svh;
  }
  .resource-modal.is-document {
    width: min(760px, 96vw);
  }
}
@media (width<=700px) {
  .mobile-socials {
    flex-wrap: wrap;
  }
  .resource-home em {
    display: none;
  }
  .resource-home {
    justify-content: center;
    width: 42px;
    padding: 0;
  }
  .resource-modal {
    max-height: 95svh;
  }
  .resource-modal-copy {
    padding-top: 34px;
  }
  .resource-preview {
    height: auto;
  }
  .resource-card-body {
    min-height: 185px;
  }
}
.modal-open {
  overflow: hidden;
}
.science-graphic-item {
  text-align: left;
  width: 100%;
  font: inherit;
  cursor: pointer;
  padding: 0 0 18px;
}
.science-card-media {
  background: #061f3d;
  border-radius: 19px 19px 10px 10px;
  height: 145px;
  display: block;
  position: relative;
  overflow: hidden;
}
.science-card-image {
  object-fit: cover;
  filter: saturate(0.9) contrast(1.03);
  width: 100%;
  height: 100%;
  transition:
    transform 0.65s cubic-bezier(0.2, 0.8, 0.2, 1),
    filter 0.4s;
  display: block;
}
.science-card-media:after {
  content: "";
  background: linear-gradient(#0000 42%, #031a35be);
  position: absolute;
  inset: 0;
}
.science-graphic-item:hover .science-card-image {
  filter: saturate(1.05) contrast(1.04);
  transform: scale(1.065);
}
.science-card-media .science-icon {
  z-index: 2;
  position: absolute;
  bottom: 12px;
  left: 14px;
  right: 14px;
}
.science-card-media .science-icon i {
  display: none;
}
.science-card-media .science-icon b {
  color: #fff;
}
.science-graphic-item > p {
  min-height: 47px;
  margin: 17px 19px 6px;
}
.science-card-action {
  color: #0871cd;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  justify-content: space-between;
  align-items: center;
  margin: 0 19px;
  font-size: 10px;
  font-weight: 760;
  display: flex;
}
.science-card-action b {
  font-size: 17px;
  transition: transform 0.25s;
}
.science-graphic-item:hover .science-card-action b {
  transform: translate(3px, -3px);
}
.science-modal-backdrop,
.leader-bio-backdrop {
  z-index: 100002;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  background: #011325d9;
  place-items: center;
  padding: 28px;
  animation: 0.25s both modal-fade;
  display: grid;
  position: fixed;
  inset: 0;
}
.science-modal {
  background: #fff;
  border: 1px solid #ffffff26;
  border-radius: 30px;
  grid-template-columns: minmax(330px, 0.92fr) minmax(400px, 1.08fr);
  width: min(1060px, 94vw);
  max-height: 90svh;
  animation: 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) both modal-rise;
  display: grid;
  position: relative;
  overflow: auto;
  box-shadow: 0 35px 100px #0008;
}
.science-modal-close,
.leader-bio-close {
  z-index: 6;
  color: #fff;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  cursor: pointer;
  background: #031a35aa;
  border: 1px solid #ffffff6e;
  border-radius: 50%;
  place-items: center;
  width: 43px;
  height: 43px;
  font-size: 27px;
  font-weight: 300;
  line-height: 1;
  transition:
    transform 0.2s,
    background 0.2s;
  display: grid;
  position: absolute;
  top: 18px;
  right: 18px;
}
.science-modal-close:hover,
.leader-bio-close:hover {
  background: #0568ee;
  transform: rotate(8deg) scale(1.05);
}
.science-modal-visual {
  background: #062443;
  border-radius: 29px 0 0 29px;
  min-height: 610px;
  position: relative;
  overflow: hidden;
}
.science-modal-visual > img {
  object-fit: cover;
  filter: saturate(0.95) contrast(1.04);
  width: 100%;
  height: 100%;
  animation: 14s ease-in-out infinite alternate science-image-breathe;
}
.science-modal-visual:after {
  content: "";
  background: linear-gradient(#011a3115, #011a31b5);
  position: absolute;
  inset: 0;
}
.science-modal-visual > span {
  z-index: 2;
  color: #fff;
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
  letter-spacing: 0.13em;
  text-transform: uppercase;
  background: #05294aad;
  border: 1px solid #ffffff4f;
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 10px;
  font-weight: 750;
  position: absolute;
  bottom: 27px;
  left: 28px;
}
.science-modal-orbits {
  z-index: 2;
  width: 270px;
  height: 270px;
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
}
.science-modal-orbits i {
  border: 1px solid #9bd6ff80;
  border-radius: 50%;
  animation: 9s linear infinite science-orbit;
  position: absolute;
  inset: 0;
}
.science-modal-orbits i:nth-child(2) {
  animation-duration: 6s;
  animation-direction: reverse;
  inset: 34px;
}
.science-modal-orbits i:nth-child(3) {
  animation-duration: 4s;
  inset: 74px;
}
.science-modal-orbits i:after {
  content: "";
  background: #f4bd68;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  position: absolute;
  top: 8%;
  left: 18%;
  box-shadow: 0 0 22px #ffce7c;
}
.science-modal-copy {
  align-self: center;
  padding: 70px 65px 55px;
}
.science-modal-copy h3 {
  color: #0c2d4b;
  letter-spacing: -0.055em;
  margin: 8px 0 24px;
  font-size: clamp(38px, 4vw, 61px);
  line-height: 0.98;
}
.science-modal-copy > p:not(.section-kicker) {
  color: #49667e;
  font-size: 17px;
  line-height: 1.8;
}
.science-modal-note {
  background: #eef7fd;
  border-radius: 16px;
  grid-template-columns: 27px 1fr;
  gap: 12px;
  margin-top: 26px;
  padding: 17px;
  display: grid;
}
.science-modal-note > span {
  color: #fff;
  background: #0878df;
  border-radius: 50%;
  place-items: center;
  width: 26px;
  height: 26px;
  font-family: Georgia, serif;
  font-style: italic;
  display: grid;
}
.science-modal-note p {
  color: #4d687f;
  margin: 0;
  font-size: 12px;
  line-height: 1.55;
}
.science-modal-return {
  color: #0871cd;
  font: inherit;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  cursor: pointer;
  background: 0 0;
  border: 0;
  margin-top: 28px;
  padding: 0;
  font-size: 11px;
  font-weight: 760;
}
.leadership-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}
.leader-card {
  background: linear-gradient(145deg, #0a2c4e, #061c35);
  border: 1px solid #ffffff24;
  border-radius: 25px;
  grid-template-columns: minmax(220px, 0.82fr) minmax(260px, 1.18fr);
  min-height: 430px;
  display: grid;
  overflow: hidden;
  box-shadow: 0 24px 70px #0010224f;
}
.leader-card .team-photo {
  aspect-ratio: auto;
  height: 100%;
  box-shadow: none;
  border-radius: 24px 0 0 24px;
}
.leader-card .team-photo img {
  object-position: center 24%;
  filter: saturate(0.88) contrast(1.03);
}
.leader-card .team-card-copy {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 34px;
  display: flex;
}
.team-card-role {
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 780;
  color: #68baff !important;
  font-size: 10px !important;
}
.leader-card h4 {
  letter-spacing: -0.045em;
  margin: 10px 0 18px;
  font-size: clamp(28px, 3vw, 42px);
}
.leader-card-intro {
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
  color: #bfd5e6 !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}
.team-bio-trigger {
  color: #fff;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  cursor: pointer;
  background: #0b65b8;
  border: 1px solid #58adf070;
  border-radius: 999px;
  align-items: center;
  gap: 13px;
  margin-top: 24px;
  padding: 12px 17px;
  font-size: 10px;
  font-weight: 780;
  transition:
    transform 0.25s,
    background 0.25s;
  display: flex;
}
.team-bio-trigger:hover {
  background: #0781ed;
  transform: translateY(-2px);
}
.team-bio-trigger span {
  font-size: 16px;
}
.leader-bio-modal {
  color: #fff;
  background: #041c35;
  border: 1px solid #ffffff24;
  border-radius: 31px;
  grid-template-columns: minmax(330px, 0.83fr) minmax(520px, 1.17fr);
  width: min(1180px, 94vw);
  max-height: 92svh;
  animation: 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) both modal-rise;
  display: grid;
  position: relative;
  overflow: auto;
  box-shadow: 0 35px 110px #000a;
}
.leader-bio-visual {
  border-radius: 30px 0 0 30px;
  height: 92svh;
  min-height: 650px;
  position: sticky;
  top: 0;
  overflow: hidden;
}
.leader-bio-visual img {
  object-fit: cover;
  object-position: center top;
  filter: saturate(0.88) contrast(1.04);
  width: 100%;
  height: 100%;
}
.leader-bio-visual:after {
  content: "";
  background: linear-gradient(#0000 48%, #02162ed9);
  position: absolute;
  inset: 0;
}
.leader-bio-visual > span {
  z-index: 2;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  background: #05294abf;
  border: 1px solid #ffffff4f;
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 10px;
  font-weight: 760;
  position: absolute;
  bottom: 30px;
  left: 30px;
}
.leader-bio-lines {
  z-index: 2;
  pointer-events: none;
  position: absolute;
  inset: 0;
}
.leader-bio-lines i {
  border: 1px solid #8ed0ff55;
  border-radius: 50%;
  width: 190px;
  height: 190px;
  position: absolute;
  top: 12%;
  right: -90px;
}
.leader-bio-lines i:nth-child(2) {
  width: 260px;
  height: 260px;
  inset: auto auto 9% -150px;
}
.leader-bio-lines i:nth-child(3) {
  background: #f5bd66;
  border: 0;
  width: 9px;
  height: 9px;
  top: 25%;
  right: 45px;
  box-shadow: 0 0 25px #ffca73;
}
.leader-bio-copy {
  padding: 70px 70px 60px;
}
.leader-bio-copy .section-kicker {
  color: #6fc0ff;
}
.leader-bio-copy h2 {
  letter-spacing: -0.06em;
  margin: 10px 0 22px;
  font-size: clamp(48px, 5vw, 75px);
  line-height: 0.94;
}
.leader-bio-focus {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 32px;
  display: flex;
}
.leader-bio-focus span {
  color: #b9d9f1;
  letter-spacing: 0.06em;
  background: #ffffff0b;
  border: 1px solid #ffffff25;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 10px;
}
.leader-bio-story p {
  color: #c7dceb;
  font-size: 15px;
  line-height: 1.78;
}
.leader-bio-story .bio-lead {
  color: #fff;
  font-size: 19px;
  line-height: 1.65;
}
.leader-bio-copy .science-modal-return {
  color: #6fc0ff;
}
@keyframes modal-fade {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes modal-rise {
  0% {
    opacity: 0;
    transform: translateY(25px) scale(0.985);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes science-image-breathe {
  0% {
    transform: scale(1.01);
  }
  to {
    transform: scale(1.08);
  }
}
@keyframes science-orbit {
  to {
    transform: rotate(360deg);
  }
}
@media (width<=980px) {
  .science-modal,
  .leader-bio-modal {
    grid-template-columns: 1fr;
    width: min(720px, 94vw);
  }
  .science-modal-visual {
    border-radius: 29px 29px 0 0;
    min-height: 340px;
  }
  .science-modal-copy {
    padding: 45px;
  }
  .leader-bio-visual {
    border-radius: 30px 30px 0 0;
    height: 440px;
    min-height: 0;
    position: relative;
  }
  .leader-bio-copy {
    padding: 48px;
  }
  .leadership-grid {
    grid-template-columns: 1fr;
  }
  .leader-card {
    grid-template-columns: minmax(220px, 0.75fr) minmax(300px, 1.25fr);
  }
}
@media (width<=700px) {
  .science-modal-backdrop,
  .leader-bio-backdrop {
    padding: 10px;
  }
  .science-modal,
  .leader-bio-modal {
    border-radius: 23px;
    width: 100%;
    max-height: 96svh;
  }
  .science-modal-visual {
    border-radius: 22px 22px 0 0;
    min-height: 265px;
  }
  .science-modal-copy {
    padding: 34px 24px;
  }
  .science-modal-copy h3 {
    font-size: 38px;
  }
  .science-card-media {
    height: 180px;
  }
  .leader-card {
    min-height: 0;
    display: block;
  }
  .leader-card .team-photo {
    aspect-ratio: 4/4.7;
    border-radius: 22px 22px 0 0;
    height: auto;
  }
  .leader-card .team-card-copy {
    padding: 24px;
  }
  .leader-card-intro {
    -webkit-line-clamp: 4;
  }
  .leader-bio-visual {
    border-radius: 22px 22px 0 0;
    height: 360px;
  }
  .leader-bio-copy {
    padding: 37px 24px;
  }
  .leader-bio-copy h2 {
    font-size: 47px;
  }
  .leader-bio-story .bio-lead {
    font-size: 17px;
  }
  .leader-bio-story p {
    font-size: 14px;
  }
  .leader-bio-close {
    top: 13px;
    right: 13px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .science-card-image,
  .science-modal-visual > img,
  .science-modal-orbits i,
  .science-modal,
  .leader-bio-modal {
    transition: none !important;
    animation: none !important;
  }
}
@media (width<=1000px) {
  .internal-header {
    z-index: 10000;
    position: sticky;
    top: 0;
  }
  .internal-header .inner-mobile {
    z-index: 9999;
    overscroll-behavior: contain;
    max-height: none;
    padding: 22px 22px calc(26px + env(safe-area-inset-bottom));
    color: #fff;
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
    background: linear-gradient(145deg, #03172ef7, #063c6df7);
    border: 1px solid #ffffff20;
    border-radius: 24px;
    animation: 0.32s cubic-bezier(0.2, 0.8, 0.2, 1) both modal-rise;
    position: fixed;
    inset: 80px 10px 10px;
    overflow-y: auto;
    box-shadow: 0 30px 90px #00132666;
    display: block !important;
  }
  .internal-header .inner-mobile > a {
    color: #fff;
    letter-spacing: -0.025em;
    border-bottom: 1px solid #ffffff17;
    justify-content: space-between;
    align-items: center;
    min-height: 50px;
    padding: 12px 3px;
    font-size: 20px;
    font-weight: 620;
    display: flex;
  }
  .internal-header .inner-mobile > .inner-mobile-featured {
    color: #08294a;
    letter-spacing: 0;
    background: #fff;
    border: 1px solid #ffffff24;
    border-radius: 15px;
    margin-bottom: 8px;
    padding: 14px 17px;
    font-size: 15px;
    font-weight: 750;
  }
  .internal-header .inner-mobile > strong {
    color: #78c3ff;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    padding: 19px 3px 7px;
    font-size: 10px;
    font-weight: 800;
    display: block;
  }
  .inner-solution-links,
  .inner-resource-links {
    border-left: 1px solid #62b8fb66;
    margin: 0;
    padding: 3px 0 8px 14px;
    display: grid;
  }
  .internal-header .inner-mobile .inner-solution-links a,
  .internal-header .inner-mobile .inner-resource-links a {
    letter-spacing: 0;
    border: 0;
    align-items: center;
    min-height: 39px;
    font-weight: 570;
    display: flex;
    color: #d2e8f8 !important;
    padding: 8px 4px !important;
    font-size: 13px !important;
  }
  .internal-header .inner-mobile .mobile-socials {
    border-color: #ffffff20;
  }
  .internal-header .inner-mobile .mobile-socials a {
    color: #fff;
    background: #ffffff0b;
    border-color: #ffffff32 !important;
  }
}
@media (width<=700px) {
  .internal-header .inner-mobile {
    padding: 19px 19px calc(23px + env(safe-area-inset-bottom));
    border-radius: 21px;
    inset: 74px 7px 7px;
  }
  .internal-header .inner-mobile > a {
    min-height: 47px;
    font-size: 18px;
  }
  .science-modal-backdrop {
    background: #011325df;
    place-items: end center;
    padding: 0;
  }
  .science-modal {
    overscroll-behavior: contain;
    border-radius: 27px 27px 0 0;
    grid-template-columns: 1fr;
    width: 100%;
    max-height: 92svh;
    margin: 0;
    display: grid;
    overflow: auto;
  }
  .science-modal-visual {
    border-radius: 26px 26px 0 0;
    height: 148px;
    min-height: 148px;
  }
  .science-modal-visual > img {
    object-position: center 43%;
  }
  .science-modal-visual:after {
    background: linear-gradient(180deg, #011a3105 20%, #011a318f 100%);
  }
  .science-modal-visual > span {
    padding: 8px 11px;
    font-size: 9px;
    bottom: 17px;
    left: 18px;
  }
  .science-modal-orbits {
    width: 124px;
    height: 124px;
  }
  .science-modal-orbits i:nth-child(2) {
    inset: 18px;
  }
  .science-modal-orbits i:nth-child(3) {
    inset: 38px;
  }
  .science-modal-close {
    width: 40px;
    height: 40px;
    margin-top: 12px;
    font-size: 24px;
    position: fixed;
    top: auto;
    right: 14px;
  }
  .science-modal-copy {
    padding: 27px 22px calc(30px + env(safe-area-inset-bottom));
    align-self: start;
  }
  .science-modal-copy .section-kicker {
    margin: 0 0 9px;
    font-size: 9px;
  }
  .science-modal-copy h3 {
    margin: 0 0 16px;
    font-size: clamp(31px, 9vw, 39px);
    line-height: 1.02;
  }
  .science-modal-copy > p:not(.section-kicker) {
    color: #405e77;
    margin: 0;
    font-size: 15px;
    line-height: 1.65;
  }
  .science-modal-note {
    margin-top: 19px;
    padding: 14px;
  }
  .science-modal-return {
    margin-top: 21px;
  }
}
.hub-trust-section {
  background:
    radial-gradient(circle at 94% 8%, #67b7f523, #0000 27%),
    linear-gradient(135deg, #f5faff, #eaf5fc);
  position: relative;
  overflow: hidden;
}
.hub-trust-section:after {
  content: "";
  pointer-events: none;
  border: 1px solid #6db7f333;
  border-radius: 50%;
  width: 440px;
  height: 440px;
  position: absolute;
  bottom: -270px;
  right: -250px;
  box-shadow:
    0 0 0 58px #6db7f30a,
    0 0 0 116px #6db7f308;
}
.hub-trust-intro,
.hub-trust-grid {
  z-index: 1;
  position: relative;
}
.hub-trust-grid {
  gap: 0;
  padding: 19px 0 19px 78px;
}
.hub-trust-grid:before {
  content: "AION";
  color: #fff;
  letter-spacing: 0.14em;
  background: linear-gradient(145deg, #087ee5, #064d93);
  border: 1px solid #91c9f4;
  border-radius: 50%;
  place-items: center;
  width: 58px;
  height: 58px;
  font-size: 9px;
  font-weight: 820;
  display: grid;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  box-shadow: 0 12px 30px #075da82b;
}
.hub-trust-grid:after {
  content: "";
  background: #75b9ed;
  width: 30px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 58px;
}
.hub-trust-card {
  min-height: 132px;
  box-shadow: none;
  background: 0 0;
  border: 0;
  border-bottom: 1px solid #cbdfea;
  border-radius: 0;
  grid-template-columns: 52px 1fr auto;
  gap: 17px;
  padding: 25px 10px 25px 22px;
  overflow: visible;
}
.hub-trust-card:first-child {
  border-top: 1px solid #cbdfea;
}
.hub-trust-card:before {
  display: none;
}
.hub-trust-card > span {
  background: #fff;
  border: 1px solid #9bcdf2;
  border-radius: 50%;
  place-items: center;
  width: 38px;
  height: 38px;
  display: grid;
  box-shadow: 0 8px 24px #073b6410;
}
.hub-trust-card:hover {
  box-shadow: none;
  background: #ffffff72;
  padding-left: 30px;
  transform: none;
}
.hub-trust-card h3 {
  letter-spacing: -0.025em;
  font-size: 25px;
}
.hub-trust-card p {
  font-size: 15px;
}
.hub-trust-card b {
  white-space: nowrap;
  background: #fff;
  border-radius: 999px;
  padding: 9px 12px;
}
@media (width<=700px) {
  .hub-trust-section {
    padding-left: 7%;
    padding-right: 7%;
  }
  .hub-trust-grid {
    margin-top: 34px;
    padding: 62px 0 0;
  }
  .hub-trust-grid:before {
    top: 0;
    left: 0;
    transform: none;
  }
  .hub-trust-grid:after {
    background: linear-gradient(#75b9ed, #75b9ed00);
    width: 1px;
    height: calc(100% - 58px);
    top: 57px;
    left: 29px;
  }
  .hub-trust-card {
    grid-template-columns: 42px 1fr;
    gap: 11px;
    min-height: 0;
    padding: 22px 0 22px 13px;
  }
  .hub-trust-card:hover {
    padding-left: 13px;
  }
  .hub-trust-card p {
    grid-column: 2;
    margin-top: 0;
    font-size: 14px;
  }
  .hub-trust-card b {
    background: 0 0;
    grid-column: 2;
    padding: 0;
  }
  .hub-trust-card > span {
    width: 34px;
    height: 34px;
  }
}
.provider-user-chip {
  color: #0b365b;
  background: #ffffffc7;
  border: 1px solid #cfe0ec;
  border-radius: 999px;
  align-items: center;
  gap: 8px;
  max-width: 150px;
  padding: 5px 10px 5px 5px;
  transition:
    transform 0.2s,
    border-color 0.2s,
    background 0.2s;
  display: flex;
  box-shadow: 0 7px 22px #082b4810;
}
.provider-user-chip:hover {
  background: #fff;
  border-color: #7db9e8;
  transform: translateY(-2px);
}
.provider-user-chip span,
.mobile-provider-profile > span {
  color: #fff;
  background: linear-gradient(145deg, #087fe6, #055298);
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 29px;
  height: 29px;
  font-size: 11px;
  font-weight: 800;
  display: grid;
}
.provider-user-chip b {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  overflow: hidden;
}
.mobile-provider-profile {
  color: #fff !important;
  background: #ffffff0d !important;
  border: 1px solid #ffffff29 !important;
  border-radius: 15px !important;
  grid-template-columns: 36px 1fr auto !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 9px !important;
  padding: 11px 13px !important;
  display: grid !important;
}
.mobile-provider-profile b {
  font-size: 13px;
}
.mobile-provider-profile i {
  color: #74c1ff;
  font-style: normal;
}
.google-connected,
.auth-success {
  background: #eef8ff;
  border: 1px solid #cae2f4;
  border-radius: 15px;
  grid-template-columns: 40px 1fr;
  align-items: center;
  gap: 13px;
  margin: 0 0 22px;
  padding: 15px;
  display: grid;
}
.google-connected > span,
.auth-success > span {
  color: #fff;
  background: #0879de;
  border-radius: 50%;
  place-items: center;
  width: 38px;
  height: 38px;
  font-weight: 800;
  display: grid;
}
.google-connected strong,
.auth-success strong {
  color: #123d61;
  font-size: 13px;
}
.google-connected p,
.auth-success p {
  color: #5c7488;
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.5;
}
.auth-text-button {
  color: #176dcc;
  font: inherit;
  cursor: pointer;
  background: 0 0;
  border: 0;
  font-size: 13px;
}
.forgot-link.auth-text-button {
  display: block;
}
.profile-email {
  color: #176dcc;
  margin: 16px 0;
  display: block;
}
.provider-auth-form input[readonly] {
  color: #4a6479;
  cursor: not-allowed;
  background: #e8f0f5;
}
@media (width<=700px) {
  .provider-user-chip b {
    display: none;
  }
  .provider-user-chip {
    padding: 5px;
  }
  .site-header .provider-user-chip {
    margin-left: auto;
  }
  .auth-success {
    grid-template-columns: 36px 1fr;
  }
}
.password-input {
  display: block;
  position: relative;
}
.password-input input {
  padding-right: 82px !important;
}
.password-input button {
  color: #126bbd;
  min-width: 55px;
  font: inherit;
  cursor: pointer;
  background: #e7f3fc;
  border: 0;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 760;
  transition:
    background 0.2s,
    color 0.2s;
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
}
.password-input button:hover,
.password-input button[aria-pressed="true"] {
  color: #fff;
  background: #0878df;
}
.password-match {
  align-items: center;
  gap: 6px;
  margin-top: 7px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}
.password-match.is-valid {
  color: #167348;
}
.password-match.is-invalid {
  color: #b43e43;
}
.password-input input[aria-invalid="true"] {
  border-color: #c45157;
  box-shadow: 0 0 0 3px #c4515712;
}
.portal-logout-form {
  margin: 0;
  display: inline-flex;
}
.portal-logout-form button {
  font: inherit;
  cursor: pointer;
}
.footer-newsletter .newsletter-form {
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: end;
  display: grid;
}
.footer-newsletter .newsletter-email-label {
  grid-area: 1/1;
}
.footer-newsletter .newsletter-form > button {
  grid-area: 1/2;
  height: 48px;
}
.newsletter-consent {
  color: #b8c9d8;
  grid-area: 2/1 / auto/-1;
  grid-template-columns: 18px 1fr;
  align-items: start;
  gap: 10px;
  margin: 13px 0 0;
  font-size: 11px;
  line-height: 1.5;
  display: grid !important;
}
.footer-newsletter .newsletter-consent input {
  accent-color: #57b5ff;
  width: 16px;
  height: 16px;
  margin: 1px 0 0;
}
.auth-consent-optional {
  background: #eef7fd;
  border: 1px solid #dceaf3;
}
.account-privacy {
  border-top: 1px solid #dbe7ef;
  margin-top: 34px;
  padding-top: 25px;
}
.account-privacy > button {
  color: #9a3d45;
  font: inherit;
  cursor: pointer;
  background: 0 0;
  border: 0;
  font-size: 12px;
  text-decoration: underline;
}
.delete-account-confirm {
  background: #fff7f7;
  border: 1px solid #f0cbd0;
  border-radius: 16px;
  max-width: 540px;
  margin: 18px auto 0;
  padding: 20px;
}
.auth-status-card .delete-account-confirm p {
  margin: 7px 0 16px;
  font-size: 13px;
  line-height: 1.55;
}
.delete-account-confirm form button {
  color: #fff;
  font: inherit;
  cursor: pointer;
  background: #ad3641;
  border: 0;
  border-radius: 999px;
  padding: 11px 16px;
  font-size: 12px;
  font-weight: 700;
}
.preference-page {
  background:
    radial-gradient(circle at 78% 18%, #0b82ec24, #0000 32%),
    linear-gradient(145deg, #edf7ff, #f9fcff);
  place-items: center;
  min-height: 100svh;
  padding: 6%;
  display: grid;
}
.preference-card {
  text-align: center;
  background: #ffffffed;
  border: 1px solid #fff;
  border-radius: 30px;
  width: min(660px, 100%);
  padding: clamp(35px, 7vw, 72px);
  box-shadow: 0 30px 90px #06284918;
}
.preference-card .brand-lockup {
  width: 190px;
  margin: 0 auto 42px;
}
.preference-card h1 {
  color: #082843;
  letter-spacing: -0.055em;
  margin: 13px 0 20px;
  font-size: clamp(38px, 6vw, 62px);
  line-height: 1.04;
}
.preference-card > p:not(.section-kicker) {
  color: #5b7184;
  font-size: 17px;
  line-height: 1.7;
}
.preference-card form {
  margin: 30px 0 20px;
}
.preference-cancel {
  color: #58758e;
  font-size: 12px;
  text-decoration: underline;
}
@media (width<=700px) {
  .preference-page {
    padding: 15px;
  }
  .preference-card {
    border-radius: 23px;
    padding: 38px 24px;
  }
  .preference-card h1 {
    font-size: 39px;
  }
  .account-privacy {
    margin-top: 27px;
  }
}
@font-face {
  font-family: Geist;
  src: url(/wp-content/plugins/aion-experience/assets/geist.woff2)
    format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --font-geist: Geist, Arial, sans-serif;
}
@media (width<=760px) {
  .providers .hero-photo {
    top: 50px;
  }
}
.resource-access {
  border-top: 1px solid #e1e9ef;
  gap: 10px;
  margin-top: 10px;
  padding-top: 12px;
  display: grid;
}
.resource-access a {
  color: #0568ee;
  font-size: 13px;
}
.category-intro {
  margin: 0 0 55px;
  font-size: 21px !important;
  line-height: 1.8 !important;
}

/* Client-requested resource grid: equal cards in a true responsive grid. */
.rich-library-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  align-items: stretch;
  gap: 28px;
}
.rich-library-card {
  width: 100%;
  height: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.rich-library-card .resource-preview {
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}
.rich-library-card .resource-card-body {
  flex: 1 1 auto;
  width: 100%;
}

/* Product examples inside solution detail modals. */
.science-modal-products {
  border-top: 1px solid #dce8f1;
  margin-top: 28px;
  padding-top: 24px;
}
.science-modal-products > span {
  color: #0871cd;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 780;
}
.science-modal-products > .science-product-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 16px;
  margin-top: 14px;
  display: grid;
}
.science-modal-products > .science-product-grid.products-1 {
  grid-template-columns: minmax(0, 180px);
}
.science-modal-products > .science-product-grid.products-2 {
  grid-template-columns: repeat(2, minmax(0, 180px));
}
.science-modal-products > .science-product-grid.products-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.science-modal-products article {
  background: transparent;
  border: 0;
  border-radius: 0;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 0;
  display: grid;
}
.science-product-image-frame {
  background: #fff;
  border: 1px solid #dcebf5;
  border-radius: 12px;
  aspect-ratio: 1;
  width: 100%;
  overflow: hidden;
}
.science-product-image-frame img {
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
  transition: transform 0.35s ease;
}
.science-product-placeholder {
  color: #fff;
  background:
    radial-gradient(circle at 78% 22%, #62c4ff66, transparent 30%),
    linear-gradient(145deg, #061c35, #0b5c9e);
  border-radius: 8px;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  min-height: 150px;
  padding: 12px 10px;
  display: flex;
  overflow: hidden;
}
.science-product-placeholder span {
  color: #bfe8ff;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  font-size: 7px;
  font-weight: 760;
}
.science-product-placeholder b {
  margin-top: 5px;
  font-size: 10px;
  line-height: 1.2;
}
.science-modal-products article > strong {
  display: block;
  color: #0c2d4b;
  padding: 0 3px;
  font-size: 12px;
  line-height: 1.5;
}
.science-modal-products .science-modal-product-copy {
  color: #526b7e;
  background: #f7fafc;
  border-left: 2px solid #1685d1;
  border-radius: 0 10px 10px 0;
  margin: 12px 0 0;
  padding: 12px 14px;
  font-size: 12px;
  line-height: 1.6;
}
.science-card-action b {
  display: none;
}
.science-modal-actions {
  align-items: center;
  flex-wrap: wrap;
  gap: 16px 22px;
  margin-top: 24px;
  display: flex;
}
.science-modal-learn-more {
  color: #fff;
  background: #086fcd;
  border-radius: 999px;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 46px;
  margin-top: 0;
  padding: 0 22px;
  font-size: 12px;
  font-weight: 760;
  text-decoration: none;
  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  display: inline-flex;
  box-shadow: 0 12px 28px #086fcd2b;
}
.science-modal-learn-more:hover {
  background: #045daf;
  transform: translateY(-2px);
  box-shadow: 0 17px 34px #086fcd38;
}
.science-modal-actions .science-modal-return {
  margin-top: 0;
}

@media (width <= 1100px) {
  .rich-library-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (width <= 700px) {
  .rich-library-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .science-modal-products > .science-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .science-modal-products > .science-product-grid.products-1 {
    grid-template-columns: minmax(0, 150px);
  }
  .science-modal-products > .science-product-grid.products-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .science-modal-products > .science-product-grid.products-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }
  .science-modal-products article > strong {
    font-size: 11px;
  }
  .science-product-placeholder {
    width: 100%;
    min-height: 128px;
    padding: 10px 8px;
  }
  .science-modal-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .science-modal-learn-more {
    width: 100%;
  }
  .science-modal-actions .science-modal-return {
    text-align: center;
    width: 100%;
    min-height: 42px;
  }
}
