:root {
  --home-shell-width: 1496px;
  --home-page-gutter: max(24px, calc((100vw - var(--home-shell-width)) / 2));
  --home-header-start: var(--home-page-gutter);
  --home-section-y: clamp(72px, 8vw, 126px);
  --rm-ink: #1d1d1b;
  --rm-navy: #1c355e;
  --rm-navy-strong: #142844;
  --rm-teal: #00a3b4;
  --rm-bg: #ffffff;
  --rm-paper: rgba(251, 250, 249, 0.9);
  --rm-line: rgba(28, 53, 94, 0.12);
  --rm-line-strong: rgba(28, 53, 94, 0.2);
  --rm-text-soft: #5d6f89;
  --rm-shadow: 0 14px 40px rgba(17, 29, 51, 0.08);
  --rm-shadow-strong: 0 20px 60px rgba(17, 29, 51, 0.14);
  --rm-radius: 22px;
  --rm-ease: 320ms cubic-bezier(0.22, 1, 0.36, 1);
}


.mobile-content-rail-hint {
  display: none;
}

.trusted__logos {
  position: relative;
}

.trusted__motion-toggle {
  position: absolute;
  top: clamp(4px, 0.7vw, 10px);
  right: clamp(4px, 0.7vw, 10px);
  z-index: 3;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: clamp(18px, 1.7vw, 28px);
  color: var(--rm-navy);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 12px 28px rgba(17, 29, 51, 0.08);
  cursor: pointer;
  transition:
    color var(--rm-ease),
    border-color var(--rm-ease),
    background var(--rm-ease),
    transform var(--rm-ease);
}

.trusted__motion-toggle:hover,
.trusted__motion-toggle:focus-visible {
  color: var(--rm-teal);
  border-color: rgba(0, 163, 180, 0.35);
  background: #fff;
  transform: translateY(-1px);
}

.trusted__motion-toggle-play {
  display: none;
}

.trusted__logos.is-paused .trusted__motion-toggle-pause {
  display: none;
}

.trusted__logos.is-paused .trusted__motion-toggle-play {
  display: inline;
}

.trusted__logos.is-paused .trusted__track,
.trusted__logos:hover .trusted__track {
  animation-play-state: paused !important;
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  overflow-x: clip;
}

body {
  margin: 0;
  font-family: "Rubik", Tahoma, sans-serif;
  z-index: 2;
  background: #ffffff;
}

body.menu-open {
  overflow: hidden;
}

body.site-intro {
  overflow: hidden;
}

img {
  display: block;
  max-width: 100%;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

button {
  font: inherit;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  padding: 12px 24px 0;
}

.site-header::before {
  content: none;
}

body.home-mode .site-header:not(.is-compact)::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 104px;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5, 15, 32, 0.46) 0%, rgba(7, 18, 36, 0.22) 58%, rgba(7, 18, 36, 0) 100%);
  backdrop-filter: blur(14px) saturate(1.12);
  -webkit-backdrop-filter: blur(14px) saturate(1.12);
  mask-image: linear-gradient(180deg, #000 0%, #000 58%, transparent 100%);
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 58%, transparent 100%);
}

.site-header.is-page {
  padding-left: 4px;
  padding-right: 4px;
}

.site-header.is-page:not(.is-compact) {
  padding-top: 0;
}

.site-header.is-page:not(.is-compact) .context-tabs {
  border-top-color: rgba(28, 53, 94, 0.12);
  border-bottom: 1px solid rgba(28, 53, 94, 0.12);
}

.site-header.is-page .context-tabs[aria-hidden="true"],
.site-header.is-page .context-tabs.context-tabs--empty {
  display: none;
  padding: 0;
  border: 0;
}

.site-header__inner {
  position: relative;
  z-index: 1;
  max-width: 1496px;
  margin: 0 auto;
}

.site-header.is-page .site-header__inner {
  width: 100%;
  max-width: 1496px;
  border: 1px solid transparent;
  border-radius: 24px;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  overflow: visible;
  transition:
    max-width var(--rm-ease),
    background-color var(--rm-ease),
    border-color var(--rm-ease),
    box-shadow var(--rm-ease),
    border-radius var(--rm-ease);
}

.site-header__shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 62px;
  transition:
    min-height var(--rm-ease),
    max-width var(--rm-ease),
    padding var(--rm-ease),
    background-color var(--rm-ease),
    border-color var(--rm-ease),
    box-shadow var(--rm-ease),
    transform var(--rm-ease),
    border-radius var(--rm-ease);
}

body.home-mode .site-header:not(.is-compact) .site-header__shell {
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.site-header.is-compact .site-header__shell {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 14px;
  min-height: 48px;
  border: 1px solid rgba(255, 255, 255, 0.76);
  border-radius: 14px;
  background: rgba(251, 250, 249, 0.82);
  box-shadow:
    0 1px 3px rgba(17, 17, 17, 0.05),
    0 6px 6px rgba(17, 17, 17, 0.04),
    0 13px 8px rgba(17, 17, 17, 0.03),
    0 24px 9px rgba(17, 17, 17, 0.01);
  backdrop-filter: blur(24px);
}

.site-header.is-page .site-header__shell {
  min-height: 62px;
  max-width: none;
  margin: 0;
  padding: 0 18px;
  background: transparent;
  box-shadow: none;
  border: 0;
  border-radius: 0;
}

.site-header.is-page.is-compact .site-header__inner {
  max-width: 1440px;
  margin: 0 auto;
  border-color: rgba(28, 53, 94, 0.12);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 18px 42px rgba(17, 29, 51, 0.08);
  backdrop-filter: blur(24px);
  overflow: hidden;
  border-radius: 14px;
}

.site-header.is-page.is-compact .site-header__shell {
  min-height: 54px;
  padding: 0 12px;
}

.header-start {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 0 0 auto;
}

.menu-burger {
  appearance: none;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--rm-navy);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 0;
  cursor: pointer;
  transition:
    background-color 180ms ease,
    transform 180ms ease;
}

.menu-burger:hover {
  background: rgba(255, 255, 255, 0.78);
  transform: translateY(-1px);
}

.menu-burger span {
  display: block;
  width: 18px;
  height: 1.8px;
  border-radius: 999px;
  background: currentColor;
}

.brand-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  width: 146px;
  min-width: 146px;
  height: 38px;
}

.brand-link__wordmark {
  position: absolute;
  left: 0;
  top: 50%;
  width: 146px;
  height: auto;
  clip-path: inset(0 0 0 0);
  transform: translateY(-50%);
  transition:
    clip-path var(--rm-ease),
    opacity var(--rm-ease),
    transform var(--rm-ease);
}

.brand-link__wordmark--inverse {
  opacity: 0;
}

.brand-link__mark {
  position: absolute;
  left: 0;
  top: 50%;
  width: 28px;
  height: auto;
  opacity: 0;
  transform: translateY(-50%) scale(0.78);
  transition:
    opacity var(--rm-ease),
    transform var(--rm-ease);
}

.site-header.is-compact .brand-link {
  width: 28px;
  min-width: 28px;
}

.site-header.is-compact .brand-link__wordmark {
  clip-path: inset(0 100% 0 0);
  opacity: 0;
  transform: translateY(-50%) translateX(-14px) scale(0.84);
}

.site-header.is-compact .brand-link__mark {
  opacity: 1;
  transform: translateY(-50%) scale(1);
}

.site-header.is-page .brand-link {
  width: 28px;
  min-width: 28px;
  height: 32px;
}

.site-header.is-page .brand-link__wordmark {
  clip-path: inset(0 100% 0 0);
  opacity: 0;
  transform: translateY(-50%) translateX(-14px) scale(0.84);
}

.site-header.is-page .brand-link__mark {
  opacity: 1;
  transform: translateY(-50%) scale(1);
}

.primary-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  min-width: 0;
  flex: 1;
}

.header-context,
.context-tabs {
  display: none;
}

.site-header.is-page .primary-nav {
  display: none;
}

.site-header.is-page .header-context {
  display: flex;
  align-items: center;
  min-width: 0;
  flex: 1;
}

.header-context__title-wrap {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.header-context__divider {
  width: 1px;
  height: 36px;
  background: rgba(28, 53, 94, 0.14);
  flex: 0 0 auto;
}

.header-context__title {
  margin: 0;
  color: #103765;
  font-size: clamp(1rem, 2.1vw, 1.45rem);
  letter-spacing: -0.04em;
  font-weight: 300;
  white-space: nowrap;
}

.site-header.is-page .context-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 10px 18px 12px 10px;
  border-top: 1px solid transparent;
}

.site-header.is-page.is-compact .context-tabs {
  gap: 4px;
  padding: 6px 12px 8px 4px;
  border-top-color: rgba(28, 53, 94, 0.08);
}

.context-tabs__group {
  display: flex;
  flex-wrap: wrap;
  gap: inherit;
}

.context-tabs__button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 8px;
  border: 0;
  background: transparent;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.9rem;
  font-weight: 400;
  position: relative;
  cursor: pointer;
  text-decoration: none;
  transition:
    color 180ms ease,
    transform 180ms ease;
}

.context-tabs__button::after {
  content: "";
  position: absolute;
  left: 7px;
  right: 7px;
  bottom: -3px;
  height: 2.5px;
  border-radius: 999px;
  background: #1cbda0;
  opacity: 0;
  transform: scaleX(0.55);
  transition:
    opacity 180ms ease,
    transform 180ms ease;
}

.context-tabs__button:hover,
.context-tabs__button.is-active {
  color: #1cbda0;
}

.context-tabs__button.is-active::after {
  opacity: 1;
  transform: scaleX(1);
}

.site-header.is-page.is-compact .header-context__title {
  font-size: clamp(1.08rem, 1.6vw, 1.34rem);
}

.site-header.is-page.is-compact .header-context__divider {
  height: 24px;
}

.site-header.is-page.is-compact .menu-burger {
  width: 32px;
  height: 32px;
}

.site-header.is-page.is-compact .brand-link {
  height: 28px;
}

.site-header.is-page.is-compact .brand-link__mark {
  width: 24px;
}

.primary-nav__item {
  appearance: none;
  border: 1px solid transparent;
  background: transparent;
  color: #103765;
  min-height: 42px;
  padding: 0 12px;
  border-radius: calc(clamp(18px, 1.7vw, 28px) - 8px);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 0.84rem;
  line-height: 1;
  font-weight: 500;
  cursor: pointer;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    transform 180ms ease,
    box-shadow 180ms ease;
}

.primary-nav__item:hover,
.primary-nav__item.is-open,
.primary-nav__item.is-active {
  background: rgba(255, 255, 255, 0.8);
}

.primary-nav__item.is-open {
  box-shadow: 0 8px 24px rgba(17, 29, 51, 0.06);
}

.primary-nav__item.is-active {
  color: var(--rm-teal);
}

.primary-nav__caret {
  width: 8px;
  height: 8px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transition: transform 180ms ease;
}

.primary-nav__item.is-open .primary-nav__caret {
  transform: rotate(-135deg) translate(-1px, -1px);
}

.header-tools {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.icon-button,
.lang-button,
.mobile-menu-button {
  appearance: none;
  cursor: pointer;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    transform 180ms ease,
    box-shadow 180ms ease;
}

.icon-button:hover,
.lang-button:hover,
.mobile-menu-button:hover {
  transform: translateY(-1px);
}

.icon-button {
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--rm-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.icon-button svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.lang-button,
.mobile-menu-button {
  min-height: 40px;
  padding: 0 16px;
  border-radius: clamp(18px, 1.7vw, 28px);
  border: 1px solid rgba(29, 29, 27, 0.18);
  background: rgba(255, 255, 255, 0.66);
  color: var(--rm-ink);
  font-size: 0.92rem;
  font-weight: 500;
}

.mobile-menu-button {
  display: none;
}

body.home-mode .site-header:not(.is-compact) .menu-burger,
body.home-mode .site-header:not(.is-compact) .primary-nav__item,
body.home-mode .site-header:not(.is-compact) .icon-button,
body.home-mode .site-header:not(.is-compact) .lang-button {
  color: #f5efe5;
}

body.home-mode .site-header:not(.is-compact) .primary-nav__item:hover,
body.home-mode .site-header:not(.is-compact) .primary-nav__item.is-open,
body.home-mode .site-header:not(.is-compact) .primary-nav__item.is-active {
  background: rgba(255, 255, 255, 0.12);
}

body.home-mode .site-header:not(.is-compact) .lang-button {
  border-color: rgba(245, 239, 229, 0.22);
  background: rgba(255, 255, 255, 0.08);
}

body.home-mode .site-header:not(.is-compact) .menu-burger:hover,
body.home-mode .site-header:not(.is-compact) .icon-button:hover,
body.home-mode .site-header:not(.is-compact) .lang-button:hover {
  background: rgba(255, 255, 255, 0.12);
}

.mega-menu {
  position: absolute;
  top: 100%;
  padding-top: 10px;
  left: 50%;
  width: min(1100px, calc(100vw - 40px));
  transform: translateX(-50%) translateY(12px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 220ms ease,
    transform 220ms ease,
    visibility 0s linear 220ms;
}

.mega-menu.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
  transition-delay: 0s;
}

.mega-menu__panel {
  border-radius: 28px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 28px 58px rgba(17, 29, 51, 0.08);
  overflow: hidden;
}

.mega-menu__grid {
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
}

.mega-menu__column {
  padding: 28px 28px 24px;
}

.mega-menu__column + .mega-menu__column {
  border-left: 1px solid rgba(28, 53, 94, 0.08);
}

.mega-menu__footer-badge,
.section-pill,
.page-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(28, 53, 94, 0.08);
  box-shadow: 0 6px 16px rgba(17, 29, 51, 0.04);
  color: var(--rm-navy);
  font-size: 0.84rem;
  font-weight: 500;
}

.mega-menu__intro {
  display: grid;
  align-content: start;
  gap: 18px;
  min-height: 100%;
}

.mega-menu__intro-title {
  margin: 0;
  color: var(--rm-ink);
  font-size: 2rem;
  line-height: 1.04;
  letter-spacing: -0.03em;
  font-weight: 500;
}

.mega-menu__intro-copy {
  margin: 0;
  max-width: 250px;
  color: rgba(29, 29, 27, 0.72);
  font-size: 0.98rem;
  line-height: 1.55;
}

.mega-menu__intro-button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  min-height: 40px;
  width: fit-content;
  padding: 0 20px;
  border: 0;
  border-radius: 999px;
  background: var(--rm-teal);
  color: #ffffff;
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(0, 163, 180, 0.18);
}

.mega-menu__link-list {
  display: grid;
  gap: 2px;
}

.mega-menu__list-link {
  appearance: none;
  width: 100%;
  border: 0;
  background: transparent;
  text-align: left;
  min-height: 48px;
  padding: 0 4px 0 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  cursor: pointer;
  color: var(--rm-ink);
  text-decoration: none;
  transition:
    color 180ms ease,
    transform 180ms ease;
}

.mega-menu__list-link:hover,
.mega-menu__list-link.is-active {
  color: var(--rm-teal);
}

.mega-menu__list-title {
  color: inherit;
  font-size: 0.98rem;
  font-weight: 500;
  line-height: 1.2;
}

.mega-menu__list-arrow {
  color: inherit;
  font-size: 1rem;
  line-height: 1;
}

.entry-intro {
  display: grid;
  position: fixed;
  inset: 0;
  z-index: 120;
  place-items: center;
  padding: 24px;
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  background:
    radial-gradient(circle at 22% 20%, rgba(0, 163, 180, 0.1), transparent 32%),
    linear-gradient(180deg, #fffdf9 0%, #f7f3ed 100%);
}

.entry-intro::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 44%;
  background: linear-gradient(180deg, rgba(247, 243, 237, 0), rgba(247, 243, 237, 0.92));
}

.entry-intro__inner {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  filter: drop-shadow(0 18px 34px rgba(28, 53, 94, 0.14));
}

.entry-intro__logo {
  position: relative;
  width: clamp(220px, 32vw, 430px);
  aspect-ratio: 790 / 245;
  overflow: hidden;
}

.entry-intro__logo-full,
.entry-intro__logo-piece,
.entry-intro__logo-piece img {
  position: absolute;
  pointer-events: none;
}

.entry-intro__logo-full,
.entry-intro__logo-piece img {
  left: -3.038%;
  top: -68.5714%;
  width: 106.5684%;
  max-width: none;
  height: auto;
}

.entry-intro__logo-full {
  opacity: 0;
  z-index: 2;
}

.entry-intro__logo-piece {
  inset: 0;
  z-index: 1;
  opacity: 0;
  filter: blur(8px);
  transform: translateY(22px) scale(0.985);
  transform-origin: center;
}

body.site-intro .entry-intro {
  visibility: visible;
  opacity: 1;
}

body.site-intro.site-intro-ready .entry-intro {
  animation: introOverlayOut 760ms ease 2680ms forwards;
}

body.site-intro.site-intro-ready .entry-intro__logo-full {
  animation: introLogoFull 420ms ease 2060ms forwards;
}

body.site-intro.site-intro-ready .entry-intro__logo-piece {
  animation: introLogoPiece 760ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: calc(320ms + (var(--piece-index) * 100ms));
}

body.site-intro.site-intro-ready .entry-intro__inner {
  animation: introWordmarkOut 640ms cubic-bezier(0.22, 1, 0.36, 1) 2480ms forwards;
}

body.site-intro .site-header,
body.site-intro .site-main {
  filter: blur(18px);
  transform: scale(1.015);
  transition:
    filter 700ms cubic-bezier(0.22, 1, 0.36, 1) 1500ms,
    transform 700ms cubic-bezier(0.22, 1, 0.36, 1) 1500ms;
}

body.site-intro.site-intro-ready .site-header,
body.site-intro.site-intro-ready .site-main {
  filter: blur(0);
  transform: none;
}

body.home-mode.site-intro .site-header,
body.home-mode.site-intro .site-main,
body.home-mode.site-intro.site-intro-ready .site-header,
body.home-mode.site-intro.site-intro-ready .site-main {
  filter: none;
  transform: none;
  transition: none;
}

body.home-mode.site-intro .site-header,
body.home-mode.site-intro.site-intro-ready .site-header {
  opacity: 0;
}

body.home-mode .motors-hero--staged .motors-hero__copy {
  opacity: 0;
}

body.home-mode .motors-hero--staged .motors-hero__video-shell {
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  border-radius: 0;
  opacity: 0;
  transform: translate(-50%, -50%) scale(1.1);
  will-change: opacity, transform;
}

body.home-mode.home-hero-reveal .motors-hero--staged .motors-hero__video-shell {
  animation: homeHeroFadeZoomOut 1400ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

body.home-mode .motors-hero--staged.is-video-ready .motors-hero__ambient {
  opacity: 1;
}

body.home-mode.home-hero-ready .motors-hero__ambient {
  opacity: 0.02;
}

body.home-mode.home-hero-reveal .motors-hero--staged .motors-hero__copy {
  animation: homeHeroFadeIn 2.5s forwards;
}

body.home-mode .motors-hero--staged .motors-hero__message {
  opacity: 0;
  filter: blur(8px);
  pointer-events: none;
}

body.home-mode .motors-hero--staged .hero-story {
  opacity: 0;
  filter: blur(8px);
  transform: translateY(90px);
  pointer-events: none;
}

body.home-mode.home-hero-ready .motors-hero__message {
  animation: homeHeroPhraseFadeIn 900ms ease 520ms both;
}

body.home-mode.home-hero-ready .hero-story {
  animation: homeStoryRiseIn 900ms cubic-bezier(0.22, 1, 0.36, 1) 180ms both;
}

body.home-mode.home-hero-reveal:not(.home-hero-ready) .site-header {
  opacity: 0;
  transform: translateY(-120%);
  pointer-events: none;
}

body.home-mode.home-hero-ready .site-header {
  opacity: 0;
  pointer-events: auto;
  animation: homeHeaderDrop 850ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.mobile-menu {
  position: fixed;
  inset: 0;
  z-index: 60;
  visibility: hidden;
  pointer-events: none;
  background: linear-gradient(94deg, #173b65 0%, #1f4b77 100%);
  opacity: 0;
  clip-path: inset(0 0 100% 0 round 28px);
  transform: translateY(-18px);
  transition:
    opacity 340ms ease,
    clip-path 620ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 360ms;
}

.mobile-menu__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
  opacity: 0;
  background:
    radial-gradient(circle at 24% 24%, rgba(0, 163, 180, 0.16), transparent 26%),
    linear-gradient(125deg, rgba(17, 41, 69, 0.96), rgba(20, 58, 96, 0.84));
  transition: opacity 460ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu__media iframe,
.mobile-menu__media video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: max(100vw, 177.777vh);
  height: max(100vh, 56.25vw);
  border: 0;
  transform: translate(-50%, -50%) scale(1.01);
  pointer-events: none;
  filter: saturate(1.02) contrast(1.02) brightness(0.95);
}

.mobile-menu::before {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: min(58vw, 520px);
  background: url("assets/menu-pattern.svg") center bottom / cover no-repeat;
  opacity: 0;
  pointer-events: none;
  transition: opacity 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(7, 18, 36, 0.64) 0%, rgba(7, 18, 36, 0.48) 42%, rgba(7, 18, 36, 0.22) 60%, rgba(7, 18, 36, 0) 82%),
    linear-gradient(180deg, rgba(8, 20, 40, 0.04), rgba(8, 20, 40, 0.12));
  opacity: 0;
  pointer-events: none;
  transition: opacity 300ms ease;
}

.mobile-menu.is-open {
  visibility: visible;
  pointer-events: auto;
  opacity: 1;
  clip-path: inset(0 round 0);
  transform: none;
  transition-delay: 0s;
}

.mobile-menu.is-open::before {
  opacity: 0.9;
}

.mobile-menu.is-open .mobile-menu__media {
  opacity: 0.7;
}

.mobile-menu.is-open::after {
  opacity: 1;
}

.mobile-menu__panel {
  position: relative;
  z-index: 2;
  min-height: 100%;
  padding: 22px clamp(28px, 3.4vw, 68px) 48px;
  opacity: 0;
  transform: translateY(30px) scale(0.99);
  transition:
    opacity 280ms ease,
    transform 520ms cubic-bezier(0.22, 1, 0.36, 1);
  overflow-y: auto;
}

.mobile-menu.is-open .mobile-menu__panel {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.mobile-menu__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  position: relative;
  z-index: 1;
}

.mobile-menu__brand-wrap,
.mobile-menu__tools {
  display: flex;
  align-items: center;
  gap: 16px;
}

.mobile-menu__close,
.mobile-menu__search,
.mobile-menu__lang {
  appearance: none;
  cursor: pointer;
}

.mobile-menu__close {
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 2.1rem;
  line-height: 1;
  filter: drop-shadow(0 1px 10px rgba(8, 20, 40, 0.45));
}

.mobile-menu__close span {
  display: block;
  transform: translateY(-2px);
}

.mobile-menu__brand-link {
  display: inline-flex;
  align-items: center;
  opacity: 0;
  transform: translate(84px, -4px) scale(0.84);
  transform-origin: left center;
  transition:
    opacity 280ms ease,
    transform 540ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu__brand-logo {
  width: clamp(132px, 11vw, 156px);
  height: auto;
  filter: drop-shadow(0 2px 14px rgba(8, 20, 40, 0.45));
}

.mobile-menu__search {
  width: 40px;
  height: 40px;
  border: 0;
  background: transparent;
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  filter: drop-shadow(0 1px 10px rgba(8, 20, 40, 0.45));
}

.mobile-menu__search svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.mobile-menu__lang {
  min-height: 32px;
  padding: 0 11px;
  border-radius: 7px;
  border: 1px solid rgba(255, 255, 255, 0.42);
  background: transparent;
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-shadow: 0 1px 10px rgba(8, 20, 40, 0.45);
}

.mobile-menu__content {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(90px, 250px) minmax(280px, 420px) minmax(220px, 340px);
  gap: clamp(28px, 3.6vw, 60px);
  align-items: start;
  padding: clamp(80px, 12vh, 176px) clamp(20px, 4vw, 42px) 60px;
  width: min(100%, 1180px);
  opacity: 0;
  transform: translateY(34px);
  filter: blur(8px);
  transition:
    opacity 260ms ease,
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 360ms ease;
}

.mobile-menu--two-level .mobile-menu__content {
  grid-template-columns: minmax(220px, 360px) minmax(280px, 520px);
  gap: clamp(42px, 5vw, 96px);
  width: min(100%, 1120px);
}

.mobile-menu__primary-list,
.mobile-menu__secondary-list,
.mobile-menu__tertiary-list {
  display: grid;
  gap: 2px;
  align-content: start;
}

.mobile-menu__secondary-group,
.mobile-menu__tertiary-group {
  display: grid;
  gap: 14px;
  align-content: start;
}

.mobile-menu__secondary-list[hidden],
.mobile-menu__tertiary-list[hidden],
.mobile-menu__secondary-group[hidden],
.mobile-menu__tertiary-group[hidden] {
  display: none !important;
}

.mobile-menu__close {
  opacity: 0;
  transform: translateX(-18px) rotate(-18deg);
  transition:
    opacity 220ms ease,
    transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu__tools {
  opacity: 0;
  transform: translateY(-16px);
  transition:
    opacity 220ms ease,
    transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu.is-open .mobile-menu__close,
.mobile-menu.is-open .mobile-menu__tools,
.mobile-menu.is-open .mobile-menu__brand-link,
.mobile-menu.is-open .mobile-menu__content {
  opacity: 1;
  transform: none;
}

.mobile-menu.is-open .mobile-menu__content {
  filter: blur(0);
}

.mobile-menu.is-open .mobile-menu__brand-link {
  transition-delay: 70ms;
}

.mobile-menu.is-open .mobile-menu__content {
  transition-delay: 120ms;
}

.mobile-menu__secondary-list:empty {
  display: none;
}

.mobile-menu__primary-list {
  transition:
    opacity 220ms ease,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu__primary-list.is-switching {
  opacity: 0.88;
  transform: translateX(-8px);
}

.mobile-menu__secondary-list {
  transition:
    opacity 180ms ease,
    transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu--two-level .mobile-menu__secondary-list {
  position: relative;
  padding-left: clamp(24px, 2.8vw, 38px);
}

.mobile-menu--two-level .mobile-menu__secondary-list::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 1px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(0, 210, 217, 0.34), rgba(255, 255, 255, 0.08));
}

.mobile-menu__secondary-list.is-nudging {
  transform: translateX(-8px);
}

.mobile-menu__secondary-list.is-switching-out {
  opacity: 0;
  transform: translateX(-26px);
}

.mobile-menu__secondary-list.is-switching-in {
  opacity: 0;
  transform: translateX(34px);
}

.mobile-menu__tertiary-list {
  padding-top: 6px;
  transition:
    opacity 180ms ease,
    transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu__tertiary-list:empty {
  display: none;
}

.mobile-menu__tertiary-list.is-switching-out {
  opacity: 0;
  transform: translateX(-22px);
}

.mobile-menu__tertiary-list.is-switching-in {
  opacity: 0;
  transform: translateX(28px);
}

.mobile-menu__primary-button,
.mobile-menu__secondary-button,
.mobile-menu__tertiary-button {
  appearance: none;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  text-align: left;
  cursor: pointer;
  text-decoration: none;
  font-size: clamp(1.06rem, 1.8vw, 1.4rem);
  font-weight: 500;
  line-height: 1.14;
  text-shadow: 0 1px 8px rgba(7, 18, 36, 0.55);
  transition:
    color 180ms ease,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu__primary-button {
  min-height: 48px;
  padding: 4px 0 10px;
  white-space: nowrap;
}

.mobile-menu__primary-button:not(.has-children) {
  justify-content: flex-start;
}

.mobile-menu__secondary-button {
  min-height: 40px;
  padding: 2px 0;
  font-size: clamp(0.98rem, 1.45vw, 1.16rem);
  align-items: flex-start;
  white-space: normal;
}

.mobile-menu__tertiary-button {
  align-items: flex-start;
  justify-content: flex-start;
  font-size: clamp(1.22rem, 1.78vw, 1.52rem);
  color: #ffffff;
  white-space: normal;
}

.mobile-menu__secondary-title {
  display: inline-flex;
  align-items: center;
}

.mobile-menu__primary-text,
.mobile-menu__secondary-title,
.mobile-menu__tertiary-button span {
  display: inline-flex;
  align-items: center;
}

.mobile-menu__primary-text {
  white-space: nowrap;
}

.mobile-menu__secondary-title,
.mobile-menu__tertiary-button span {
  white-space: normal;
}

.mobile-menu__primary-text {
  min-height: 0;
  padding-bottom: 12px;
  border-bottom: 2px solid transparent;
  transition:
    border-color 180ms ease,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-menu__primary-button.has-children::after,
.mobile-menu__secondary-button.has-children::after {
  content: "›";
  font-size: 1.14em;
  line-height: 1;
  color: currentColor;
  transition:
    color 180ms ease,
    transform 180ms ease;
}

.mobile-menu__primary-button.has-children:hover::after,
.mobile-menu__secondary-button.has-children:hover::after,
.mobile-menu__close:hover,
.mobile-menu__search:hover {
  transform: translateX(4px);
}

.mobile-menu__close:hover {
  transform: scale(1.04);
}

.mobile-menu__close:hover,
.mobile-menu__search:hover,
.mobile-menu__lang:hover {
  color: #ffffff;
}

.mobile-menu__primary-button.is-active .mobile-menu__primary-text {
  border-color: var(--rm-teal);
  transform: translateX(4px);
}

.mobile-menu__primary-button.has-children.is-active::after {
  color: var(--rm-teal);
}

.mobile-menu__secondary-button.is-active {
  color: var(--rm-teal);
  transform: translateX(4px);
}



.mobile-menu__tertiary-eyebrow {
  margin: 0 0 20px;
  color: var(--rm-teal);
  font-size: 0.9rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 600;
}

.mobile-menu__tertiary-links {
  display: grid;
  gap: 16px;
}

.mobile-menu__tertiary-button:hover,
.mobile-menu__tertiary-button.is-active {
  transform: translateX(6px);
  color: #ffffff;
}

.site-main {
  padding: 108px 24px 72px;
  overflow-x: clip;
}

.site-main--flush {
  --page-hero-offset: 116px;
  padding: var(--page-hero-offset) 0 clamp(72px, 9vw, 128px) !important;
}

body.home-mode .site-main {
  width: 100%;
  padding: 0 0 72px;
}

body.page-mode .site-main {
  padding-top: 184px;
}

body.page-mode .site-main.site-main--flush {
  padding-top: var(--page-hero-offset) !important;
}

body.article-page .site-main,
body.article-listing-page .site-main {
  padding: 0;
}

html,
body {
  overflow-x: hidden;
}

.view {
  max-width: 1328px;
  margin: 0 auto;
}

.view--home {
  max-width: none;
}

.view--demo,
.view--page,
.view--page-shell {
  display: grid;
  gap: 24px;
}

.view--home {
  display: grid;
  gap: 0;
  overflow-x: clip;
}

.home-scroll-scene {
  --home-card-progress: 0;
  --home-card-opacity: 0;
  --home-copy-opacity: 1;
  position: relative;
  min-height: 240vh;
  isolation: isolate;
}

.motors-hero {
  position: relative;
  min-height: 100vh;
  min-height: 100svh;
  overflow: hidden;
  border-radius: 0;
  isolation: isolate;
}

@supports (height: 100dvh) {
  .motors-hero {
    min-height: 100dvh;
  }
}

.home-scroll-scene .motors-hero {
  position: sticky;
  top: 0;
  z-index: 1;
  height: 100vh;
  height: 100svh;
}

@supports (height: 100dvh) {
  .home-scroll-scene .motors-hero {
    height: 100dvh;
  }
}

.motors-hero__video-shell {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: hidden;
  border-radius: 0;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.motors-hero__video-shell picture {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.motors-hero__ambient {
  position: absolute;
  inset: 0;
  z-index: 0;
  transition: opacity 700ms ease;
  background: linear-gradient(180deg, #111e32 0%, #0c1728 100%);
}

.motors-hero__ambient > div,
.motors-hero__ambient canvas {
  width: 100% !important;
  height: 100% !important;
  display: block;
}

.motors-hero__video-shell iframe,
.motors-hero__video-shell video,
.motors-hero__video-shell img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: max(100vw, 177.777vh);
  height: max(100vh, 56.25vw);
  border: 0;
  transform: translate(-50%, -50%) scale(1.08);
  pointer-events: none;
  filter: saturate(1.02) contrast(1.03);
  object-fit: cover;
  opacity: 0;
  transition:
    opacity 1200ms ease,
    transform 1600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.motors-hero__video-image {
  will-change: opacity, transform;
}

.motors-hero.is-video-ready .motors-hero__video-shell iframe,
.motors-hero.is-video-ready .motors-hero__video-shell video,
.motors-hero.is-video-ready .motors-hero__video-shell img {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.02);
}

.motors-hero.is-video-ready .motors-hero__ambient {
  opacity: 0.08;
}

.motors-hero__content {
  position: relative;
  z-index: 2;
  min-height: 100%;
  display: flex;
  align-items: flex-end;
  padding: clamp(24px, 3vw, 42px);
}

.motors-hero__copy {
  position: relative;
  display: grid;
  align-items: center;
  max-width: min(33rem, 100%);
  min-height: clamp(240px, 28vw, 330px);
  color: #f5efe5;
  opacity: var(--home-copy-opacity, 1);
  transform: translateY(calc((1 - var(--home-copy-opacity, 1)) * -18px));
  transition:
    opacity 160ms linear,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity, transform;
}

.motors-hero__copy-state {
  grid-area: 1 / 1;
  display: grid;
  align-content: center;
  opacity: 0;
  transform: translateY(18px);
  filter: blur(8px);
  will-change: opacity, transform, filter;
  animation-duration: 10s;
  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
  animation-iteration-count: infinite;
  animation-fill-mode: both;
  animation-play-state: paused;
}

.motors-hero__copy-state--primary {
  animation-duration: 15s;
  animation-name: heroCopySwapPrimary;
}

.motors-hero__copy-state--secondary {
  animation-duration: 15s;
  animation-name: heroCopySwapSecondary;
}

.motors-hero__copy-state--tertiary {
  animation-duration: 15s;
  animation-name: heroCopySwapTertiary;
}

body.home-mode.home-hero-ready .motors-hero__copy-state {
  animation-play-state: running;
}

@keyframes heroCopySwapPrimary {
  0%, 24% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }

  31%, 84% {
    opacity: 0;
    transform: translateY(18px);
    filter: blur(8px);
  }

  91%, 100% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

@keyframes heroCopySwapSecondary {
  0%, 24% {
    opacity: 0;
    transform: translateY(18px);
    filter: blur(8px);
  }

  31%, 54% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }

  61%, 100% {
    opacity: 0;
    transform: translateY(18px);
    filter: blur(8px);
  }
}

@keyframes heroCopySwapTertiary {
  0%, 54% {
    opacity: 0;
    transform: translateY(18px);
    filter: blur(8px);
  }

  61%, 84% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }

  91%, 100% {
    opacity: 0;
    transform: translateY(18px);
    filter: blur(8px);
  }
}

.motors-hero__eyebrow {
  margin: 0 0 16px;
  color: var(--rm-teal);
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.motors-hero__title {
  margin: 0;
  min-height: 2.05em;
  max-width: min(16ch, 100%);
  color: #f5efe5;
  font-size: clamp(3.15rem, 6.4vw, 6.1rem);
  font-weight: 300;
  line-height: 0.9;
  letter-spacing: -0.06em;
  text-wrap: balance;
}

.motors-hero__title-text {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.08em;
  transition:
    opacity 0.45s ease,
    transform 0.45s ease,
    filter 0.45s ease;
  will-change: opacity, transform, filter;
}

.motors-hero__title-text > span {
  display: block;
  white-space: nowrap;
}

.motors-hero__title.is-changing .motors-hero__title-text {
  opacity: 0;
  transform: translateY(0.35em);
  filter: blur(4px);
}

.motors-hero__tagline {
  margin: 16px 0 0;
  max-width: 27rem;
  color: rgba(245, 239, 229, 0.76);
  font-size: clamp(1.02rem, 1.7vw, 1.4rem);
  line-height: 1.35;
  letter-spacing: -0.03em;
}

body.static-image-version.home-mode .site-header:not(.is-compact)::before {
  content: none;
  background: none;
}

body.static-image-version.home-mode .site-header:not(.is-compact) .menu-burger,
body.static-image-version.home-mode .site-header:not(.is-compact) .primary-nav__item,
body.static-image-version.home-mode .site-header:not(.is-compact) .icon-button,
body.static-image-version.home-mode .site-header:not(.is-compact) .lang-button {
  color: inherit;
}

body.static-image-version.home-mode .site-header:not(.is-compact) .primary-nav__item:hover,
body.static-image-version.home-mode .site-header:not(.is-compact) .primary-nav__item.is-open,
body.static-image-version.home-mode .site-header:not(.is-compact) .primary-nav__item.is-active {
  background: transparent;
}

body.static-image-version.home-mode .site-header:not(.is-compact) .lang-button {
  border-color: rgba(28, 53, 94, 0.18);
  background: rgba(255, 255, 255, 0.66);
}

body.static-image-version .motors-hero__video-shell img,
body.static-image-version .motors-hero.is-video-ready .motors-hero__video-shell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body.static-image-version .motors-hero__video-image {
  opacity: 0;
  transform: translate(-50%, -50%) scale(1.045);
  animation-duration: 15s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-fill-mode: both;
  animation-play-state: paused;
  filter: saturate(1.03) contrast(1.02);
}

body.static-image-version .motors-hero__video-image--primary {
  animation-name: heroStaticSwapPrimary;
}

body.static-image-version .motors-hero__video-image--secondary {
  animation-name: heroStaticSwapSecondary;
}

body.static-image-version .motors-hero__video-image--tertiary {
  animation-name: heroStaticSwapTertiary;
}

body.home-mode.home-hero-ready.static-image-version .motors-hero__video-image {
  animation-play-state: running;
}

@keyframes heroStaticSwapPrimary {
  0%, 24% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.02);
  }

  31%, 84% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.045);
  }

  91%, 100% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.02);
  }
}

@keyframes heroStaticSwapSecondary {
  0%, 24% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.045);
  }

  31%, 54% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.02);
  }

  61%, 100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.045);
  }
}

@keyframes heroStaticSwapTertiary {
  0%, 54% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.045);
  }

  61%, 84% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.02);
  }

  91%, 100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.045);
  }
}

body.static-image-version .motors-hero__content {
  align-items: center;
  justify-content: flex-start;
  
  padding-left: max(24px, calc((100% - 1496px) / 2));
  padding-right: clamp(24px, 4vw, 72px);
}

body.static-image-version .motors-hero__copy,
body.static-image-version .motors-hero__title {
  color: var(--rm-navy);
}

body.static-image-version .motors-hero__eyebrow {
  color: var(--rm-teal);
}

body.static-image-version .motors-hero__tagline {
  color: rgba(28, 53, 94, 0.76);
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .motors-hero__video-shell iframe,
  .motors-hero__video-shell video,
  .motors-hero__video-shell img,
  body.static-image-version .motors-hero__video-image,
  .motors-hero__copy-state {
    animation-duration: 15s;
  }

  body.static-image-version .motors-hero__video-image,
  body.static-image-version .motors-hero__video-image--primary,
  body.static-image-version .motors-hero__video-image--secondary,
  body.static-image-version .motors-hero__video-image--tertiary {
    transform: translate(-50%, -50%);
  }

  .motors-hero__copy-state,
  .motors-hero__copy-state--primary,
  .motors-hero__copy-state--secondary,
  .motors-hero__copy-state--tertiary {
    transform: none;
    filter: none;
  }
}



body.redmed-auth-page {
  min-width: 0;
  background:
    radial-gradient(circle at 12% 12%, rgba(9, 171, 186, 0.18), transparent 33rem),
    radial-gradient(circle at 88% 86%, rgba(22, 65, 114, 0.2), transparent 38rem),
    #f2f6fa;
  color: #17365f;
}

.redmed-auth-page .auth-shell {
  min-height: 100svh;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.redmed-auth-page .auth-header {
  width: min(100% - 2rem, 76rem);
  min-height: 5rem;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

.redmed-auth-page .auth-header__brand {
  display: inline-flex;
  align-items: center;
}

.redmed-auth-page .auth-header__brand img {
  display: block;
  width: clamp(9.5rem, 18vw, 12rem);
  height: auto;
}

.redmed-auth-page .auth-header__languages {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: min(20rem, 45vw);
  min-width: 0;
  min-height: 40px;
  padding: 0 14px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  border: 1px solid rgba(23, 54, 95, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 0.5rem 1.5rem rgba(23, 54, 95, 0.07);
}

.redmed-auth-page .auth-header__languages::-webkit-scrollbar {
  display: none;
}

.redmed-auth-page .auth-main {
  box-sizing: border-box;
  width: 100%;
  padding: clamp(1.25rem, 5vh, 4rem) 1rem 3rem;
  display: grid;
  place-items: center;
}

.redmed-auth-page .auth-card {
  box-sizing: border-box;
  width: min(100%, 30rem);
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border: 1px solid rgba(23, 54, 95, 0.1);
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 1.5rem 4.5rem rgba(18, 48, 84, 0.15);
}

.redmed-auth-page .auth-card__eyebrow {
  margin: 0 0 0.65rem;
  color: #079aaa;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.redmed-auth-page .auth-card__title {
  margin: 0 0 1.6rem;
  color: #17365f;
  font-size: clamp(1.65rem, 6vw, 2.25rem);
  line-height: 1.12;
}

.redmed-auth-page .auth-card .messages {
  margin: 0 0 1rem;
  padding: 0.85rem 1rem;
  border: 0;
  border-left: 0.25rem solid #08a7b7;
  border-radius: 0.7rem;
  background: #edf9fa;
  color: #17365f;
  box-shadow: none;
}


.redmed-auth-page #block-redmed-primary-local-tasks {
  display: none;
}

.redmed-auth-page .auth-card form,
.redmed-auth-page .auth-card .form-item {
  width: 100%;
}

.redmed-auth-page .auth-card .form-item {
  margin: 0 0 1.15rem;
}

.redmed-auth-page .auth-card label {
  display: block;
  margin-bottom: 0.45rem;
  color: #29496f;
  font-size: 0.86rem;
  font-weight: 650;
}

.redmed-auth-page .auth-card input[type="text"],
.redmed-auth-page .auth-card input[type="email"],
.redmed-auth-page .auth-card input[type="password"] {
  box-sizing: border-box;
  width: 100%;
  min-height: 3rem;
  padding: 0.7rem 0.9rem;
  border: 1px solid #cbd7e4;
  border-radius: 0.75rem;
  background: #fff;
  color: #17365f;
  font: inherit;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

.redmed-auth-page .auth-card input:focus-visible {
  border-color: #08a7b7;
  outline: 0;
  box-shadow: 0 0 0 0.22rem rgba(8, 167, 183, 0.16);
}

.redmed-auth-page .auth-card .description {
  margin-top: 0.45rem;
  color: #687d98;
  font-size: 0.78rem;
  line-height: 1.5;
}

.redmed-auth-page .auth-card .form-actions {
  margin: 1.5rem 0 0;
}

.redmed-auth-page .auth-card input[type="submit"],
.redmed-auth-page .auth-card button[type="submit"] {
  width: 100%;
  min-height: 3rem;
  padding: 0.75rem 1rem;
  border: 0;
  border-radius: 0.75rem;
  background: #08a7b7;
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 0.75rem 1.75rem rgba(8, 167, 183, 0.24);
}

.redmed-auth-page .auth-card input[type="submit"]:hover,
.redmed-auth-page .auth-card button[type="submit"]:hover {
  background: #078f9d;
}

.redmed-auth-page .auth-card__help {
  display: inline-flex;
  margin-top: 1.25rem;
  color: #17607b;
  font-size: 0.88rem;
  font-weight: 650;
  text-underline-offset: 0.2em;
}

.redmed-auth-page .auth-footer {
  padding: 1rem;
  color: #6f8197;
  font-size: 0.76rem;
  text-align: center;
}

@media (max-width: 30rem) {
  .redmed-auth-page .auth-header {
    width: min(100% - 1.25rem, 76rem);
    min-height: 4.25rem;
  }

  .redmed-auth-page .auth-main {
    padding: 0.75rem 0.75rem 2rem;
    align-items: start;
  }

  .redmed-auth-page .auth-card {
    padding: 1.35rem 1.1rem;
    border-radius: 1.1rem;
  }
}

.home-shell,
.home-expertise__inner {
  width: 100%;
  max-width: var(--home-shell-width);
  margin: 0 auto;
}

.home-expertise__head {
  position: relative;
  z-index: 3;
}

.home-expertise {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(76px, 9vh, 128px) var(--home-page-gutter) clamp(76px, 9vh, 128px);
  color: var(--rm-navy);
  background: linear-gradient(180deg, #ffffff 0%, #f4f8fb 100%);
}


.home-expertise__intro {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 18px;
  justify-items: center;
  margin: 0 auto clamp(44px, 5vw, 72px);
  color: var(--rm-navy);
  text-align: center;
}

.home-expertise__eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-expertise__eyebrow-line {
  width: 34px;
  height: 1px;
  background: rgba(28, 53, 94, 0.22);
}

.home-expertise__eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.home-expertise__title {
  width: min(60vw, 880px);
  max-width: 100%;
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.6rem, 4vw, 4rem);
  font-weight: 300;
  line-height: 0.98;
  letter-spacing: -0.06em;
}

.home-expertise__title em {
  color: var(--rm-teal);
  font-style: italic;
  font-weight: 400;
}

.home-expertise__subtitle {
  max-width: 30ch;
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.15rem, 1.7vw, 1.65rem);
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.home-expertise__summary {
  max-width: 54ch;
  margin: 0;
  color: rgba(28, 53, 94, 0.7);
  font-size: 1rem;
  line-height: 1.72;
}

.home-expertise__cards {
  counter-reset: expertise-card;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 1vw, 18px);
  margin-top: 0;
}

.home-expertise-card {
  counter-increment: expertise-card;
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(18px, 1.5vw, 28px);
  min-height: clamp(276px, 21vw, 336px);
  padding: clamp(20px, 1.6vw, 26px);
  overflow: hidden;
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 250, 253, 0.88));
  box-shadow:
    0 16px 34px rgba(28, 53, 94, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  -webkit-backdrop-filter: blur(14px) saturate(1.08);
  backdrop-filter: blur(14px) saturate(1.08);
  color: var(--rm-navy);
  text-decoration: none;
  transition:
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 220ms ease,
    background-color 260ms ease,
    border-color 260ms ease,
    box-shadow 260ms ease;
}

.home-expertise-card::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  z-index: 0;
  width: 100%;
  height: 4px;
  opacity: 1;
  background: linear-gradient(90deg, var(--rm-teal), var(--rm-navy));
}

.home-expertise-card > * {
  position: relative;
  z-index: 1;
}

.home-expertise-card::after {
  content: "0" counter(expertise-card);
  position: absolute;
  top: clamp(18px, 1.5vw, 24px);
  right: clamp(20px, 1.7vw, 28px);
  z-index: 1;
  color: rgba(28, 53, 94, 0.38);
  font-size: clamp(0.7rem, 0.72vw, 0.82rem);
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1;
  transition:
    color 220ms ease,
    opacity 220ms ease;
}

.home-expertise-card:hover,
.home-expertise-card:focus-visible {
  border-color: rgba(0, 163, 180, 0.3);
  background: rgba(255, 255, 255, 0.98);
  box-shadow:
    0 22px 52px rgba(28, 53, 94, 0.15),
    0 0 0 1px rgba(0, 163, 180, 0.08);
  outline: none;
}

.home-expertise-card:hover::before,
.home-expertise-card:focus-visible::before {
  opacity: 1;
}

.home-expertise-card:hover::after,
.home-expertise-card:focus-visible::after {
  color: rgba(0, 163, 180, 0.8);
}

.home-expertise-card__icon {
  width: clamp(76px, 5.8vw, 102px);
  height: clamp(76px, 5.8vw, 102px);
  margin-top: clamp(10px, 0.8vw, 18px);
  color: var(--rm-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgba(0, 163, 180, 0.1), rgba(28, 53, 94, 0.06));
  transition:
    background-color 220ms ease,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card__icon-art {
  width: 100%;
  height: 100%;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.home-expertise-card__stroke {
  stroke: var(--rm-navy);
  vector-effect: non-scaling-stroke;
  transform-box: fill-box;
  transform-origin: center;
}

.home-expertise-card__stroke--accent {
  stroke: var(--rm-teal);
}

.home-expertise-card__body {
  display: grid;
  align-content: start;
  gap: 12px;
}

.home-expertise-card h3 {
  max-width: 100%;
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.16rem, 1.18vw, 1.34rem);
  font-weight: 500;
  line-height: 1.14;
  letter-spacing: 0;
  overflow-wrap: break-word;
  transition: color 220ms ease;
}

.home-expertise-card:nth-child(4) h3 {
  font-size: clamp(1.02rem, 1.14vw, 1.34rem);
  line-height: 1.08;
}

.home-expertise-card:nth-child(4) p {
  font-size: clamp(0.9rem, 0.95vw, 1.05rem);
}

.home-expertise-card p {
  max-height: none;
  margin: 0;
  overflow: visible;
  color: rgba(28, 53, 94, 0.66);
  font-size: clamp(0.88rem, 0.88vw, 0.98rem);
  line-height: 1.48;
  letter-spacing: 0;
  opacity: 1;
  transform: none;
  transition: color 220ms ease;
}

.home-expertise-card__cta {
  align-self: end;
  display: inline-flex;
  width: max-content;
  margin-top: auto;
  padding-top: 8px;
  color: var(--rm-teal);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1;
  text-transform: uppercase;
}

.home-expertise-card:hover .home-expertise-card__icon,
.home-expertise-card:focus-visible .home-expertise-card__icon {
  transform: translateY(-3px);
}

.home-expertise-card:hover h3,
.home-expertise-card:focus-visible h3 {
  color: var(--rm-teal);
}

.home-expertise-card:hover p,
.home-expertise-card:focus-visible p {
  color: rgba(28, 53, 94, 0.78);
}

.home-expertise-card__arrow {
  position: absolute;
  right: clamp(20px, 1.8vw, 30px);
  bottom: clamp(18px, 1.5vw, 26px);
  color: var(--rm-teal);
  font-size: 1.35rem;
  opacity: 0.82;
  transform: translateX(-8px);
  transition:
    opacity 220ms ease,
    transform 240ms ease;
}

.home-expertise-card:hover .home-expertise-card__arrow,
.home-expertise-card:focus-visible .home-expertise-card__arrow {
  opacity: 1;
  transform: translateX(4px);
}

.home-v2-flow .home-expertise {
  position: relative;
  top: auto;
  z-index: 1;
  display: block;
  min-height: 0;
  margin-top: 0;
  padding: clamp(42px, 4.75vw, 71px) var(--home-page-gutter) clamp(76px, 8.5vw, 126px);
  opacity: 1;
  pointer-events: auto;
  background: linear-gradient(180deg, #ffffff 0%, #f4f8fb 100%);
  transform: none;
}

.home-v2-flow .home-expertise__cards {
  position: relative;
  z-index: 2;
  margin-top: 0;
  overflow: visible;
  transform: none;
}

.home-v2-flow .home-expertise-card {
  min-height: clamp(276px, 21vw, 336px);
  opacity: 0;
  transform: translateY(96px);
  transform-origin: center bottom;
  transition:
    transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 320ms ease,
    background-color 260ms ease,
    border-color 260ms ease,
    box-shadow 260ms ease;
}

.home-v2-flow .home-expertise-card__icon {
  width: clamp(76px, 5.8vw, 102px);
  height: clamp(76px, 5.8vw, 102px);
  margin-top: clamp(10px, 0.8vw, 18px);
}

@keyframes homeCardRise {
  from {
    opacity: 0;
    transform: translateY(96px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.home-v2-flow .home-expertise.is-visible .home-expertise-card {
  opacity: 1;
  transform: translateY(0);
  animation: homeCardRise 900ms cubic-bezier(0.22, 1, 0.36, 1) backwards;
}

.home-v2-flow .home-expertise.is-visible .home-expertise-card:nth-child(2) {
  animation-delay: 120ms;
}

.home-v2-flow .home-expertise.is-visible .home-expertise-card:nth-child(3) {
  animation-delay: 240ms;
}

.home-v2-flow .home-expertise.is-visible .home-expertise-card:nth-child(4) {
  animation-delay: 360ms;
}

.home-v2-flow .home-expertise.is-visible .home-expertise-card:nth-child(5) {
  animation-delay: 480ms;
}

.home-v2-flow .home-expertise.is-visible .home-expertise-card:hover,
.home-v2-flow .home-expertise.is-visible .home-expertise-card:focus-visible {
  z-index: 8;
  transform: translateY(0);
  transition-delay: 0ms;
}

.home-v2-flow .home-expertise-card p {
  font-size: clamp(0.86rem, 0.92vw, 1rem);
  line-height: 1.46;
}

.home-v2-flow .home-expertise-card:hover p,
.home-v2-flow .home-expertise-card:focus-visible p {
}

.home-expertise-card__briefcase-handle {
  animation: cardBriefcaseHandle 3.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__briefcase-body {
  animation: cardBriefcaseBody 3.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__briefcase-lock {
  animation: cardBriefcaseLock 3.2s ease infinite;
}

.home-expertise-card__chart-line,
.home-expertise-card__shield-check {
  stroke-dasharray: 40;
  animation: cardStrokeLoop 3.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__chart-arrow {
  animation: cardArrowKick 3.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__chart-bar--one {
  animation: cardChartBarOne 3.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__chart-bar--two {
  animation: cardChartBarTwo 3.2s cubic-bezier(0.22, 1, 0.36, 1) infinite 120ms;
}

.home-expertise-card__chart-bar--three {
  animation: cardChartBarThree 3.2s cubic-bezier(0.22, 1, 0.36, 1) infinite 240ms;
}

.home-expertise-card__layer--top {
  animation: cardLayerTop 3.4s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__layer--middle {
  animation: cardLayerMiddle 3.4s cubic-bezier(0.22, 1, 0.36, 1) infinite 100ms;
}

.home-expertise-card__layer--bottom {
  animation: cardLayerBottom 3.4s cubic-bezier(0.22, 1, 0.36, 1) infinite 200ms;
}

.home-expertise-card__shield-outline {
  animation: cardShieldFloat 3.6s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__building-shell {
  animation: cardBuildingLift 3.4s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__building-door {
  animation: cardDoorOpen 3.4s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card__building-window--one {
  animation: cardWindowPulse 2.8s ease infinite 40ms;
}

.home-expertise-card__building-window--two {
  animation: cardWindowPulse 2.8s ease infinite 220ms;
}

.home-expertise-card__building-window--three {
  animation: cardWindowPulse 2.8s ease infinite 400ms;
}

.home-expertise-card__building-window--four {
  animation: cardWindowPulse 2.8s ease infinite 580ms;
}

.home-expertise-card:hover .home-expertise-card__briefcase-handle,
.home-expertise-card:focus-visible .home-expertise-card__briefcase-handle {
  animation: cardBriefcaseHandle 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__briefcase-body,
.home-expertise-card:focus-visible .home-expertise-card__briefcase-body {
  animation: cardBriefcaseBody 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__briefcase-lock,
.home-expertise-card:focus-visible .home-expertise-card__briefcase-lock {
  animation: cardBriefcaseLock 620ms ease;
}

.home-expertise-card:hover .home-expertise-card__chart-line,
.home-expertise-card:focus-visible .home-expertise-card__chart-line,
.home-expertise-card:hover .home-expertise-card__shield-check,
.home-expertise-card:focus-visible .home-expertise-card__shield-check {
  stroke-dasharray: 40;
  stroke-dashoffset: 40;
  animation: cardStrokeDraw 760ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.home-expertise-card:hover .home-expertise-card__chart-arrow,
.home-expertise-card:focus-visible .home-expertise-card__chart-arrow {
  animation: cardArrowKick 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__chart-bar--one,
.home-expertise-card:focus-visible .home-expertise-card__chart-bar--one {
  animation: cardChartBarOne 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__chart-bar--two,
.home-expertise-card:focus-visible .home-expertise-card__chart-bar--two {
  animation: cardChartBarTwo 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__chart-bar--three,
.home-expertise-card:focus-visible .home-expertise-card__chart-bar--three {
  animation: cardChartBarThree 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__layer--top,
.home-expertise-card:focus-visible .home-expertise-card__layer--top {
  animation: cardLayerTop 720ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__layer--middle,
.home-expertise-card:focus-visible .home-expertise-card__layer--middle {
  animation: cardLayerMiddle 720ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__layer--bottom,
.home-expertise-card:focus-visible .home-expertise-card__layer--bottom {
  animation: cardLayerBottom 720ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__shield-outline,
.home-expertise-card:focus-visible .home-expertise-card__shield-outline {
  animation: cardShieldFloat 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__building-shell,
.home-expertise-card:focus-visible .home-expertise-card__building-shell {
  animation: cardBuildingLift 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__building-door,
.home-expertise-card:focus-visible .home-expertise-card__building-door {
  animation: cardDoorOpen 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-expertise-card:hover .home-expertise-card__building-window--one,
.home-expertise-card:focus-visible .home-expertise-card__building-window--one {
  animation: cardWindowPulse 540ms ease 40ms;
}

.home-expertise-card:hover .home-expertise-card__building-window--two,
.home-expertise-card:focus-visible .home-expertise-card__building-window--two {
  animation: cardWindowPulse 540ms ease 120ms;
}

.home-expertise-card:hover .home-expertise-card__building-window--three,
.home-expertise-card:focus-visible .home-expertise-card__building-window--three {
  animation: cardWindowPulse 540ms ease 200ms;
}

.home-expertise-card:hover .home-expertise-card__building-window--four,
.home-expertise-card:focus-visible .home-expertise-card__building-window--four {
  animation: cardWindowPulse 540ms ease 280ms;
}

.home-expertise-card:hover .home-expertise-card__briefcase-handle,
.home-expertise-card:focus-visible .home-expertise-card__briefcase-handle {
  animation: cardBriefcaseHandle 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__briefcase-body,
.home-expertise-card:focus-visible .home-expertise-card__briefcase-body {
  animation: cardBriefcaseBody 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__briefcase-lock,
.home-expertise-card:focus-visible .home-expertise-card__briefcase-lock {
  animation: cardBriefcaseLock 2.2s ease infinite;
}

.home-expertise-card:hover .home-expertise-card__chart-line,
.home-expertise-card:focus-visible .home-expertise-card__chart-line,
.home-expertise-card:hover .home-expertise-card__shield-check,
.home-expertise-card:focus-visible .home-expertise-card__shield-check {
  animation: cardStrokeLoop 2.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__chart-arrow,
.home-expertise-card:focus-visible .home-expertise-card__chart-arrow {
  animation: cardArrowKick 2.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__chart-bar--one,
.home-expertise-card:focus-visible .home-expertise-card__chart-bar--one {
  animation: cardChartBarOne 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__chart-bar--two,
.home-expertise-card:focus-visible .home-expertise-card__chart-bar--two {
  animation: cardChartBarTwo 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite 120ms;
}

.home-expertise-card:hover .home-expertise-card__chart-bar--three,
.home-expertise-card:focus-visible .home-expertise-card__chart-bar--three {
  animation: cardChartBarThree 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite 240ms;
}

.home-expertise-card:hover .home-expertise-card__layer--top,
.home-expertise-card:focus-visible .home-expertise-card__layer--top {
  animation: cardLayerTop 2.5s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__layer--middle,
.home-expertise-card:focus-visible .home-expertise-card__layer--middle {
  animation: cardLayerMiddle 2.5s cubic-bezier(0.22, 1, 0.36, 1) infinite 100ms;
}

.home-expertise-card:hover .home-expertise-card__layer--bottom,
.home-expertise-card:focus-visible .home-expertise-card__layer--bottom {
  animation: cardLayerBottom 2.5s cubic-bezier(0.22, 1, 0.36, 1) infinite 200ms;
}

.home-expertise-card:hover .home-expertise-card__shield-outline,
.home-expertise-card:focus-visible .home-expertise-card__shield-outline {
  animation: cardShieldFloat 2.7s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__building-shell,
.home-expertise-card:focus-visible .home-expertise-card__building-shell {
  animation: cardBuildingLift 2.5s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__building-door,
.home-expertise-card:focus-visible .home-expertise-card__building-door {
  animation: cardDoorOpen 2.5s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.home-expertise-card:hover .home-expertise-card__building-window--one,
.home-expertise-card:focus-visible .home-expertise-card__building-window--one {
  animation: cardWindowPulse 2.1s ease infinite 40ms;
}

.home-expertise-card:hover .home-expertise-card__building-window--two,
.home-expertise-card:focus-visible .home-expertise-card__building-window--two {
  animation: cardWindowPulse 2.1s ease infinite 220ms;
}

.home-expertise-card:hover .home-expertise-card__building-window--three,
.home-expertise-card:focus-visible .home-expertise-card__building-window--three {
  animation: cardWindowPulse 2.1s ease infinite 400ms;
}

.home-expertise-card:hover .home-expertise-card__building-window--four,
.home-expertise-card:focus-visible .home-expertise-card__building-window--four {
  animation: cardWindowPulse 2.1s ease infinite 580ms;
}

@keyframes cardBriefcaseHandle {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-3px);
  }
}

@keyframes cardBriefcaseBody {
  0%,
  100% {
    transform: translateY(0);
  }

  45% {
    transform: translateY(2px);
  }
}

@keyframes cardBriefcaseLock {
  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.12);
  }
}

@keyframes cardStrokeDraw {
  0% {
    stroke-dashoffset: 40;
  }

  100% {
    stroke-dashoffset: 0;
  }
}

@keyframes cardStrokeLoop {
  0% {
    opacity: 0.45;
    stroke-dashoffset: 40;
  }

  36%,
  74% {
    opacity: 1;
    stroke-dashoffset: 0;
  }

  100% {
    opacity: 0.45;
    stroke-dashoffset: -40;
  }
}

@keyframes cardArrowKick {
  0%,
  100% {
    transform: translate(0, 0);
  }

  45% {
    transform: translate(1px, -2px);
  }
}

@keyframes cardChartBarOne {
  0%,
  100% {
    transform: translateY(0);
  }

  40% {
    transform: translateY(-3px);
  }
}

@keyframes cardChartBarTwo {
  0%,
  100% {
    transform: translateY(0);
  }

  45% {
    transform: translateY(-5px);
  }
}

@keyframes cardChartBarThree {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-7px);
  }
}

@keyframes cardLayerTop {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

@keyframes cardLayerMiddle {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-1px);
  }
}

@keyframes cardLayerBottom {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(2px);
  }
}

@keyframes cardShieldFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

@keyframes cardBuildingLift {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-3px);
  }
}

@keyframes cardDoorOpen {
  0%,
  100% {
    transform: scaleX(1);
  }

  50% {
    transform: scaleX(0.76);
  }
}

@keyframes cardWindowPulse {
  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.35;
  }
}

.home-scroll-outro {
  min-height: clamp(76px, 8vw, 124px);
  background: transparent;
}

.home-v2-flow {
  position: relative;
  min-width: 0;
  min-height: 100vh;
  overflow: visible;
  background: transparent;
}

.home-v2-flow .motors-hero {
  position: relative;
  top: auto;
  z-index: 1;
  height: 100vh;
  height: 100svh;
}

@supports (height: 100dvh) {
  .home-v2-flow .motors-hero {
    height: 100dvh;
  }
}

.home-v2-flow .motors-hero__title {
  font-size: clamp(2.7rem, 5vw, 5rem);
}


.home-v2-flow .motors-hero__video-shell::after {
  display: none;
}

.home-v2-flow .home-scroll-outro {
  min-height: clamp(76px, 8vw, 124px);
  background: transparent;
}

.demo-stage,
.page-shell,
.page-pane {
  border-radius: 32px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: var(--rm-shadow);
  backdrop-filter: blur(20px);
}

.demo-stage {
  min-height: calc(100vh - 166px);
  display: grid;
  align-items: end;
  padding: clamp(28px, 4vw, 52px);
  background:
    radial-gradient(circle at 16% 24%, rgba(0, 163, 180, 0.12), transparent 24%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(248, 244, 238, 0.82));
}

.demo-stage__copy {
  max-width: 720px;
}

.demo-stage__eyebrow,
.page-pane__eyebrow {
  margin: 0 0 16px;
  color: var(--rm-navy);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.76rem;
  font-weight: 600;
}

.demo-stage__title {
  margin: 0;
  max-width: 8ch;
  color: var(--rm-ink);
  font-size: clamp(3rem, 7vw, 6.2rem);
  line-height: 0.9;
  letter-spacing: -0.07em;
  font-weight: 600;
}

.demo-stage__text {
  margin: 22px 0 0;
  max-width: 620px;
  color: rgba(29, 29, 27, 0.62);
  font-size: 1.06rem;
  line-height: 1.7;
}

.demo-scroll,
.page-scroll {
  display: grid;
  gap: 18px;
}

.demo-scroll {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.demo-scroll__card,
.page-scroll__panel {
  min-height: 220px;
  border-radius: 28px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.54)),
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.08), transparent 34%);
  box-shadow: var(--rm-shadow);
}

.demo-scroll__card--wide,
.page-scroll__panel--wide {
  min-height: 280px;
}

.page-shell {
  overflow: hidden;
}

.page-shell__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 92px;
  padding: 0 28px;
}

.page-shell__identity {
  display: inline-flex;
  align-items: center;
  gap: 18px;
}

.page-shell__mark {
  width: 30px;
  height: auto;
  flex: 0 0 auto;
}

.page-shell__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.55rem, 2vw, 1.9rem);
  letter-spacing: -0.04em;
  font-weight: 500;
}

.page-shell__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 16px 24px 18px;
  border-top: 1px solid rgba(28, 53, 94, 0.08);
}

.page-shell__tab {
  appearance: none;
  min-height: 34px;
  padding: 0 12px;
  border: 0;
  background: transparent;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.92rem;
  font-weight: 500;
  cursor: pointer;
  position: relative;
  transition:
    color 180ms ease,
    transform 180ms ease;
}

.page-shell__tab::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: -4px;
  height: 3px;
  border-radius: 999px;
  background: var(--rm-teal);
  opacity: 0;
  transform: scaleX(0.5);
  transition:
    opacity 180ms ease,
    transform 180ms ease;
}

.page-shell__tab:hover,
.page-shell__tab.is-active {
  color: var(--rm-teal);
}

.page-shell__tab.is-active::after {
  opacity: 1;
  transform: scaleX(1);
}

.page-pane {
  padding: clamp(26px, 4vw, 42px);
}

.site-main--flush > .view--page,
.view--page-hero {
  max-width: none;
  margin: 0;
  gap: 0;
}

.page-video-hero {
  position: relative;
  isolation: isolate;
  margin-top: -1px;
  min-height: calc(100svh - var(--page-hero-offset, 184px));
  height: calc(100svh - var(--page-hero-offset, 184px));
  display: grid;
  place-items: center;
  overflow: hidden;
  padding: clamp(32px, 4vw, 52px) 24px;
  text-align: center;
}

@supports (height: 100dvh) {
  .page-video-hero {
    min-height: calc(100dvh - var(--page-hero-offset, 184px));
    height: calc(100dvh - var(--page-hero-offset, 184px));
  }
}


body.our-group-page .page-video-hero {
  min-height: clamp(260px, 38vh, 400px);
  height: auto;
}

body.our-group-page .cf-hero__layout--single {
  width: min(1280px, calc(100% - 88px));
}

.page-video-hero__media,
.page-video-hero__media video,
.page-video-hero__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.page-video-hero__media {
  background: #0d213d;
}

.page-video-hero__media video,
.page-video-hero__media img {
  object-fit: cover;
  filter: saturate(1.04) contrast(1.04) brightness(0.7);
}

.page-video-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(8, 22, 42, 0.3), rgba(8, 22, 42, 0.42)),
    linear-gradient(90deg, rgba(9, 24, 45, 0.16), rgba(9, 24, 45, 0.08));
  pointer-events: none;
}

.page-video-hero__content {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 16px;
  justify-items: center;
  width: min(100%, 820px);
}

.page-video-hero__eyebrow {
  margin: 0;
  color: rgba(255, 255, 255, 0.84);
  text-transform: uppercase;
  letter-spacing: 0.28em;
  font-size: 0.8rem;
  font-weight: 600;
}

.page-video-hero__title {
  margin: 0;
  max-width: 12ch;
  color: #ffffff;
  font-size: clamp(2.9rem, 7vw, 6rem);
  line-height: 0.92;
  letter-spacing: -0.06em;
  font-weight: 500;
}

.page-video-hero__text {
  margin: 0;
  max-width: 44ch;
  color: rgba(255, 255, 255, 0.72);
  font-size: clamp(0.98rem, 1.2vw, 1.08rem);
  line-height: 1.7;
}

.page-pane__intro {
  max-width: 860px;
}

.page-pane__title {
  margin: 0;
  max-width: 12ch;
  color: var(--rm-ink);
  font-size: clamp(2.4rem, 5vw, 4.6rem);
  line-height: 0.94;
  letter-spacing: -0.06em;
  font-weight: 500;
}

.page-pane__title span {
  color: var(--rm-teal);
}

.page-pane__text {
  margin: 18px 0 0;
  max-width: 720px;
  color: rgba(29, 29, 27, 0.64);
  font-size: 1.04rem;
  line-height: 1.7;
}

.page-pane__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
  gap: 18px;
  margin-top: 26px;
}

.page-pane__card {
  border-radius: 24px;
  padding: 24px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(28, 53, 94, 0.08);
}

.page-pane__card-title {
  margin: 0;
  color: var(--rm-ink);
  font-size: 1.22rem;
  letter-spacing: -0.03em;
  font-weight: 500;
}

.page-pane__list {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.page-pane__list li {
  display: flex;
  gap: 12px;
  color: rgba(29, 29, 27, 0.68);
  line-height: 1.6;
}

.page-pane__list li::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-top: 0.65em;
  border-radius: 999px;
  background: var(--rm-teal);
  flex: 0 0 auto;
}

.hero {
  position: relative;
  overflow: hidden;
  border-radius: 36px;
  padding: clamp(34px, 4vw, 48px);
  background:
    radial-gradient(circle at 12% 16%, rgba(0, 163, 184, 0.12), transparent 30%),
    radial-gradient(circle at 88% 26%, rgba(28, 53, 94, 0.08), transparent 28%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 244, 238, 0.92));
  box-shadow: var(--rm-shadow);
}

.hero--intro::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(110deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.46) 34%, rgba(255, 255, 255, 0) 58%),
    radial-gradient(circle at 20% 22%, rgba(255, 255, 255, 0.48), transparent 34%);
  pointer-events: none;
  z-index: 0;
}

.view--shell {
  display: grid;
  gap: 26px;
}

.shell-stage {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(320px, 0.9fr);
  gap: clamp(22px, 3vw, 42px);
  align-items: center;
  min-height: calc(100vh - 160px);
  border-radius: 36px;
  padding: clamp(30px, 4vw, 52px);
  background:
    radial-gradient(circle at 14% 18%, rgba(0, 163, 180, 0.08), transparent 30%),
    radial-gradient(circle at 88% 28%, rgba(28, 53, 94, 0.08), transparent 26%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 244, 238, 0.9));
  box-shadow: var(--rm-shadow);
}

.shell-stage__copy {
  max-width: 560px;
}

.shell-stage__eyebrow {
  margin: 0 0 18px;
  color: var(--rm-navy);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 0.76rem;
  font-weight: 600;
}

.shell-stage__title {
  margin: 0;
  max-width: 9ch;
  color: var(--rm-ink);
  font-size: clamp(3.2rem, 6vw, 5.6rem);
  line-height: 0.94;
  letter-spacing: -0.06em;
  font-weight: 600;
}

.shell-stage__text {
  margin: 22px 0 0;
  max-width: 620px;
  color: rgba(29, 29, 27, 0.64);
  font-size: 1.08rem;
  line-height: 1.7;
}

.shell-stage__preview {
  display: flex;
  justify-content: flex-end;
}

.shell-stage__preview-card {
  width: min(100%, 640px);
  padding: 18px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid rgba(28, 53, 94, 0.08);
  box-shadow: 0 24px 56px rgba(17, 29, 51, 0.1);
}

.shell-stage__preview-card img {
  width: 100%;
  border-radius: 24px;
}

.shell-scroll {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.shell-scroll__card {
  min-height: 220px;
  border-radius: 28px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.58)),
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.07), transparent 32%);
  box-shadow: var(--rm-shadow);
}

.shell-scroll__card--wide {
  min-height: 280px;
}

.hero__shape {
  position: absolute;
  border-radius: 999px;
  filter: blur(10px);
  pointer-events: none;
}

.hero__shape--primary {
  right: -10%;
  top: 10%;
  width: min(42vw, 620px);
  aspect-ratio: 0.86;
  border-radius: 53% 47% 46% 54% / 36% 54% 46% 64%;
  background:
    radial-gradient(circle at 24% 28%, rgba(255, 255, 255, 0.85), transparent 18%),
    linear-gradient(160deg, rgba(0, 163, 180, 0.74) 0%, rgba(49, 85, 177, 0.84) 56%, rgba(233, 221, 244, 0.9) 100%);
  opacity: 0.92;
}

.hero__shape--secondary {
  left: -8%;
  bottom: 12%;
  width: min(26vw, 300px);
  aspect-ratio: 1;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.7), rgba(0, 163, 180, 0.12) 54%, transparent 72%);
  opacity: 0.88;
}

.hero__grid,
.hero__content,
.hero__stage {
  position: relative;
  z-index: 1;
}

body.site-intro .site-header__shell {
  opacity: 1;
  transform: none;
}

body.site-intro.site-intro-ready .site-header__shell {
  opacity: 1;
  transform: none;
}

body.site-intro .brand-link__wordmark {
  opacity: 1;
  transform: translateY(-50%);
}

body.site-intro.site-intro-ready .brand-link__wordmark {
  opacity: 1;
  transform: translateY(-50%);
}

body.site-intro .hero--intro {
  transform: translateY(26px) scale(0.985);
  box-shadow: 0 28px 72px rgba(17, 29, 51, 0.04);
}

body.site-intro.site-intro-ready .hero--intro {
  transform: none;
  box-shadow: var(--rm-shadow);
  transition:
    transform 880ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 880ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.site-intro .hero--intro::before {
  clip-path: inset(0 100% 0 0 round 36px);
}

body.site-intro.site-intro-ready .hero--intro::before {
  clip-path: inset(0 0 0 0 round 36px);
  transition: clip-path 940ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.site-intro .hero__shape--primary {
  transform: translateX(74px) scale(0.88);
  opacity: 0.3;
}

body.site-intro.site-intro-ready .hero__shape--primary {
  transform: none;
  opacity: 0.92;
  transition:
    transform 1.05s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 1.05s cubic-bezier(0.22, 1, 0.36, 1);
}

body.site-intro .hero__shape--secondary {
  transform: translateY(48px) scale(0.82);
  opacity: 0;
}

body.site-intro.site-intro-ready .hero__shape--secondary {
  transform: none;
  opacity: 0.88;
  transition:
    transform 940ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 940ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.site-intro .hero__stage {
  opacity: 0;
  transform: translateX(46px) rotate(2deg);
}

body.site-intro.site-intro-ready .hero__stage {
  opacity: 1;
  transform: none;
  transition:
    opacity 720ms cubic-bezier(0.22, 1, 0.36, 1) 180ms,
    transform 820ms cubic-bezier(0.22, 1, 0.36, 1) 180ms;
}

.hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.85fr);
  gap: clamp(28px, 4vw, 52px);
  align-items: center;
}

.hero__content {
  max-width: 720px;
}

.hero__pills,
.page-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.hero__pills {
  margin-bottom: 22px;
}

.hero__eyebrow {
  margin: 0 0 18px;
  color: var(--rm-navy);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.78rem;
  font-weight: 600;
}

.hero__title {
  margin: 0;
  max-width: 10.2ch;
  color: var(--rm-ink);
  font-size: clamp(3.5rem, 6.3vw, 6.25rem);
  line-height: 0.9;
  letter-spacing: -0.05em;
  font-weight: 600;
}

.page-hero__title {
  margin: 0;
  max-width: 11ch;
  color: var(--rm-ink);
  font-size: clamp(3.1rem, 6vw, 5.8rem);
  line-height: 0.94;
  letter-spacing: -0.05em;
  font-weight: 500;
}

.hero__title span,
.page-hero__title span {
  color: var(--rm-teal);
}

.hero__text,
.page-hero__text,
.section-copy,
.card-copy {
  margin: 20px 0 0;
  max-width: 700px;
  color: rgba(29, 29, 27, 0.62);
  font-size: 1.14rem;
  line-height: 1.7;
}

.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.hero__audience {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.hero__audience-chip {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.64);
  border: 1px solid rgba(28, 53, 94, 0.08);
  color: var(--rm-navy);
  font-size: 0.86rem;
  font-weight: 500;
}

.hero__metrics-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 24px;
}

.hero__metric {
  padding: 16px 16px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(28, 53, 94, 0.08);
  box-shadow: 0 10px 26px rgba(17, 29, 51, 0.05);
}

.hero__metric strong {
  display: block;
  color: var(--rm-navy);
  font-size: 1.7rem;
  line-height: 1;
  letter-spacing: -0.04em;
  font-weight: 600;
}

.hero__metric span {
  display: block;
  margin-top: 10px;
  color: rgba(29, 29, 27, 0.62);
  font-size: 0.88rem;
  line-height: 1.45;
}

.hero-button {
  appearance: none;
  min-height: 46px;
  padding: 0 20px;
  border-radius: 12px;
  border: 1px solid transparent;
  cursor: pointer;
  font-size: 0.96rem;
  font-weight: 500;
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    background-color 180ms ease;
}

.hero-button:hover {
  transform: translateY(-1px);
}

.hero-button--primary {
  background: var(--rm-ink);
  color: #fff;
  box-shadow: 0 14px 30px rgba(17, 29, 51, 0.16);
}

.hero-button--secondary {
  background: rgba(255, 255, 255, 0.88);
  border-color: rgba(28, 53, 94, 0.12);
  color: var(--rm-navy);
}

.hero__stage {
  position: relative;
  min-height: 680px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero__stage-card {
  position: absolute;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 28px 60px rgba(17, 29, 51, 0.12);
  backdrop-filter: blur(18px);
}

.hero__stage-card--main {
  position: relative;
  width: min(100%, 620px);
  padding: 18px;
  border-radius: 32px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 0.8));
  transform: rotate(-3deg);
  animation: heroFloatMain 9s ease-in-out infinite;
}

.hero__stage-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
  color: rgba(28, 53, 94, 0.66);
  font-size: 0.78rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
}

.hero__stage-card--expertise,
.hero__stage-card--values {
  width: min(270px, 46%);
  padding: 18px 18px 16px;
  border-radius: 24px;
  animation: heroFloatCard 8s ease-in-out infinite;
}

.hero__stage-card--expertise {
  left: -4%;
  top: 12%;
  animation-delay: 400ms;
}

.hero__stage-card--values {
  right: -2%;
  bottom: 9%;
  animation-delay: 1200ms;
}

.hero__stage-label {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.08);
  color: var(--rm-navy);
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 600;
}

.hero__screen-card {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 24px 60px rgba(17, 29, 51, 0.12);
}

.hero__screen-card img {
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: center top;
}

.hero__screen-caption {
  position: absolute;
  left: 18px;
  bottom: 18px;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--rm-navy);
  font-size: 0.9rem;
  font-weight: 500;
}

.hero__expertise-list {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.hero__expertise-item {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.7);
  color: var(--rm-ink);
  font-size: 0.92rem;
  font-weight: 500;
}

.hero__stage-quote {
  margin: 14px 0 0;
  color: rgba(29, 29, 27, 0.72);
  font-size: 1rem;
  line-height: 1.6;
}

.hero__marquee {
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin-top: 28px;
  padding: 16px 0 2px;
  border-top: 1px solid rgba(28, 53, 94, 0.08);
}

.hero__marquee-track {
  display: flex;
  align-items: center;
  gap: 14px;
  width: max-content;
  animation: heroMarquee 28s linear infinite;
}

.hero__marquee-item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 36px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.62);
  border: 1px solid rgba(28, 53, 94, 0.08);
  color: var(--rm-navy);
  font-size: 0.9rem;
  font-weight: 500;
}

.hero__marquee-dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--rm-teal);
  flex: 0 0 auto;
}

[data-reveal="true"] {
  opacity: 0;
  transform: translateY(28px);
  animation: heroReveal 880ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: var(--delay, 0ms);
}

body.site-intro [data-reveal="true"] {
  opacity: 0;
  transform: translateY(42px);
  animation: none;
}

body.site-intro.site-intro-ready [data-reveal="true"] {
  animation: heroReveal 880ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: calc(var(--delay, 0ms) + 120ms);
}

body.site-intro-done [data-reveal="true"] {
  opacity: 1;
  transform: none;
  animation: none;
}

@keyframes heroReveal {
  from {
    opacity: 0;
    transform: translateY(28px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes homeHeroFadeIn {
  0% {
    opacity: 0;
  }

  40% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes homeHeroOverlayIn {
  from {
    opacity: 0;
    filter: blur(8px);
  }

  to {
    opacity: 1;
    filter: blur(0);
  }
}

@keyframes homeHeroPhraseFadeIn {
  from {
    opacity: 0;
    filter: blur(8px);
  }

  to {
    opacity: 1;
    filter: blur(0);
  }
}

@keyframes homeStoryRiseIn {
  from {
    opacity: 0;
    filter: blur(8px);
    transform: translateY(90px);
  }

  to {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }
}

@keyframes homeHeaderDrop {
  0% {
    opacity: 0;
    transform: translateY(-120%);
  }

  68% {
    opacity: 1;
    transform: translateY(8px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes introLogoPiece {
  from {
    opacity: 0;
    filter: blur(8px);
    transform: translateY(22px) scale(0.985);
  }

  to {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0) scale(1);
  }
}

@keyframes introLogoFull {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes introWordmarkOut {
  from {
    opacity: 1;
    transform: none;
  }

  to {
    opacity: 0;
    transform: translateY(-24px) scale(0.96);
  }
}

@keyframes introOverlayOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes homeHeroFadeZoomOut {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.1);
  }

  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}

@keyframes heroFloatMain {
  0%,
  100% {
    transform: rotate(-3deg) translateY(0);
  }

  50% {
    transform: rotate(-2deg) translateY(-10px);
  }
}

@keyframes heroFloatCard {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-12px);
  }
}

@keyframes heroMarquee {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(calc(-50% - 7px));
  }
}

.section {
  margin-top: 28px;
  border-radius: 30px;
  padding: 32px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: var(--rm-shadow);
}

.section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}

.section-title {
  margin: 0;
  color: var(--rm-ink);
  font-size: clamp(2rem, 3vw, 3rem);
  letter-spacing: -0.04em;
  font-weight: 500;
}

.cards-grid,
.metrics-grid,
.page-grid {
  display: grid;
  gap: 18px;
}

.cards-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 24px;
}

.metrics-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 24px;
}

.page-grid {
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  margin-top: 28px;
}

.card,
.metric-card,
.page-card {
  border-radius: 24px;
  padding: 22px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(28, 53, 94, 0.08);
}

.card-title,
.page-card__title {
  margin: 0;
  color: var(--rm-ink);
  font-size: 1.3rem;
  letter-spacing: -0.03em;
  font-weight: 500;
}

.card-copy {
  font-size: 1rem;
}

.metric-card strong {
  display: block;
  color: var(--rm-navy);
  font-size: 2rem;
  line-height: 1;
  letter-spacing: -0.04em;
  font-weight: 600;
}

.metric-card span {
  display: block;
  margin-top: 10px;
  color: rgba(29, 29, 27, 0.62);
  line-height: 1.5;
}

.page-hero {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  padding: clamp(36px, 5vw, 64px);
  background:
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.08), transparent 26%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(255, 255, 255, 0.7));
  box-shadow: var(--rm-shadow);
}

.page-hero__eyebrow {
  margin: 0 0 16px;
  color: var(--rm-teal);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.78rem;
  font-weight: 600;
}

.page-card__list {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.page-card__list li {
  display: flex;
  gap: 12px;
  color: rgba(29, 29, 27, 0.68);
  line-height: 1.6;
}

.page-card__list li::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-top: 0.65em;
  border-radius: 999px;
  background: var(--rm-teal);
  flex: 0 0 auto;
}

.related-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

.related-links__button {
  appearance: none;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(28, 53, 94, 0.12);
  background: rgba(255, 255, 255, 0.88);
  color: var(--rm-navy);
  font-size: 0.9rem;
  font-weight: 500;
  cursor: pointer;
}

.related-links__button.is-active {
  border-color: rgba(0, 163, 180, 0.3);
  color: var(--rm-teal);
}

@media (max-width: 1180px) {
  .cards-grid,
  .metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mega-menu {
    width: min(980px, calc(100vw - 32px));
  }

  .hero__grid {
    grid-template-columns: 1fr;
  }

  .shell-stage {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .shell-stage__preview {
    justify-content: flex-start;
  }

  .hero__stage {
    min-height: 620px;
    margin-top: 22px;
  }

  .hero__stage-card--expertise {
    left: 2%;
    top: 4%;
  }

  .hero__stage-card--values {
    right: 0;
    bottom: 4%;
  }
}

@media (max-width: 1040px) {
  .site-header {
    padding-left: 16px;
    padding-right: 16px;
  }

  .site-header.is-page {
    padding-left: 3px;
    padding-right: 3px;
  }

  .site-header__shell {
    min-height: 58px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.92);
    border-radius: 14px;
    background: rgba(251, 250, 249, 0.88);
    box-shadow: 0 14px 30px rgba(17, 29, 51, 0.08);
    backdrop-filter: blur(24px);
  }

  .primary-nav,
  .menu-burger,
  .icon-button,
  .lang-button,
  .mega-menu {
    display: none;
  }

  .mobile-menu-button {
    display: inline-flex;
    align-items: center;
  }

  .brand-link {
    width: 132px;
    min-width: 132px;
    height: 40px;
  }

  .brand-link__wordmark {
    opacity: 1 !important;
    transform: translateY(-50%) !important;
    width: 132px;
  }

  .site-header.is-page .site-header__inner {
    border-radius: 14px;
  }

  .site-header.is-page .site-header__shell {
    min-height: 74px;
    padding: 0 12px;
  }

  .site-header.is-page .brand-link {
    width: 26px;
    min-width: 26px;
    height: 30px;
  }

  .site-header.is-page .brand-link__wordmark {
    clip-path: inset(0 100% 0 0) !important;
    opacity: 0 !important;
    width: 132px;
  }

  .site-header.is-page .brand-link__mark {
    opacity: 1;
    transform: translateY(-50%) scale(1);
  }

  .site-header.is-page .header-context {
    display: flex;
  }

  .header-context__title-wrap {
    gap: 14px;
  }

  .header-context__divider {
    height: 34px;
  }

  .header-context__title {
    font-size: 1.2rem;
  }

  .site-header.is-page .context-tabs {
    gap: 4px;
    padding: 10px 10px 12px;
    overflow-x: auto;
    flex-wrap: nowrap;
  }

  .context-tabs__button {
    flex: 0 0 auto;
    min-height: 30px;
    font-size: 0.84rem;
  }

  body.page-mode .site-main {
    padding-top: 152px;
  }

  .site-main--flush {
    --page-hero-offset: 126px;
    padding-top: var(--page-hero-offset) !important;
  }

  .hero__shape {
    right: -14%;
    top: 4%;
    width: min(64vw, 420px);
  }

  .cards-grid,
  .metrics-grid,
  .page-grid,
  .page-pane__grid,
  .demo-scroll {
    grid-template-columns: 1fr;
  }

  .hero__metrics-strip {
    grid-template-columns: 1fr;
  }

  .shell-scroll {
    grid-template-columns: 1fr;
  }

  .hero__stage {
    min-height: auto;
    display: grid;
    gap: 16px;
    margin-top: 18px;
  }

  .hero__stage-card,
  .hero__stage-card--main,
  .hero__stage-card--expertise,
  .hero__stage-card--values {
    position: relative;
    inset: auto;
    width: 100%;
    transform: none !important;
    animation: none;
  }

  .hero__stage-card--main {
    padding: 14px;
  }
}

@media (min-width: 1041px) {
  .mobile-menu__content {
    max-width: 1180px;
  }
}

@media (max-width: 720px) {
  .mobile-menu__topbar {
    align-items: flex-start;
  }

  .mobile-menu__content {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 72px 12px 40px;
  }

  .mobile-menu--two-level .mobile-menu__content {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .mobile-menu--two-level .mobile-menu__secondary-list {
    padding-left: 0;
  }

  .mobile-menu--two-level .mobile-menu__secondary-list::before {
    display: none;
  }

  .mobile-menu__brand-logo {
    width: 142px;
  }

  .mobile-menu__tertiary-button {
    min-height: 44px;
    font-size: 0.96rem;
  }

  .mega-menu__grid {
    grid-template-columns: 1fr;
  }

  .mega-menu__column {
    padding: 22px 20px;
  }

  .mega-menu__column + .mega-menu__column {
    border-left: 0;
    border-top: 1px solid rgba(28, 53, 94, 0.08);
  }

  .mobile-menu__primary-button,
  .mobile-menu__secondary-button {
    font-size: 1.16rem;
  }

  .site-main {
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 98px;
  }

  body.home-mode .site-main {
    padding: 0 0 56px;
  }

  .site-header.is-page {
    padding-left: 2px;
    padding-right: 2px;
  }

  body.page-mode .site-main {
    padding-top: 146px;
  }

  .site-main--flush {
    --page-hero-offset: 120px;
    padding-top: var(--page-hero-offset) !important;
  }

  .hero,
  .section,
  .page-hero,
  .shell-stage,
  .demo-stage,
  .page-shell,
  .page-pane {
    padding: 24px 20px;
    border-radius: 24px;
  }

  .motors-hero {
    border-radius: 0;
  }

  .motors-hero__content {
    padding: max(20px, env(safe-area-inset-left)) max(20px, env(safe-area-inset-right)) max(32px, calc(22px + env(safe-area-inset-bottom)));
  }

  .motors-hero__copy {
    max-width: min(100%, 16.75rem);
  }

  .motors-hero__title {
    min-height: 2.1em;
    font-size: clamp(2.35rem, 11vw, 3.7rem);
  }

  .motors-hero__tagline {
    max-width: 15rem;
    font-size: 1rem;
  }

  .home-scroll-scene {
    min-height: 200vh;
  }

  .home-expertise {
    padding: clamp(48px, 9vw, 68px) 18px clamp(48px, 9vw, 68px);
    overflow: visible;
  }

  .home-scroll-outro {
    min-height: clamp(26px, 6vw, 44px);
  }

  .home-expertise__intro {
    gap: 14px;
    margin-bottom: 32px;
    max-width: none;
  }

  .home-expertise__title {
    width: 100%;
    font-size: clamp(2.3rem, 11vw, 3.2rem);
  }

  .home-expertise__subtitle {
    font-size: 1.1rem;
  }

  .home-expertise__summary {
    display: block;
  }

  .home-expertise__cards {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 0;
  }

  .home-expertise-card {
    height: 132px;
    padding: 18px;
    border-radius: 22px 0 22px 0;
  }

  .hero__title,
  .page-hero__title {
    max-width: none;
    font-size: clamp(2.5rem, 12vw, 4rem);
  }

  .hero__text,
  .page-hero__text,
  .shell-stage__text {
    font-size: 1rem;
  }

  .shell-stage__title {
    max-width: none;
    font-size: clamp(2.5rem, 12vw, 4rem);
  }

  .demo-stage__title,
  .page-pane__title {
    max-width: none;
    font-size: clamp(2.3rem, 12vw, 3.9rem);
  }

  .demo-stage__text,
  .page-pane__text {
    font-size: 1rem;
  }

  .page-shell__bar {
    min-height: 78px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .page-shell__identity {
    gap: 14px;
  }

  .page-shell__title {
    font-size: 1.28rem;
  }

  .page-shell__tabs {
    gap: 2px;
    padding: 12px 16px 14px;
  }

  .page-shell__tab {
    min-height: 30px;
    padding-left: 8px;
    padding-right: 8px;
    font-size: 0.84rem;
  }

  .site-header.is-page .site-header__inner {
    border-radius: 16px;
  }

  .site-header.is-page .site-header__shell {
    min-height: 68px;
    padding: 0 14px;
  }

  .header-context__title {
    font-size: 1.08rem;
  }

  .site-header.is-page .context-tabs {
    padding-left: 12px;
    padding-right: 12px;
  }

  .hero__eyebrow {
    font-size: 0.72rem;
    letter-spacing: 0.14em;
  }

  .hero__audience,
  .hero__pills {
    gap: 8px;
  }

  .hero__audience-chip,
  .hero__marquee-item {
    font-size: 0.82rem;
  }

  .hero__stage-topline {
    font-size: 0.68rem;
  }

  .section-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 720px) {
  .home-v2-flow .motors-hero__title {
    font-size: clamp(2.2rem, 10vw, 3.35rem);
  }

  .home-v2-flow .home-expertise {
    padding: clamp(48px, 9vw, 68px) 18px clamp(48px, 9vw, 68px);
  }

  .home-v2-flow .home-expertise-card,
  .home-v2-flow .home-expertise.is-visible .home-expertise-card,
  .home-v2-flow .home-expertise-card:hover,
  .home-v2-flow .home-expertise-card:focus-visible {
    height: 132px;
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

.trusted {
  position: relative;
  z-index: 4;
  background: transparent;
  padding: clamp(48px, 4.4vw, 72px) clamp(24px, 3.2vw, 56px) clamp(160px, 14vw, 236px);
  overflow: hidden;
}

.trusted::before {
  content: none;
}

.trusted__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(320px, 0.68fr) minmax(0, 1.32fr);
  gap: clamp(40px, 5vw, 96px);
  align-items: center;
}

.trusted__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 clamp(18px, 2vw, 26px);
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.trusted__eyebrow-line {
  width: 34px;
  height: 1px;
  background: rgba(28, 53, 94, 0.22);
}

.trusted__eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.trusted__title {
  margin: 0;
  max-width: 18ch;
  color: var(--rm-navy);
  font-size: clamp(2rem, 3vw, 3.25rem);
  font-weight: 300;
  line-height: 1.03;
  letter-spacing: -0.055em;
}

.trusted__title em {
  font-style: italic;
  font-weight: 400;
  color: var(--rm-teal);
}

.trusted__logos {
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 1vw, 16px);
  padding: clamp(14px, 1.8vw, 24px) 0;
  overflow-x: clip;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.trusted__row {
  overflow: hidden;
}

.trusted__track {
  display: flex;
  width: max-content;
  gap: clamp(10px, 1vw, 16px);
}

.trusted__row--ltr .trusted__track {
  animation: trustedScroll 40s linear infinite;
}

.trusted__row--rtl .trusted__track {
  animation: trustedScroll 40s linear infinite reverse;
}

@keyframes trustedScroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.trusted__logo {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(154px, 12vw, 198px);
  height: clamp(76px, 6.3vw, 98px);
  border: 0;
  background: transparent;
  box-shadow: none;
  transition:
    opacity 260ms ease,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.trusted__logo img {
  width: auto;
  height: auto;
  max-width: 76%;
  max-height: 58%;
  object-fit: contain;
  filter: saturate(0.96) drop-shadow(0 14px 24px rgba(28, 53, 94, 0.08));
  opacity: 0.88;
  transition:
    filter 360ms ease,
    opacity 360ms ease,
    transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.trusted__logo:hover {
  transform: translateY(-5px);
}

.trusted__logo:hover img {
  filter: saturate(1.08) drop-shadow(0 18px 34px rgba(28, 53, 94, 0.18));
  opacity: 1;
  transform: scale(1.08);
}

@media (max-width: 900px) {
  .trusted__inner {
    grid-template-columns: 1fr;
    gap: clamp(36px, 6vw, 56px);
  }

  .trusted__title {
    max-width: min(100%, 19ch);
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .trusted__row--ltr .trusted__track,
  .trusted__row--rtl .trusted__track {
    animation: none;
  }

  .trusted__eyebrow-dot {
    animation: none;
  }
}


.home-stats-band {
  position: relative;
  z-index: 4;
  overflow: hidden;
  isolation: isolate;
  background: #142a4c;
  padding: clamp(72px, 8vw, 118px) clamp(24px, 3.2vw, 56px);
}

.home-stats-band__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.home-stats-band__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.9) brightness(0.68);
}

.home-stats-band__scrim {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(120% 120% at 80% 0%, rgba(0, 163, 180, 0.12), transparent 52%),
    linear-gradient(120deg, rgba(13, 27, 50, 0.46) 0%, rgba(18, 37, 64, 0.26) 55%, rgba(13, 27, 50, 0.5) 100%);
}

.home-stats-band__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 40px);
}

.home-stats-band__head {
  grid-column: 1 / -1;
  width: min(100%, 760px);
  margin: 0 auto clamp(18px, 2.6vw, 28px);
  display: grid;
  justify-items: center;
  gap: 14px;
  text-align: center;
}

.home-stats-band__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: rgba(236, 242, 252, 0.72);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-stats-band__eyebrow-line {
  width: 34px;
  height: 1px;
  background: rgba(236, 242, 252, 0.24);
}

.home-stats-band__eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.home-stats-band__title {
  margin: 0;
  max-width: 14ch;
  color: #ffffff;
  font-size: clamp(2rem, 3vw, 3.2rem);
  font-weight: 300;
  line-height: 1.04;
  letter-spacing: -0.045em;
  text-align: center;
}

.home-stats-band__copy {
  margin: 0;
  max-width: 58ch;
  color: rgba(236, 242, 252, 0.74);
  font-size: clamp(0.96rem, 1vw, 1.08rem);
  line-height: 1.6;
}

.home-figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(14px, 1.4vw, 22px);
  text-align: center;
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s ease, transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.home-stats-band.is-visible .home-figure {
  opacity: 1;
  transform: none;
}

.home-stats-band.is-visible .home-figure:nth-child(2) { transition-delay: 90ms; }
.home-stats-band.is-visible .home-figure:nth-child(3) { transition-delay: 180ms; }
.home-stats-band.is-visible .home-figure:nth-child(4) { transition-delay: 270ms; }
.home-stats-band.is-visible .home-figure:nth-child(5) { transition-delay: 360ms; }

.home-figure__icon {
  width: clamp(60px, 5.2vw, 86px);
  height: clamp(60px, 5.2vw, 86px);
  display: flex;
  align-items: center;
  justify-content: center;
}

.home-figure__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  animation: statIconFloat 4.6s ease-in-out infinite;
  filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.25));
}

.home-figure:nth-child(2) .home-figure__icon img { animation-delay: 0.5s; }
.home-figure:nth-child(3) .home-figure__icon img { animation-delay: 1s; }
.home-figure:nth-child(4) .home-figure__icon img { animation-delay: 1.5s; }
.home-figure:nth-child(5) .home-figure__icon img { animation-delay: 2s; }

@keyframes statIconFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

.home-figure strong {
  display: flex;
  align-items: baseline;
  justify-content: center;
  color: #ffffff;
  font-size: clamp(1.95rem, 2.9vw, 3.1rem);
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.05em;
  font-variant-numeric: tabular-nums;
}

.home-figure__value {
  display: inline-block;
  min-width: 1ch;
}

.home-figure__sign {
  color: var(--rm-teal);
  font-weight: 400;
  margin-right: 0.04em;
}

.home-figure__unit {
  margin-left: 0.28em;
  align-self: center;
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.34em;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home-figure__label {
  color: rgba(255, 255, 255, 0.74);
  font-size: clamp(0.85rem, 0.95vw, 1rem);
  line-height: 1.35;
  letter-spacing: -0.01em;
}

.home-stats-band--editorial {
  overflow: visible;
  isolation: auto;
  background: transparent;
  padding: clamp(34px, 4.2vw, 58px) clamp(24px, 3.2vw, 56px) clamp(72px, 8vw, 112px);
}

.home-stats-band--editorial .home-stats-band__media {
  display: none;
}

.home-stats-band--editorial .home-stats-band__head {
  display: grid;
  justify-items: start;
  width: 100%;
  max-width: 1500px;
  margin: 0 auto clamp(28px, 3.2vw, 46px);
  text-align: left;
}

.home-stats-band--editorial .home-stats-band__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  color: rgba(28, 53, 94, 0.55);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-stats-band--editorial .home-stats-band__eyebrow-line {
  background: rgba(28, 53, 94, 0.22);
}

.home-stats-band--editorial .home-stats-band__title {
  margin: 0;
  max-width: 22ch;
  color: var(--rm-navy);
  font-size: clamp(2.25rem, 4vw, 4.2rem);
  font-weight: 300;
  line-height: 0.98;
  letter-spacing: -0.05em;
  text-align: left;
}

.home-stats-band--editorial .home-stats-band__title em {
  font-style: italic;
  font-weight: 400;
  color: var(--rm-teal);
}

.home-stats-band--editorial .home-stats-band__copy {
  max-width: 52ch;
  margin: clamp(18px, 2vw, 24px) 0 0;
  color: rgba(28, 53, 94, 0.64);
  font-size: clamp(0.98rem, 1.08vw, 1.08rem);
  line-height: 1.68;
}

.home-stats-band--editorial .home-stats-band__inner {
  max-width: 1500px;
  gap: 0;
  padding: clamp(34px, 3.3vw, 48px) 0;
  border-top: 1px solid rgba(28, 53, 94, 0.12);
  border-bottom: 1px solid rgba(28, 53, 94, 0.12);
}

.home-stats-band--editorial .home-figure {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  grid-template-areas:
    "icon value"
    "label label";
  column-gap: 14px;
  row-gap: 10px;
  min-width: 0;
  align-items: center;
  text-align: left;
  padding: 0 clamp(22px, 2vw, 30px);
  opacity: 1;
  transform: none;
  transition: none;
}

.home-stats-band--editorial .home-figure__icon {
  grid-area: icon;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  opacity: 0.96;
}

.home-stats-band--editorial .home-figure__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: none;
  animation: none;
}

.home-stats-band--editorial .home-figure + .home-figure {
  border-left: 1px solid rgba(28, 53, 94, 0.12);
}

.home-stats-band--editorial .home-figure strong {
  grid-area: value;
  min-width: 0;
  color: var(--rm-navy);
  font-size: clamp(2.1rem, 2.9vw, 3.15rem);
  font-weight: 300;
  justify-content: flex-start;
  align-self: center;
  flex-wrap: nowrap;
  white-space: nowrap;
}


.home-stats-band--editorial .home-figure strong > * {
  flex: 0 0 auto;
}

.home-stats-band--editorial .home-figure__unit {
  white-space: nowrap;
  margin-left: 0.45em;
}

.home-stats-band--editorial .home-figure__sign {
  color: var(--rm-teal);
}

.home-stats-band--editorial .home-figure__unit {
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.34em;
  font-weight: 600;
}

.home-stats-band--editorial .home-figure__label {
  grid-area: label;
  color: rgba(28, 53, 94, 0.68);
  font-size: clamp(0.96rem, 0.98vw, 1.08rem);
  line-height: 1.35;
}

@media (max-width: 900px) {
  .home-stats-band__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(30px, 5vw, 46px);
  }

  .home-stats-band--editorial .home-stats-band__inner {
    gap: 0;
  }

  .home-stats-band--editorial .home-figure {
    grid-template-columns: 38px minmax(0, 1fr);
    column-gap: 14px;
    padding: 22px 18px;
  }

  .home-stats-band--editorial .home-figure + .home-figure {
    border-left: 0;
  }

  .home-stats-band--editorial .home-figure:nth-child(even) {
    border-left: 1px solid rgba(28, 53, 94, 0.12);
  }

  .home-stats-band--editorial .home-figure:nth-child(n + 3) {
    border-top: 1px solid rgba(28, 53, 94, 0.12);
  }
}

@media (max-width: 520px) {
  .home-stats-band__inner {
    grid-template-columns: 1fr;
  }

  .home-stats-band--editorial .home-stats-band__inner {
    gap: 0;
  }

  .home-stats-band--editorial .home-figure {
    grid-template-columns: 34px minmax(0, 1fr);
    column-gap: 12px;
    padding: 20px 0;
  }

  .home-stats-band--editorial .home-figure:nth-child(even) {
    border-left: 0;
  }

  .home-stats-band--editorial .home-figure:nth-child(n + 2) {
    border-top: 1px solid rgba(28, 53, 94, 0.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .home-figure__icon img {
    animation: none;
    transform: none;
  }
}


body.impact-page .impact-section {
  background: #ffffff;
}

body.impact-page .impact-section--alt {
  background:
    radial-gradient(circle at 10% 0%, rgba(0, 163, 180, 0.055), transparent 44%),
    linear-gradient(180deg, #f7fbfd 0%, #ffffff 100%);
}

body.impact-page .page-video-hero.cf-hero {
  min-height: clamp(260px, 38vh, 400px);
  height: auto;
  padding-block: clamp(48px, 6vw, 84px);
}

body.impact-page .cf-hero__layout--single {
  width: min(1280px, calc(100% - 88px));
}

body.impact-page .cf-hero__copy {
  max-width: min(100%, 980px);
}

body.impact-page .cf-hero__title {
  max-width: min(100%, 18ch);
}

body.impact-page .impact-section__head {
  justify-items: center;
  text-align: center;
}

body.impact-page .impact-section__heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: 16px;
}

body.impact-page .impact-section__title {
  max-width: min(18ch, 100%);
  font-size: clamp(2.35rem, 4vw, 4rem);
  line-height: 0.98;
  letter-spacing: -0.065em;
}

body.impact-page .impact-section__copy {
  max-width: 62ch;
  color: rgba(28, 53, 94, 0.68);
}

body.impact-page .impact-eyebrow__line {
  width: 44px;
}

body.impact-page .impact-icon__stroke {
  vector-effect: non-scaling-stroke;
  stroke-width: 1.85;
}

body.impact-page .impact-pillars__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(46px, 4.2vw, 60px) clamp(18px, 2vw, 28px);
  padding-top: clamp(26px, 2.8vw, 38px);
}

body.impact-page .impact-pillar {
  display: block;
  min-height: 0;
  padding: clamp(38px, 3.2vw, 48px) clamp(22px, 2.1vw, 30px) clamp(22px, 2.1vw, 30px);
  border-radius: 28px;
  border-color: rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.92);
  box-shadow:
    0 18px 42px rgba(18, 68, 109, 0.055),
    inset 0 -2px 0 rgba(0, 163, 180, 0.12);
}

body.impact-page .impact-pillar::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  border-radius: 28px 0 0 28px;
  background: linear-gradient(180deg, transparent, rgba(0, 163, 180, 0.78), transparent);
  opacity: 0;
  transition: opacity 220ms ease;
}

body.impact-page .impact-pillar:hover::before {
  opacity: 1;
}

body.impact-page .impact-pillar__icon {
  position: absolute;
  top: clamp(-30px, -2.4vw, -24px);
  left: clamp(22px, 2.2vw, 30px);
  z-index: 2;
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  border-radius: 22px;
  color: var(--rm-navy);
  background:
    radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.9), transparent 38%),
    linear-gradient(150deg, rgba(221, 244, 248, 0.95), rgba(255, 255, 255, 0.98));
  box-shadow:
    0 18px 34px rgba(18, 68, 109, 0.11),
    0 0 0 8px rgba(255, 255, 255, 0.76),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  transition:
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 260ms ease;
}

body.impact-page .impact-pillar:hover .impact-pillar__icon {
  transform: translateY(-4px) scale(1.04);
  box-shadow:
    0 22px 42px rgba(18, 68, 109, 0.15),
    0 0 0 8px rgba(255, 255, 255, 0.82),
    inset 0 1px 0 rgba(255, 255, 255, 0.96);
}

body.impact-page .impact-pillar__icon svg {
  width: 34px;
  height: 34px;
}

body.impact-page .impact-pillar__index {
  display: none;
}

.impact-pillar__index,
.impact-label__index,
.home-csr-list__index,
.home-news-story__index {
  display: none;
}

body.impact-page .impact-pillar__name {
  margin: 0 0 clamp(14px, 1.4vw, 20px);
  font-size: clamp(1.02rem, 1.1vw, 1.18rem);
  font-weight: 700;
}

body.impact-page .impact-pillar__text {
  max-width: 34ch;
}

body.impact-page .impact-figures__grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 1.45vw, 20px);
}

body.impact-page .impact-figure {
  align-items: center;
  text-align: center;
  padding: clamp(20px, 2vw, 28px) clamp(16px, 1.7vw, 22px);
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 251, 253, 0.86));
  box-shadow:
    0 16px 36px rgba(18, 68, 109, 0.052),
    inset 0 -2px 0 rgba(0, 163, 180, 0.13);
}

body.impact-page .impact-figure__icon {
  width: 48px;
  height: 48px;
  border-radius: 18px;
  background: rgba(231, 247, 250, 0.8);
}

body.impact-page .impact-figure__value {
  justify-content: center;
  font-size: clamp(2.25rem, 3.5vw, 3.35rem);
}

body.impact-page .impact-figure__label {
  max-width: 18ch;
  margin-inline: auto;
  color: rgba(28, 53, 94, 0.68);
}




body.impact-page .impact-labels {
  min-width: 0;
}

body.impact-page .impact-labels__rows,
body.impact-page .impact-labels__set {
  align-items: stretch;
}


body.impact-page .impact-label,
body.impact-page .impact-label--full {
  flex: 0 0 clamp(340px, 36vw, 500px);
  grid-column: auto;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  grid-template-rows: auto auto 1fr;
  align-items: start;
  column-gap: 18px;
  row-gap: 6px;
  min-height: 0;
  height: auto;
  padding: 28px;
  border-radius: 26px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: #ffffff;
  box-shadow: 0 18px 46px rgba(18, 68, 109, 0.06);
}

body.impact-page .impact-label__watermark {
  grid-column: 1;
  grid-row: 1 / span 2;
}

body.impact-page .impact-label__meta {
  grid-column: 2;
  grid-row: 1;
}

body.impact-page .impact-label__name {
  grid-column: 2;
  grid-row: 2;
}

body.impact-page .impact-label__summary {
  grid-column: 1 / -1;
  grid-row: 3;
  margin-top: 14px;
}

body.impact-page .impact-label__watermark,
body.impact-page .impact-label--reverse .impact-label__watermark {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  display: grid;
  place-items: center;
  width: 100%;
  max-width: none;
  min-height: 0;
  aspect-ratio: 1;
  padding: clamp(10px, 1vw, 15px);
  border-radius: 20px;
  border: 1px solid rgba(28, 53, 94, 0.06);
  background:
    radial-gradient(circle at 50% 18%, rgba(0, 163, 180, 0.08), transparent 62%),
    #f6fafb;
  transform: none;
  opacity: 1;
  mix-blend-mode: normal;
}

body.impact-page .impact-label__watermark img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: contain;
  opacity: 1;
  filter: saturate(0.98) contrast(1.02);
}

body.impact-page .impact-label:hover .impact-label__watermark {
  opacity: 1;
}

body.impact-page .impact-label:hover .impact-label__watermark img {
  transform: scale(1.035);
}


body.impact-page .impact-label__content,
body.impact-page .impact-label--reverse .impact-label__content {
  display: contents;
}

body.impact-page .impact-label__name {
  font-family: inherit;
  font-size: clamp(1.2rem, 1.5vw, 1.55rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.03em;
}

body.impact-page .impact-label__summary {
  max-width: none;
  color: rgba(28, 53, 94, 0.72);
  font-size: 0.9rem;
  line-height: 1.62;
}

body.impact-page .impact-resources__rail {
  --resources-per-view: 3;
  --resources-gap: clamp(16px, 1.8vw, 24px);
}

@media (max-width: 1180px) {
  body.impact-page .impact-pillars__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.impact-page .impact-figures__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.impact-page .impact-resources__rail {
    --resources-per-view: 2;
  }
}

@media (max-width: 820px) {
  body.impact-page .impact-section__title {
    font-size: clamp(2.2rem, 10vw, 3.5rem);
  }

  body.impact-page .impact-pillars__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  body.impact-page .impact-pillar {
    display: block;
    padding-top: 42px;
  }

  body.impact-page .impact-figures__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.impact-page .impact-label,
  body.impact-page .impact-label--full {
    flex-basis: min(80vw, 420px);
    grid-template-columns: 64px minmax(0, 1fr);
    column-gap: 16px;
    padding: 24px;
  }

  body.impact-page .impact-resources__rail {
    --resources-per-view: 1;
  }
}

@media (max-width: 560px) {
  body.impact-page .impact-section {
    padding-inline: 16px;
  }

  body.impact-page .impact-figures__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  body.impact-page .impact-label,
  body.impact-page .impact-label--full {
    flex-basis: min(86vw, 340px);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.impact-page .impact-pillar,
  body.impact-page .impact-label,
  body.impact-page .impact-figure,
  body.impact-page .impact-resource {
    transition: none;
  }
}


.home-csr {
  position: relative;
  z-index: 4;
  padding: clamp(52px, 5.4vw, 92px) clamp(24px, 3.2vw, 56px) clamp(18px, 2.4vw, 32px);
  background: transparent;
  overflow: clip;
}

.home-csr::before {
  content: "";
  position: absolute;
  top: 4%;
  left: 64%;
  width: clamp(240px, 26vw, 380px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.12) 0%, rgba(0, 163, 180, 0.04) 42%, transparent 72%);
  transform: translate(-50%, 0);
  pointer-events: none;
}

.home-csr::after {
  content: "";
  position: absolute;
  left: -4%;
  bottom: -8%;
  width: clamp(220px, 24vw, 340px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(28, 53, 94, 0.08) 0%, transparent 70%);
  pointer-events: none;
}

.home-csr__inner {
  position: relative;
  max-width: 1496px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(300px, 0.86fr) minmax(420px, 1.14fr);
  gap: clamp(32px, 4vw, 72px);
  align-items: center;
}

.home-csr__lead {
  display: flex;
  flex-direction: column;
  gap: clamp(22px, 2.6vw, 32px);
}

.home-csr__head {
  max-width: 560px;
}

.home-csr__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  color: rgba(28, 53, 94, 0.55);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-csr__eyebrow-line {
  width: 34px;
  height: 1px;
  background: rgba(28, 53, 94, 0.22);
}

.home-csr__eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.home-csr__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.25rem, 4vw, 4.2rem);
  font-weight: 300;
  line-height: 0.98;
  letter-spacing: -0.05em;
}

.home-csr__title em {
  font-style: italic;
  font-weight: 400;
  color: var(--rm-teal);
}

.home-csr__copy {
  max-width: 37ch;
  margin: clamp(18px, 2vw, 24px) 0 0;
  color: rgba(28, 53, 94, 0.64);
  font-size: clamp(0.98rem, 1.08vw, 1.08rem);
  line-height: 1.68;
}

.home-csr__legend {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.home-csr__legend::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--rm-teal);
  box-shadow: 0 0 0 10px rgba(0, 163, 180, 0.08);
  animation: csrPulse 2.8s ease-in-out infinite;
}

.home-csr__action {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  color: var(--rm-navy);
  font-weight: 500;
  text-decoration: none;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(72, 116, 161, 0.3);
  transition: gap 220ms ease, color 220ms ease, border-color 220ms ease;
}

.home-csr__action:hover {
  gap: 16px;
  color: var(--rm-teal);
  border-color: rgba(0, 163, 180, 0.32);
}

.home-csr__scene {
  position: relative;
  min-height: clamp(400px, 52vh, 540px);
}

.home-csr__scene::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(100%, 640px);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(28, 53, 94, 0.12) 18%, rgba(28, 53, 94, 0.08) 82%, transparent);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.home-csr__scene::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: min(100%, 520px);
  background: linear-gradient(180deg, transparent, rgba(28, 53, 94, 0.08) 22%, rgba(0, 163, 180, 0.14) 78%, transparent);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.home-csr__scene-core {
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(290px, 31vw, 420px);
  aspect-ratio: 1;
  transform: translate(-50%, -49%);
}

.home-csr__orbit {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(28, 53, 94, 0.1);
}

.home-csr__orbit--outer {
  inset: -8%;
  animation: csrRotate 24s linear infinite;
}

.home-csr__orbit--inner {
  inset: 14%;
  border-color: rgba(0, 163, 180, 0.2);
  animation: csrRotateReverse 18s linear infinite;
}

.home-csr__halo {
  position: absolute;
  inset: 16%;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 46%, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.99) 58%, rgba(255, 255, 255, 0.92) 74%, rgba(255, 255, 255, 0) 100%);
  filter: blur(1px);
  animation: csrHalo 6s ease-in-out infinite;
}

.home-csr__visuals {
  position: absolute;
  inset: 18% 18% 26%;
}

.home-csr__figure {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  opacity: 0;
  pointer-events: none;
  transform: scale(0.82) rotate(-8deg);
  transition: opacity 420ms ease, transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
  z-index: 1;
}

.home-csr__figure.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: none;
}

.home-csr__figure img {
  display: block;
  width: auto;
  max-width: var(--csr-figure-max-width, 100%);
  max-height: var(--csr-figure-max-height, clamp(190px, 22vw, 250px));
  object-fit: contain;
  transform-origin: center center;
  transform: translate(var(--csr-figure-x, 0), var(--csr-figure-y, 0)) scale(var(--csr-figure-scale, 1));
}

.home-csr__figure--logo .home-csr__logo-mark {
  display: grid;
  place-items: center;
  width: min(100%, 230px);
  aspect-ratio: 1;
}

.home-csr__figure--logo .home-csr__logo-image {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: contain;
  filter: drop-shadow(0 20px 26px rgba(20, 37, 57, 0.12));
}

.home-csr__meta {
  position: absolute;
  top: calc(100% - 8px);
  left: 50%;
  display: grid;
  gap: 8px;
  width: min(340px, 90vw);
  transform: translateX(-50%);
  text-align: center;
}

.home-csr__meta-label {
  margin: 0;
  color: rgba(28, 53, 94, 0.46);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.home-csr__meta-title {
  color: var(--rm-navy);
  font-size: clamp(1.24rem, 1.6vw, 1.85rem);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -0.03em;
}

.home-csr__meta-date {
  color: var(--rm-teal);
  font-size: 0.98rem;
  font-weight: 500;
}

.home-csr__nodes {
  position: absolute;
  inset: 0;
}

.home-csr__node {
  position: absolute;
  z-index: 1;
  display: grid;
  justify-items: var(--csr-node-justify, start);
  gap: 6px;
  top: var(--csr-node-top, auto);
  right: var(--csr-node-right, auto);
  bottom: var(--csr-node-bottom, auto);
  left: var(--csr-node-left, auto);
  width: min(var(--csr-node-width, 220px), 34%);
  padding: 0;
  padding-top: var(--csr-node-pad-top, 0);
  padding-bottom: var(--csr-node-pad-bottom, 0);
  padding-left: var(--csr-node-pad-left, 0);
  padding-right: var(--csr-node-pad-right, 0);
  border: 0;
  background: transparent;
  color: rgba(28, 53, 94, 0.48);
  font: inherit;
  text-align: var(--csr-node-text-align, left);
  cursor: pointer;
  transform: var(--csr-node-transform, none);
  transition: color 220ms ease, transform 220ms ease, opacity 220ms ease;
  animation: csrNodeFloat 6s ease-in-out infinite;
  animation-delay: var(--csr-node-delay, 0s);
}

.home-csr__node::before {
  content: "";
  position: absolute;
  top: var(--csr-node-line-top, 12px);
  bottom: var(--csr-node-line-bottom, auto);
  left: var(--csr-node-line-left, auto);
  right: var(--csr-node-line-right, auto);
  width: var(--csr-node-line-width, 98px);
  min-width: var(--csr-node-line-min-width, 0);
  height: 1px;
  min-height: var(--csr-node-line-min-height, 0);
  height: var(--csr-node-line-height, 1px);
  background: var(--csr-node-line-background, linear-gradient(90deg, rgba(28, 53, 94, 0.04), rgba(0, 163, 180, 0.42), rgba(28, 53, 94, 0.12)));
  opacity: 0.5;
  transition: width 220ms ease, height 220ms ease, opacity 220ms ease, background 220ms ease;
}

.home-csr__node::after {
  content: "";
  position: absolute;
  top: var(--csr-node-dot-top, 7px);
  bottom: var(--csr-node-dot-bottom, auto);
  left: var(--csr-node-dot-left, auto);
  right: var(--csr-node-dot-right, auto);
  width: 10px;
  height: 10px;
  border: 1.5px solid rgba(28, 53, 94, 0.26);
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 0 0 0 rgba(0, 163, 180, 0);
  transition: transform 220ms ease, border-color 220ms ease, background-color 220ms ease, box-shadow 220ms ease;
}

.home-csr__node:hover,
.home-csr__node:focus-visible,
.home-csr__node.is-active {
  color: var(--rm-navy);
}

.home-csr__node:focus-visible {
  outline: none;
}

.home-csr__node.is-active {
  transform: var(--csr-node-transform-active, var(--csr-node-transform, none)) translateY(-2px);
}

.home-csr__node.is-active::before {
  width: var(--csr-node-line-width-active, 122px);
  height: var(--csr-node-line-height-active, var(--csr-node-line-height, 1px));
  opacity: 1;
}

.home-csr__node.is-active::after {
  transform: scale(1.18);
  border-color: rgba(0, 163, 180, 0.8);
  background: var(--rm-teal);
  box-shadow: 0 0 0 12px rgba(0, 163, 180, 0.12);
}

.home-csr__node-index {
  color: rgba(28, 53, 94, 0.42);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-csr__node-name {
  color: inherit;
  font-size: clamp(0.98rem, 1.08vw, 1.12rem);
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -0.02em;
}

.home-csr__node-date {
  color: rgba(28, 53, 94, 0.54);
  font-size: 0.84rem;
  line-height: 1.35;
}

.home-csr__node.is-active .home-csr__node-name,
.home-csr__node:hover .home-csr__node-name,
.home-csr__node:focus-visible .home-csr__node-name {
  color: var(--rm-teal);
}

.home-csr.is-visible .home-csr__scene-core,
.home-csr.is-visible .home-csr__node {
  opacity: 1;
}

@keyframes csrRotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes csrRotateReverse {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(-360deg);
  }
}

@keyframes csrHalo {
  0%,
  100% {
    transform: scale(0.98);
    opacity: 0.7;
  }

  50% {
    transform: scale(1.04);
    opacity: 1;
  }
}

@keyframes csrNodeFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

@keyframes csrPulse {
  0%,
  100% {
    box-shadow: 0 0 0 8px rgba(0, 163, 180, 0.05);
  }

  50% {
    box-shadow: 0 0 0 15px rgba(0, 163, 180, 0.12);
  }
}

@media (max-width: 1440px) {
  .home-csr__inner {
    grid-template-columns: minmax(280px, 0.8fr) minmax(480px, 1.2fr);
    gap: clamp(24px, 3vw, 44px);
  }

  .home-csr__scene {
    min-height: clamp(600px, 64vw, 720px);
  }

  .home-csr__scene-core {
    width: clamp(270px, 27vw, 360px);
  }

  .home-csr__node {
    width: min(var(--csr-node-width, 198px), 28%);
  }

  .home-csr__node-name {
    font-size: clamp(0.92rem, 0.98vw, 1.02rem);
  }

  .home-csr__node-date {
    font-size: 0.8rem;
  }

  .home-csr__node[data-csr-node="1"] {
    --csr-node-left: 6% !important;
    --csr-node-top: 25% !important;
    --csr-node-width: 170px !important;
    --csr-node-pad-right: 88px !important;
    --csr-node-line-right: 12px !important;
    --csr-node-line-width: 66px !important;
    --csr-node-line-width-active: 82px !important;
  }

  .home-csr__node[data-csr-node="2"] {
    --csr-node-left: 4% !important;
    --csr-node-bottom: 20% !important;
    --csr-node-width: 176px !important;
    --csr-node-pad-right: 92px !important;
    --csr-node-line-right: 12px !important;
    --csr-node-line-width: 70px !important;
    --csr-node-line-width-active: 86px !important;
  }

  .home-csr__node[data-csr-node="3"] {
    --csr-node-right: 6% !important;
    --csr-node-top: 25% !important;
    --csr-node-width: 170px !important;
    --csr-node-pad-left: 88px !important;
    --csr-node-line-left: 12px !important;
    --csr-node-line-width: 66px !important;
    --csr-node-line-width-active: 82px !important;
  }

  .home-csr__node[data-csr-node="4"] {
    --csr-node-right: 4% !important;
    --csr-node-bottom: 20% !important;
    --csr-node-width: 176px !important;
    --csr-node-pad-left: 92px !important;
    --csr-node-line-left: 12px !important;
    --csr-node-line-width: 70px !important;
    --csr-node-line-width-active: 86px !important;
  }
}

@media (max-width: 1180px) {
  .home-csr__inner {
    grid-template-columns: 1fr;
  }

  .home-csr__head,
  .home-csr__copy {
    max-width: none;
  }
}

@media (max-width: 860px) {
  .home-csr {
    padding-left: clamp(18px, 5vw, 24px);
    padding-right: clamp(18px, 5vw, 24px);
  }

  .home-csr__scene {
    min-height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .home-csr__scene::before,
  .home-csr__scene::after {
    display: none;
  }

  .home-csr__scene-core {
    position: relative;
    top: auto;
    left: auto;
    width: min(100%, 420px);
    margin: 0 auto 148px;
    transform: none;
  }

  .home-csr__nodes {
    position: relative;
    inset: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 16px;
    width: 100%;
  }

  .home-csr__node {
    position: relative;
    justify-items: start;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: auto;
    min-height: 74px;
    padding: 0 0 0 28px;
    text-align: left;
    animation: none;
  }

  .home-csr__node::before {
    display: none;
  }

  .home-csr__node::after {
    left: 0;
    right: auto;
  }
}

@media (max-width: 620px) {
  .home-csr__title {
    font-size: clamp(2rem, 11vw, 2.9rem);
  }

  .home-csr__scene-core {
    margin-bottom: 136px;
  }

  .home-csr__nodes {
    grid-template-columns: 1fr;
  }

  .home-csr__meta-title {
    font-size: 1.2rem;
  }

  .home-csr__figure img {
    max-height: 190px;
  }

  .home-csr__figure--logo .home-csr__logo-mark {
    width: min(100%, 190px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .home-csr__legend::before,
  .home-csr__orbit,
  .home-csr__halo,
  .home-csr__node {
    animation: none;
  }

  .home-csr__figure,
  .home-csr__node,
  .home-csr__action {
    transition: none;
  }
}

.home-csr-list {
  position: relative;
  z-index: 4;
  padding: clamp(72px, 8vw, 124px) clamp(24px, 3.2vw, 56px);
  background: transparent;
}

.home-csr-list__inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
}

.home-csr-list__head {
  display: grid;
  gap: 18px;
  margin-bottom: clamp(26px, 3vw, 36px);
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 620ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-csr-list__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-csr-list__eyebrow-line {
  width: 34px;
  height: 1px;
  background: rgba(28, 53, 94, 0.22);
}

.home-csr-list__eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.home-csr-list__heading {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.82fr);
  align-items: start;
  gap: clamp(22px, 3vw, 56px);
}

.home-csr-list__title {
  margin: 0;
  max-width: 10ch;
  color: var(--rm-navy);
  font-size: clamp(1.95rem, 3.2vw, 3.3rem);
  font-weight: 300;
  line-height: 1.02;
  letter-spacing: -0.06em;
}

.home-csr-list__title em {
  color: var(--rm-teal);
  font-style: italic;
  font-weight: 400;
}

.home-csr-list__copy {
  margin: 0;
  max-width: 44ch;
  color: rgba(28, 53, 94, 0.7);
  font-size: 1rem;
  line-height: 1.72;
}

.home-csr-list__rows {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 28px);
  margin-top: clamp(28px, 3vw, 40px);
}

.home-csr-list__row {
  --csr-card-height: 272px;
  --csr-image-space: clamp(170px, 31%, 252px);
  grid-column: span 4;
  position: relative;
  display: block;
  cursor: pointer;
  min-height: var(--csr-card-height);
  height: var(--csr-card-height);
  padding: clamp(18px, 2vw, 24px);
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 30px;
  background:
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.1), transparent 42%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(243, 247, 252, 0.92));
  box-shadow:
    0 24px 54px rgba(17, 43, 76, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);
  opacity: 0;
  overflow: hidden;
  transform: translateY(42px);
  transition:
    opacity 720ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 720ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms ease,
    box-shadow 220ms ease;
  transition-delay: var(--csr-list-delay, 0ms);
}

.home-csr-list__row--wide {
  grid-column: span 6;
  min-height: var(--csr-card-height);
  height: var(--csr-card-height);
  --csr-image-space: clamp(210px, 28%, 300px);
}

.home-csr-list__row--reverse .home-csr-list__image {
  left: auto;
  right: clamp(18px, 2vw, 24px);
}

.home-csr-list.is-visible .home-csr-list__head {
  opacity: 1;
  transform: none;
}

.home-csr-list__row.is-visible {
  opacity: 1;
  transform: none;
}

.home-csr-list__row:hover {
  border-color: rgba(0, 163, 180, 0.16);
  box-shadow:
    0 30px 64px rgba(16, 55, 101, 0.13),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  transform: translateY(-6px);
}

.home-csr-list__image {
  position: absolute;
  top: 50%;
  left: clamp(18px, 2vw, 24px);
  z-index: 0;
  width: calc(var(--csr-image-space) - clamp(8px, 0.8vw, 12px));
  max-width: 42%;
  transform: translateY(-50%);
  opacity: 0.26;
  overflow: visible;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.home-csr-list__image img {
  width: 100%;
  height: auto;
  object-fit: contain;
  padding: 0;
  filter: saturate(1.02) contrast(1.02);
  transition:
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 260ms ease;
}

.home-csr-list__row:hover .home-csr-list__image,
.home-csr-list__row:focus-visible .home-csr-list__image {
  opacity: 0.42;
  mix-blend-mode: normal;
}

.home-csr-list__row:hover .home-csr-list__image img {
  filter: saturate(1.06) contrast(1.02);
  transform: scale(1.04);
}

.home-csr-list__content {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: center;
  gap: 14px;
  min-height: 100%;
  min-width: 0;
  padding-left: calc(var(--csr-image-space) + clamp(18px, 2vw, 28px));
}

.home-csr-list__row--reverse .home-csr-list__content {
  padding-left: 0;
  padding-right: calc(var(--csr-image-space) + clamp(18px, 2vw, 28px));
}

.home-csr-list__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.home-csr-list__index {
  color: rgba(28, 53, 94, 0.46);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-csr-list__name {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.38rem, 1.95vw, 2.2rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.05em;
}

.home-csr-list__summary {
  margin: 0;
  color: rgba(28, 53, 94, 0.66);
  font-size: 0.98rem;
  line-height: 1.72;
}

.home-csr-list__actions {
  display: flex;
  justify-content: center;
  margin-top: clamp(28px, 3vw, 44px);
}

@media (max-width: 1180px) {
  .home-csr-list__heading {
    grid-template-columns: 1fr;
  }

  .home-csr-list__copy {
    max-width: 58ch;
  }

  .home-csr-list__rows {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .home-csr-list__row {
    grid-column: span 2;
    --csr-image-space: clamp(150px, 33%, 220px);
  }

  .home-csr-list__row--wide {
    grid-column: span 3;
    --csr-image-space: clamp(190px, 30%, 270px);
  }
}

@media (max-width: 900px) {
  .home-csr-list__rows {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-csr-list__row,
  .home-csr-list__row--wide {
    grid-column: span 1;
    --csr-image-space: clamp(140px, 34%, 200px);
  }
}

@media (max-width: 760px) {
  .home-csr-list {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .home-csr-list__rows {
    grid-template-columns: 1fr;
  }

  .home-csr-list__row,
  .home-csr-list__row--wide {
    grid-column: 1 / -1;
    min-height: auto;
    height: auto;
    --csr-image-space: clamp(124px, 34%, 168px);
  }

  .home-csr-list__name {
    font-size: clamp(1.32rem, 6.2vw, 1.88rem);
  }

  .home-csr-list__summary {
    font-size: 0.96rem;
  }
}


.home-news {
  position: relative;
  z-index: 4;
  background: transparent;
  padding: clamp(72px, 8vw, 132px) clamp(24px, 3.2vw, 56px) clamp(30px, 3vw, 46px);
}

.home-news__inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
}

.home-news__head {
  margin-bottom: clamp(28px, 3vw, 42px);
}

.home-news__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-news__eyebrow-line {
  width: 34px;
  height: 1px;
  background: rgba(28, 53, 94, 0.22);
}

.home-news__eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.home-news__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 26px;
}

.home-news__title {
  margin: 0;
  max-width: 12ch;
  color: var(--rm-navy);
  font-size: clamp(1.95rem, 3vw, 3rem);
  font-weight: 300;
  line-height: 1.04;
  letter-spacing: -0.05em;
}

.home-news__title em {
  font-style: italic;
  font-weight: 400;
  color: var(--rm-teal);
}

.home-news__all {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  color: var(--rm-navy);
  font-size: 0.96rem;
  font-weight: 500;
  text-decoration: none;
  padding-bottom: 4px;
  border-bottom: 1px solid rgba(72, 116, 161, 0.26);
  transition:
    gap 220ms ease,
    color 220ms ease,
    border-color 220ms ease;
}

.home-news__all:hover {
  gap: 16px;
  color: var(--rm-teal);
  border-color: rgba(0, 163, 180, 0.36);
}

.home-news__showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
  gap: clamp(22px, 2.5vw, 34px);
  align-items: stretch;
}

.home-news__spotlight {
  position: relative;
  min-height: clamp(420px, 44vw, 580px);
  border-radius: calc(var(--rm-radius) + 6px);
  overflow: hidden;
  background:
    radial-gradient(circle at 22% 18%, rgba(191, 239, 244, 0.34), transparent 28%),
    linear-gradient(135deg, rgba(15, 39, 72, 0.08), rgba(15, 39, 72, 0.02));
}

.home-news-feature {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  text-decoration: none;
  opacity: 0;
  transform: scale(1.02);
  transition:
    opacity 520ms ease,
    transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}

.home-news-feature.is-active {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

.home-news-feature__media,
.home-news-feature__shade {
  position: absolute;
  inset: 0;
}

.home-news-feature__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.04);
  transition: transform 6s ease;
}

.home-news-feature.is-active .home-news-feature__media img {
  transform: scale(1);
}

.home-news-feature__shade {
  background:
    linear-gradient(180deg, rgba(7, 18, 36, 0.02) 0%, rgba(7, 18, 36, 0.12) 26%, rgba(7, 18, 36, 0.76) 100%),
    linear-gradient(90deg, rgba(12, 31, 58, 0.58), rgba(12, 31, 58, 0.08));
}

.home-news-feature__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: min(100%, 540px);
  padding: clamp(28px, 3vw, 38px);
  color: #ffffff;
}

.home-news-feature__kicker {
  color: rgba(201, 241, 246, 0.9);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.home-news-feature__date {
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.86rem;
  font-weight: 500;
}

.home-news-feature__title {
  font-size: clamp(1.6rem, 2.15vw, 2.4rem);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: -0.04em;
  text-wrap: balance;
}

.home-news-feature__excerpt {
  color: rgba(234, 241, 250, 0.82);
  font-size: 0.98rem;
  line-height: 1.55;
}

.home-news-feature__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 6px;
  color: #ffffff;
  font-weight: 500;
}

.home-news__rail {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  padding: 10px 0;
}

.home-news__rail::before {
  content: "";
  position: absolute;
  left: 22px;
  top: 18px;
  bottom: 18px;
  width: 1px;
  background: linear-gradient(180deg, rgba(28, 53, 94, 0.12), rgba(28, 53, 94, 0.26), rgba(28, 53, 94, 0.12));
}

.home-news-story {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 16px;
  padding: 18px 0 18px 0;
  color: var(--rm-navy);
  text-decoration: none;
  transition: transform 280ms ease, opacity 280ms ease;
  opacity: 0;
  transform: translateX(28px);
}

.home-news__showcase.is-visible .home-news-story {
  opacity: 1;
  transform: none;
}

.home-news__showcase.is-visible .home-news-story:nth-child(1) {
  transition-delay: 40ms;
}

.home-news__showcase.is-visible .home-news-story:nth-child(2) {
  transition-delay: 120ms;
}

.home-news__showcase.is-visible .home-news-story:nth-child(3) {
  transition-delay: 200ms;
}

.home-news__showcase.is-visible .home-news-story:nth-child(4) {
  transition-delay: 280ms;
}

.home-news-story::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #d6e5f6;
  transform: translateY(-50%);
  transition:
    background 220ms ease,
    box-shadow 220ms ease,
    transform 220ms ease;
}

.home-news-story:hover,
.home-news-story:focus-visible,
.home-news-story.is-active {
  transform: translateX(8px);
}

.home-news-story:hover::before,
.home-news-story:focus-visible::before,
.home-news-story.is-active::before {
  background: var(--rm-teal);
  box-shadow: 0 0 0 7px rgba(0, 163, 180, 0.1);
}

.home-news-story__index {
  color: rgba(28, 53, 94, 0.34);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.18em;
}

.home-news-story__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.home-news-story__date {
  color: rgba(28, 53, 94, 0.48);
  font-size: 0.82rem;
  font-weight: 500;
}

.home-news-story__title {
  color: var(--rm-navy);
  font-size: clamp(1rem, 1.04vw, 1.14rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.025em;
}

.home-news-story__arrow {
  color: rgba(28, 53, 94, 0.46);
  font-size: 1rem;
  transition:
    color 220ms ease,
    transform 220ms ease;
}

.home-news-story:hover .home-news-story__arrow,
.home-news-story:focus-visible .home-news-story__arrow,
.home-news-story.is-active .home-news-story__arrow {
  color: var(--rm-teal);
  transform: translateX(4px);
}

@media (max-width: 1040px) {
  .home-news__showcase {
    grid-template-columns: 1fr;
  }

  .home-news__spotlight {
    min-height: 500px;
  }

  .home-news__rail::before {
    display: none;
  }

  .home-news-story {
    padding-left: 0;
  }

  .home-news-story::before {
    left: 18px;
  }
}

@media (max-width: 820px) {
  .home-news__heading {
    flex-direction: column;
    align-items: flex-start;
  }

  .home-news__title {
    max-width: 14ch;
  }
}

@media (max-width: 640px) {
  .home-news__spotlight {
    min-height: 460px;
  }

  .home-news-feature__content {
    width: 100%;
  }

  .home-news-story {
    grid-template-columns: 36px minmax(0, 1fr) 14px;
    gap: 12px;
  }
}


.careers-page {
  background: #fff;
  color: var(--rm-navy, #1c355e);
}

.careers-page__hero {
  min-height: clamp(400px, 50vh, 540px);
  height: auto;
  padding-block: clamp(52px, 6vw, 84px);
}

.careers-page__hero .cf-hero__layout--single {
  width: min(1080px, calc(100% - 48px));
}

.careers-page__hero .cf-hero__copy {
  max-width: 760px;
}

.careers-page__hero .cf-hero__heading-stack--audience {
  display: grid;
  gap: clamp(18px, 2vw, 26px);
}

.careers-page__hero .cf-hero__super {
  margin: 0;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(1rem, 1.22vw, 1.26rem);
  font-weight: 300;
  line-height: 1.1;
}

.careers-page__hero .cf-hero__title,
.careers-page__section-head h2,
.careers-page__application-copy h2 {
  margin: 0;
  letter-spacing: 0;
}

.careers-page__hero .cf-hero__title {
  max-width: 14ch;
  font-size: clamp(2.4rem, 4vw, 3.25rem);
  font-weight: 300;
  line-height: 1.07;
}

.careers-page__hero .cf-hero__lede {
  max-width: 650px;
  margin-top: 24px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.08rem;
  font-weight: 300;
  line-height: 1.65;
}

.careers-page__hero .cf-hero__lede p {
  margin: 0;
}

.careers-page__eyebrow {
  margin: 0 0 14px;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.4;
  text-transform: uppercase;
}

.careers-page__hero-link,
.careers-job__apply,
.career-application-form__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 22px;
  border: 1px solid var(--rm-teal, #00a3b4);
  border-radius: 4px;
  background: var(--rm-teal, #00a3b4);
  color: #fff;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.careers-page__hero-link {
  margin-top: 32px;
}

.careers-page__hero-link:hover,
.careers-page__hero-link:focus-visible,
.careers-job__apply:hover,
.careers-job__apply:focus-visible,
.career-application-form__submit:hover,
.career-application-form__submit:focus-visible {
  border-color: #fff;
  background: #fff;
  color: var(--rm-navy, #1c355e);
  outline: none;
  transform: translateY(-1px);
}

.careers-page__jobs {
  width: min(100%, 1240px);
  margin: 0 auto;
  padding: clamp(72px, 8vw, 116px) 24px;
}

.careers-page__section-head {
  max-width: 620px;
  margin: 0 auto clamp(34px, 4vw, 54px);
  text-align: center;
}

.careers-page__section-head h2,
.careers-page__application-copy h2 {
  color: var(--rm-navy, #1c355e);
  font-size: clamp(2rem, 3.5vw, 3.25rem);
  font-weight: 300;
  line-height: 1.12;
}

.careers-page__jobs-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.careers-page__jobs-empty {
  max-width: 560px;
  margin: 0 auto;
  color: #5d6f89;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.6;
  text-align: center;
}

.careers-job {
  display: flex;
  min-height: 292px;
  flex-direction: column;
  padding: 28px;
  border: 1px solid rgba(28, 53, 94, 0.14);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(16, 43, 79, 0.06);
}

.careers-job__topline {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  min-height: 20px;
}

.careers-job__topline p,
.careers-job__topline span {
  margin: 0;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.careers-job__topline span {
  color: rgba(28, 53, 94, 0.68);
  text-align: right;
}

.careers-job h3 {
  margin: 17px 0 0;
  color: var(--rm-navy, #1c355e);
  font-size: 1.35rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
}

.careers-job__location,
.careers-job__description {
  margin: 10px 0 0;
  color: #5d6f89;
  font-size: 0.92rem;
  font-weight: 300;
  line-height: 1.55;
}

.careers-job__location {
  color: rgba(28, 53, 94, 0.78);
  font-weight: 500;
}

.careers-job__apply {
  width: fit-content;
  margin-top: auto;
  padding-inline: 16px;
  border-color: var(--rm-navy, #1c355e);
  background: var(--rm-navy, #1c355e);
}

.careers-job__apply:hover,
.careers-job__apply:focus-visible {
  border-color: var(--rm-teal, #00a3b4);
  background: var(--rm-teal, #00a3b4);
  color: #fff;
}

.careers-page__application {
  display: grid;
  grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
  gap: clamp(42px, 7vw, 112px);
  padding: clamp(72px, 9vw, 128px) max(24px, calc((100% - 1160px) / 2));
  background: #fff;
}

.careers-page__application-copy {
  align-self: start;
  padding-top: 18px;
}

.careers-page__application-copy > p:not(.careers-page__eyebrow) {
  max-width: 475px;
  margin: 22px 0 0;
  color: #5d6f89;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.65;
}

.careers-page__application-points {
  display: grid;
  gap: 12px;
  margin: 28px 0 0;
  padding: 0;
  color: var(--rm-navy, #1c355e);
  font-size: 0.92rem;
  font-weight: 400;
  line-height: 1.5;
  list-style: none;
}

.careers-page__application-points li {
  display: flex;
  align-items: center;
  gap: 10px;
}

.careers-page__application-points li::before {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal, #00a3b4);
  content: '';
}

.careers-page__application-form {
  padding: clamp(24px, 3.5vw, 42px);
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(16, 43, 79, 0.07);
}

.career-application-form__honeypot {
  position: absolute;
  left: -9999px;
}

.career-application-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 18px;
}

.career-application-form .form-item {
  margin: 0 0 18px;
}

.career-application-form .form-item label {
  display: block;
  margin-bottom: 8px;
  color: var(--rm-navy, #1c355e);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

.career-application-form__control,
.career-application-form input:not([type='checkbox']),
.career-application-form textarea,
.career-application-form select {
  box-sizing: border-box;
  width: 100%;
  min-height: 46px;
  padding: 11px 12px;
  border: 1px solid rgba(28, 53, 94, 0.2);
  border-radius: 3px;
  background: #fff;
  color: var(--rm-navy, #1c355e);
  font: inherit;
  font-size: 0.92rem;
  font-weight: 300;
  line-height: 1.45;
}

.career-application-form textarea {
  min-height: 128px;
  resize: vertical;
}

.career-application-form input:focus,
.career-application-form textarea:focus,
.career-application-form select:focus {
  border-color: var(--rm-teal, #00a3b4);
  outline: 2px solid rgba(0, 163, 180, 0.16);
  outline-offset: 1px;
}

.career-application-form .form-managed-file__main {
  display: flex;
  align-items: center;
  gap: 10px;
}

.career-application-form .form-managed-file__main input[type='file'] {
  min-height: 0;
  padding: 8px;
}

.career-application-form .description {
  margin-top: 7px;
  color: #71829b;
  font-size: 0.78rem;
  font-weight: 300;
  line-height: 1.45;
}

.career-application-form__consent {
  margin-bottom: 24px;
}

.career-application-form__consent .form-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
}

.career-application-form__consent input[type='checkbox'] {
  width: 16px;
  height: 16px;
  margin: 2px 0 0;
  accent-color: var(--rm-teal, #00a3b4);
}

.career-application-form__consent label {
  margin: 0 !important;
  color: #5d6f89 !important;
  font-size: 0.82rem !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
  line-height: 1.5 !important;
}

.career-application-form__actions {
  display: flex;
  justify-content: flex-start;
}

.career-application-form__submit {
  cursor: pointer;
}

.career-application-form__submit:hover,
.career-application-form__submit:focus-visible {
  border-color: var(--rm-teal, #00a3b4);
  background: var(--rm-teal, #00a3b4);
  color: var(--rm-navy, #1c355e);
}

@media (max-width: 900px) {
  .careers-page__jobs-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .careers-page__application {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 620px) {
  .careers-page__hero {
    padding-inline: 20px;
  }

  .careers-page__jobs,
  .careers-page__application {
    padding-inline: 20px;
  }

  .careers-page__jobs-grid,
  .career-application-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .careers-job {
    min-height: 250px;
    padding: 24px;
  }

  .careers-page__application-form {
    padding: 22px;
  }
}


.site-footer {
  --site-footer-slope: clamp(54px, 7vw, 104px);
  position: relative;
  overflow: visible;
  z-index: 6;
  isolation: isolate;
  color: #ffffff;
  background: #ffffff;
  margin-top: 0;
}

.site-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(135deg, rgba(28, 53, 94, 0.04) 0 1px, transparent 1px 13px);
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 82%, transparent 100%);
          mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 82%, transparent 100%);
  pointer-events: none;
  z-index: 0;
}

.site-footer__media,
.site-footer__overlay {
  position: absolute;
  inset: 0;
}

.site-footer__media {
  background: #ffffff;
  overflow: hidden;
  clip-path: polygon(0 var(--site-footer-slope), 100% 0, 100% 100%, 0 100%);
  -webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.56) 0, rgba(0, 0, 0, 0.9) clamp(28px, 4vw, 48px), #000 clamp(84px, 10vw, 124px));
          mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.56) 0, rgba(0, 0, 0, 0.9) clamp(28px, 4vw, 48px), #000 clamp(84px, 10vw, 124px));
  z-index: 1;
}

.site-footer__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.site-footer__overlay {
  display: block;
  background:
    linear-gradient(180deg, rgba(16, 55, 101, 0.88) 0%, rgba(16, 55, 101, 0.82) 36%, rgba(16, 55, 101, 0.9) 100%);
}

.site-footer__newsletter {
  position: absolute;
  left: 50%;
  top: 0;
  z-index: 5;
  box-sizing: border-box;
  width: min(920px, calc(100% - 48px));
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.9fr);
  gap: clamp(22px, 2.5vw, 34px);
  align-items: center;
  padding: clamp(28px, 3vw, 38px);
  border: 1px solid rgba(121, 163, 208, 0.18);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 26px 64px rgba(10, 22, 40, 0.18);
  transform: translate(-50%, -54%);
}

.site-footer__newsletter-copy {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.site-footer__newsletter-eyebrow {
  margin: 0;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.site-footer__newsletter-title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.5rem, 2vw, 2.3rem);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -0.04em;
}

.site-footer__newsletter-text {
  margin: 0;
  color: rgba(28, 53, 94, 0.66);
  font-size: 0.98rem;
  line-height: 1.55;
}

.site-footer__newsletter-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.site-footer__newsletter-label {
  color: rgba(28, 53, 94, 0.76);
  font-size: 0.88rem;
  font-weight: 500;
}

.site-footer__newsletter-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
}

.site-footer__newsletter-fields input {
  min-width: 0;
  min-height: 54px;
  padding: 0 18px;
  border: 1px solid rgba(121, 163, 208, 0.28);
  border-radius: 14px;
  background: #ffffff;
  color: var(--rm-navy);
  font: inherit;
}

.site-footer__newsletter-fields input::placeholder {
  color: rgba(28, 53, 94, 0.42);
}

.site-footer__newsletter-fields button {
  min-height: 54px;
  padding: 0 22px;
  border: 0;
  border-radius: 14px;
  background: var(--rm-teal);
  color: #ffffff;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
  transition: transform 220ms ease, box-shadow 220ms ease, background-color 220ms ease;
}

.site-footer__newsletter-fields button:hover {
  background: #109eac;
  transform: translateY(-1px);
  box-shadow: 0 14px 24px rgba(0, 163, 180, 0.22);
}

.site-footer__inner {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding: clamp(126px, 14vw, 160px) clamp(24px, 3.2vw, 56px) clamp(28px, 3vw, 40px);
}

.site-footer__main {
  display: grid;
  grid-template-columns: minmax(460px, 1.14fr) minmax(0, 0.86fr);
  gap: clamp(34px, 4vw, 72px);
  padding-bottom: clamp(28px, 3vw, 42px);
}

.site-footer__brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
}

.site-footer__wordmark {
  width: min(100%, 280px);
}

.site-footer__title {
  margin: 0;
  max-width: 28ch;
  color: #ffffff;
  font-size: clamp(1.12rem, 1.24vw, 1.48rem);
  font-weight: 300;
  line-height: 1.24;
  letter-spacing: -0.01em;
}

.site-footer__summary {
  margin: 0;
  max-width: 50ch;
  color: rgba(236, 242, 252, 0.72);
  font-size: 0.95rem;
  line-height: 1.55;
}

.site-footer__links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(24px, 2vw, 34px);
}

.site-footer__column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding-top: 8px;
}

.site-footer__label {
  margin: 0 0 6px;
  color: #46d0dc;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.site-footer__contact {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  color: #ffffff;
  font-style: normal;
  line-height: 1.5;
}

.site-footer__link {
  color: #ffffff;
  text-decoration: none;
  line-height: 1.45;
  transition: color 220ms ease, transform 220ms ease;
}

.site-footer__link:hover {
  color: #8ee5ec;
  transform: translateX(4px);
}

.site-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 24px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(236, 242, 252, 0.58);
  font-size: 0.92rem;
}

.site-footer__bottom a {
  color: #ffffff;
  text-decoration: none;
  transition: color 220ms ease;
}

.site-footer__bottom a:hover {
  color: #8ee5ec;
}

body:not(.asset-management-page) .site-footer {
  background: #ffffff;
}

body:not(.asset-management-page) .site-footer::before {
  content: none;
  display: none;
}

@media (max-width: 1040px) {
  .site-footer__newsletter {
    grid-template-columns: 1fr;
    transform: translate(-50%, -44%);
  }

  .site-footer__main {
    grid-template-columns: 1fr;
  }

  .site-footer__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .site-footer {
    margin-top: 26px;
  }

  .site-footer__newsletter {
    width: calc(100% - 28px);
    padding: 22px;
    transform: translate(-50%, -34%);
  }

  .site-footer__newsletter-fields {
    grid-template-columns: 1fr;
  }

  .site-footer__links {
    grid-template-columns: 1fr;
  }

  .site-footer__title {
    max-width: 12ch;
  }
}


.news-feature {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 0.74fr) minmax(0, 1.26fr);
  gap: clamp(12px, 1.3vw, 20px);
  align-items: center;
  margin-top: clamp(18px, 2vw, 28px);
  padding: clamp(10px, 0.85vw, 14px);
  border-radius: 26px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(255, 255, 255, 0.74));
  border: 1px solid rgba(28, 53, 94, 0.14);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px) saturate(1.1);
  backdrop-filter: blur(18px) saturate(1.1);
  text-decoration: none;
  transition:
    transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms ease;
}

.news-feature::before {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.94);
  pointer-events: none;
}

.news-feature:hover {
  transform: translateY(-4px);
  border-color: rgba(0, 163, 180, 0.18);
}

.news-feature__media {
  position: relative;
  z-index: 1;
  align-self: center;
  min-height: 0;
  aspect-ratio: 16 / 10.8;
  overflow: hidden;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(244, 249, 253, 0.9), rgba(232, 240, 247, 0.48));
}

.news-feature__media::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.72) 56%, #ffffff 100%);
  pointer-events: none;
  z-index: 1;
}

.news-feature__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  border-radius: inherit;
  -webkit-mask-image: linear-gradient(to bottom, #000 80%, rgba(0, 0, 0, 0.95) 90%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 80%, rgba(0, 0, 0, 0.95) 90%, transparent 100%);
}

.news-feature__body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
  padding: clamp(8px, 0.9vw, 14px) clamp(16px, 1.4vw, 24px) clamp(8px, 0.8vw, 14px) clamp(6px, 0.5vw, 10px);
}

.news-pill {
  align-self: flex-start;
  padding: 7px 16px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.07);
  color: var(--rm-navy);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.news-feature__title {
  margin: clamp(10px, 1vw, 14px) 0 0;
  color: var(--rm-ink);
  font-size: clamp(1.18rem, 1.4vw, 1.56rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.03em;
}

.news-feature__excerpt {
  margin: clamp(9px, 1vw, 13px) 0 0;
  max-width: 48ch;
  color: rgba(28, 53, 94, 0.6);
  font-size: clamp(0.9rem, 0.92vw, 0.98rem);
  line-height: 1.48;
}

.news-feature__meta {
  margin-top: clamp(14px, 1.5vw, 20px);
  padding-top: clamp(8px, 0.9vw, 12px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.news-feature__read {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--rm-navy);
  font-size: 0.92rem;
}

.news-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--rm-navy);
}

.news-feature__brand {
  color: var(--rm-navy);
  font-size: 1.05rem;
}

.news-feature__brand em {
  font-style: italic;
}

.news-feature__brand sup {
  font-size: 0.58em;
  vertical-align: super;
}


.news-grid {
  --news-grid-gap: clamp(16px, 1.6vw, 24px);
  --news-card-width: clamp(252px, 24.5vw, 346px);
  --news-loop-duration: 16s;
  box-sizing: border-box;
  margin-top: clamp(14px, 1.4vw, 22px);
  overflow: hidden;
  padding: 6px 0 4px;
}

.news-grid__track {
  display: flex;
  width: max-content;
  animation: newsCardLoop var(--news-loop-duration) linear infinite;
}

.news-grid__group {
  display: flex;
  gap: var(--news-grid-gap);
  width: max-content;
  padding-right: var(--news-grid-gap);
}

.news-grid:hover .news-grid__track,
.news-grid:focus-within .news-grid__track {
  animation-play-state: paused;
}

@keyframes newsCardLoop {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(var(--news-loop-distance, -50%), 0, 0); }
}

.news-card {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  flex: 0 0 var(--news-card-width);
  width: var(--news-card-width);
  border-radius: 20px;
  padding: clamp(8px, 0.7vw, 12px);
  background: transparent;
  border: 1px solid rgba(28, 53, 94, 0.16);
  box-shadow: none;
  text-decoration: none;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.news-card::before {
  content: "";
  position: absolute;
  inset: 5px;
  border-radius: 15px;
  border: 1px solid rgba(255, 255, 255, 0.94);
  pointer-events: none;
}

.news-card:hover {
  transform: translateY(-6px);
}

.news-card__media {
  position: relative;
  z-index: 1;
  aspect-ratio: 16 / 10.6;
  border-radius: 12px;
  overflow: hidden;
}

.news-card__media::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 24%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.72) 56%, #ffffff 100%);
  pointer-events: none;
  z-index: 1;
}

.news-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  -webkit-mask-image: linear-gradient(to bottom, #000 80%, rgba(0, 0, 0, 0.95) 90%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 80%, rgba(0, 0, 0, 0.95) 90%, transparent 100%);
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.news-card:hover .news-card__media img {
  transform: scale(1.05);
}

.news-pill--overlay {
  position: absolute;
  top: 14px;
  right: 14px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--rm-navy);
}

.news-card__body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: clamp(10px, 1vw, 14px) clamp(6px, 0.5vw, 8px) clamp(8px, 0.7vw, 10px);
}

.news-card__title {
  color: var(--rm-ink);
  font-size: clamp(1rem, 1.08vw, 1.12rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.news-card__title a {
  color: inherit;
  text-decoration: none;
}

.news-card__title a:hover,
.news-card__title a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.16em;
}

.news-card__excerpt {
  color: rgba(28, 53, 94, 0.58);
  font-size: clamp(0.86rem, 0.88vw, 0.94rem);
  line-height: 1.5;
}

@media (max-width: 900px) {
  .news-feature {
    grid-template-columns: 1fr;
  }

  .news-feature__media {
    aspect-ratio: 16 / 10;
    min-height: clamp(220px, 52vw, 320px);
  }

  .news-grid {
    overflow: visible;
    padding: 0;
  }

  .news-grid__track {
    display: block;
    width: 100%;
    animation: none;
  }

  .news-grid__group {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    padding-right: 0;
  }

  .news-grid__group.is-clone {
    display: none;
  }

  .news-card {
    width: auto;
    flex-basis: auto;
  }
}


.home-csr__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(28px, 3vw, 44px);
}

.home-csr__lead {
  align-items: center;
}

.home-csr__head {
  max-width: 980px;
  margin: 0 auto;
  display: grid;
  justify-items: center;
  text-align: center;
}

.home-csr__eyebrow {
  justify-content: center;
}

.home-csr__title {
  max-width: 11ch;
}

.home-csr__copy {
  max-width: 58ch;
  margin-top: 0;
}

.home-csr__preview {
  position: relative;
  width: min(100%, 760px);
  min-height: clamp(190px, 24vw, 286px);
  margin: clamp(20px, 2.4vw, 28px) auto;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 28px;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 108%, rgba(0, 163, 180, 0.18), transparent 44%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 248, 252, 0.94));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 24px 60px rgba(28, 53, 94, 0.08);
}

.home-csr__preview::before {
  content: "";
  position: absolute;
  inset: 12px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.92);
  pointer-events: none;
}

.home-csr.has-active-preview .home-csr__preview {
  border-color: rgba(0, 163, 180, 0.22);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 30px 72px rgba(28, 53, 94, 0.12);
}

.home-csr__scene {
  min-height: auto;
}

.home-csr__scene::before,
.home-csr__scene::after,
.home-csr__scene-core,
.home-csr__meta {
  display: none;
}

.home-csr__visuals {
  position: absolute;
  inset: clamp(18px, 2vw, 24px);
}

.home-csr__figure {
  transform: translateY(44px);
  transition:
    opacity 260ms ease,
    transform 460ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-csr__figure.is-active {
  transform: translateY(0);
}

.home-csr__nodes {
  position: relative;
  inset: auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(14px, 1.4vw, 20px);
}

.home-csr__node {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  width: auto;
  min-height: 156px;
  padding: 54px 24px 24px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 20px 42px rgba(28, 53, 94, 0.06);
  justify-items: start;
  text-align: left;
  transform: none;
  animation: none;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.home-csr__node::before {
  top: 22px;
  right: 24px;
  bottom: auto;
  left: 24px;
  width: auto;
  min-width: 0;
  height: 1px;
}

.home-csr__node::after {
  top: 17px;
  left: 24px;
  right: auto;
  bottom: auto;
}

.home-csr__node:hover,
.home-csr__node:focus-visible,
.home-csr__node.is-active {
  transform: translateY(-4px);
  box-shadow: 0 28px 56px rgba(28, 53, 94, 0.12);
}

.home-csr__node.is-active::before,
.home-csr__node:hover::before,
.home-csr__node:focus-visible::before {
  width: auto;
  opacity: 1;
}

.home-csr__node.is-active::after,
.home-csr__node:hover::after,
.home-csr__node:focus-visible::after {
  transform: scale(1.18);
  border-color: rgba(0, 163, 180, 0.8);
  background: var(--rm-teal);
  box-shadow: 0 0 0 12px rgba(0, 163, 180, 0.12);
}

.home-csr__node-index {
  margin-bottom: 8px;
}

.home-csr__node-name {
  font-size: clamp(1.02rem, 1vw, 1.12rem);
}

.home-csr__node-date {
  margin-top: 8px;
}

.home-news__head {
  display: grid;
  justify-items: center;
  text-align: center;
}

.home-news__eyebrow {
  justify-content: center;
}

.home-news__heading {
  display: grid;
  gap: 12px;
  justify-items: center;
}

.home-news__title {
  max-width: 14ch;
  text-align: center;
}

.home-news__stack {
  position: relative;
  width: min(1180px, 100%);
  margin: 0 auto;
}

.news-grid--boxed {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 26px);
  width: 100%;
  margin: clamp(18px, 2vw, 26px) auto 0;
  overflow: visible;
  padding: 0;
}

.home-news__stack > .home-news__rail {
  position: relative;
  display: block;
  width: 100%;
  margin: clamp(18px, 2vw, 26px) auto 0;
  padding: 0;
}

.home-news__stack > .home-news__rail::before {
  content: none;
}

.home-news__stack > .home-news__rail .news-grid--boxed {
  margin-top: 0;
}

.news-grid--boxed[data-news-loop] {
  --news-loop-duration: 24s;
  position: relative;
  display: block;
  overflow: hidden;
  padding: 6px 0 4px;
  -webkit-mask-image: none;
  mask-image: none;
}

.news-grid--boxed[data-news-loop] .news-grid__track {
  display: flex;
  width: max-content;
  animation: newsCardLoop var(--news-loop-duration) linear infinite;
  backface-visibility: hidden;
  will-change: transform;
}

.news-grid--boxed[data-news-loop] .news-grid__group {
  display: flex;
  gap: clamp(18px, 2vw, 26px);
  width: max-content;
  padding-right: clamp(18px, 2vw, 26px);
}

.news-grid--boxed[data-news-loop]:hover .news-grid__track,
.news-grid--boxed[data-news-loop]:focus-within .news-grid__track {
  animation-play-state: paused;
}

.news-grid--boxed[data-news-loop].is-user-controlled {
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: inline mandatory;
  scrollbar-width: none;
}

.news-grid--boxed[data-news-loop].is-user-controlled::-webkit-scrollbar {
  display: none;
}

.news-grid--boxed[data-news-loop].is-user-controlled .news-grid__track {
  animation: none;
}

.news-grid--boxed[data-news-loop].is-user-controlled .news-card--boxed {
  scroll-snap-align: start;
}

.news-grid--boxed[data-news-loop] .news-card--boxed {
  flex: 0 0 clamp(286px, 29vw, 374px);
  width: clamp(286px, 29vw, 374px);
  min-height: auto;
}

.news-card--boxed {
  width: auto;
  min-height: 100%;
  padding: clamp(10px, 0.9vw, 14px);
  border: 1px solid rgba(28, 53, 94, 0.12);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 249, 252, 0.94));
  box-shadow: none;
  transition:
    transform 360ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms ease;
}

.news-card--boxed:hover {
  border-color: rgba(0, 163, 180, 0.18);
}

.news-card--boxed .news-card__body {
  gap: 8px;
}

.home-news__footer {
  display: flex;
  justify-content: center;
  margin-top: clamp(24px, 2.6vw, 34px);
}

.home-news__arrows {
  position: absolute;
  z-index: 6;
  top: 50%;
  right: -58px;
  left: -58px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  width: auto;
  margin: 0;
  pointer-events: none;
  transform: translateY(-50%);
}

@media (max-width: 1320px) {
  .home-news__arrows {
    right: 12px;
    left: 12px;
  }
}

.home-news__arrow {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--rm-navy);
  cursor: pointer;
  font-size: 1.18rem;
  line-height: 1;
  pointer-events: auto;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

.home-news__arrow:hover,
.home-news__arrow:focus-visible {
  border-color: rgba(0, 163, 180, 0.36);
  background: var(--rm-teal);
  color: #ffffff;
  outline: none;
  transform: translateY(-2px);
}

.home-news__all {
  padding: 14px 22px;
  border: 1px solid rgba(28, 53, 94, 0.14);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: none;
}


body.home-mode .home-csr-list__row,
body.home-mode .news-feature,
body.home-mode .news-card,
body.home-mode .news-card--boxed,
body.home-mode .home-news__spotlight {
  border-radius: 10px;
}

body.home-mode .news-feature::before,
body.home-mode .news-card::before {
  border-radius: 8px;
}

body.home-mode .news-feature__media,
body.home-mode .news-card__media {
  border-radius: 8px;
}

body.home-mode .home-csr-list .cf-more-btn,
body.home-mode .home-news__all {
  border-radius: 10px;
}

@media (max-width: 1180px) {
  .home-csr__nodes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .news-grid--boxed {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .home-csr__preview {
    min-height: 210px;
  }

  .home-csr__nodes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-csr__node {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .home-news__arrows {
    position: static;
    justify-content: center;
    width: 100%;
    margin-top: clamp(16px, 2vw, 24px);
    pointer-events: auto;
    transform: none;
  }

  .news-grid--boxed {
    grid-template-columns: 1fr;
  }

  .news-grid--boxed[data-news-loop] {
    overflow: visible;
    padding: 0;
  }

  .news-grid--boxed[data-news-loop] .news-grid__track {
    display: block;
    width: 100%;
    animation: none;
  }

  .news-grid--boxed[data-news-loop] .news-grid__group {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    padding-right: 0;
  }

  .news-grid--boxed[data-news-loop] .news-grid__group.is-clone {
    display: none;
  }

  .news-grid--boxed[data-news-loop] .news-card--boxed {
    width: auto;
    flex-basis: auto;
  }
}

@media (max-width: 620px) {
  .home-csr__preview {
    min-height: 190px;
    margin-bottom: 20px;
  }

  .home-csr__nodes {
    grid-template-columns: 1fr;
  }

  .home-csr__node {
    padding: 52px 20px 20px;
  }
}


body.index2-page.static-image-version .motors-hero__content {
  align-items: center;
  justify-content: center;
  padding: clamp(24px, 4vw, 72px);
}

body.index2-page .motors-hero__copy {
  display: grid;
  justify-items: center;
  max-width: min(760px, 100%);
  text-align: center;
}

body.index2-page .motors-hero__title {
  min-height: 1.14em;
  max-width: 12ch;
  text-align: center;
}

body.index2-page .motors-hero__title-text {
  align-items: center;
}

body.index2-page .motors-hero__tagline {
  margin-top: 8px;
  max-width: 34rem;
}

body.index2-page.home-mode.home-hero-reveal .motors-hero--staged .motors-hero__copy {
  animation: none;
  opacity: 0;
  transform: translateY(18px);
}

body.index2-page.home-mode.home-hero-ready .motors-hero__copy {
  animation: index2HeroCopyIn 900ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes index2HeroCopyIn {
  from {
    opacity: 0;
    transform: translateY(18px);
    filter: blur(8px);
  }

  to {
    opacity: 1;
    transform: none;
    filter: blur(0);
  }
}

body.index2-page.home-mode .site-header:not(.is-compact) .menu-burger,
body.index2-page.home-mode .site-header:not(.is-compact) .primary-nav__item,
body.index2-page.home-mode .site-header:not(.is-compact) .icon-button,
body.index2-page.home-mode .site-header:not(.is-compact) .lang-button,
body.index2-page.home-mode .site-header:not(.is-compact) .mobile-menu-button {
  color: #103765;
}

body.index2-page.home-mode .site-header:not(.is-compact) .lang-button {
  border-color: rgba(16, 55, 101, 0.2);
}

body.index2-page .site-header.is-compact .site-header__shell {
  border-color: rgba(255, 255, 255, 0.58);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.58), rgba(255, 255, 255, 0.24)),
    linear-gradient(180deg, rgba(255, 255, 255, 0.28), rgba(255, 255, 255, 0.08));
  box-shadow:
    0 22px 58px rgba(16, 55, 101, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    inset 0 -1px 0 rgba(0, 163, 180, 0.1);
  -webkit-backdrop-filter: blur(26px) saturate(1.36);
  backdrop-filter: blur(26px) saturate(1.36);
}

body.index2-page .home-stats-band--editorial .home-stats-band__head {
  grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.8fr);
  align-items: end;
  gap: clamp(24px, 4vw, 72px);
}

body.index2-page .home-stats-band--editorial .home-stats-band__eyebrow {
  grid-column: 1 / -1;
}

body.index2-page .home-stats-band--editorial .home-stats-band__title {
  grid-column: 1 / 2;
  max-width: 16ch;
}

body.index2-page .home-stats-band--editorial .home-stats-band__copy {
  grid-column: 2 / 3;
  max-width: 48ch;
  margin: 0;
}

body.index2-page .home-csr-list__head {
  justify-items: center;
  text-align: center;
}

body.index2-page .home-csr-list__eyebrow {
  justify-content: center;
}

body.index2-page .home-csr-list__heading {
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
}

body.index2-page .home-csr-list__title {
  width: min(50vw, 760px);
  max-width: 100%;
  text-align: center;
}

body.index2-page .home-csr-list__row {
  background:
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.12), transparent 40%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(240, 246, 251, 0.94));
}

body.index2-page .home-csr-list__image {
  opacity: 0.22;
}

body.index2-page .home-csr-list__image img {
  padding: 0;
}

body.index2-page .news-feature {
  width: 100%;
  margin: 0 auto clamp(18px, 2vw, 26px);
}

body.index2-page .home-news__title {
  width: min(50vw, 760px);
  max-width: 100%;
}

body.index2-page .news-feature__title,
body.index2-page .news-card__title {
  color: #103765;
}

body.index2-page .news-grid--boxed {
  margin-top: 0;
}

body.index2-page .home-expertise-card,
body.index2-page .news-feature {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body.index2-page .news-card--boxed {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body.index2-page .news-card__media img,
body.index2-page .news-feature__media img {
  -webkit-mask-image: none;
  mask-image: none;
}

body.index2-page .mega-menu__list-link,
body.index2-page .mega-menu__list-title,
body.index2-page .mega-menu__list-arrow,
body.index2-page .context-tabs__button {
  color: #103765;
}

body.index2-page .mega-menu__list-link:hover,
body.index2-page .mega-menu__list-link.is-active,
body.index2-page .context-tabs__button:hover,
body.index2-page .context-tabs__button.is-active {
  color: var(--rm-teal);
}

body.index2-page .site-footer__newsletter {
  border: 1px solid rgba(255, 255, 255, 0.46);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.56), rgba(255, 255, 255, 0.22)),
    linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.1));
  box-shadow:
    0 30px 80px rgba(7, 17, 31, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    inset 0 -1px 0 rgba(255, 255, 255, 0.18);
  -webkit-backdrop-filter: blur(26px) saturate(1.35);
  backdrop-filter: blur(26px) saturate(1.35);
}

body.index2-page .site-footer {
  overflow: visible;
}

body.index2-page .site-footer__inner {
  width: min(1500px, calc(100% - 96px));
  padding-left: 0;
  padding-right: 0;
}

body.index2-page .site-footer__main {
  grid-template-columns: minmax(340px, 0.9fr) minmax(0, 1.1fr);
}

body.index2-page .site-footer__links {
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.index2-page .site-footer__column,
body.index2-page .site-footer__contact,
body.index2-page .site-footer__link {
  min-width: 0;
}

body.index2-page .site-footer__contact,
body.index2-page .site-footer__link {
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  body.index2-page .home-stats-band--editorial .home-stats-band__head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body.index2-page .home-stats-band--editorial .home-stats-band__title,
  body.index2-page .home-stats-band--editorial .home-stats-band__copy {
    grid-column: 1 / -1;
  }

  body.index2-page .home-stats-band--editorial .home-stats-band__copy {
    margin-top: 0;
  }

  body.index2-page .site-footer__inner {
    width: min(100% - 48px, 1500px);
  }

  body.index2-page .site-footer__main,
  body.index2-page .site-footer__links {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body.index2-page .motors-hero__title {
    max-width: 10ch;
  }
}

body.index2-page.home-mode .home-stats-band--editorial {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  margin: 0;
  padding: clamp(52px, 5.8vw, 82px) clamp(24px, 3.2vw, 56px);
  background:
    radial-gradient(circle at 86% 18%, rgba(0, 163, 180, 0.18), transparent 34%),
    linear-gradient(135deg, #06162c 0%, #0b2f5b 54%, #061b35 100%);
}

body.index2-page.home-mode .home-stats-band--editorial::before,
body.index2-page.home-mode .home-stats-band--editorial::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

body.index2-page.home-mode .home-stats-band--editorial::before {
  opacity: 0.36;
  background-image: radial-gradient(circle, rgba(236, 242, 252, 0.32) 0 1px, transparent 1.5px);
  background-size: 13px 13px;
  -webkit-mask-image: radial-gradient(circle at 88% 22%, #000 0%, transparent 42%);
  mask-image: radial-gradient(circle at 88% 22%, #000 0%, transparent 42%);
}

body.index2-page.home-mode .home-stats-band--editorial::after {
  opacity: 0.32;
  background:
    repeating-radial-gradient(ellipse at 0% 100%, rgba(125, 184, 214, 0.22) 0 1px, transparent 2px 22px),
    repeating-radial-gradient(ellipse at 100% 0%, rgba(125, 184, 214, 0.12) 0 1px, transparent 2px 26px);
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__head,
body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__inner {
  position: relative;
  z-index: 1;
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__head {
  align-items: start;
  margin-bottom: clamp(26px, 3vw, 42px);
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__eyebrow {
  color: rgba(236, 242, 252, 0.78);
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__eyebrow-line {
  background: rgba(236, 242, 252, 0.26);
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__title {
  color: #ffffff;
  font-size: clamp(2.15rem, 3.5vw, 3.55rem);
  font-weight: 300;
  letter-spacing: -0.035em;
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__title em {
  color: #22b7c4;
  font-weight: 400;
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__copy {
  color: rgba(236, 242, 252, 0.72);
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__inner {
  padding: clamp(24px, 2.6vw, 34px) 0 0;
  border-top: 1px solid rgba(236, 242, 252, 0.16);
  border-bottom: 0;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 0 clamp(22px, 2.4vw, 38px);
  text-align: left;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure:first-child {
  padding-left: 0;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure__icon {
  display: none;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure + .home-figure {
  border-left: 1px solid rgba(236, 242, 252, 0.16);
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure strong {
  color: #ffffff;
  font-size: clamp(2.2rem, 3.3vw, 3.7rem);
  font-weight: 400;
  letter-spacing: -0.035em;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure__sign {
  color: #22b7c4;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure__unit {
  color: #ffffff;
  font-weight: 150;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure__label {
  color: #ffffff;
  font-weight: 150;
}


body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__head {
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  text-align: center;
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__eyebrow {
  grid-column: 1 / -1;
  justify-content: center;
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__title,
body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__copy {
  grid-column: 1 / -1;
  width: min(60vw, 880px);
  max-width: 100%;
  text-align: center;
}


body.index2-page.home-mode .trusted__inner {
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: clamp(30px, 3.4vw, 52px);
}

body.index2-page.home-mode .trusted__intro {
  display: grid;
  justify-items: center;
  text-align: center;
}

body.index2-page.home-mode .trusted__eyebrow {
  justify-content: center;
}

body.index2-page.home-mode .trusted__title {
  width: min(60vw, 880px);
  max-width: 100%;
  text-align: center;
}

body.index2-page.home-mode .trusted__logos {
  width: 100%;
}


body.index2-page.home-mode .home-expertise-card::after {
  content: none;
}


body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__title,
body.index2-page.home-mode .home-news__title,
body.index2-page.home-mode .trusted__title {
  width: min(60vw, 880px);
  max-width: 100%;
  font-size: clamp(2.6rem, 4vw, 4rem);
  font-weight: 300;
  line-height: 0.98;
  letter-spacing: -0.06em;
  text-align: center;
}

body.index2-page.home-mode .home-stats-band__subtitle,
body.index2-page.home-mode .home-news__subtitle,
body.index2-page.home-mode .trusted__subtitle {
  max-width: 34ch;
  margin: 0 auto;
  color: var(--rm-navy);
  font-size: clamp(1.15rem, 1.7vw, 1.65rem);
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: -0.02em;
  text-align: center;
}

body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__subtitle {
  color: #ffffff;
  font-weight: 150;
}

body.index2-page.home-mode .home-news__subtitle {
  margin-inline: auto;
  color: #ffffff;
  text-align: center;
}

@media (max-width: 900px) {
  body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__title,
  body.index2-page.home-mode .home-stats-band--editorial .home-stats-band__copy,
  body.index2-page.home-mode .home-news__title,
  body.index2-page.home-mode .trusted__title {
    width: 100%;
    font-size: clamp(2.3rem, 11vw, 3.2rem);
  }

  body.index2-page.home-mode .home-stats-band__subtitle,
  body.index2-page.home-mode .home-news__subtitle,
  body.index2-page.home-mode .trusted__subtitle {
    font-size: 1.1rem;
  }
}


body.index2-page.home-mode .home-csr-list__inner {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: start;
  gap: clamp(32px, 4.5vw, 84px);
}

body.index2-page.home-mode .home-csr-list__head {
  justify-items: start;
  margin-bottom: 0;
  text-align: left;
}

body.index2-page.home-mode .home-csr-list__eyebrow {
  justify-content: flex-start;
}

body.index2-page.home-mode .home-csr-list__heading {
  grid-template-columns: minmax(0, 1fr);
  justify-items: start;
  gap: clamp(16px, 1.6vw, 24px);
}

body.index2-page.home-mode .home-csr-list__title {
  width: 100%;
  max-width: 16ch;
  font-size: clamp(2.1rem, 3.2vw, 3.35rem);
  line-height: 1.04;
  text-align: left;
}

body.index2-page.home-mode .home-csr-list__subtitle {
  max-width: 30ch;
  margin: 0;
  color: rgba(28, 53, 94, 0.72);
  font-size: clamp(1.02rem, 1.25vw, 1.2rem);
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
}

body.index2-page.home-mode .home-csr-list__copy {
  max-width: 44ch;
  text-align: left;
}

body.index2-page.home-mode .home-csr-list__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--rm-navy);
  font-size: 0.95rem;
  font-weight: 600;
  text-decoration: none;
  transition: gap 220ms ease, color 220ms ease;
}

body.index2-page.home-mode .home-csr-list__cta:hover,
body.index2-page.home-mode .home-csr-list__cta:focus-visible {
  gap: 16px;
  color: var(--rm-teal);
}

body.index2-page.home-mode .home-csr-list__rows {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(12px, 1.2vw, 18px);
}


body.index2-page.home-mode .home-csr-list__row,
body.index2-page.home-mode .home-csr-list__row--wide,
body.index2-page.home-mode .home-csr-list__row--reverse {
  --csr-image-space: 0;
  --csr-card-height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  grid-column: auto;
  gap: 12px;
  height: auto;
  min-height: clamp(150px, 13vw, 186px);
  padding: clamp(18px, 1.8vw, 26px) clamp(12px, 1.2vw, 18px);
  border-radius: 20px;
  text-align: center;
}

body.index2-page.home-mode .home-csr-list__card-kicker {
  order: -1;
  margin: 0;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: center;
  text-transform: uppercase;
}

body.index2-page.home-mode .home-csr-list__image,
body.index2-page.home-mode .home-csr-list__row--reverse .home-csr-list__image {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  width: clamp(58px, 5.4vw, 76px);
  max-width: none;
  height: clamp(58px, 5.4vw, 76px);
  margin: 0;
  opacity: 1;
  transform: none;
  mix-blend-mode: normal;
}

body.index2-page.home-mode .home-csr-list__image img {
  width: 100%;
  height: 100%;
  padding: 0;
  object-fit: contain;
}

body.index2-page.home-mode .home-csr-list__content,
body.index2-page.home-mode .home-csr-list__row--reverse .home-csr-list__content {
  display: block;
  min-height: 0;
  padding: 0;
  text-align: center;
}

body.index2-page.home-mode .home-csr-list__meta {
  display: none;
}

body.index2-page.home-mode .home-csr-list__name {
  margin: 0;
  font-size: clamp(0.92rem, 1vw, 1.05rem);
  line-height: 1.3;
}

@media (max-width: 900px) {
  body.index2-page.home-mode .home-csr-list__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(26px, 5vw, 40px);
  }

  body.index2-page.home-mode .home-csr-list__title {
    max-width: none;
  }

  body.index2-page.home-mode .home-csr-list__rows {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


body.index2-page.home-mode .home-stats-band--editorial .home-figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  row-gap: 10px;
  padding: 0 clamp(16px, 1.6vw, 26px);
  text-align: center;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure:first-child {
  padding-left: clamp(16px, 1.6vw, 26px);
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure strong {
  justify-content: center;
}

body.index2-page.home-mode .home-stats-band--editorial .home-figure__label {
  max-width: 100%;
}

body.index2-page .home-csr-list__row--reverse .home-csr-list__image {
  right: auto;
  left: clamp(18px, 2vw, 24px);
}

body.index2-page .home-csr-list__row--reverse .home-csr-list__content {
  padding-right: 0;
  padding-left: calc(var(--csr-image-space) + clamp(18px, 2vw, 28px));
}

.impact-label--reverse .impact-label__watermark {
  right: auto;
  left: clamp(20px, 2vw, 28px);
}

.impact-label--reverse .impact-label__content {
  padding-right: 0;
  padding-left: calc(var(--label-image-space) + clamp(18px, 2vw, 28px));
}

@media (max-width: 900px) {
  body.index2-page.home-mode .home-stats-band--editorial .home-figure {
    padding: 22px 18px;
  }

  body.index2-page.home-mode .home-stats-band--editorial .home-figure:first-child {
    padding-left: 18px;
  }

  body.index2-page.home-mode .home-stats-band--editorial .home-figure + .home-figure {
    border-left: 0;
  }

  body.index2-page.home-mode .home-stats-band--editorial .home-figure:nth-child(even) {
    border-left: 1px solid rgba(236, 242, 252, 0.16);
  }

  body.index2-page.home-mode .home-stats-band--editorial .home-figure:nth-child(n + 3) {
    border-top: 1px solid rgba(236, 242, 252, 0.16);
  }
}

@media (max-width: 520px) {
  body.index2-page.home-mode .home-stats-band--editorial .home-figure,
  body.index2-page.home-mode .home-stats-band--editorial .home-figure:first-child {
    padding: 20px 0;
  }

  body.index2-page.home-mode .home-stats-band--editorial .home-figure:nth-child(even) {
    border-left: 0;
  }

  body.index2-page.home-mode .home-stats-band--editorial .home-figure:nth-child(n + 2) {
    border-top: 1px solid rgba(236, 242, 252, 0.16);
  }
}


body.about-page {
  background:
    radial-gradient(circle at 12% 10%, rgba(0, 163, 180, 0.08), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(28, 53, 94, 0.08), transparent 22%),
    linear-gradient(180deg, #f7fbff 0%, #ffffff 36%, #f8fbff 100%);
}

body.about-page .site-main.site-main--flush {
  padding-bottom: 0 !important;
}

body.about-page .site-header.is-page:not(.is-compact) .site-header__inner {
  border-color: rgba(255, 255, 255, 0.26);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.16)),
    linear-gradient(180deg, rgba(255, 255, 255, 0.32), rgba(255, 255, 255, 0.08));
  box-shadow:
    0 18px 48px rgba(16, 55, 101, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.72);
  -webkit-backdrop-filter: blur(24px) saturate(1.3);
  backdrop-filter: blur(24px) saturate(1.3);
}

body.about-page .header-context__title,
body.about-page .menu-burger,
body.about-page .icon-button,
body.about-page .lang-button,
body.about-page .mobile-menu-button {
  color: #103765;
}

body.about-page .site-header.is-page .primary-nav {
  display: flex;
}

body.about-page .site-header.is-page .header-context,
body.about-page .site-header.is-page .context-tabs {
  display: none;
}

body.about-page .site-header.is-page .site-header__shell {
  padding: 0 18px;
}

body.about-page .site-footer__newsletter {
  width: min(920px, calc(100vw - 32px));
  max-width: calc(100vw - 32px);
}

.about-page__view {
  display: block;
}

.about-shell {
  width: min(1500px, calc(100% - 96px));
  margin: 0 auto;
}

.about-shell,
.about-section,
.about-story-panel,
.about-business-card,
.about-value-card,
.about-timeline__item,
.about-timeline__card,
body.about-page .site-footer__newsletter,
body.about-page .site-footer__inner,
body.about-page .site-footer__main,
body.about-page .site-footer__links,
body.about-page .site-footer__column {
  box-sizing: border-box;
}

.about-section {
  position: relative;
  z-index: 2;
  padding: clamp(72px, 8vw, 118px) 0;
}

.about-video-hero {
  --page-hero-offset: 116px;
  min-height: calc(100svh - var(--page-hero-offset));
  height: calc(100svh - var(--page-hero-offset));
}

@supports (height: 100dvh) {
  .about-video-hero {
    min-height: calc(100dvh - var(--page-hero-offset));
    height: calc(100dvh - var(--page-hero-offset));
  }
}

.about-video-hero::after {
  background:
    linear-gradient(180deg, rgba(6, 18, 36, 0.38), rgba(6, 18, 36, 0.52)),
    radial-gradient(circle at 50% 18%, rgba(255, 255, 255, 0.06), transparent 26%);
}

.about-video-hero .page-video-hero__media video {
  filter: saturate(1.04) contrast(1.05) brightness(0.6);
}

.about-video-hero .page-video-hero__content {
  animation: aboutHeroCopyIn 920ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.about-video-hero .page-video-hero__title {
  max-width: 11ch;
}

.about-video-hero .page-video-hero__text {
  max-width: 40ch;
}

@keyframes aboutHeroCopyIn {
  from {
    opacity: 0;
    transform: translateY(24px);
    filter: blur(8px);
  }

  to {
    opacity: 1;
    transform: none;
    filter: blur(0);
  }
}

.about-section__head {
  display: grid;
  justify-items: center;
  gap: 18px;
  max-width: 880px;
  margin: 0 auto clamp(36px, 4vw, 54px);
  text-align: center;
}

.about-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.about-title {
  margin: 0;
  max-width: 14ch;
  color: var(--rm-navy);
  font-size: clamp(2.35rem, 4.8vw, 5rem);
  font-weight: 300;
  line-height: 0.96;
  letter-spacing: -0.06em;
}

.about-title--center {
  max-width: 16ch;
}

.about-copy {
  margin: 0;
  max-width: 62ch;
  color: rgba(28, 53, 94, 0.7);
  font-size: clamp(1rem, 1.05vw, 1.1rem);
  line-height: 1.7;
}

.about-copy--center {
  text-align: center;
}

.about-story-grid {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
  gap: clamp(18px, 2vw, 28px);
  margin-top: clamp(-88px, -7vw, -44px);
}

.about-story-panel,
.about-business-card,
.about-value-card,
.about-timeline__card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(248, 251, 255, 0.84)),
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.08), transparent 32%);
  box-shadow:
    0 18px 48px rgba(16, 55, 101, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.about-story-panel {
  padding: clamp(24px, 2.5vw, 34px);
}

.about-story-panel--lead {
  min-height: 100%;
}

.about-story-panel--quote {
  display: grid;
  align-content: start;
  gap: 18px;
}

.about-quote__eyebrow {
  margin: 0;
  color: var(--rm-teal);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.about-quote {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.32rem, 1.6vw, 1.68rem);
  line-height: 1.4;
  letter-spacing: -0.03em;
}

.about-quote__text {
  margin: 0;
  color: rgba(28, 53, 94, 0.72);
  font-size: 1rem;
  line-height: 1.75;
}

.about-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.about-pill {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(16, 55, 101, 0.06);
  border: 1px solid rgba(28, 53, 94, 0.08);
  color: var(--rm-navy);
  font-size: 0.9rem;
  font-weight: 500;
}

.about-business-grid,
.about-values-grid {
  display: grid;
  gap: 18px;
}

.about-business-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.about-values-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-business-card,
.about-value-card {
  min-height: 260px;
  padding: 24px;
  transition:
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 260ms ease,
    border-color 260ms ease;
}

.about-business-card:hover,
.about-business-card:focus-within,
.about-value-card:hover,
.about-value-card:focus-within,
.about-timeline__card:hover {
  transform: translateY(-4px);
  border-color: rgba(0, 163, 180, 0.22);
  box-shadow:
    0 24px 56px rgba(16, 55, 101, 0.12),
    0 0 0 1px rgba(0, 163, 180, 0.08);
}

.about-business-card__index,
.about-value-card__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgba(0, 163, 180, 0.16), rgba(28, 53, 94, 0.08));
  color: var(--rm-teal);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.about-business-card h3,
.about-value-card h3 {
  margin: 22px 0 0;
  color: var(--rm-navy);
  font-size: clamp(1.22rem, 1.2vw, 1.38rem);
  line-height: 1.14;
  letter-spacing: -0.03em;
}

.about-business-card p,
.about-value-card p {
  margin: 14px 0 0;
  color: rgba(28, 53, 94, 0.7);
  font-size: 0.96rem;
  line-height: 1.65;
}

.about-stats {
  position: relative;
  z-index: 2;
}

.about-timeline {
  position: relative;
  display: grid;
  gap: 22px;
  padding: 12px 0;
}

.about-timeline::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  transform: translateX(-50%);
  background:
    linear-gradient(180deg, rgba(0, 163, 180, 0), rgba(0, 163, 180, 0.62) 12%, rgba(16, 55, 101, 0.2) 100%);
}

.about-timeline__item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 84px minmax(0, 1fr);
  align-items: start;
}

.about-timeline__item--right .about-timeline__card {
  grid-column: 3;
}

.about-timeline__item:not(.about-timeline__item--right) .about-timeline__card {
  grid-column: 1;
  justify-self: end;
}

.about-timeline__marker {
  position: relative;
  grid-column: 2;
  justify-self: center;
  width: 18px;
  height: 18px;
  margin-top: 22px;
  border-radius: 50%;
  border: 4px solid rgba(255, 255, 255, 0.96);
  background: var(--rm-teal);
  box-shadow:
    0 0 0 8px rgba(0, 163, 180, 0.12),
    0 10px 26px rgba(0, 163, 180, 0.26);
}

.about-timeline__card {
  width: min(100%, 620px);
  padding: 24px 24px 22px;
}

.about-timeline__year {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(16, 55, 101, 0.08);
  color: var(--rm-navy);
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.14em;
}

.about-timeline__list {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.about-timeline__list li {
  position: relative;
  padding-left: 18px;
  color: rgba(28, 53, 94, 0.74);
  font-size: 0.98rem;
  line-height: 1.62;
}

.about-timeline__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.about-title--compact {
  max-width: 12ch;
}

.about-story-panel__meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 8px;
}

.about-story-panel__meta {
  padding: 16px 18px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.72);
}

.about-story-panel__meta-value {
  display: block;
  color: var(--rm-navy);
  font-size: clamp(1.15rem, 1.6vw, 1.5rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.04em;
}

.about-story-panel__meta-label {
  display: block;
  margin-top: 8px;
  color: rgba(28, 53, 94, 0.62);
  font-size: 0.82rem;
  line-height: 1.45;
}

.about-business-grid--platform {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.about-business-grid--platform .about-business-card {
  display: flex;
  flex-direction: column;
  min-height: 320px;
}

.about-business-card__eyebrow {
  margin: 18px 0 0;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.about-business-card__metric {
  margin: auto 0 0;
  padding-top: 24px;
  color: var(--rm-navy);
  font-size: clamp(1.18rem, 1.36vw, 1.45rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.04em;
}

.about-business-card__metric span {
  display: block;
  margin-top: 7px;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.02em;
}

.about-highlight-list {
  display: grid;
  gap: 14px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.about-highlight-list li {
  position: relative;
  padding-left: 18px;
  color: rgba(28, 53, 94, 0.74);
  font-size: 0.98rem;
  line-height: 1.66;
}

.about-highlight-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.about-highlight-list strong {
  color: var(--rm-navy);
}

.about-section--timeline {
  padding-top: clamp(36px, 4vw, 60px);
}

.about-timeline-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 0 0 28px;
}

.about-timeline-nav__link {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.84);
  color: rgba(28, 53, 94, 0.78);
  text-decoration: none;
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    color 220ms ease,
    box-shadow 220ms ease;
}

.about-timeline-nav__link:hover,
.about-timeline-nav__link:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(0, 163, 180, 0.26);
  color: var(--rm-navy);
  box-shadow: 0 14px 28px rgba(16, 55, 101, 0.1);
}

.about-timeline__headline {
  margin: 18px 0 0;
  color: var(--rm-navy);
  font-size: clamp(1.18rem, 1.24vw, 1.42rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: -0.035em;
}

body.about-page [data-reveal],
body.about-page [data-reveal-group] {
  opacity: 0;
  transform: translateY(30px);
  transition:
    opacity 760ms ease,
    transform 920ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--reveal-delay, 0ms);
}

body.about-page [data-reveal].is-visible,
body.about-page [data-reveal-group].is-visible {
  opacity: 1;
  transform: none;
}

body.about-page .home-stats-band[data-reveal-group] .home-figure {
  transition-delay: 0ms;
}

body.about-page .home-stats-band[data-reveal-group].is-visible .home-figure:nth-child(2) { transition-delay: 90ms; }
body.about-page .home-stats-band[data-reveal-group].is-visible .home-figure:nth-child(3) { transition-delay: 180ms; }
body.about-page .home-stats-band[data-reveal-group].is-visible .home-figure:nth-child(4) { transition-delay: 270ms; }
body.about-page .home-stats-band[data-reveal-group].is-visible .home-figure:nth-child(5) { transition-delay: 360ms; }

@media (max-width: 1100px) {
  .about-business-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .about-values-grid {
    grid-template-columns: 1fr;
  }

  .about-story-grid {
    grid-template-columns: 1fr;
    margin-top: clamp(-52px, -5vw, -24px);
  }

  .about-business-grid--platform {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1040px) {
  body.about-page .site-header.is-page .primary-nav {
    display: none;
  }
}

@media (max-width: 900px) {
  .about-shell {
    width: min(100% - 48px, 1500px);
  }

  .about-timeline::before {
    left: 16px;
    transform: none;
  }

  .about-timeline__item {
    display: block;
    padding-left: 32px;
  }

  .about-timeline__marker {
    position: absolute;
    left: 7px;
    top: 20px;
    grid-column: auto;
    margin-top: 0;
  }

  .about-timeline__card,
  .about-timeline__item--right .about-timeline__card,
  .about-timeline__item:not(.about-timeline__item--right) .about-timeline__card {
    grid-column: auto;
    width: 100%;
    justify-self: stretch;
  }
}

@media (max-width: 640px) {
  .about-business-grid {
    grid-template-columns: 1fr;
  }

  .about-title {
    max-width: 11ch;
  }

  .about-story-panel,
  .about-business-card,
  .about-value-card,
  .about-timeline__card {
    border-radius: 24px;
  }

  .about-story-panel__meta-grid {
    grid-template-columns: 1fr;
  }

  .about-timeline-nav {
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 6px;
  }
}

body.service-page {
  background: #ffffff;
}

body.service-page .site-main.site-main--flush {
  padding-bottom: 0 !important;
}

body.service-page .site-header.is-page {
  padding-left: 0;
  padding-right: 0;
}

body.service-page .site-header.is-page .primary-nav {
  display: none;
}

body.service-page .site-header.is-page .header-context,
body.service-page .site-header.is-page .context-tabs {
  display: flex;
}

body.service-page .site-header.is-page .site-header__shell {
  padding: 0 28px;
}

body.service-page .site-header.is-page:not(.is-compact) .site-header__inner {
  width: 100%;
  max-width: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.92));
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  overflow: visible;
}

body.service-page .site-header.is-page:not(.is-compact) .context-tabs {
  padding: 12px 28px 14px;
  border-top: 1px solid rgba(28, 53, 94, 0.1);
  border-bottom: 1px solid rgba(28, 53, 94, 0.1);
}

body.service-page .site-header.is-page:not(.is-compact) .brand-link {
  width: 146px;
  min-width: 146px;
  height: 38px;
}

body.service-page .site-header.is-page:not(.is-compact) .brand-link__wordmark {
  clip-path: inset(0 0 0 0);
  opacity: 1;
  transform: translateY(-50%);
}

body.service-page .site-header.is-page:not(.is-compact) .brand-link__mark {
  opacity: 0;
  transform: translateY(-50%) scale(0.78);
}

body.service-page .header-context__title,
body.service-page .menu-burger,
body.service-page .icon-button,
body.service-page .lang-button,
body.service-page .mobile-menu-button {
  color: #103765;
}

body.service-page .header-context__divider {
  background: rgba(28, 53, 94, 0.16);
}

body.service-page .context-tabs__button {
  font-size: 0.9rem;
}

.cf-page__view {
  display: block;
}

.cf-shell {
  width: min(1480px, calc(100% - 88px));
  margin: 0 auto;
}

.cf-anchor-section {
  scroll-margin-top: 158px;
}

.cf-section {
  position: relative;
  z-index: 2;
  padding: clamp(74px, 8vw, 118px) 0;
}

.cf-section--approach {
  padding-bottom: clamp(26px, 3vw, 46px);
  overflow-x: clip;
}

.cf-section--alt {
  background:
    linear-gradient(180deg, rgba(16, 55, 101, 0.028), rgba(16, 55, 101, 0.012)),
    radial-gradient(circle at top right, rgba(0, 163, 180, 0.07), transparent 26%);
}

.cf-hero {
  --page-hero-offset: 184px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: auto;
  text-align: left;
  padding: clamp(40px, 4vw, 58px) 0;
}

.cf-hero::after {
  background:
    linear-gradient(90deg, rgba(6, 16, 32, 0.7) 0%, rgba(6, 16, 32, 0.52) 44%, rgba(6, 16, 32, 0.24) 100%),
    radial-gradient(circle at 78% 40%, rgba(0, 163, 180, 0.1), transparent 28%);
}

.cf-hero .page-video-hero__media video {
  filter: saturate(1.06) contrast(1.08) brightness(0.52);
}

.cf-hero__layout {
  position: relative;
  z-index: 1;
  width: min(1480px, calc(100% - 88px));
  display: grid;
  grid-template-columns: minmax(0, 1.14fr) minmax(280px, 0.62fr);
  gap: clamp(28px, 3vw, 56px);
  align-items: center;
}

.cf-hero__layout--single {
  grid-template-columns: minmax(0, 1fr);
  width: min(1080px, calc(100% - 88px));
}

.cf-hero__copy {
  max-width: 860px;
}

.cf-hero__eyebrow {
  margin: 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.cf-hero__title {
  margin: 18px 0 0;
  max-width: 20ch;
  color: #ffffff;
  font-size: clamp(2rem, 4.3vw, 3rem);
  line-height: 0.96;
  letter-spacing: -0.065em;
  font-weight: 300;
}

.cf-hero__lede {
  display: grid;
  gap: 18px;
  margin-top: 28px;
}

.cf-hero__lede p {
  margin: 0;
  max-width: 65ch;
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(0.98rem, 1.04vw, 1.08rem);
  line-height: 1.72;
}

.cf-hero__stats {
  display: grid;
  gap: clamp(18px, 2.1vw, 26px);
  padding-left: clamp(22px, 3vw, 38px);
  border-left: 1px solid rgba(255, 255, 255, 0.16);
}

.cf-hero__stat {
  position: relative;
  display: grid;
  gap: 10px;
  padding: 14px 18px 14px 0;
  border-radius: 24px;
  border: 1px solid transparent;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0));
  transition:
    transform var(--rm-ease),
    background var(--rm-ease),
    border-color var(--rm-ease),
    box-shadow var(--rm-ease);
}

.cf-hero__stat::before {
  content: "";
  position: absolute;
  inset: 16px auto 16px -14px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(113, 240, 236, 0.9), rgba(255, 255, 255, 0));
  opacity: 0;
  transition:
    opacity var(--rm-ease),
    transform var(--rm-ease);
}

.cf-hero__stat:hover,
.cf-hero__stat:focus-within {
  transform: translateX(10px);
  border-color: rgba(255, 255, 255, 0.12);
  background: linear-gradient(90deg, rgba(113, 240, 236, 0.12), rgba(255, 255, 255, 0.04));
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.16);
}

.cf-hero__stat:hover::before,
.cf-hero__stat:focus-within::before {
  opacity: 1;
  transform: scaleY(1.08);
}

.cf-hero__stat strong {
  display: flex;
  align-items: baseline;
  color: #16d5d2;
  font-size: clamp(2.2rem, 3.4vw, 4.15rem);
  font-weight: 300;
  line-height: 0.96;
  letter-spacing: -0.06em;
  font-variant-numeric: tabular-nums;
  transition:
    transform var(--rm-ease),
    color var(--rm-ease);
}

.cf-hero__stat .home-figure__sign {
  color: inherit;
}

.cf-hero__stat .home-figure__unit {
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.34em;
  font-weight: 500;
  letter-spacing: 0;
}

.cf-hero__stat-label {
  margin: 0;
  max-width: 18ch;
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(1rem, 1vw, 1.08rem);
  line-height: 1.46;
  transition:
    transform var(--rm-ease),
    color var(--rm-ease);
}

.cf-hero__stat:hover strong,
.cf-hero__stat:focus-within strong {
  transform: translateX(4px) scale(1.02);
  color: #71f0ec;
}

.cf-hero__stat:hover .cf-hero__stat-label,
.cf-hero__stat:focus-within .cf-hero__stat-label {
  transform: translateX(4px);
  color: rgba(255, 255, 255, 0.92);
}

.cf-hero__stat--network {
  grid-template-columns: 60px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  padding-top: 6px;
}

.cf-hero__icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.18);
}

.cf-hero__icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: #ffffff;
  stroke-width: 1.6;
}

.cf-hero__stat-label--network {
  max-width: 15ch;
  font-size: clamp(1.12rem, 1.2vw, 1.24rem);
  font-weight: 500;
  line-height: 1.42;
}

.cf-hero--asset-intro {
  min-height: auto;
  height: auto;
  place-items: initial;
  padding: 184px 0 112px;
  text-align: left;
  background:
    radial-gradient(circle at 12% 18%, rgba(0, 163, 180, 0.14), transparent 26%),
    radial-gradient(circle at 82% 16%, rgba(28, 53, 94, 0.08), transparent 24%),
    linear-gradient(180deg, #f8fbff 0%, #ffffff 58%, #f7fbff 100%);
}

.cf-hero--asset-intro::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 44%, rgba(255, 255, 255, 0) 74%),
    repeating-linear-gradient(
      118deg,
      rgba(28, 53, 94, 0.06) 0,
      rgba(28, 53, 94, 0.06) 2px,
      transparent 2px,
      transparent 12px
    );
  opacity: 0.48;
  pointer-events: none;
  mask-image: radial-gradient(circle at 40% 42%, #000 0%, rgba(0, 0, 0, 0.86) 54%, transparent 88%);
  -webkit-mask-image: radial-gradient(circle at 40% 42%, #000 0%, rgba(0, 0, 0, 0.86) 54%, transparent 88%);
}

.cf-hero--asset-intro::after {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.04)),
    radial-gradient(circle at 80% 26%, rgba(0, 163, 180, 0.12), transparent 22%);
}

.cf-hero--asset-intro .page-video-hero__media {
  inset: 72px 0 0 52%;
  background: transparent;
  opacity: 0.24;
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.92) 20%, #000 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.92) 20%, #000 100%);
}

.cf-hero--asset-intro .page-video-hero__media img {
  object-position: center right;
  filter: saturate(1.08) contrast(1.06) brightness(1.02);
}

.cf-hero__layout--asset {
  width: min(1460px, calc(100% - 88px));
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
  gap: clamp(36px, 4vw, 74px);
  align-items: center;
}

.cf-hero__copy--asset {
  position: relative;
  z-index: 1;
  max-width: 780px;
}

.cf-hero--asset-intro .cf-hero__eyebrow {
  color: rgba(28, 53, 94, 0.58);
}

.cf-hero__pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.cf-hero__pill {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 10px 28px rgba(17, 29, 51, 0.06);
  color: rgba(28, 53, 94, 0.76);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  backdrop-filter: blur(12px);
}

.cf-hero__title--asset {
  margin-top: 28px;
  max-width: 9ch;
  color: var(--rm-navy);
  font-size: clamp(3.3rem, 5.2vw, 5.5rem);
  line-height: 0.92;
  letter-spacing: -0.07em;
}

.cf-hero__deck {
  margin: 22px 0 0;
  max-width: 18ch;
  color: rgba(28, 53, 94, 0.82);
  font-size: clamp(1.18rem, 1.65vw, 1.72rem);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.04em;
}

.cf-hero__lede--asset {
  gap: 18px;
  margin-top: 30px;
}

.cf-hero__lede--asset p {
  max-width: 60ch;
  color: rgba(28, 53, 94, 0.78);
  font-size: clamp(1rem, 1.02vw, 1.08rem);
}

.cf-hero__metric-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 38px;
}

.cf-hero__metric-card {
  padding: 22px 24px 20px;
  border-radius: 26px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 22px 52px rgba(17, 29, 51, 0.08);
  backdrop-filter: blur(12px);
}

.cf-hero__metric-card strong {
  display: flex;
  align-items: baseline;
  gap: 4px;
  color: var(--rm-navy);
  font-size: clamp(2rem, 2.7vw, 3rem);
  font-weight: 400;
  line-height: 0.92;
  letter-spacing: -0.06em;
  font-variant-numeric: tabular-nums;
}

.cf-hero__metric-card .home-figure__sign {
  color: var(--rm-teal);
}

.cf-hero__metric-card .home-figure__unit {
  color: rgba(28, 53, 94, 0.62);
  font-size: 0.34em;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.cf-hero__metric-card .cf-hero__stat-label {
  max-width: none;
  color: rgba(28, 53, 94, 0.74);
  font-size: 0.96rem;
  line-height: 1.45;
}

.cf-hero__metric-card--accent {
  background: linear-gradient(145deg, #17355a 0%, #1d5c7d 100%);
  border-color: transparent;
  box-shadow: 0 28px 60px rgba(20, 40, 68, 0.2);
}

.cf-hero__metric-card--accent strong,
.cf-hero__metric-card--accent .cf-hero__stat-label,
.cf-hero__metric-card--accent .home-figure__unit {
  color: #ffffff;
}

.cf-hero__metric-card--accent .home-figure__sign {
  color: #71f0ec;
}

.cf-hero__stage,
.cf-hero__stage-frame {
  position: relative;
  min-height: 690px;
}

.cf-hero__stage-frame::before,
.cf-hero__stage-frame::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
}

.cf-hero__stage-frame::before {
  inset: 52px 18px 52px 46px;
  border-radius: 44px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(255, 255, 255, 0.36));
  box-shadow: 0 34px 80px rgba(20, 40, 68, 0.14);
  backdrop-filter: blur(18px);
}

.cf-hero__stage-frame::after {
  inset: 0 0 120px 120px;
  border-radius: 34px 34px 160px 34px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: linear-gradient(180deg, rgba(28, 53, 94, 0.06), rgba(255, 255, 255, 0));
}

.cf-hero__image-card {
  position: absolute;
  z-index: 1;
  margin: 0;
  overflow: hidden;
  border: 12px solid rgba(255, 255, 255, 0.82);
  box-shadow: var(--rm-shadow-strong);
  backdrop-filter: blur(12px);
  transition:
    transform 720ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow var(--rm-ease),
    border-color var(--rm-ease);
}

.cf-hero__image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-hero__image-card--primary {
  top: 86px;
  right: 0;
  width: min(100%, 590px);
  aspect-ratio: 0.88;
  border-radius: 34px 34px 150px 34px;
}

.cf-hero__image-card--secondary {
  left: 0;
  bottom: 0;
  width: 44%;
  min-width: 240px;
  aspect-ratio: 1.08;
  border-radius: 28px 116px 28px 28px;
}

.cf-hero__manifesto {
  position: absolute;
  top: 18px;
  left: 0;
  z-index: 2;
  width: min(100%, 320px);
  padding: 24px 26px 26px;
  border-radius: 28px;
  background: rgba(20, 40, 68, 0.94);
  box-shadow: 0 28px 64px rgba(20, 40, 68, 0.28);
  color: #ffffff;
}

.cf-hero__manifesto-label {
  margin: 0;
  color: #71f0ec;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.cf-hero__manifesto-copy {
  margin: 14px 0 0;
  color: rgba(255, 255, 255, 0.86);
  font-size: 1rem;
  line-height: 1.7;
}

.cf-hero__signal-card {
  position: absolute;
  right: 28px;
  bottom: 34px;
  z-index: 2;
  min-width: 280px;
  padding: 22px 24px 24px;
  border-radius: 24px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 20px 52px rgba(20, 40, 68, 0.14);
  backdrop-filter: blur(12px);
}

.cf-hero__signal-label {
  display: block;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.cf-hero__signal-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.cf-hero__signal-list span {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.06);
  color: var(--rm-navy);
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.cf-section__head {
  display: grid;
  gap: 18px;
  max-width: 920px;
  margin-bottom: 0;
}

.cf-section__head--center {
  justify-items: center;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.cf-section__head--center .cf-title,
.cf-section__head--center .cf-copy {
  max-width: 18ch;
}

.cf-section__head--center .cf-copy {
  max-width: 62ch;
}

.cf-positioning-section__head {
  margin: 0 auto clamp(26px, 3vw, 38px);
}

.cf-positioning-section__head .cf-title {
  max-width: 19ch;
}

.cf-positioning-section__head .cf-copy {
  max-width: 34ch;
}

.cf-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.cf-title {
  margin: 0;
  max-width: 14ch;
  color: var(--rm-navy);
  font-size: clamp(1.95rem, 3.8vw, 2.5rem);
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.06em;
}

.cf-copy {
  margin: 0;
  max-width: 64ch;
  color: rgba(28, 53, 94, 0.7);
  font-size: clamp(1rem, 1.04vw, 1.08rem);
  line-height: 1.72;
}

.cf-title--editorial {
  max-width: 16ch;
}

.cf-editorial {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(640px, 1.22fr);
  gap: clamp(28px, 3vw, 52px);
  align-items: center;
}

.cf-editorial--showcase {
  align-items: start;
}

.cf-editorial__copy {
  max-width: 840px;
  width: 100%;
}

.cf-approach-head {
  grid-column: 1 / -1;
  display: grid;
  justify-items: center;
  gap: 14px;
  margin-bottom: 6px;
  text-align: center;
}

.cf-approach-list {
  display: grid;
  gap: 18px;
  width: 100%;
}

.cf-title--approach {
  max-width: none;
  color: var(--rm-navy);
  font-size: clamp(2.2rem, 3.6vw, 3.7rem);
}

.cf-title--approach::after {
  content: "";
  display: block;
  width: 110px;
  height: 4px;
  margin: 18px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0, 163, 180, 0.24), var(--rm-teal), rgba(0, 163, 180, 0.24));
  transform: scaleX(0.34);
  opacity: 0.28;
  transition:
    transform 920ms cubic-bezier(0.22, 1, 0.36, 1) 90ms,
    opacity 520ms ease 90ms;
}

.cf-approach-card {
  --approach-accent: var(--rm-teal);
  --approach-deep: var(--rm-navy);
  --approach-soft: rgba(0, 163, 180, 0.05);
  --approach-line: linear-gradient(180deg, rgba(113, 240, 236, 0.3) 0%, var(--approach-accent) 42%, var(--approach-deep) 100%);
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  position: relative;
  overflow: visible;
  isolation: isolate;
  z-index: 0;
  min-height: 128px;
  padding: 22px 28px 22px 38px;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.985);
  border: 1px solid rgba(28, 53, 94, 0.045);
  box-shadow: none;
  transition:
    background 420ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 420ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-approach-card::before {
  content: "";
  position: absolute;
  inset: 18px auto 18px 0;
  width: 4px;
  border-radius: 0 999px 999px 0;
  background: var(--approach-line);
  opacity: 0.96;
  transition:
    width 320ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 320ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-approach-card::after {
  content: none;
}

.cf-approach-card:hover,
.cf-approach-card:focus-within {
  background: rgba(255, 255, 255, 0.995);
  transform: translate3d(8px, -4px, 0);
  border-color: rgba(28, 53, 94, 0.07);
  box-shadow: 0 6px 14px rgba(20, 40, 68, 0.02);
  z-index: 2;
}

.cf-approach-card:hover::before,
.cf-approach-card:focus-within::before {
  width: 6px;
  opacity: 1;
  box-shadow: 0 0 18px rgba(0, 163, 180, 0.12);
}

.cf-approach-card:hover .cf-approach-card__index,
.cf-approach-card:focus-within .cf-approach-card__index {
  color: var(--approach-accent);
  transform: translateY(-2px);
}

.cf-approach-card:hover .cf-approach-card__text,
.cf-approach-card:focus-within .cf-approach-card__text {
  color: rgba(28, 53, 94, 0.96);
}

.cf-approach-card--tools {
  --approach-accent: #00a3b4;
  --approach-deep: #17355a;
  --approach-soft: rgba(0, 163, 180, 0.05);
  --approach-line: linear-gradient(180deg, rgba(113, 240, 236, 0.36) 0%, #00a3b4 42%, #17355a 100%);
  border-radius: 28px 58px 28px 28px;
}

.cf-approach-card--team {
  --approach-accent: #335b8c;
  --approach-deep: #1d3557;
  --approach-soft: rgba(51, 91, 140, 0.05);
  --approach-line: linear-gradient(180deg, rgba(113, 240, 236, 0.24) 0%, #4a73a5 38%, #1d3557 100%);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.985);
}

.cf-approach-card--risk {
  --approach-accent: #1c355e;
  --approach-deep: #0f223f;
  --approach-soft: rgba(28, 53, 94, 0.05);
  --approach-line: linear-gradient(180deg, rgba(113, 240, 236, 0.18) 0%, #335b8c 30%, #1c355e 68%, #0f223f 100%);
  border-radius: 28px 28px 88px 28px;
  background: rgba(255, 255, 255, 0.985);
}

.cf-approach-card__index {
  color: rgba(28, 53, 94, 0.28);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 4.4rem;
  font-style: italic;
  line-height: 0.9;
  transition:
    color 420ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-approach-card__icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  color: var(--approach-accent);
  transition:
    color 420ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-approach-card__icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cf-approach-card:hover .cf-approach-card__icon,
.cf-approach-card:focus-within .cf-approach-card__icon {
  color: var(--approach-deep);
  transform: translateY(-2px) scale(1.05);
}

.cf-approach-card__text {
  margin: 0;
  color: rgba(28, 53, 94, 0.92);
  max-width: 42ch;
  font-size: clamp(1rem, 1.03vw, 1.06rem);
  font-weight: 400;
  line-height: 1.48;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}


.about-narrative {
  position: relative;
  overflow: hidden;
  scroll-margin-top: clamp(110px, 12vw, 150px);
  padding: clamp(74px, 8vw, 122px) 0;
  background: #fff;
}

.about-narrative + .about-narrative {
  padding-top: clamp(42px, 5vw, 78px);
}

.about-narrative::before {
  content: none;
}

.about-narrative__head {
  position: relative;
  z-index: 1;
  width: min(920px, calc(100% - 48px));
  margin: 0 auto clamp(34px, 4.5vw, 58px);
  text-align: center;
}

.about-narrative__shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
  align-items: stretch;
  gap: 0;
  width: min(1160px, calc(100% - 48px));
  margin: 0 auto;
  overflow: hidden;
  min-height: clamp(360px, 33vw, 500px);
  border: 1px solid rgba(28, 53, 94, 0.06);
  border-radius: clamp(28px, 3vw, 42px);
  background: transparent;
  box-shadow: none;
}

.about-narrative__shell::before {
  content: none;
}

.about-narrative--reverse .about-narrative__shell::before {
  content: none;
}

.about-narrative:not(.about-narrative--reverse) .about-narrative__copy {
  order: 2;
}

.about-narrative:not(.about-narrative--reverse) .about-narrative__visual {
  order: 1;
}

.about-narrative--reverse .about-narrative__copy {
  order: 1;
}

.about-narrative--reverse .about-narrative__visual {
  order: 2;
}

.about-narrative__copy {
  position: relative;
  z-index: 2;
  display: grid;
  align-content: center;
  min-height: 100%;
  padding: clamp(34px, 4.6vw, 74px);
  background: transparent;
  box-shadow: none;
}

.about-narrative__copy::before {
  content: "";
  position: absolute;
  top: clamp(34px, 4vw, 64px);
  bottom: clamp(34px, 4vw, 64px);
  left: 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(0, 163, 180, 0), var(--rm-teal), rgba(0, 163, 180, 0));
}

.about-narrative--reverse .about-narrative__copy::before {
  right: 0;
  left: auto;
}

.about-narrative__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}

.about-narrative__eyebrow-line {
  display: inline-block;
  width: 34px;
  height: 1px;
  background: rgba(28, 53, 94, 0.22);
}

.about-narrative__eyebrow-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--rm-teal);
  box-shadow: 0 0 0 6px rgba(0, 163, 180, 0.1);
}

.about-narrative__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.7rem, 5vw, 4.65rem);
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.065em;
  text-align: center;
}

.about-narrative__title::after {
  content: "";
  display: block;
  width: 92px;
  height: 3px;
  margin: clamp(18px, 2vw, 24px) auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0, 163, 180, 0.12), var(--rm-teal), rgba(0, 163, 180, 0.12));
}

.about-narrative__text {
  display: grid;
  gap: 16px;
  margin-top: 0;
  max-width: 48ch;
}

.about-narrative__text p {
  margin: 0;
  color: rgba(28, 53, 94, 0.74);
  font-size: clamp(1.04rem, 1.15vw, 1.18rem);
  font-weight: 500;
  line-height: 1.76;
}

.about-narrative__link {
  width: fit-content;
  margin-top: 28px;
}

.about-narrative__visual {
  position: relative;
  z-index: 1;
  height: 100%;
  min-height: inherit;
}

.about-narrative__visual::before {
  content: none;
}

.about-narrative__image,
.about-narrative__placeholder {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: rgba(255, 255, 255, 0.7);
  box-shadow: none;
}

.about-narrative:not(.about-narrative--reverse) .about-narrative__image,
.about-narrative:not(.about-narrative--reverse) .about-narrative__placeholder {
  border-radius: clamp(24px, 2.6vw, 38px) 0 0 clamp(24px, 2.6vw, 38px);
}

.about-narrative--reverse .about-narrative__image,
.about-narrative--reverse .about-narrative__placeholder {
  border-radius: 0 clamp(24px, 2.6vw, 38px) clamp(24px, 2.6vw, 38px) 0;
}

.about-narrative__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, transparent 58%, rgba(255, 255, 255, 0.26)),
    radial-gradient(circle at 12% 10%, rgba(255, 255, 255, 0.34), transparent 34%);
  pointer-events: none;
}

.about-narrative__image img,
.about-narrative__image video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  transform: scale(1.01);
  transition: transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.about-narrative__image:hover img,
.about-narrative__image:hover video {
  transform: scale(1.045);
}

.about-narrative__placeholder {
  display: grid;
  place-items: center;
}

.about-narrative__placeholder img {
  width: clamp(74px, 10vw, 126px);
  opacity: 0.16;
}

.about-narrative--rotator {
  background: #fff;
}

.about-narrative-rotator__shell {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  gap: clamp(20px, 2.6vw, 34px);
  width: min(940px, calc(100% - 48px));
  min-height: clamp(220px, 24vw, 320px);
  margin: 0 auto;
  overflow: visible;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.about-narrative-rotator__shell::before {
  content: none;
}

.about-narrative-rotator__stage {
  display: grid;
  width: min(780px, 100%);
  min-height: clamp(178px, 17vw, 235px);
}

.about-narrative-rotator__slide {
  grid-area: 1 / 1;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: clamp(22px, 2.5vw, 32px);
  opacity: 0;
  transform: translateY(22px);
  filter: blur(8px);
  pointer-events: none;
  transition:
    opacity 760ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 760ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.about-narrative-rotator__slide.is-active {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
  pointer-events: auto;
}

.about-narrative-rotator__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.45rem, 5.2vw, 5rem);
  font-weight: 300;
  line-height: 0.98;
  letter-spacing: -0.065em;
  text-align: center;
  text-wrap: balance;
}

.about-narrative-rotator__title::after {
  content: "";
  display: block;
  width: 92px;
  height: 3px;
  margin: clamp(18px, 2vw, 24px) auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0, 163, 180, 0.12), var(--rm-teal), rgba(0, 163, 180, 0.12));
}

.about-narrative-rotator__text {
  display: grid;
  gap: 16px;
  max-width: 62ch;
  margin: 0 auto;
  text-align: center;
}

.about-narrative-rotator__text p {
  margin: 0;
  color: rgba(28, 53, 94, 0.74);
  font-size: clamp(1.04rem, 1.15vw, 1.18rem);
  font-weight: 500;
  line-height: 1.76;
}

.about-narrative-rotator__controls {
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.about-narrative-rotator__dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 1px solid rgba(0, 163, 180, 0.34);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  cursor: pointer;
  transition:
    width 220ms ease,
    background-color 220ms ease,
    border-color 220ms ease;
}

.about-narrative-rotator__dot.is-active {
  width: 28px;
  border-color: var(--rm-teal);
  background: var(--rm-teal);
}

@media (max-width: 980px) {
  .about-narrative {
    padding: clamp(56px, 10vw, 86px) 0;
  }

  .about-narrative__head {
    width: min(680px, calc(100% - 32px));
    margin-bottom: clamp(26px, 6vw, 42px);
  }

  .about-narrative__shell {
    grid-template-columns: 1fr;
    width: min(680px, calc(100% - 32px));
    min-height: 0;
    gap: 0;
  }

  .about-narrative__shell::before {
    inset: 0;
  }

  .about-narrative .about-narrative__visual,
  .about-narrative--reverse .about-narrative__visual {
    order: 1;
  }

  .about-narrative .about-narrative__copy,
  .about-narrative--reverse .about-narrative__copy {
    order: 2;
  }

  .about-narrative__visual {
    min-height: clamp(250px, 58vw, 360px);
  }

  .about-narrative__copy,
  .about-narrative--reverse .about-narrative__copy {
    min-height: 0;
    padding: clamp(28px, 7vw, 42px);
  }

  .about-narrative__copy::before,
  .about-narrative--reverse .about-narrative__copy::before {
    top: 0;
    right: clamp(28px, 7vw, 42px);
    bottom: auto;
    left: clamp(28px, 7vw, 42px);
    width: auto;
    height: 4px;
    background: linear-gradient(90deg, rgba(0, 163, 180, 0), var(--rm-teal), rgba(0, 163, 180, 0));
  }

  .about-narrative__title {
    font-size: clamp(2.35rem, 11vw, 3.8rem);
  }

  .about-narrative-rotator__shell {
    width: min(680px, calc(100% - 32px));
    min-height: clamp(220px, 54vw, 320px);
  }
}

@media (max-width: 560px) {
  .about-narrative__head {
    width: min(100% - 24px, 520px);
  }

  .about-narrative__shell {
    width: min(100% - 24px, 520px);
  }

  .about-narrative__copy {
    padding: 24px 22px;
  }

  .about-narrative__eyebrow {
    letter-spacing: 0.2em;
  }

  .about-narrative__text p {
    font-size: 1rem;
    line-height: 1.68;
  }

  .about-narrative__image,
  .about-narrative__placeholder {
    border-radius: 0;
  }

  .about-narrative:not(.about-narrative--reverse) .about-narrative__image,
  .about-narrative:not(.about-narrative--reverse) .about-narrative__placeholder,
  .about-narrative--reverse .about-narrative__image,
  .about-narrative--reverse .about-narrative__placeholder {
    border-radius: clamp(22px, 6vw, 28px) clamp(22px, 6vw, 28px) 0 0;
  }

  .about-narrative-rotator__shell {
    width: min(100% - 24px, 520px);
    min-height: 430px;
    padding: 34px 22px 58px;
  }

  .about-narrative-rotator__stage {
    min-height: 310px;
  }

  .about-narrative-rotator__title {
    font-size: clamp(2.2rem, 12vw, 3.2rem);
  }

  .about-narrative-rotator__text p {
    font-size: 1rem;
    line-height: 1.68;
  }

  .about-narrative-rotator__controls {
    right: 22px;
    bottom: 24px;
  }
}

.cf-editorial__text {
  display: grid;
  gap: 28px;
  margin-top: 28px;
}

.cf-editorial__text p {
  margin: 0;
  color: rgba(28, 53, 94, 0.8);
  font-size: clamp(1rem, 1.06vw, 1.12rem);
  line-height: 1.82;
}

.cf-editorial__stage {
  position: relative;
  align-self: start;
  width: 100%;
  justify-self: stretch;
  z-index: 2;
  overflow: visible;
}

.cf-editorial__stage-frame {
  min-height: 564px;
  position: relative;
  overflow: visible;
}

.cf-editorial__stage-frame::before,
.cf-editorial__stage-frame::after {
  content: none;
}

.cf-editorial__image-card--primary {
  top: 0;
  left: -15px;
  right: auto;
  width: 100%;
  aspect-ratio: 3 / 2;
  border-width: 8px;
  border-radius: 32px;
  border-color: rgba(255, 255, 255, 0.96);
  box-shadow: none;
  backdrop-filter: none;
  z-index: 2;
}

.cf-editorial__image-card--primary img {
  object-position: center center;
}

.cf-editorial__logo-card {
  display: grid;
  place-items: center;
  top: 12px;
  right: 14px;
  left: auto;
  bottom: auto;
  width: min(24%, 188px);
  min-width: 156px;
  padding: 16px 14px;
  border-width: 9px;
  border-radius: 28px 28px 28px 96px;
  border-color: rgba(255, 255, 255, 0.98);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 18px rgba(20, 40, 68, 0.04);
  backdrop-filter: none;
  z-index: 4;
  transition:
    transform 760ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow var(--rm-ease);
}

.cf-editorial__logo-stack {
  display: grid;
  gap: 12px;
  width: min(100%, 184px);
}

.cf-editorial__logo-stack img {
  width: 100%;
  height: auto;
  transition:
    transform 760ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity var(--rm-ease);
}

.cf-editorial__stage:hover .cf-editorial__image-card--primary {
  transform: translate3d(-6px, -6px, 0);
  box-shadow: 0 8px 18px rgba(20, 40, 68, 0.035);
  z-index: 3;
}

.cf-editorial__stage:hover .cf-editorial__image-card--primary img {
  transform: scale(1.012);
}

.cf-editorial__stage:hover .cf-editorial__logo-card {
  transform: translate3d(-4px, -10px, 0) rotate(-2deg);
  box-shadow: 0 10px 20px rgba(20, 40, 68, 0.05);
  z-index: 5;
}

.cf-editorial__stage:hover .cf-editorial__logo-stack img:first-child {
  transform: translateX(-4px);
}

.cf-editorial__stage:hover .cf-editorial__logo-stack img:last-child {
  transform: translateX(4px);
}

.cf-section--governance {
  position: relative;
  overflow: hidden;
  padding-top: clamp(42px, 4vw, 64px);
  padding-bottom: clamp(44px, 5vw, 72px);
  background:
    linear-gradient(180deg, rgba(248, 251, 255, 0.92) 0%, rgba(255, 255, 255, 0.98) 100%);
}

.cf-section--governance::before,
.cf-section--governance::after {
  content: none;
}

.cf-section--governance::before {
  inset: 48px auto auto -80px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(28, 53, 94, 0.08), transparent 68%);
}

.cf-section--governance::after {
  inset: auto -120px 32px auto;
  width: 320px;
  height: 320px;
  border-radius: 38px;
  border: 1px solid rgba(28, 53, 94, 0.06);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.18), rgba(0, 163, 180, 0.05)),
    repeating-linear-gradient(
      -45deg,
      transparent 0,
      transparent 12px,
      rgba(28, 53, 94, 0.035) 12px,
      rgba(28, 53, 94, 0.035) 14px
    );
  transform: rotate(10deg);
  opacity: 0.6;
}

.cf-governance {
  display: grid;
  grid-template-columns: minmax(320px, 0.94fr) minmax(0, 1.06fr);
  grid-template-areas:
    "copy copy"
    "media cards";
  column-gap: clamp(34px, 4vw, 72px);
  row-gap: clamp(18px, 2.4vw, 30px);
  align-items: start;
  position: relative;
  z-index: 1;
}

.cf-governance__copy {
  grid-area: copy;
  max-width: 1120px;
  display: grid;
  justify-items: center;
  gap: 0;
  margin: 0 auto;
  text-align: center;
}

.cf-title--governance {
  max-width: 34ch;
  font-size: clamp(1.9rem, 2.6vw, 2.95rem);
  line-height: 1.12;
  margin: 0 auto;
}

.cf-title--governance::after {
  content: "";
  display: block;
  width: 126px;
  height: 4px;
  margin: 24px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rm-teal), rgba(0, 163, 180, 0.2));
  transform: scaleX(0.34);
  transform-origin: center center;
  opacity: 0.28;
  transition:
    transform 920ms cubic-bezier(0.22, 1, 0.36, 1) 90ms,
    opacity 520ms ease 90ms;
}

.cf-governance__media {
  grid-area: media;
  margin: 0;
  position: relative;
  transition: transform var(--rm-ease);
}

.cf-governance__media::before {
  content: none;
}

.cf-governance__media-frame {
  position: relative;
  overflow: hidden;
  padding: 12px;
  border-radius: 34px 118px 34px 34px;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(28, 53, 94, 0.08);
  box-shadow: 0 8px 18px rgba(20, 40, 68, 0.035);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.cf-governance__media img {
  width: 100%;
  height: auto;
  aspect-ratio: 1.05;
  object-fit: cover;
  border-radius: 24px 104px 24px 24px;
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-governance__media:hover img {
  transform: scale(1.045);
}

.cf-governance__media:hover {
  transform: translateY(-8px);
}

.cf-governance__cards {
  grid-area: cards;
  display: grid;
  gap: 18px;
  align-content: center;
  position: relative;
  min-height: 100%;
  padding-block: 12px;
}

.cf-governance__cards::before {
  content: none;
}

.cf-governance-card {
  position: relative;
  display: grid;
  gap: 18px;
  margin-left: clamp(22px, 2.4vw, 30px);
  padding: 24px 28px 26px 30px;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(28, 53, 94, 0.06);
  box-shadow: 0 6px 16px rgba(20, 40, 68, 0.024);
  overflow: hidden;
  isolation: isolate;
  transition:
    transform var(--rm-ease),
    background var(--rm-ease),
    border-color var(--rm-ease),
    box-shadow var(--rm-ease);
}

.cf-governance-card::before {
  content: none;
}

.cf-governance-card::after {
  content: none;
}

.cf-governance-card:nth-child(2) {
  margin-left: clamp(52px, 4.2vw, 82px);
}

.cf-governance-card:nth-child(3) {
  margin-left: clamp(30px, 3vw, 56px);
}

.cf-governance-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.cf-governance-card__index {
  color: rgba(28, 53, 94, 0.22);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(2.9rem, 4.2vw, 4.5rem);
  line-height: 0.88;
  letter-spacing: -0.04em;
  transition:
    color var(--rm-ease),
    transform var(--rm-ease);
}

.cf-governance-card__icon {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  background: rgba(245, 249, 253, 0.96);
  border: 1px solid rgba(28, 53, 94, 0.06);
  box-shadow: none;
  transition:
    transform var(--rm-ease),
    background var(--rm-ease),
    border-color var(--rm-ease);
}

.cf-governance-card__icon img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  opacity: 0.66;
  transition:
    opacity var(--rm-ease),
    filter var(--rm-ease),
    transform var(--rm-ease);
}

.cf-governance-card__icon svg {
  width: 34px;
  height: 34px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cf-governance-card__copy {
  display: grid;
  gap: 8px;
}

.cf-governance-card__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.14rem, 1.3vw, 1.34rem);
  font-weight: 800;
  line-height: 1.18;
}

.cf-governance-card__text {
  margin: 0;
  color: rgba(28, 53, 94, 0.94);
  font-size: clamp(1.04rem, 1.12vw, 1.2rem);
  font-weight: 400;
  line-height: 1.58;
  max-width: 27ch;
  transition: color var(--rm-ease);
}

.cf-governance-card:hover,
.cf-governance-card:focus-within {
  background: linear-gradient(135deg, var(--rm-navy), #244c76 72%, #24576e 130%);
  transform: translate3d(6px, -8px, 0);
  border-color: rgba(0, 163, 180, 0.2);
  box-shadow: 0 12px 24px rgba(20, 40, 68, 0.05);
}

.cf-governance-card:hover .cf-governance-card__text,
.cf-governance-card:focus-within .cf-governance-card__text {
  color: #ffffff;
}

.cf-governance-card:hover .cf-governance-card__index,
.cf-governance-card:focus-within .cf-governance-card__index {
  color: rgba(255, 255, 255, 0.26);
  transform: translateY(-3px);
}

.cf-governance-card:hover .cf-governance-card__icon,
.cf-governance-card:focus-within .cf-governance-card__icon {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.16);
  transform: translateY(-4px);
}

.cf-governance-card:hover .cf-governance-card__icon img,
.cf-governance-card:focus-within .cf-governance-card__icon img {
  opacity: 1;
  filter: brightness(0) invert(1);
  transform: scale(1.04);
}

.cf-section--strengths {
  position: relative;
  overflow: hidden;
  padding-top: clamp(36px, 4.4vw, 60px);
}

.cf-section--strengths::before,
.cf-section--strengths::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.cf-section--strengths::before {
  inset: -120px auto auto -140px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.08), transparent 68%);
}

.cf-section--strengths::after {
  inset: auto -120px 80px auto;
  width: 280px;
  height: 280px;
  border-radius: 36px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(28, 53, 94, 0.04)),
    repeating-linear-gradient(
      -45deg,
      transparent 0,
      transparent 13px,
      rgba(28, 53, 94, 0.03) 13px,
      rgba(28, 53, 94, 0.03) 15px
    );
  transform: rotate(12deg);
}

.cf-section--funds {
  position: relative;
  overflow: hidden;
}

.cf-section--funds::before,
.cf-section--funds::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.cf-section--funds::before {
  inset: -120px auto auto -140px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.08), transparent 68%);
}

.cf-section--funds::after {
  inset: auto -70px 30px auto;
  width: 240px;
  height: 240px;
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.14), rgba(28, 53, 94, 0.04)),
    repeating-linear-gradient(
      -45deg,
      transparent 0,
      transparent 13px,
      rgba(28, 53, 94, 0.03) 13px,
      rgba(28, 53, 94, 0.03) 15px
    );
  transform: rotate(14deg);
}

.cf-funds,
.cf-publications {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(26px, 3vw, 36px);
  overflow: visible;
}

.cf-funds__head,
.cf-publications__head {
  display: grid;
  justify-items: center;
  gap: 12px;
  text-align: center;
  opacity: 1;
  transform: none;
  filter: none;
  clip-path: none;
}

.cf-title--funds,
.cf-title--publications-home {
  max-width: none;
  font-size: clamp(2.7rem, 4vw, 4.2rem);
}

.cf-title--funds::after,
.cf-title--publications-home::after {
  content: "";
  display: block;
  width: 124px;
  height: 4px;
  margin: 22px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0, 163, 180, 0.18), var(--rm-teal), rgba(0, 163, 180, 0.18));
  transform: scaleX(0.34);
  opacity: 0.28;
  transition:
    transform 920ms cubic-bezier(0.22, 1, 0.36, 1) 90ms,
    opacity 520ms ease 90ms;
}

.cf-copy--funds,
.cf-copy--publications {
  max-width: 60ch;
  text-align: center;
}

.cf-funds__layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.36fr) minmax(0, 0.64fr);
  gap: 26px;
  align-items: start;
}

.cf-funds__intro {
  position: relative;
  display: grid;
  align-content: start;
  gap: 20px;
  min-height: 100%;
  padding: 30px 30px 32px;
  border-radius: 34px 108px 34px 34px;
  background: linear-gradient(145deg, rgba(17, 46, 84, 0.98), rgba(24, 68, 112, 0.98));
  color: #ffffff;
  overflow: hidden;
  box-shadow: 0 22px 48px rgba(20, 40, 68, 0.18);
}

.cf-funds__intro::before {
  content: "";
  position: absolute;
  inset: auto -40px -80px auto;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(113, 240, 236, 0.18), transparent 72%);
}

.cf-funds__intro .section-pill {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.16);
  box-shadow: none;
  color: #ffffff;
}

.cf-funds__lead {
  position: relative;
  z-index: 1;
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: 1rem;
  line-height: 1.7;
}

.cf-funds__cta {
  position: relative;
  z-index: 1;
  text-decoration: none;
}

.cf-funds__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
}

.cf-fund-card {
  --fund-accent: var(--rm-teal);
  --fund-deep: var(--rm-navy);
  position: relative;
  grid-column: span 6;
  min-height: 188px;
  padding: 26px 26px 28px 34px;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(28, 53, 94, 0.06);
  box-shadow: 0 14px 32px rgba(20, 40, 68, 0.06);
  overflow: hidden;
  transition:
    transform var(--rm-ease),
    box-shadow var(--rm-ease),
    border-color var(--rm-ease);
}

.cf-fund-card::before {
  content: "";
  position: absolute;
  inset: 18px auto 18px 0;
  width: 5px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(180deg, rgba(113, 240, 236, 0.28), var(--fund-accent) 42%, var(--fund-deep) 100%);
}

.cf-fund-card::after {
  content: "";
  position: absolute;
  top: -36px;
  right: -24px;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.07), transparent 72%);
}

.cf-fund-card:hover,
.cf-fund-card:focus-within {
  transform: translate3d(0, -8px, 0);
  border-color: rgba(0, 163, 180, 0.18);
  box-shadow: 0 24px 48px rgba(20, 40, 68, 0.1);
}

.cf-fund-card--bond-short,
.cf-fund-card--bond-core,
.cf-fund-card--income {
  grid-column: span 4;
  min-height: 176px;
}

.cf-fund-card--defensive {
  --fund-accent: #355f92;
  --fund-deep: #17355a;
}

.cf-fund-card--bond-short {
  --fund-accent: #22b6c4;
  --fund-deep: #1a476f;
}

.cf-fund-card--bond-core {
  --fund-accent: #2c8fb5;
  --fund-deep: #17355a;
}

.cf-fund-card--income {
  --fund-accent: #1c355e;
  --fund-deep: #0f223f;
}

.cf-fund-card__index {
  display: block;
  margin-bottom: 18px;
  color: rgba(28, 53, 94, 0.18);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.9rem, 4vw, 4.3rem);
  font-style: italic;
  line-height: 0.88;
}

.cf-fund-card__family {
  margin: 0 0 10px;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.cf-fund-card__name {
  margin: 0;
  max-width: 18ch;
  color: var(--rm-navy);
  font-size: clamp(1.28rem, 1.65vw, 1.85rem);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -0.03em;
}

.cf-section--funds {
  overflow: visible;
}

.cf-funds__head-bar {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  width: min(100%, 1080px);
}

.cf-funds__head-copy {
  display: grid;
  gap: 12px;
}

.cf-funds__head-bar .cf-copy--funds {
  margin: 0;
  text-align: left;
}

.cf-funds__all-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px;
  border-radius: 999px;
  border: 1px solid rgba(0, 163, 180, 0.16);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(237, 248, 250, 0.95));
  color: var(--rm-teal);
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
  box-shadow: 0 16px 32px rgba(17, 43, 76, 0.08);
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease,
    color 220ms ease;
}

.cf-funds__all-link:hover {
  transform: translateY(-2px);
  border-color: rgba(0, 163, 180, 0.28);
  box-shadow: 0 20px 36px rgba(17, 43, 76, 0.12);
  color: #0795a3;
}

.cf-funds__spotlight {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
}

.cf-opcvm-focus-card {
  position: relative;
  width: min(100%, 960px);
  display: grid;
  gap: 24px;
  padding: clamp(28px, 3vw, 34px);
  border-radius: 34px;
  background:
    radial-gradient(circle at top right, rgba(0, 163, 180, 0.14), transparent 24%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(247, 251, 253, 0.98));
  border: 1px solid rgba(28, 53, 94, 0.08);
  box-shadow: 0 24px 52px rgba(16, 36, 65, 0.08);
  overflow: hidden;
  transition:
    transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 320ms ease,
    border-color 320ms ease;
  animation: opcvm-card-float 6.2s ease-in-out infinite;
}

.cf-opcvm-focus-card.is-swapping {
  animation:
    opcvm-card-float 6.2s ease-in-out infinite,
    opcvm-card-swap 520ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-opcvm-focus-card::before {
  content: "";
  position: absolute;
  inset: 22px auto 22px 0;
  width: 6px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(180deg, rgba(113, 240, 236, 0.22), #4e8fd6 42%, #17355a 100%);
}

.cf-opcvm-focus-card::after {
  content: "";
  position: absolute;
  right: -48px;
  bottom: -62px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.12), transparent 70%);
  pointer-events: none;
}

.cf-opcvm-focus-card:hover,
.cf-opcvm-focus-card:focus-visible {
  transform: translateY(-8px);
  border-color: rgba(0, 163, 180, 0.22);
  box-shadow: 0 34px 68px rgba(16, 36, 65, 0.12);
  animation-play-state: paused;
}

.cf-opcvm-focus-card__header,
.cf-opcvm-focus-card__footer {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.cf-opcvm-focus-card__risk {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.cf-opcvm-focus-card__risk span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(28, 53, 94, 0.14);
}

.cf-opcvm-focus-card__risk span.is-active {
  background: var(--rm-teal);
  box-shadow: 0 0 0 6px rgba(0, 163, 180, 0.1);
  animation: opcvm-risk-pulse 2.4s ease-in-out infinite;
}

.cf-opcvm-focus-card__risk span.is-active:nth-child(2) {
  animation-delay: 180ms;
}

.cf-opcvm-focus-card__risk strong {
  margin-left: 6px;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.cf-opcvm-focus-card__body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(260px, 0.82fr);
  gap: 24px;
  align-items: end;
}

.cf-opcvm-focus-card__copy {
  display: grid;
  gap: 14px;
}

.cf-opcvm-focus-card__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.1rem, 3vw, 3rem);
  line-height: 0.96;
  letter-spacing: -0.04em;
}

.cf-opcvm-focus-card__text {
  margin: 0;
  max-width: 46ch;
  color: rgba(28, 53, 94, 0.72);
  font-size: 1rem;
  line-height: 1.68;
}

.cf-opcvm-focus-card__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
}

.cf-opcvm-focus-card__stats div {
  display: grid;
  gap: 8px;
  padding: 16px 14px 18px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(28, 53, 94, 0.08);
}

.cf-opcvm-focus-card__stats dt {
  color: rgba(28, 53, 94, 0.42);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.cf-opcvm-focus-card__stats dd {
  margin: 0;
  color: var(--rm-navy);
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.3;
}

.cf-opcvm-focus-card__bank {
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.cf-opcvm-focus-card__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 999px;
  background: var(--rm-teal);
  color: #ffffff;
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
  box-shadow: 0 14px 24px rgba(0, 163, 180, 0.18);
  transition:
    transform 220ms ease,
    box-shadow 220ms ease,
    background-color 220ms ease;
}

.cf-opcvm-focus-card__link:hover {
  transform: translateY(-2px);
  background: #109eac;
  box-shadow: 0 18px 28px rgba(0, 163, 180, 0.22);
}

.cf-opcvm-focus-card__selector {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.cf-opcvm-focus-card__dot {
  width: 12px;
  height: 12px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.16);
  cursor: pointer;
  transition:
    width 240ms ease,
    background-color 240ms ease,
    transform 240ms ease;
}

.cf-opcvm-focus-card__dot:hover {
  transform: scale(1.08);
}

.cf-opcvm-focus-card__dot.is-active {
  width: 34px;
  background: var(--rm-teal);
}

@keyframes opcvm-card-float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}

@keyframes opcvm-card-swap {
  0% {
    opacity: 0.2;
    transform: translateY(18px) scale(0.985);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes opcvm-risk-pulse {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(0, 163, 180, 0.16);
  }
  50% {
    box-shadow: 0 0 0 7px rgba(0, 163, 180, 0.04);
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .cf-opcvm-focus-card,
  .cf-opcvm-focus-card__risk span.is-active {
    animation: none;
  }
}

.cf-opcvm-hero__content {
  display: grid;
  gap: 16px;
  max-width: 780px;
}

.cf-opcvm-hero__copy {
  margin: 0;
  max-width: 58ch;
  color: rgba(255, 255, 255, 0.78);
  font-size: 1.02rem;
  line-height: 1.72;
}

.cf-opcvm-hero__back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 50px;
  padding: 0 20px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: #ffffff;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
  transition:
    transform 220ms ease,
    background-color 220ms ease;
}

.cf-opcvm-hero__back:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.18);
}

body.opcvm-page .cf-opcvm-hero,
body.publications-page .cf-opcvm-hero {
  --page-hero-offset: 184px;
  min-height: clamp(260px, 31vw, 360px);
  height: auto;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: clamp(36px, 4vw, 48px) 0;
  text-align: left;
}

body.opcvm-page .cf-opcvm-hero::after,
body.publications-page .cf-opcvm-hero::after {
  background:
    linear-gradient(90deg, rgba(10, 24, 44, 0.86) 0%, rgba(10, 24, 44, 0.68) 48%, rgba(10, 24, 44, 0.34) 100%),
    radial-gradient(circle at 72% 24%, rgba(113, 240, 236, 0.14), transparent 30%);
}

body.opcvm-page .cf-opcvm-hero .page-video-hero__media video,
body.publications-page .cf-opcvm-hero .page-video-hero__media video {
  filter: saturate(0.95) contrast(1.05) brightness(0.34);
}

body.opcvm-page .cf-opcvm-hero__content,
body.publications-page .cf-opcvm-hero__content {
  width: min(1320px, calc(100% - 72px));
  justify-items: stretch;
  align-content: end;
}

body.opcvm-page .cf-opcvm-hero__shell,
body.publications-page .cf-opcvm-hero__shell {
  display: grid;
  gap: 26px;
  width: 100%;
}

body.opcvm-page .cf-opcvm-hero__intro,
body.publications-page .cf-opcvm-hero__intro {
  display: grid;
  gap: 12px;
  max-width: 760px;
}

body.opcvm-page .cf-opcvm-hero .page-video-hero__eyebrow,
body.publications-page .cf-opcvm-hero .page-video-hero__eyebrow {
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.66rem;
  letter-spacing: 0.22em;
}

body.opcvm-page .cf-opcvm-hero .page-video-hero__title,
body.publications-page .cf-opcvm-hero .page-video-hero__title {
  max-width: none;
  font-size: clamp(2.25rem, 4.8vw, 4rem);
  line-height: 0.96;
  letter-spacing: -0.055em;
}

body.opcvm-page .cf-opcvm-hero__copy,
body.publications-page .cf-opcvm-hero__copy {
  max-width: 64ch;
  color: rgba(255, 255, 255, 0.76);
  font-size: 0.98rem;
  line-height: 1.68;
}

body.opcvm-page .cf-opcvm-hero__back,
body.publications-page .cf-opcvm-hero__back {
  min-height: 42px;
  padding: 0 16px;
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.12);
  font-size: 0.76rem;
}

body.opcvm-page .cf-opcvm-hero__stats,
body.publications-page .cf-opcvm-hero__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  max-width: 1080px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}

body.opcvm-page .cf-opcvm-hero__stat,
body.publications-page .cf-opcvm-hero__stat {
  display: grid;
  gap: 8px;
  padding: 0 24px 0 0;
}

body.opcvm-page .cf-opcvm-hero__stat + .cf-opcvm-hero__stat,
body.publications-page .cf-opcvm-hero__stat + .cf-opcvm-hero__stat {
  padding-left: 24px;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}

body.opcvm-page .cf-opcvm-hero__stat-label,
body.publications-page .cf-opcvm-hero__stat-label {
  color: rgba(255, 255, 255, 0.48);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.opcvm-page .cf-opcvm-hero__stat strong,
body.publications-page .cf-opcvm-hero__stat strong {
  color: #ffffff;
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  font-weight: 400;
  letter-spacing: -0.05em;
  line-height: 1;
}

body.opcvm-page .cf-opcvm-hero__stat strong .home-figure__unit,
body.publications-page .cf-opcvm-hero__stat strong .home-figure__unit {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

@media (max-width: 980px) {
  body.opcvm-page .cf-opcvm-hero,
  body.publications-page .cf-opcvm-hero {
    min-height: auto;
    padding: 36px 0;
  }

  body.opcvm-page .cf-opcvm-hero__content,
  body.publications-page .cf-opcvm-hero__content {
    width: min(100%, calc(100% - 36px));
  }

  body.opcvm-page .cf-opcvm-hero__stats,
  body.publications-page .cf-opcvm-hero__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 0;
  }

  body.opcvm-page .cf-opcvm-hero__stat:nth-child(3),
  body.publications-page .cf-opcvm-hero__stat:nth-child(3) {
    padding-left: 0;
    border-left: 0;
  }
}

@media (max-width: 640px) {
  body.opcvm-page .cf-opcvm-hero,
  body.publications-page .cf-opcvm-hero {
    padding: 28px 0;
  }

  body.opcvm-page .cf-opcvm-hero__shell,
  body.publications-page .cf-opcvm-hero__shell {
    gap: 22px;
  }

  body.opcvm-page .cf-opcvm-hero__stats,
  body.publications-page .cf-opcvm-hero__stats {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  body.opcvm-page .cf-opcvm-hero__stat,
  body.opcvm-page .cf-opcvm-hero__stat + .cf-opcvm-hero__stat,
  body.publications-page .cf-opcvm-hero__stat,
  body.publications-page .cf-opcvm-hero__stat + .cf-opcvm-hero__stat {
    padding: 0;
    border-left: 0;
  }

  body.opcvm-page .cf-opcvm-hero__copy,
  body.publications-page .cf-opcvm-hero__copy {
    font-size: 0.92rem;
  }
}

.cf-section--opcvm-range {
  position: relative;
  overflow: visible;
  padding-top: clamp(72px, 7vw, 112px);
  padding-bottom: clamp(76px, 8vw, 120px);
}

.cf-section--opcvm-range::before,
.cf-section--opcvm-range::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.cf-section--opcvm-range::before {
  inset: 60px auto auto -100px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.11), transparent 68%);
}

.cf-section--opcvm-range::after {
  inset: auto -120px 40px auto;
  width: 260px;
  height: 260px;
  border-radius: 40px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.02)),
    repeating-linear-gradient(135deg, rgba(15, 52, 92, 0.04), rgba(15, 52, 92, 0.04) 2px, transparent 2px, transparent 11px);
  transform: rotate(8deg);
  opacity: 0.7;
}

.opcvm-range {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 28px;
}

.opcvm-range__head {
  display: grid;
  gap: 14px;
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}

.opcvm-range__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.4rem, 4.2vw, 4.3rem);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.05em;
}

.opcvm-range__copy {
  margin: 0;
  color: rgba(28, 53, 94, 0.68);
  font-size: 1rem;
  line-height: 1.72;
}

.opcvm-range__filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.opcvm-filter {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(28, 53, 94, 0.12);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.7), rgba(244, 249, 252, 0.9)),
    radial-gradient(circle at top left, rgba(113, 240, 236, 0.16), transparent 58%);
  color: rgba(28, 53, 94, 0.7);
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  backdrop-filter: blur(14px) saturate(145%);
  -webkit-backdrop-filter: blur(14px) saturate(145%);
  box-shadow:
    0 12px 26px rgba(16, 36, 65, 0.05),
    inset 0 1px 0 rgba(255, 255, 255, 0.76);
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease,
    background-color 220ms ease,
    color 220ms ease;
}

.opcvm-filter small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  min-height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(0, 163, 180, 0.1);
  color: var(--rm-teal);
  font-size: 0.7rem;
  font-weight: 800;
}

.opcvm-filter:hover,
.opcvm-filter.is-active {
  transform: translateY(-2px);
  border-color: rgba(0, 163, 180, 0.22);
  background: linear-gradient(180deg, rgba(0, 163, 180, 0.98), rgba(9, 155, 169, 0.96));
  box-shadow: 0 16px 26px rgba(0, 163, 180, 0.18);
  color: #ffffff;
}

.opcvm-filter:hover small,
.opcvm-filter.is-active small {
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff;
}

.opcvm-range__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  overflow: visible;
}

.opcvm-card {
  position: relative;
  display: grid;
  gap: 18px;
  isolation: isolate;
  min-height: 100%;
  padding: 24px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 28px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.78), rgba(246, 250, 253, 0.68)),
    radial-gradient(circle at top right, rgba(113, 240, 236, 0.2), transparent 30%),
    radial-gradient(circle at bottom left, rgba(70, 165, 219, 0.12), transparent 36%);
  backdrop-filter: blur(18px) saturate(150%);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
  box-shadow:
    0 20px 40px rgba(16, 36, 65, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);
  cursor: pointer;
  opacity: 0;
  overflow: hidden;
  transform: translateY(24px);
  transition:
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 260ms ease,
    box-shadow 260ms ease;
  animation: opcvm-grid-in 700ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: var(--opcvm-card-delay, 0ms);
}

.opcvm-card::before {
  content: "";
  position: absolute;
  inset: 18px auto 18px 0;
  width: 5px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(180deg, rgba(113, 240, 236, 0.2), #46a5db 46%, #17355a 100%);
  opacity: 0.36;
  transition: opacity 220ms ease;
}

.opcvm-card::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: 27px;
  pointer-events: none;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.42), rgba(255, 255, 255, 0.06) 34%, rgba(255, 255, 255, 0) 58%),
    linear-gradient(315deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0) 42%);
  opacity: 0.9;
  z-index: 0;
}

.opcvm-card > * {
  position: relative;
  z-index: 1;
}

.opcvm-card:hover,
.opcvm-card:focus-visible,
.opcvm-card.is-active {
  transform: translateY(-6px);
  border-color: rgba(0, 163, 180, 0.22);
  box-shadow:
    0 28px 52px rgba(16, 36, 65, 0.11),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.opcvm-card:hover::before,
.opcvm-card:focus-visible::before,
.opcvm-card.is-active::before {
  opacity: 1;
}

.opcvm-card__topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.opcvm-card__badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.56);
  color: rgba(28, 53, 94, 0.52);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.opcvm-card__risk {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.opcvm-card__risk span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(28, 53, 94, 0.13);
}

.opcvm-card__risk span.is-active {
  background: var(--rm-teal);
}

.opcvm-card__risk strong {
  margin-left: 6px;
  color: rgba(28, 53, 94, 0.52);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.opcvm-card__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.34rem, 1.8vw, 1.8rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.opcvm-card__summary {
  margin: 0;
  color: rgba(28, 53, 94, 0.64);
  font-size: 0.96rem;
  line-height: 1.64;
}

.opcvm-card__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid rgba(28, 53, 94, 0.08);
}

.opcvm-card__stats div {
  display: grid;
  gap: 6px;
}

.opcvm-card__stats dt {
  color: rgba(28, 53, 94, 0.34);
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.opcvm-card__stats dd {
  margin: 0;
  color: var(--rm-navy);
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.3;
}

.opcvm-range__detail-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  margin-top: 10px;
}

.opcvm-range__detail-title {
  margin: 10px 0 0;
  color: var(--rm-navy);
  font-size: clamp(2rem, 3vw, 3rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.05em;
}

.opcvm-range__detail-pills {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.opcvm-range__detail-pills span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid rgba(28, 53, 94, 0.08);
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.opcvm-range__detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, 0.82fr);
  gap: 18px;
  align-items: start;
  overflow: visible;
}

.opcvm-detail-card {
  position: relative;
  border-radius: 34px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  overflow: hidden;
}

.opcvm-detail-card--overview {
  display: grid;
  gap: 22px;
  grid-row: span 2;
  padding: clamp(28px, 3vw, 34px);
  background:
    radial-gradient(circle at top right, rgba(113, 240, 236, 0.14), transparent 22%),
    linear-gradient(135deg, #16345d 0%, #102846 52%, #1d4877 100%);
  box-shadow: 0 26px 58px rgba(10, 24, 44, 0.16);
}

.opcvm-detail-card__topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.opcvm-detail-card__risk {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.opcvm-detail-card__risk span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
}

.opcvm-detail-card__risk span.is-active {
  background: #6be7dc;
}

.opcvm-detail-card__risk strong {
  margin-left: 6px;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.opcvm-detail-card__hero-title {
  margin: 0;
  color: #ffffff;
  font-size: clamp(2.3rem, 3.6vw, 4rem);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.06em;
}

.opcvm-detail-card__hero-copy {
  margin: 0;
  max-width: 54ch;
  color: rgba(255, 255, 255, 0.76);
  font-size: 1rem;
  line-height: 1.72;
}

.opcvm-detail-card__metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 22px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.opcvm-detail-card__metrics div {
  display: grid;
  gap: 8px;
}

.opcvm-detail-card__metrics dt {
  color: rgba(255, 255, 255, 0.46);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.opcvm-detail-card__metrics dd {
  margin: 0;
  color: #ffffff;
  font-size: clamp(1.08rem, 1.4vw, 1.24rem);
  font-weight: 700;
  line-height: 1.24;
}

.opcvm-detail-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 50px;
  padding: 0 20px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--rm-navy);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
  transition:
    transform 220ms ease,
    background-color 220ms ease;
}

.opcvm-detail-card__cta:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.92);
}

.opcvm-detail-card--profile,
.opcvm-detail-card--docs {
  display: grid;
  gap: 18px;
  padding: 26px;
  background:
    radial-gradient(circle at top right, rgba(0, 163, 180, 0.11), transparent 24%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 249, 253, 0.97));
  box-shadow: 0 18px 38px rgba(16, 36, 65, 0.06);
}

.opcvm-detail-card__eyebrow {
  color: rgba(28, 53, 94, 0.48);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.opcvm-detail-card__panel-title {
  margin: -6px 0 0;
  color: var(--rm-navy);
  font-size: clamp(1.36rem, 1.85vw, 2rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.opcvm-profile-track {
  display: grid;
  gap: 10px;
}

.opcvm-profile-track__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.opcvm-profile-track__meta span {
  color: rgba(28, 53, 94, 0.54);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.opcvm-profile-track__meta strong {
  color: var(--rm-navy);
  font-size: 0.94rem;
  font-weight: 700;
}

.opcvm-profile-track__line {
  position: relative;
  display: block;
  width: 100%;
  height: 12px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.08);
  overflow: hidden;
}

.opcvm-profile-track__line span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(113, 240, 236, 0.82), #34bfd2 48%, #17355a 100%);
  transition: width 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.opcvm-detail-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.opcvm-detail-card__badges span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid rgba(28, 53, 94, 0.08);
  color: rgba(28, 53, 94, 0.62);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.opcvm-docs {
  display: grid;
  gap: 12px;
}

.opcvm-doc {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 16px 18px;
  border-radius: 22px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.9);
  color: inherit;
  text-decoration: none;
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease;
}

.opcvm-doc:hover {
  transform: translateY(-2px);
  border-color: rgba(0, 163, 180, 0.18);
  box-shadow: 0 14px 28px rgba(16, 36, 65, 0.08);
}

.opcvm-doc__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: rgba(0, 163, 180, 0.08);
  color: var(--rm-teal);
}

.opcvm-doc__copy {
  display: grid;
  gap: 4px;
}

.opcvm-doc__copy strong {
  color: var(--rm-navy);
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.3;
}

.opcvm-doc__copy small {
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.82rem;
  line-height: 1.5;
}

.opcvm-doc__arrow {
  color: rgba(28, 53, 94, 0.46);
  font-size: 1.05rem;
  font-weight: 700;
}

@keyframes opcvm-grid-in {
  0% {
    opacity: 0;
    transform: translateY(24px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 860px) {
  .cf-funds__head-bar {
    align-items: start;
    flex-direction: column;
  }

  .cf-opcvm-focus-card__body {
    grid-template-columns: 1fr;
  }

  .opcvm-range__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .opcvm-range__detail-layout {
    grid-template-columns: 1fr;
  }

  .opcvm-detail-card--overview {
    grid-row: auto;
  }
}

@media (max-width: 640px) {
  .cf-funds__all-link {
    width: 100%;
  }

  .cf-opcvm-focus-card__stats {
    grid-template-columns: 1fr;
  }

  .opcvm-range__filters {
    justify-content: start;
  }

  .opcvm-range__grid {
    grid-template-columns: 1fr;
  }

  .opcvm-card__stats,
  .opcvm-detail-card__metrics {
    grid-template-columns: 1fr;
  }

  .opcvm-range__detail-head {
    align-items: start;
    flex-direction: column;
  }
}

.cf-section--publications {
  position: relative;
  overflow: visible;
  padding-bottom: clamp(36px, 4.4vw, 62px);
}

.cf-section--publications::before,
.cf-section--publications::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.cf-section--publications::before {
  inset: -40px auto auto -140px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.045), transparent 68%);
}

.cf-section--publications::after {
  inset: 0 -120px auto auto;
  width: 360px;
  height: 220px;
  background:
    repeating-linear-gradient(
      -45deg,
      transparent 0,
      transparent 12px,
      rgba(28, 53, 94, 0.028) 12px,
      rgba(28, 53, 94, 0.028) 14px
    );
  opacity: 0.46;
  transform: rotate(6deg);
}

.cf-publications__carousel {
  position: relative;
  min-height: 476px;
  margin-top: 18px;
  padding: 10px 150px 18px;
  overflow: visible;
}

.cf-publication-stage {
  position: absolute;
  top: 0;
  left: 50%;
  width: min(100%, 258px);
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 18px;
  min-height: 418px;
  padding: 18px 18px 22px;
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(249, 251, 253, 0.97));
  border: 1px solid rgba(28, 53, 94, 0.1);
  box-shadow: 0 12px 30px rgba(20, 40, 68, 0.07);
  opacity: 0.78;
  pointer-events: auto;
  cursor: pointer;
  transition:
    transform 420ms cubic-bezier(0.2, 0.72, 0.16, 1),
    opacity 260ms ease,
    box-shadow 240ms ease,
    border-color 240ms ease;
  transform-origin: 50% 50%;
  transform-style: preserve-3d;
  backface-visibility: hidden;
  transform: translateX(-50%) translateY(20px) scale(0.95);
  overflow: visible;
}

.cf-publication-stage::before {
  content: none;
}

.cf-publication-stage::after {
  content: none;
}

.cf-publication-stage.is-left {
  z-index: 1;
  transform: translateX(calc(-50% - 252px)) translateY(48px) scale(0.86) rotateY(18deg);
}

.cf-publication-stage.is-center {
  opacity: 1;
  transform: translateX(-50%) translateY(0) scale(1);
  border-color: rgba(0, 163, 180, 0.16);
  box-shadow: 0 20px 46px rgba(20, 40, 68, 0.1);
  z-index: 3;
  cursor: default;
}

.cf-publication-stage.is-right {
  z-index: 1;
  transform: translateX(calc(-50% + 252px)) translateY(48px) scale(0.86) rotateY(-18deg);
}

.cf-publication-stage:not(.is-center) {
  filter: saturate(0.9);
}

.cf-publication-stage:hover,
.cf-publication-stage:focus-visible {
  border-color: rgba(0, 163, 180, 0.18);
  box-shadow: 0 18px 36px rgba(20, 40, 68, 0.08);
}

.cf-publication-stage__meta {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  flex-wrap: wrap;
}

.cf-publication-stage__tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.cf-publication-stage__date {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #12446d;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.cf-publication-stage__date::before {
  content: "";
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312446d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.cf-publication-stage__main {
  display: grid;
  grid-template-columns: 1fr;
  align-content: start;
  justify-items: center;
  gap: 18px;
}

.cf-publication-stage__visual {
  position: relative;
  width: min(100%, 156px);
  padding-right: 10px;
  margin-top: 6px;
}

.cf-publication-stage__visual::before {
  content: "";
  position: absolute;
  inset: 10px -10px 10px auto;
  width: 12px;
  border-radius: 0 4px 4px 0;
  background: linear-gradient(180deg, #1d4267 0%, #173558 100%);
}

.cf-publication-stage__visual::after {
  content: "";
  position: absolute;
  inset: auto 14px -12px;
  height: 14px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(20, 40, 68, 0.12), transparent 72%);
  filter: blur(8px);
}

.cf-publication-stage__cover-frame {
  display: block;
  position: relative;
  border-radius: 3px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(18, 40, 68, 0.1);
}

.cf-publication-stage__cover {
  display: block;
  width: 100%;
  aspect-ratio: 0.76;
  object-fit: cover;
}

.cf-publication-stage__content {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 16px;
  text-align: center;
}

.cf-publication-stage__title {
  margin: 0;
  color: var(--rm-navy);
  font-family: Georgia, "Times New Roman", serif;
  max-width: 8ch;
  font-size: clamp(2rem, 2.7vw, 2.6rem);
  font-weight: 400;
  line-height: 1.08;
}

.cf-publication-stage__download {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--rm-teal);
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-decoration: none;
  text-transform: uppercase;
  transition:
    transform 180ms ease,
    color 180ms ease;
}

.cf-publication-stage__download svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cf-publication-stage__download:hover {
  transform: translateY(-1px);
  color: #0d8f9f;
}

.cf-publications__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 2px;
  position: relative;
  z-index: 4;
}

.cf-publications__nav,
.cf-publications__dot {
  border: 0;
  cursor: pointer;
}

.cf-publications__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.98);
  color: var(--rm-navy);
  box-shadow: 0 6px 16px rgba(20, 40, 68, 0.05);
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    color 180ms ease;
}

.cf-publications__nav:hover {
  transform: translateY(-1px);
  background: var(--rm-teal);
  color: #ffffff;
}

.cf-publications__dots {
  display: flex;
  align-items: center;
  gap: 10px;
}

.cf-publications__dot {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.16);
  transition:
    background-color 220ms ease,
    transform 220ms ease;
}

.cf-publications__dot:hover {
  transform: scale(1.04);
}

.cf-publications__dot.is-active {
  background: var(--rm-teal);
}

.cf-strengths {
  position: relative;
  z-index: 1;
}

.cf-strengths__head {
  display: grid;
  justify-items: center;
  gap: 0;
  margin-bottom: clamp(24px, 2.8vw, 40px);
  text-align: center;
  opacity: 1;
  transform: none;
  filter: none;
  clip-path: none;
}

.cf-title--strengths {
  max-width: none;
  font-size: clamp(2.7rem, 4.1vw, 4.2rem);
}

.cf-title--strengths::after {
  content: "";
  display: block;
  width: 124px;
  height: 4px;
  margin: 22px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(0, 163, 180, 0.18), var(--rm-teal), rgba(0, 163, 180, 0.18));
  transform: scaleX(0.34);
  opacity: 0.28;
  transition:
    transform 920ms cubic-bezier(0.22, 1, 0.36, 1) 90ms,
    opacity 520ms ease 90ms;
}

.cf-strengths__mosaic {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(0, 0.96fr);
  grid-template-rows: repeat(2, minmax(268px, 1fr));
  gap: 28px;
  align-items: stretch;
  will-change: grid-template-columns, grid-template-rows;
  transition:
    grid-template-columns 780ms cubic-bezier(0.22, 1, 0.36, 1),
    grid-template-rows 780ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-strengths__mosaic.is-expertise-active {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  grid-template-rows: minmax(408px, 1.28fr) minmax(208px, 0.72fr);
}

.cf-strengths__mosaic.is-values-active {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  grid-template-rows: minmax(244px, 0.84fr) minmax(344px, 1.06fr);
}

.cf-strength-tile {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 38px;
  box-shadow: 0 24px 58px rgba(20, 40, 68, 0.12);
  min-height: 0;
  transform: translateZ(0);
  transition:
    box-shadow var(--rm-ease),
    filter 520ms ease,
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-strength-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(8, 20, 38, 0.26) 0%, rgba(8, 20, 38, 0.12) 34%, rgba(8, 20, 38, 0.03) 72%, rgba(8, 20, 38, 0) 100%);
}

.cf-strength-tile:hover,
.cf-strength-tile:focus-within {
  box-shadow: 0 32px 72px rgba(20, 40, 68, 0.16);
}

.cf-strength-tile__media {
  position: absolute;
  inset: 0;
  margin: 0;
}

.cf-strength-tile__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-strength-tile:hover .cf-strength-tile__media img,
.cf-strength-tile:focus-within .cf-strength-tile__media img {
  transform: scale(1.035);
}

.cf-strength-tile--service {
  grid-row: 1 / span 2;
  min-height: 586px;
  border-radius: 38px 150px 38px 38px;
}

.cf-strength-tile--service::before {
  background:
    linear-gradient(180deg, rgba(8, 20, 38, 0.06) 0%, rgba(8, 20, 38, 0.38) 100%),
    linear-gradient(135deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 58%, rgba(255, 255, 255, 0.12) 100%);
}

.cf-strength-tile__panel,
.cf-strength-tile__caption,
.cf-strength-tile__info {
  position: absolute;
  z-index: 2;
}

.cf-strength-tile__panel {
  inset: 92px auto 36px 28px;
  max-width: min(72%, 560px);
  padding: 28px 30px 32px;
  border-radius: 34px 108px 34px 34px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(28, 53, 94, 0.08);
  box-shadow: 0 20px 46px rgba(20, 40, 68, 0.12);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.cf-strength-tile--service .cf-strength-tile__panel {
  opacity: 0;
  visibility: hidden;
  transform: translate3d(0, 24px, 0) scale(0.985);
  pointer-events: none;
  transition:
    opacity 360ms ease,
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 360ms;
}

.cf-strength-tile--service:hover .cf-strength-tile__panel,
.cf-strength-tile--service:focus-within .cf-strength-tile__panel {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0) scale(1);
  transition-delay: 40ms, 40ms, 0s;
}

.cf-strength-tile__caption {
  inset: 28px 30px auto 30px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  pointer-events: none;
  transition:
    opacity 260ms ease,
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 260ms;
}

.cf-strength-tile__caption::before {
  display: none;
}

.cf-strength-tile__index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 62px;
  height: 62px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.24);
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.5rem;
  font-style: italic;
  line-height: 1;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition:
    background var(--rm-ease),
    border-color var(--rm-ease),
    color var(--rm-ease);
}

.cf-strength-tile__panel .cf-strength-tile__index {
  background: rgba(28, 53, 94, 0.06);
  border-color: rgba(28, 53, 94, 0.08);
  color: var(--rm-navy);
  margin-bottom: 18px;
}

.cf-strength-tile__title {
  margin: 0;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 2.55vw, 3rem);
  font-weight: 400;
  line-height: 1.04;
  text-shadow: 0 8px 24px rgba(8, 20, 38, 0.26);
  transition: color var(--rm-ease);
}

.cf-strength-tile__panel .cf-strength-tile__title {
  margin-top: 0;
  margin-bottom: 18px;
  color: var(--rm-navy);
  text-shadow: none;
}

.cf-strength-tile__list {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cf-strength-tile__list li {
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  color: rgba(28, 53, 94, 0.82);
  font-size: 0.98rem;
  font-weight: 500;
  line-height: 1.56;
  transition:
    transform 520ms cubic-bezier(0.22, 1, 0.36, 1),
    color var(--rm-ease);
}

.cf-strength-tile__list li::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-top: 0.45em;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--rm-teal), var(--rm-navy));
  box-shadow: 0 0 0 6px rgba(0, 163, 180, 0.08);
}

.cf-strength-tile__info {
  inset: 18px 18px 18px 18px;
  width: auto;
  max-height: none;
  box-sizing: border-box;
  overflow: hidden;
  padding: 24px 28px 26px;
  border-radius: 34px 104px 34px 34px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(28, 53, 94, 0.08);
  box-shadow: 0 20px 44px rgba(20, 40, 68, 0.16);
  opacity: 0;
  visibility: hidden;
  transform: translate3d(22px, 0, 0) scale(0.985);
  pointer-events: none;
  transition:
    opacity 380ms ease,
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 380ms;
}

.cf-strength-tile__info-head {
  display: grid;
  gap: 16px;
  margin-bottom: 14px;
}

.cf-strength-tile__info .cf-strength-tile__index {
  width: 62px;
  height: 62px;
  padding: 0;
  border-radius: 20px;
  background: rgba(28, 53, 94, 0.06);
  border: 1px solid rgba(28, 53, 94, 0.08);
  color: var(--rm-navy);
  font-size: 1.5rem;
  line-height: 1;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.cf-strength-tile__info .cf-strength-tile__title {
  color: var(--rm-navy);
  font-size: clamp(1.9rem, 2.15vw, 2.6rem);
  line-height: 1.02;
  text-shadow: none;
  white-space: normal;
}

.cf-strength-tile__info-list {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cf-strength-tile__info-list li {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr);
  gap: 11px;
  align-items: start;
  color: rgba(28, 53, 94, 0.84);
  font-size: 0.94rem;
  font-weight: 500;
  line-height: 1.5;
}

.cf-strength-tile__info-list li::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: 0.42em;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--rm-teal), var(--rm-navy));
  box-shadow: 0 0 0 5px rgba(0, 163, 180, 0.08);
}

.cf-strengths__mosaic.is-expertise-active .cf-strength-tile--expertise .cf-strength-tile__info,
.cf-strengths__mosaic.is-values-active .cf-strength-tile--values .cf-strength-tile__info,
.cf-strength-tile:focus-within .cf-strength-tile__info {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0) scale(1);
  transition-delay: 70ms, 70ms, 0s;
}

.cf-strength-tile--service:hover .cf-strength-tile__caption,
.cf-strength-tile--service:focus-within .cf-strength-tile__caption,
.cf-strengths__mosaic.is-expertise-active .cf-strength-tile--expertise .cf-strength-tile__caption,
.cf-strengths__mosaic.is-values-active .cf-strength-tile--values .cf-strength-tile__caption,
.cf-strength-tile--expertise:focus-within .cf-strength-tile__caption,
.cf-strength-tile--values:focus-within .cf-strength-tile__caption {
  opacity: 0;
  visibility: hidden;
  transform: translate3d(0, -14px, 0);
  transition-delay: 0s;
}

.cf-strength-tile__caption .cf-strength-tile__index {
  width: auto;
  height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: rgba(255, 255, 255, 0.9);
  font-size: clamp(2.1rem, 2.7vw, 3rem);
  line-height: 0.9;
  text-shadow: 0 8px 18px rgba(8, 20, 38, 0.2);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.cf-strength-tile__caption .cf-strength-tile__title {
  align-self: flex-start;
  max-width: none;
  margin-top: 0.08em;
  font-size: clamp(1.8rem, 2.1vw, 2.45rem);
  line-height: 1;
  white-space: nowrap;
}

.cf-strength-tile--values .cf-strength-tile__caption .cf-strength-tile__title {
  max-width: none;
}

.cf-strengths__mosaic.is-expertise-active .cf-strength-tile--expertise,
.cf-strengths__mosaic.is-values-active .cf-strength-tile--values {
  z-index: 3;
  box-shadow: 0 28px 62px rgba(20, 40, 68, 0.14);
}

.cf-strengths__mosaic.is-expertise-active .cf-strength-tile--service,
.cf-strengths__mosaic.is-expertise-active .cf-strength-tile--values,
.cf-strengths__mosaic.is-values-active .cf-strength-tile--service,
.cf-strengths__mosaic.is-values-active .cf-strength-tile--expertise {
  filter: saturate(0.88) brightness(0.98);
}

.cf-grid {
  display: grid;
  gap: 18px;
}

.cf-grid--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cf-grid--solutions {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

body.service-page [data-reveal],
body.service-page [data-reveal-group] {
  opacity: 0;
  transform:
    translate3d(var(--reveal-x, 0), var(--reveal-y, 30px), 0)
    scale(var(--reveal-scale, 0.985))
    rotate(var(--reveal-rotate, 0deg));
  filter: blur(var(--reveal-blur, 10px));
  clip-path: inset(var(--reveal-clip, 0 0 0 0) round var(--reveal-radius, 0px));
  transform-origin: var(--reveal-origin, 50% 50%);
  transition:
    opacity 760ms ease,
    transform 980ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 920ms cubic-bezier(0.22, 1, 0.36, 1),
    clip-path 1100ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, transform, filter, clip-path;
}

body.service-page [data-reveal-group] {
  --reveal-y: 16px;
  --reveal-scale: 1;
  --reveal-blur: 6px;
}

body.service-page [data-reveal].is-visible,
body.service-page [data-reveal-group].is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1) rotate(0deg);
  filter: none;
  clip-path: inset(0 0 0 0 round var(--reveal-radius-visible, var(--reveal-radius, 0px)));
}

body.service-page [data-reveal-variant="hero-copy"] {
  --reveal-x: -54px;
  --reveal-y: 22px;
  --reveal-scale: 0.985;
  --reveal-blur: 14px;
}

body.service-page [data-reveal-variant="hero-stats"] {
  --reveal-x: 58px;
  --reveal-y: 30px;
  --reveal-scale: 0.95;
  --reveal-rotate: 1deg;
  --reveal-blur: 12px;
}

body.service-page [data-reveal-variant="section-head"] {
  --reveal-y: 22px;
  --reveal-scale: 0.99;
  --reveal-blur: 8px;
  --reveal-clip: 0 0 100% 0;
}

body.service-page [data-reveal-variant="mask-up"] {
  --reveal-y: 18px;
  --reveal-blur: 8px;
  --reveal-clip: 0 0 100% 0;
}

body.service-page [data-reveal-variant="glide-left"] {
  --reveal-x: -46px;
  --reveal-y: 20px;
  --reveal-scale: 0.97;
  --reveal-rotate: -0.6deg;
}

body.service-page [data-reveal-variant="glide-right"] {
  --reveal-x: 46px;
  --reveal-y: 20px;
  --reveal-scale: 0.97;
  --reveal-rotate: 0.6deg;
}

body.service-page [data-reveal-variant="glide-up"] {
  --reveal-y: 34px;
  --reveal-scale: 0.965;
  --reveal-blur: 10px;
}

body.service-page [data-reveal-variant="stage-pop"] {
  --reveal-y: 54px;
  --reveal-scale: 0.9;
  --reveal-rotate: -1.5deg;
  --reveal-blur: 14px;
}

body.service-page .cf-editorial__stage[data-reveal-variant="stage-pop"],
body.service-page .cf-editorial__stage[data-reveal-variant="stage-pop"].is-visible {
  clip-path: none;
}

body.service-page [data-reveal-variant="frame-reveal"] {
  --reveal-x: 42px;
  --reveal-y: 24px;
  --reveal-scale: 0.95;
  --reveal-blur: 12px;
  --reveal-clip: 0 0 18% 0;
  --reveal-radius: 38px;
}

body.service-page [data-reveal-variant="mosaic-left"] {
  --reveal-x: -62px;
  --reveal-y: 24px;
  --reveal-scale: 0.95;
  --reveal-blur: 14px;
  --reveal-clip: 0 18% 0 0;
  --reveal-radius: 34px;
}

body.service-page [data-reveal-variant="mosaic-up"] {
  --reveal-y: 62px;
  --reveal-scale: 0.93;
  --reveal-blur: 14px;
  --reveal-clip: 16% 0 0 0;
  --reveal-radius: 34px;
}

body.service-page [data-reveal-variant="mosaic-right"] {
  --reveal-x: 62px;
  --reveal-y: 24px;
  --reveal-scale: 0.95;
  --reveal-blur: 14px;
  --reveal-clip: 0 0 0 18%;
  --reveal-radius: 34px;
}

.cf-approach-head.is-visible .cf-title--approach::after,
.cf-strengths__head.is-visible .cf-title--strengths::after,
.cf-section__head--center.is-visible .cf-title--strengths::after,
.cf-funds__head.is-visible .cf-title--funds::after,
.cf-publications__head.is-visible .cf-title--publications-home::after,
.cf-title--governance.is-visible::after {
  transform: scaleX(1);
  opacity: 1;
}

@media (max-width: 1220px) {
  .cf-hero__layout--single {
    width: min(100% - 88px, 1080px);
  }
}

@media (max-width: 1100px) {
  .cf-hero__layout {
    grid-template-columns: 1fr;
  }

  .cf-hero__title {
    max-width: 11ch;
  }

  .cf-hero__stats {
    padding-left: 0;
    padding-top: 24px;
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
  }

  .cf-hero__layout--asset {
    grid-template-columns: 1fr;
  }

  .cf-editorial {
    grid-template-columns: 1fr;
  }

  .cf-editorial__image-card--primary {
    width: 100%;
  }

  .cf-editorial__logo-card {
    top: 16px;
    right: 18px;
    width: min(26%, 184px);
    min-width: 150px;
  }

  .cf-governance {
    grid-template-columns: 1fr;
    grid-template-areas:
      "copy"
      "media"
      "cards";
  }

  .cf-funds__layout,
  .cf-publications__carousel {
    grid-template-columns: 1fr;
  }

  .cf-funds__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cf-fund-card,
  .cf-fund-card--bond-short,
  .cf-fund-card--bond-core,
  .cf-fund-card--income {
    grid-column: span 1;
    min-height: 0;
  }

  .cf-publications__carousel {
    min-height: 448px;
    margin-top: 12px;
    padding: 10px 86px 14px;
  }

  .cf-publication-stage {
    width: min(100%, 232px);
    min-height: 392px;
    padding: 18px 16px 20px;
  }

  .cf-publication-stage.is-left {
    transform: translateX(calc(-50% - 192px)) translateY(44px) scale(0.84) rotateY(16deg);
  }

  .cf-publication-stage.is-center {
    transform: translateX(-50%) translateY(0) scale(1);
  }

  .cf-publication-stage.is-right {
    transform: translateX(calc(-50% + 192px)) translateY(44px) scale(0.84) rotateY(-16deg);
  }

  .cf-publication-stage__main {
    gap: 16px;
  }

  .cf-publication-stage__title {
    font-size: clamp(1.78rem, 3vw, 2.3rem);
  }

  .cf-governance__cards::before {
    inset: 18px auto 18px 12px;
  }

  .cf-governance-card,
  .cf-governance-card:nth-child(2),
  .cf-governance-card:nth-child(3) {
    margin-left: 18px;
  }

  .cf-governance__media-frame {
    max-width: 760px;
  }

  .cf-strengths__mosaic,
  .cf-strengths__mosaic.is-expertise-active,
  .cf-strengths__mosaic.is-values-active {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }

  .cf-strength-tile--service {
    grid-row: auto;
    min-height: 520px;
  }

  .cf-strength-tile:not(.cf-strength-tile--service) {
    min-height: 340px;
  }

  .cf-strength-tile__caption {
    inset: 24px 24px auto 24px;
  }

  .cf-strength-tile__info {
    width: min(58%, 360px);
  }

  .cf-approach-card {
    min-height: 0;
  }

  .cf-editorial__stage-frame {
    min-height: 620px;
  }

  .cf-hero--asset-intro {
    padding-bottom: 96px;
  }

  .cf-hero--asset-intro .page-video-hero__media {
    inset: 140px 0 auto 36%;
    height: 48%;
    opacity: 0.18;
  }

  .cf-hero__stage,
  .cf-hero__stage-frame {
    min-height: 620px;
  }
}

@media (max-width: 700px) {
  .cf-funds__grid {
    grid-template-columns: 1fr;
  }

  .cf-fund-card,
  .cf-fund-card--bond-short,
  .cf-fund-card--bond-core,
  .cf-fund-card--income {
    grid-column: 1 / -1;
    padding: 22px 22px 24px 28px;
  }

  .cf-funds__intro {
    padding: 24px 22px 26px;
  }

  .cf-publications__carousel {
    min-height: 0;
    padding: 0 0 18px;
  }

  .cf-publication-stage {
    position: absolute;
    inset: 0;
    width: min(100%, 290px);
    min-height: 0;
    padding: 22px 20px 24px;
  }

  .cf-publication-stage:not(.is-center) {
    display: none;
  }

  .cf-publication-stage.is-center {
    position: relative;
  }

  .cf-publication-stage__main {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .cf-publication-stage__meta {
    justify-content: center;
    gap: 14px;
  }

  .cf-publication-stage__visual {
    width: min(100%, 152px);
    margin: 0 auto;
  }

  .cf-publication-stage__title {
    font-size: clamp(1.82rem, 7vw, 2.3rem);
    text-align: center;
  }

  .cf-publication-stage__content {
    justify-items: center;
    text-align: center;
  }

  .cf-publications__controls {
    gap: 10px;
  }

  .cf-editorial__logo-card {
    top: 14px;
    right: 14px;
    width: min(32%, 170px);
    min-width: 0;
  }

  .cf-governance__media::before {
    inset: -16px 18px 24px -12px;
  }

  .cf-governance__media-frame {
    padding: 10px;
    border-radius: 28px;
  }

  .cf-governance__media img {
    border-radius: 22px;
  }

  .cf-governance__cards::before {
    display: none;
  }

  .cf-governance-card,
  .cf-governance-card:nth-child(2),
  .cf-governance-card:nth-child(3) {
    margin-left: 0;
    padding: 22px 22px 24px;
  }

  .cf-governance-card:hover,
  .cf-governance-card:focus-within {
    transform: translateY(-8px);
  }

  .cf-governance-card__header {
    gap: 16px;
  }

  .cf-governance-card__icon {
    width: 60px;
    height: 60px;
  }

  .cf-strength-tile__panel {
    inset: auto 18px 18px 18px;
    max-width: min(84%, 520px);
  }
}


@media (max-width: 900px) {
  body.service-page .site-header.is-page .context-tabs {
    display: none;
  }

  .cf-shell,
  .cf-hero__layout {
    width: min(100% - 48px, 1480px);
  }

  .cf-hero__layout--single {
    width: min(100% - 48px, 1080px);
  }

  .cf-hero {
    min-height: auto;
    height: auto;
    align-items: flex-start;
    padding: 144px 0 72px;
  }

  .cf-hero__metric-grid {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 640px) {
  .cf-anchor-section {
    scroll-margin-top: 112px;
  }

  body.service-page .site-header.is-page .site-header__shell {
    padding: 0 20px;
  }

  body.service-page .site-header.is-page .header-context {
    display: none;
  }

  body.service-page .site-header.is-page:not(.is-compact) .brand-link {
    width: 118px !important;
    min-width: 118px !important;
    height: 31px !important;
  }

  body.service-page .site-header.is-page:not(.is-compact) .brand-link__wordmark {
    clip-path: inset(0 0 0 0) !important;
    opacity: 1 !important;
    transform: translateY(-50%) !important;
    width: 118px !important;
  }

  body.service-page .site-header.is-page:not(.is-compact) .brand-link__mark {
    opacity: 0 !important;
  }

  .cf-title,
  .cf-hero__title {
    max-width: none;
  }

  .cf-hero__title {
    font-size: clamp(1.95rem, 11vw, 3.2rem);
  }

  .cf-hero__stat--network {
    grid-template-columns: 1fr;
  }
}


.cf-team {
  padding: clamp(48px, 5vw, 76px) 0 clamp(56px, 6vw, 92px);
  overflow: hidden;
}

.cf-team .cf-section__head {
  margin-bottom: clamp(20px, 2.4vw, 30px);
}

.cf-team-hint {
  margin: 0 0 clamp(20px, 2.6vw, 34px);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(28, 53, 94, 0.4);
}

.cf-team-slider {
  width: 100%;
  border-top: 1px solid var(--rm-line);
  border-bottom: 1px solid var(--rm-line);
  overflow-x: auto;
  overflow-y: hidden;
  cursor: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
  background: linear-gradient(180deg, #ffffff 0%, #f6f9fb 100%);
}

.cf-team-slider::-webkit-scrollbar { display: none; }
.cf-team-slider.is-dragging .cf-team-col { pointer-events: none; }

.cf-team-track {
  display: flex;
  align-items: stretch;
}

.cf-team-col {
  position: relative;
  flex: 0 0 clamp(238px, 20vw, 348px);
  height: clamp(440px, 56vh, 600px);
  border-right: 1px solid var(--rm-line);
  background: transparent;
  cursor: pointer;
  outline: none;
  overflow: hidden;
  opacity: 0;
  transform: translateY(28px);
  transition:
    background 600ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 720ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-team-slider.is-revealed .cf-team-col {
  opacity: 1;
  transform: translateY(0);
}


.cf-team-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  background: var(--rm-teal);
  color: #ffffff;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  display: grid;
  place-items: center;
  text-align: center;
  pointer-events: none;
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.4);
  transition:
    opacity 240ms ease,
    transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
    background 240ms ease;
  z-index: 60;
  box-shadow: 0 10px 30px rgba(0, 163, 180, 0.35);
}

.cf-team-cursor.is-visible {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.cf-team-cursor.is-grabbing {
  background: var(--rm-navy);
  transform: translate(-50%, -50%) scale(0.86);
  box-shadow: 0 8px 22px rgba(28, 53, 94, 0.4);
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .cf-team-col { opacity: 1; transform: none; transition: background 400ms ease; }
}

.cf-team-col:first-child { border-left: 1px solid var(--rm-line); }

.cf-team-col__photo {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 78%;
  z-index: 1;
}

.cf-team-col__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
  filter: grayscale(1) contrast(1.03);
  transition:
    filter 700ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
  -webkit-user-drag: none;
  user-select: none;
}

.cf-team-col__caption {
  position: absolute;
  top: 13%;
  left: 18px;
  right: 18px;
  text-align: center;
  z-index: 3;
  opacity: 0;
  transform: translateY(10px);
  transition:
    opacity 460ms ease,
    transform 560ms cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}

.cf-team-col__role {
  margin: 0 0 10px;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(28, 53, 94, 0.55);
  line-height: 1.4;
}

.cf-team-col__name {
  margin: 0;
  font-size: clamp(1.3rem, 1.7vw, 1.95rem);
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--rm-navy);
  line-height: 1.08;
}

.cf-team-col__dot {
  display: none;
  position: absolute;
  left: 50%;
  top: 63%;
  width: 96px;
  height: 96px;
  border-radius: 50%;
  transform: translate(-50%, 0) scale(0.5);
  background: radial-gradient(circle at 38% 32%, rgba(0, 163, 180, 0.95), rgba(0, 120, 138, 0.82));
  mix-blend-mode: multiply;
  opacity: 0;
  z-index: 2;
  transition:
    opacity 460ms ease,
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}

.cf-team-col:hover,
.cf-team-col:focus-visible,
.cf-team-col.is-active {
  background: linear-gradient(180deg, #e9f2f4 0%, rgba(255, 255, 255, 0) 72%);
}

.cf-team-col:hover .cf-team-col__caption,
.cf-team-col:focus-visible .cf-team-col__caption,
.cf-team-col.is-active .cf-team-col__caption {
  opacity: 1;
  transform: translateY(0);
}

.cf-team-col:hover .cf-team-col__dot,
.cf-team-col:focus-visible .cf-team-col__dot,
.cf-team-col.is-active .cf-team-col__dot {
  opacity: 1;
  transform: translate(-50%, 0) scale(1);
}

.cf-team-col:hover .cf-team-col__photo img,
.cf-team-col:focus-visible .cf-team-col__photo img,
.cf-team-col.is-active .cf-team-col__photo img {
  filter: grayscale(0.12) contrast(1.04);
}

html.has-overlay-open,
body.has-overlay-open {
  overflow: hidden;
}

.cf-team-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: clamp(20px, 2.5vw, 32px);
}

.cf-team-nav__btn {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid var(--rm-line-strong);
  background: #ffffff;
  color: var(--rm-navy);
  font-size: 1.05rem;
  cursor: pointer;
  display: grid;
  place-items: center;
  transition:
    background var(--rm-ease),
    color var(--rm-ease),
    border-color var(--rm-ease),
    transform var(--rm-ease);
}

.cf-team-nav__btn:hover {
  background: var(--rm-teal);
  border-color: var(--rm-teal);
  color: #ffffff;
  transform: translateY(-2px);
}

.cf-team-nav__hint {
  font-size: 0.7rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(28, 53, 94, 0.42);
}

body.leadership-page .cf-team {
  padding: clamp(40px, 4.5vw, 68px) 0;
  overflow: visible;
}

body.leadership-page .page-video-hero {
  min-height: clamp(300px, 42vh, 420px);
  height: auto;
  padding: clamp(108px, 12vw, 148px) 24px clamp(56px, 7vw, 86px);
}

body.leadership-page .page-video-hero__title {
  max-width: none;
  font-size: clamp(2.4rem, 5vw, 4.8rem);
  letter-spacing: 0;
}

body.leadership-page .cf-team-slider {
  width: min(100% - 48px, 1320px);
  margin: clamp(20px, 2.6vw, 36px) auto 0;
  border: 0;
  overflow: visible;
  cursor: default;
  background: transparent;
}

body.leadership-page .cf-team-track {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
}

body.leadership-page .cf-team-col {
  flex: none;
  min-height: 390px;
  height: auto;
  border: 1px solid rgba(16, 55, 101, 0.1);
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(245, 250, 252, 0.76));
  cursor: pointer;
  opacity: 1;
  transform: none;
  box-shadow: none;
}

body.leadership-page .cf-team-col:first-child {
  border-left: 1px solid rgba(16, 55, 101, 0.1);
}

body.leadership-page .cf-team-col__caption {
  top: 24px;
  opacity: 1;
  transform: none;
}

body.leadership-page .cf-team-col__photo {
  height: 72%;
}

body.leadership-page .cf-team-nav,
body.leadership-page .cf-team-cursor {
  display: none;
}

@media (max-width: 920px) {
  .cf-team-col { flex-basis: clamp(220px, 34vw, 300px); }
}

@media (max-width: 620px) {
  .cf-team-col {
    flex-basis: 72vw;
    height: clamp(380px, 62vh, 520px);
  }
  .cf-team-col__caption { opacity: 1; transform: none; }
}


.cf-publications__more {
  display: flex;
  justify-content: center;
  margin-top: clamp(18px, 2.4vw, 32px);
}

.cf-more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 42px;
  border-radius: 999px;
  border: 1px solid var(--rm-teal);
  background: transparent;
  color: var(--rm-teal);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  transition:
    background var(--rm-ease),
    color var(--rm-ease),
    transform var(--rm-ease),
    box-shadow var(--rm-ease);
}

.cf-more-btn:hover {
  background: var(--rm-teal);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(0, 163, 180, 0.28);
}


.team-modal {
  position: fixed;
  inset: 0;
  z-index: 230;
  display: grid;
  place-items: center;
  padding: clamp(16px, 3vw, 36px);
  opacity: 0;
  transition: opacity 280ms ease;
}

.team-modal[hidden] {
  display: none;
}

.team-modal.is-open {
  opacity: 1;
}

.team-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 22, 40, 0.56);
  backdrop-filter: blur(10px);
}

.team-modal__dialog {
  position: relative;
  width: min(1100px, 100%);
  max-height: min(88vh, 960px);
  overflow: hidden;
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(246, 250, 252, 0.96)),
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.1), transparent 34%);
  border: 1px solid rgba(255, 255, 255, 0.7);
  box-shadow: 0 34px 80px rgba(10, 22, 40, 0.24);
  transform: translateY(18px) scale(0.98);
  transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.team-modal.is-open .team-modal__dialog {
  transform: translateY(0) scale(1);
}

.team-modal__chrome {
  position: absolute;
  inset: 18px 18px auto 18px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  z-index: 4;
}
.team-modal__close {
  width: 52px;
  height: 52px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  color: var(--rm-navy);
  display: grid;
  place-items: center;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(20, 40, 68, 0.12);
  transition:
    transform var(--rm-ease),
    background var(--rm-ease),
    color var(--rm-ease);
}

.team-modal__close:hover {
  background: var(--rm-teal);
  color: #ffffff;
  transform: translateY(-2px);
}

.team-modal__close span {
  line-height: 1;
  font-size: 1.5rem;
}

.team-modal__body {
  position: relative;
  z-index: 1;
  max-height: min(88vh, 960px);
  overflow: auto;
  padding: clamp(68px, 5.4vw, 84px) clamp(22px, 4vw, 40px) clamp(26px, 4vw, 38px);
  scrollbar-gutter: stable;
}

.team-modal__layout {
  display: grid;
  grid-template-columns: minmax(280px, 0.94fr) minmax(0, 1.1fr);
  align-items: start;
  gap: clamp(24px, 3.8vw, 42px);
  min-height: 0;
}

.team-modal__media {
  margin: 0;
  position: relative;
  min-height: 100%;
}

.team-modal__media-shell {
  position: relative;
  min-height: clamp(340px, 58vh, 640px);
  border-radius: 30px;
  overflow: hidden;
  background:
    radial-gradient(circle at 24% 18%, rgba(0, 163, 180, 0.2), transparent 34%),
    linear-gradient(180deg, #eef5f8 0%, #ffffff 100%);
  border: 1px solid rgba(18, 68, 109, 0.08);
}

.team-modal__media-shell::before {
  content: "";
  position: absolute;
  inset: auto 18px 18px;
  height: 18px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(18, 68, 109, 0.16), transparent 72%);
  filter: blur(10px);
}

.team-modal__media-shell img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
}

.team-modal__copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-width: 0;
  min-height: 0;
  max-height: min(calc(88vh - 132px), 760px);
  padding-top: clamp(4px, 0.8vw, 10px);
}

.team-modal__eyebrow {
  margin: 0 0 18px;
  color: rgba(18, 68, 109, 0.68);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  line-height: 1.5;
}

.team-modal__name {
  margin: 0;
  color: var(--rm-navy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.6rem, 5vw, 4.4rem);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.04em;
}

.team-modal__text {
  margin-top: clamp(20px, 3vw, 30px);
  display: grid;
  flex: 1 1 auto;
  gap: 16px;
  min-height: 0;
  max-height: min(44vh, 430px);
  overflow-y: auto;
  padding-right: 12px;
  margin-right: -6px;
  scrollbar-width: thin;
  scrollbar-color: rgba(18, 68, 109, 0.24) transparent;
  overscroll-behavior: contain;
}

.team-modal__text p {
  margin: 0;
  color: var(--rm-ink);
  font-size: clamp(1rem, 1.35vw, 1.12rem);
  line-height: 1.75;
  text-align: justify;
  text-align-last: left;
  hyphens: none;
  word-break: normal;
  overflow-wrap: break-word;
}

.team-modal__text::-webkit-scrollbar {
  width: 7px;
}

.team-modal__text::-webkit-scrollbar-track {
  background: transparent;
}

.team-modal__text::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(18, 68, 109, 0.18), rgba(0, 163, 180, 0.28));
}

.team-modal__contact {
  display: grid;
  gap: 8px;
  margin-top: clamp(24px, 3vw, 34px);
  padding-top: clamp(20px, 2.8vw, 28px);
  border-top: 1px solid rgba(18, 68, 109, 0.12);
}

.team-modal__contact-row {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.team-modal__contact-label {
  color: rgba(18, 68, 109, 0.56);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.team-modal__contact a {
  color: var(--rm-navy);
  font-size: clamp(1rem, 1.5vw, 1.14rem);
  font-weight: 600;
  text-decoration: none;
}

.team-modal__contact a:hover {
  color: var(--rm-teal);
}

.team-modal__linkedin {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(18, 68, 109, 0.12);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.72), rgba(230, 245, 248, 0.56)),
    radial-gradient(circle at top left, rgba(113, 240, 236, 0.18), transparent 55%);
  color: var(--rm-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  text-decoration: none;
  backdrop-filter: blur(18px) saturate(150%);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
  box-shadow:
    0 14px 28px rgba(16, 36, 65, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
  transition:
    transform var(--rm-ease),
    background var(--rm-ease),
    color var(--rm-ease),
    border-color var(--rm-ease),
    box-shadow var(--rm-ease);
}

.team-modal__linkedin svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.team-modal__contact a.team-modal__linkedin:hover {
  color: #ffffff;
  background: var(--rm-teal);
  border-color: transparent;
  box-shadow:
    0 18px 34px rgba(0, 163, 180, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
  transform: translateY(-2px);
}

@media (max-width: 900px) {
  .team-modal__layout {
    grid-template-columns: 1fr;
  }

  .team-modal__media-shell {
    min-height: clamp(280px, 48vh, 440px);
  }

  .team-modal__copy {
    max-height: none;
    padding-top: 0;
  }

  .team-modal__text {
    max-height: none;
    overflow: visible;
    padding-right: 0;
    margin-right: 0;
  }
}

@media (max-width: 620px) {
  .team-modal {
    padding: 10px;
  }

  .team-modal__dialog {
    border-radius: 26px;
  }

  .team-modal__chrome {
    inset: 14px 14px auto 14px;
  }

  .team-modal__close {
    width: 46px;
    height: 46px;
  }

  .team-modal__body {
    padding: 76px 16px 20px;
  }

  .team-modal__name {
    font-size: clamp(2.2rem, 10vw, 3rem);
  }
}


.cf-section--pubs {
  position: relative;
  padding: clamp(48px, 6vw, 90px) 0 clamp(72px, 8vw, 120px);
  background:
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.08), transparent 34%),
    linear-gradient(180deg, #f6fafc 0%, #ffffff 22%, #ffffff 100%);
  overflow: hidden;
}

.cf-section--pubs::before,
.cf-section--pubs::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.cf-section--pubs::before {
  inset: auto auto 8% -90px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.08), transparent 70%);
}

.cf-section--pubs::after {
  inset: 8% -120px auto auto;
  width: 340px;
  height: 220px;
  opacity: 0.42;
  transform: rotate(6deg);
  background:
    repeating-linear-gradient(
      -45deg,
      transparent 0,
      transparent 12px,
      rgba(28, 53, 94, 0.03) 12px,
      rgba(28, 53, 94, 0.03) 14px
    );
}

.cf-pubs {
  position: relative;
  z-index: 1;
}

.cf-pubs__toolbar {
  display: flex;
  justify-content: center;
  margin-bottom: clamp(26px, 3vw, 38px);
}

.cf-pubs__filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.cf-pub-tab {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 11px 18px;
  border: 1px solid rgba(18, 68, 109, 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--rm-text-soft);
  font: inherit;
  font-size: 0.86rem;
  font-weight: 600;
  cursor: pointer;
  transition:
    transform var(--rm-ease),
    border-color var(--rm-ease),
    background var(--rm-ease),
    color var(--rm-ease),
    box-shadow var(--rm-ease);
}

.cf-pub-tab:hover,
.cf-pub-tab.is-active {
  border-color: rgba(0, 163, 180, 0.36);
  color: var(--rm-navy);
  box-shadow: 0 10px 24px rgba(20, 40, 68, 0.08);
}

.cf-pub-tab.is-active {
  background: var(--rm-teal);
  color: #ffffff;
}

.cf-pub-tab__count {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(18, 68, 109, 0.08);
  color: var(--rm-navy);
  font-size: 0.7rem;
  font-weight: 700;
}

.cf-pub-tab.is-active .cf-pub-tab__count {
  background: rgba(255, 255, 255, 0.22);
  color: #ffffff;
}

.cf-pubs__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 2.4vw, 30px);
  align-items: start;
  grid-auto-rows: auto;
}

.cf-pub-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(144px, 30%, 182px);
  grid-template-areas:
    "tags date"
    "title cover"
    "download cover";
  align-items: start;
  gap: 10px 20px;
  min-height: clamp(248px, 26vw, 292px);
  height: auto;
  padding: clamp(22px, 2vw, 25px);
  border-radius: 30px;
  border: 1px solid rgba(165, 224, 235, 0.55);
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.8), rgba(244, 250, 252, 0.66)),
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.75), transparent 42%);
  backdrop-filter: blur(18px) saturate(1.15);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.8),
    0 12px 28px rgba(20, 40, 68, 0.06);
  overflow: hidden;
  isolation: isolate;
  transition:
    transform 240ms ease,
    border-color 240ms ease,
    box-shadow 240ms ease,
    opacity 220ms ease;
}

.cf-pub-card::before,
.cf-pub-card::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  z-index: 0;
}

.cf-pub-card::before {
  width: 180px;
  height: 180px;
  inset: -80px auto auto -60px;
  background: radial-gradient(circle, rgba(117, 230, 243, 0.18), transparent 70%);
}

.cf-pub-card::after {
  width: 220px;
  height: 120px;
  inset: auto -50px -34px auto;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.09), transparent 72%);
  filter: blur(14px);
}

.cf-pub-card:hover {
  transform: translateY(-4px);
  border-color: rgba(0, 163, 180, 0.34);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.84),
    0 18px 36px rgba(20, 40, 68, 0.1);
}

.cf-pub-card.is-hidden {
  display: none;
}

.cf-pub-card.is-leaving {
  pointer-events: none;
}

.cf-pub-card__tags {
  grid-area: tags;
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cf-pub-card__date {
  grid-area: date;
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-self: end;
  gap: 8px;
  color: var(--rm-navy);
  font-size: 0.95rem;
  font-weight: 700;
  white-space: nowrap;
}

.cf-pub-card__date svg {
  width: 18px;
  height: 18px;
}

.cf-pub-card__cover {
  grid-area: cover;
  width: 100%;
  max-width: 160px;
  justify-self: end;
  align-self: center;
  margin: 0;
  padding-right: 8px;
  position: relative;
  z-index: 1;
}

.cf-pub-card__cover::before {
  content: "";
  position: absolute;
  inset: 12px 0 12px auto;
  width: 12px;
  border-radius: 0 6px 6px 0;
  background: linear-gradient(180deg, #1d4267 0%, #153251 100%);
  box-shadow: 2px 0 0 rgba(255, 255, 255, 0.3);
}

.cf-pub-card__cover::after {
  content: "";
  position: absolute;
  inset: auto 12px 10px;
  height: 22px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(18, 68, 109, 0.18), transparent 74%);
  filter: blur(8px);
}

.cf-pub-card__cover img {
  display: block;
  width: 100%;
  aspect-ratio: 0.74;
  object-fit: cover;
  border-radius: 4px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(20, 40, 68, 0.1);
}

.cf-pub-card__title {
  grid-area: title;
  position: relative;
  z-index: 1;
  align-self: end;
  min-width: 0;
  margin: 0;
  color: var(--rm-navy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.9rem, 2.45vw, 2.45rem);
  font-weight: 400;
  line-height: 1.04;
  text-align: left;
  text-wrap: balance;
}

.cf-pub-card__download {
  grid-area: download;
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  align-self: start;
  justify-self: start;
  margin-top: 0;
  max-width: min(100%, 216px);
  padding: 11px 16px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(212, 242, 247, 0.88), rgba(199, 236, 242, 0.74));
  border: 1px solid rgba(255, 255, 255, 0.65);
  color: var(--rm-teal);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  transition:
    transform var(--rm-ease),
    background var(--rm-ease),
    color var(--rm-ease);
}

.cf-pub-card__download:hover {
  background: var(--rm-teal);
  color: #ffffff;
  transform: translateY(-2px);
}

.cf-pub-card__download svg {
  width: 16px;
  height: 16px;
  stroke: currentColor;
  fill: none;
  flex: 0 0 auto;
}

@media (max-width: 980px) {
  .cf-pubs__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto;
  }
}

@media (max-width: 640px) {
  .cf-pubs__grid {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }

  .cf-pub-card {
    grid-template-columns: 1fr;
    grid-template-areas:
      "tags"
      "date"
      "cover"
      "title"
      "download";
    gap: 16px;
    min-height: auto;
    height: auto;
  }

  .cf-pub-card__date,
  .cf-pub-card__download {
    justify-self: start;
  }

  .cf-pub-card__cover {
    max-width: 180px;
    justify-self: center;
  }

  .cf-pub-card__title {
    text-align: center;
  }

  .cf-pubs__toolbar {
    justify-content: flex-start;
  }

  .cf-pubs__filters {
    justify-content: flex-start;
  }
}


.cf-contact {
  position: relative;
  padding: clamp(56px, 6vw, 92px) 0 clamp(120px, 13vw, 190px);
  background: linear-gradient(180deg, #f1f4f8 0%, #ffffff 17%, #ffffff 76%, #eef3f8 100%);
  overflow: hidden;
}

.cf-contact::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(135deg, rgba(28, 53, 94, 0.04) 0 1px, transparent 1px 13px);
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 80%, transparent 100%);
          mask-image: linear-gradient(180deg, transparent 0%, #000 14%, #000 80%, transparent 100%);
  pointer-events: none;
  z-index: 0;
}

.cf-contact .cf-shell {
  position: relative;
  z-index: 1;
}

.cf-contact__grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(40px, 6vw, 110px);
  align-items: start;
}

.cf-contact__info {
  position: relative;
}

.cf-contact__title {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  font-size: clamp(2.1rem, 3.2vw, 3.1rem);
  color: var(--rm-navy);
  letter-spacing: 0.01em;
}

.cf-contact__rule {
  display: block;
  width: 132px;
  height: 2px;
  margin: 18px 0 0;
  background: var(--rm-teal);
}

.cf-contact__divider {
  display: block;
  width: 100%;
  max-width: 560px;
  height: 1px;
  margin: clamp(40px, 5vw, 72px) 0 clamp(34px, 4vw, 56px);
  background: rgba(28, 53, 94, 0.16);
}

.cf-contact__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(16px, 2vw, 30px);
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}

.cf-contact__item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.cf-contact__icon {
  color: var(--rm-teal);
}

.cf-contact__icon svg {
  width: 40px;
  height: 40px;
}

.cf-contact__label {
  margin: 14px 0 10px;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  font-size: clamp(1.05rem, 1.4vw, 1.35rem);
  color: var(--rm-navy);
}

.cf-contact__text {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.7;
  color: var(--rm-text-soft);
}

.cf-contact__text a {
  color: var(--rm-text-soft);
  text-decoration: none;
  transition: color var(--rm-ease);
}

.cf-contact__text a:hover { color: var(--rm-teal); }

.cf-contact__form {
  display: grid;
  gap: clamp(14px, 1.6vw, 20px);
}

.cf-contact__field {
  position: relative;
  display: flex;
  align-items: center;
  border: 1px solid rgba(28, 53, 94, 0.18);
  border-radius: 12px;
  background: #ffffff;
  transition: border-color var(--rm-ease), box-shadow var(--rm-ease);
}

.cf-contact__field-icon {
  display: grid;
  place-items: center;
  width: 52px;
  flex: 0 0 52px;
  align-self: stretch;
  color: rgba(28, 53, 94, 0.45);
}

.cf-contact__field-icon svg {
  width: 20px;
  height: 20px;
}

.cf-contact__field input,
.cf-contact__field textarea {
  flex: 1;
  width: 100%;
  border: 0;
  background: transparent;
  padding: 16px 16px 16px 0;
  font: inherit;
  font-size: 0.98rem;
  color: var(--rm-ink);
  resize: none;
  outline: none;
}

.cf-contact__field textarea {
  min-height: 132px;
  padding-top: 16px;
}

.cf-contact__field--message {
  align-items: flex-start;
}

.cf-contact__field--message .cf-contact__field-icon {
  padding-top: 16px;
  align-self: flex-start;
}

.cf-contact__field input::placeholder,
.cf-contact__field textarea::placeholder {
  color: rgba(28, 53, 94, 0.45);
}

.cf-contact__field:focus-within {
  border-color: var(--rm-teal);
  box-shadow: 0 0 0 3px rgba(0, 163, 180, 0.12);
}

.cf-contact__submit {
  margin-top: 4px;
  padding: 17px 28px;
  border: 0;
  border-radius: 12px;
  background: var(--rm-teal);
  color: #ffffff;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: background var(--rm-ease), transform var(--rm-ease), box-shadow var(--rm-ease);
}

.cf-contact__submit:hover {
  background: #008a99;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(0, 163, 180, 0.3);
}

@media (max-width: 880px) {
  .cf-contact__grid {
    grid-template-columns: 1fr;
    gap: clamp(34px, 6vw, 50px);
  }
  .cf-contact__divider { max-width: none; }
}

@media (max-width: 520px) {
  .cf-contact__list {
    grid-template-columns: 1fr;
    gap: 26px;
    text-align: left;
  }
  .cf-contact__item { align-items: flex-start; }
}


.cf-fundgrid { margin-top: clamp(10px, 1.4vw, 20px); }

.cf-fundgrid__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: clamp(22px, 2.4vw, 32px);
}

.cf-fundgrid__filters { display: flex; flex-wrap: wrap; gap: 10px; }

.cf-fund-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid var(--rm-line);
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.8), rgba(244, 250, 252, 0.68)),
    radial-gradient(circle at top left, rgba(117, 230, 243, 0.18), transparent 54%);
  box-shadow: none;
  backdrop-filter: blur(16px) saturate(1.12);
  -webkit-backdrop-filter: blur(16px) saturate(1.12);
  cursor: pointer;
  font: inherit;
  font-size: 0.86rem;
  font-weight: 500;
  color: var(--rm-text-soft);
  transition:
    background var(--rm-ease),
    color var(--rm-ease),
    border-color var(--rm-ease),
    box-shadow var(--rm-ease),
    transform var(--rm-ease);
}

.cf-fund-tab:hover {
  transform: translateY(-2px);
  border-color: rgba(0, 163, 180, 0.3);
  color: var(--rm-navy);
  box-shadow: none;
}

.cf-fund-tab.is-active {
  background: linear-gradient(180deg, rgba(0, 163, 180, 0.98), rgba(9, 155, 169, 0.96));
  border-color: var(--rm-teal);
  color: #ffffff;
  box-shadow: none;
}

.cf-fund-tab__count {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  font-size: 0.7rem;
  font-weight: 700;
  background: rgba(28, 53, 94, 0.08);
  color: var(--rm-navy);
}

.cf-fund-tab.is-active .cf-fund-tab__count { background: rgba(255, 255, 255, 0.25); color: #ffffff; }

.cf-fundgrid__views {
  display: inline-flex;
  gap: 6px;
  padding: 4px;
  border: 1px solid var(--rm-line);
  border-radius: 12px;
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.84), rgba(244, 250, 252, 0.72)),
    radial-gradient(circle at top left, rgba(117, 230, 243, 0.14), transparent 58%);
  box-shadow: none;
  backdrop-filter: blur(16px) saturate(1.12);
  -webkit-backdrop-filter: blur(16px) saturate(1.12);
}

.cf-fundgrid__view {
  display: grid;
  place-items: center;
  width: 38px;
  height: 34px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  color: var(--rm-text-soft);
  transition: background var(--rm-ease), color var(--rm-ease);
}

.cf-fundgrid__view svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cf-fundgrid__view.is-active { background: var(--rm-navy); color: #ffffff; }

.cf-fundgrid__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(16px, 1.6vw, 22px);
}

.cf-fundgrid__list.is-list { grid-template-columns: 1fr; }

.cf-fund {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: clamp(20px, 1.8vw, 26px);
  border: 1px solid rgba(165, 224, 235, 0.55);
  border-radius: 26px;
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.82), rgba(244, 250, 252, 0.68)),
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.72), transparent 42%);
  box-shadow: none;
  backdrop-filter: blur(18px) saturate(1.15);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  cursor: pointer;
  outline: none;
  overflow: hidden;
  isolation: isolate;
  transition: transform var(--rm-ease), box-shadow var(--rm-ease), border-color var(--rm-ease);
}

.cf-fund::before,
.cf-fund::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 0;
}

.cf-fund::before {
  width: 180px;
  height: 180px;
  inset: -82px auto auto -62px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(117, 230, 243, 0.11), transparent 70%);
}

.cf-fund::after {
  width: 220px;
  height: 120px;
  inset: auto -52px -36px auto;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.06), transparent 72%);
  filter: none;
}

.cf-fund > * {
  position: relative;
  z-index: 1;
}

.cf-fund:hover,
.cf-fund:focus-visible {
  transform: translateY(-4px);
  box-shadow: none;
  border-color: rgba(0, 163, 180, 0.34);
}

.cf-fund__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }

.cf-fund__cat {
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--rm-text-soft);
  background: rgba(255, 255, 255, 0.62);
  padding: 6px 10px;
  border-radius: 8px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.cf-fund__risk { display: inline-flex; align-items: center; gap: 8px; }
.cf-fund__dots { display: inline-flex; gap: 3px; }
.cf-fund__dot { width: 6px; height: 6px; border-radius: 50%; background: rgba(28, 53, 94, 0.16); }
.cf-fund__dot.is-on { background: var(--rm-navy); }
.cf-fund__risk-label { font-style: normal; font-size: 0.74rem; font-weight: 600; }
.cf-fund__risk-label--low { color: #1f9d76; }
.cf-fund__risk-label--medium { color: #d9920a; }
.cf-fund__risk-label--high { color: #d6453f; }

.cf-fund__name { margin: 0; font-size: 1.18rem; font-weight: 500; color: var(--rm-navy); letter-spacing: -0.01em; }
.cf-fund__desc { margin: 0; font-size: 0.9rem; line-height: 1.6; color: var(--rm-text-soft); flex: 1; }

.cf-fund__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin: 4px 0 0;
  padding-top: 16px;
  border-top: 1px solid var(--rm-line);
}

.cf-fund__stats dt { font-size: 0.58rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--rm-text-soft); margin-bottom: 4px; }
.cf-fund__stats dd { margin: 0; font-size: 0.96rem; font-weight: 600; color: var(--rm-navy); font-variant-numeric: tabular-nums; }
.cf-fund__perf.is-up { color: #1f9d76; }
.cf-fund__perf.is-down { color: #d6453f; }

.cf-fundgrid__list.is-list .cf-fund {
  display: grid;
  grid-template-columns: 1.3fr 2fr 1.5fr;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 30px;
  row-gap: 10px;
}

.cf-fundgrid__list.is-list .cf-fund__top { grid-column: 1; grid-row: 1; justify-content: flex-start; gap: 14px; }
.cf-fundgrid__list.is-list .cf-fund__name { grid-column: 1; grid-row: 2; align-self: start; }
.cf-fundgrid__list.is-list .cf-fund__desc { grid-column: 2; grid-row: 1 / 3; align-self: center; }
.cf-fundgrid__list.is-list .cf-fund__stats { grid-column: 3; grid-row: 1 / 3; align-self: center; border-top: 0; padding-top: 0; }

@media (max-width: 1024px) {
  .cf-fundgrid__list { grid-template-columns: repeat(2, 1fr); }
  .cf-fundgrid__list.is-list .cf-fund { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .cf-fundgrid__list { grid-template-columns: 1fr; }
  .cf-fundgrid__toolbar { gap: 14px; }
}


.fund-modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: grid;
  place-items: center;
  padding: clamp(16px, 4vw, 48px);
  opacity: 0;
  transition: opacity 280ms ease;
}

.fund-modal[hidden] { display: none; }
.fund-modal.is-open { opacity: 1; }

.fund-modal__backdrop { position: absolute; inset: 0; background: rgba(10, 20, 38, 0.55); backdrop-filter: blur(4px); }

.fund-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(960px, 100%);
  max-height: 90vh;
  overflow-y: auto;
  background: #ffffff;
  border-radius: 22px;
  box-shadow: var(--rm-shadow-strong);
  transform: translateY(18px) scale(0.98);
  transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.fund-modal.is-open .fund-modal__dialog { transform: none; }

.fund-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 3;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.16);
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1;
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: background var(--rm-ease);
}

.fund-modal__close:hover { background: rgba(255, 255, 255, 0.32); }

.fund-detail__hero {
  padding: clamp(28px, 3vw, 44px);
  background: linear-gradient(135deg, #1c355e 0%, #102444 100%);
  color: #ffffff;
}

.fund-detail__cat {
  display: inline-block;
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(255, 255, 255, 0.25);
  padding: 5px 12px;
  border-radius: 999px;
}

.fund-detail__name { margin: 14px 0 0; font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 600; letter-spacing: -0.02em; }
.fund-detail__sub { margin: 10px 0 0; max-width: 640px; color: rgba(255, 255, 255, 0.78); line-height: 1.6; font-size: 0.95rem; }

.fund-detail__metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-top: clamp(20px, 2.4vw, 32px);
  padding-top: clamp(18px, 2vw, 26px);
  border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.fund-detail__metrics > div { display: flex; flex-direction: column; gap: 6px; }
.fund-detail__metrics > div > span { font-size: 0.62rem; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(255, 255, 255, 0.6); }
.fund-detail__metrics strong { font-size: clamp(1.5rem, 1.9vw, 1.9rem); font-weight: 600; font-variant-numeric: tabular-nums; display: inline-flex; align-items: center; }
.fund-detail__perf.is-up { color: #6fe0b0; }
.fund-detail__perf.is-down { color: #ff8a8a; }
.fund-detail__risk { display: flex; align-items: center; gap: 8px; font-size: 0.9rem; }
.fund-detail__risk .cf-fund__dot { background: rgba(255, 255, 255, 0.25); }
.fund-detail__risk .cf-fund__dot.is-on { background: var(--rm-teal); }
.fund-detail__risk em { font-style: normal; font-size: 0.8rem; color: rgba(255, 255, 255, 0.7); }

.fund-detail__cols {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: clamp(20px, 2.4vw, 36px);
  padding: clamp(28px, 3vw, 44px);
}

.fund-detail__eyebrow { margin: 0 0 6px; font-size: 0.62rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rm-text-soft); }
.fund-detail__h { margin: 0 0 18px; font-size: 1.3rem; font-weight: 500; color: var(--rm-navy); }

.fund-chart { position: relative; }
.fund-chart__svg { width: 100%; height: 240px; display: block; }
.fund-chart__grid { stroke: rgba(28, 53, 94, 0.08); stroke-width: 1; }
.fund-chart__pt { fill: #ffffff; stroke: var(--rm-teal); stroke-width: 2; }
.fund-chart__xl { fill: var(--rm-text-soft); font-size: 11px; text-anchor: middle; }

.fund-chart__cursor {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--rm-teal);
  border: 2px solid #ffffff;
  transform: translate(-50%, -50%);
  box-shadow: 0 2px 8px rgba(0, 163, 180, 0.5);
  pointer-events: none;
}

.fund-chart__tip {
  position: absolute;
  transform: translate(-50%, -100%);
  background: var(--rm-navy);
  color: #ffffff;
  font-size: 0.74rem;
  font-weight: 600;
  padding: 5px 10px;
  border-radius: 8px;
  white-space: nowrap;
  pointer-events: none;
  font-variant-numeric: tabular-nums;
}

.fund-docs { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }

.fund-docs__item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid var(--rm-line);
  border-radius: 12px;
  cursor: pointer;
  transition: background var(--rm-ease), border-color var(--rm-ease);
}

.fund-docs__item:hover { border-color: var(--rm-teal); background: rgba(0, 163, 180, 0.04); }

.fund-docs__ic {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: rgba(0, 163, 180, 0.1);
  color: var(--rm-teal);
  flex: 0 0 38px;
}

.fund-docs__ic svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.fund-docs__text { display: flex; flex-direction: column; flex: 1; }
.fund-docs__text strong { font-size: 0.9rem; font-weight: 500; color: var(--rm-navy); }
.fund-docs__text em { font-style: normal; font-size: 0.7rem; color: var(--rm-text-soft); }
.fund-docs__arrow { color: var(--rm-text-soft); }

.fund-detail__cta {
  margin: 0 clamp(28px, 3vw, 44px) clamp(28px, 3vw, 44px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  padding: clamp(22px, 2.4vw, 30px);
  border-radius: 18px;
  background: linear-gradient(135deg, #142844 0%, #1c355e 100%);
  color: #ffffff;
}

.fund-detail__cta-copy h4 { margin: 0 0 6px; font-size: 1.2rem; font-weight: 500; }
.fund-detail__cta-copy p { margin: 0; color: rgba(255, 255, 255, 0.72); font-size: 0.9rem; }

.fund-detail__cta-btn {
  flex-shrink: 0;
  padding: 13px 26px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--rm-navy);
  font-weight: 600;
  font-size: 0.86rem;
  text-decoration: none;
  transition: transform var(--rm-ease), box-shadow var(--rm-ease);
}

.fund-detail__cta-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(0, 0, 0, 0.25); }

@media (max-width: 760px) {
  .fund-detail__metrics { grid-template-columns: repeat(2, 1fr); }
  .fund-detail__cols { grid-template-columns: 1fr; }
}


@keyframes fundCardIn {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: none; }
}

@keyframes fundDotPop {
  0% { transform: scale(0); }
  60% { transform: scale(1.25); }
  100% { transform: scale(1); }
}

@keyframes fundTrendRise {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

.cf-fund {
  animation: fundCardIn 560ms cubic-bezier(0.22, 1, 0.36, 1) backwards;
  animation-delay: calc(var(--i, 0) * 55ms);
}

.cf-fund__dot.is-on {
  animation: fundDotPop 380ms cubic-bezier(0.34, 1.56, 0.64, 1) backwards;
  animation-delay: calc(var(--i, 0) * 55ms + var(--di, 0) * 70ms + 180ms);
}


.cf-fund.is-hidden { display: none; }
.cf-fund.is-leaving { opacity: 0; }


.cf-fund__stats dd,
.fund-detail__metrics strong {
  font-family: ui-monospace, "SF Mono", SFMono-Regular, "Roboto Mono", Menlo, Consolas, "Liberation Mono", monospace;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}


.cf-fund__trend {
  display: inline-flex;
  align-items: center;
  vertical-align: -0.18em;
  margin-right: 5px;
  color: inherit;
  animation: fundTrendRise 460ms ease backwards;
  animation-delay: calc(var(--i, 0) * 55ms + 360ms);
}

.cf-fund__trend svg { width: 1.05em; height: 1.05em; }

.cf-fund__num { font-variant-numeric: tabular-nums; }

.cf-section--opcvm-range { padding-top: clamp(18px, 2.2vw, 34px); }

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .cf-fund,
  .cf-fund__dot.is-on,
  .cf-fund__trend { animation: none; }
}


.cf-funds .cf-strengths__head { margin-bottom: clamp(28px, 3.4vw, 48px); }
.cf-fundgrid--teaser .cf-fundgrid__list { grid-template-columns: repeat(3, 1fr); }
.cf-funds__more { display: flex; justify-content: center; margin-top: clamp(30px, 3.4vw, 48px); }


body.asset-management-page .cf-title--approach,
body.asset-management-page .cf-title--strengths,
body.asset-management-page .cf-title--funds,
body.asset-management-page .cf-title--publications-home {
  font-size: clamp(2.05rem, 3.05vw, 3.18rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

body.asset-management-page .cf-title--approach::after,
body.asset-management-page .cf-title--strengths::after,
body.asset-management-page .cf-title--funds::after,
body.asset-management-page .cf-title--publications-home::after {
  width: 96px;
  height: 2px;
  margin-top: 12px;
}

body.asset-management-page .cf-approach-head,
body.asset-management-page .cf-strengths__head,
body.asset-management-page .cf-publications__head {
  margin-bottom: clamp(18px, 2vw, 28px);
}

body.asset-management-page .cf-section--approach .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.asset-management-page .cf-section--governance .cf-shell,
body.asset-management-page .cf-section--strengths .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.asset-management-page .cf-approach-card {
  grid-template-columns: 62px minmax(0, 1fr);
  min-height: 112px;
  padding: 22px 28px 22px 34px;
}

body.asset-management-page .cf-governance-card__index,
body.asset-management-page .cf-strength-tile__index {
  display: none;
}

body.asset-management-page .cf-approach-card__index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(28, 53, 94, 0.24);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 3.6rem;
  font-style: italic;
  line-height: 1;
}

body.asset-management-page .cf-approach-card__text {
  max-width: 52ch;
}

body.asset-management-page .cf-section--governance {
  padding-top: clamp(28px, 3vw, 46px);
  padding-bottom: clamp(40px, 4.5vw, 66px);
}

body.asset-management-page .am-governance {
  display: grid;
  gap: clamp(24px, 2.8vw, 36px);
}

body.asset-management-page .am-governance__head {
  max-width: 760px;
  margin: 0 auto;
}

body.asset-management-page .cf-governance,
body.asset-management-page .cf-strengths,
body.asset-management-page .cf-publications,
body.asset-management-page .cf-governance [data-reveal],
body.asset-management-page .cf-strengths [data-reveal],
body.asset-management-page .cf-publications [data-reveal] {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  clip-path: none !important;
}

body.asset-management-page .am-governance__feature {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  gap: clamp(28px, 3vw, 42px);
  align-items: center;
  padding: clamp(22px, 2.6vw, 30px);
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: calc(var(--rm-radius-card, 18px) + 4px);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.985), rgba(248, 251, 252, 0.94)),
    radial-gradient(circle at 0% 0%, rgba(0, 163, 180, 0.08), transparent 38%);
  box-shadow: 0 24px 62px rgba(20, 40, 68, 0.07);
  overflow: hidden;
}

body.asset-management-page .am-governance__feature::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, var(--rm-teal), rgba(0, 163, 180, 0.22));
}

body.asset-management-page .am-governance__intro {
  position: relative;
  margin: 0;
  display: grid;
  align-content: center;
  gap: 16px;
  min-height: 100%;
  min-width: 0;
  padding: clamp(14px, 1.7vw, 24px) clamp(10px, 1.4vw, 18px) clamp(16px, 1.8vw, 24px) clamp(28px, 2.9vw, 38px);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

body.asset-management-page .am-governance__message {
  margin: 0;
  max-width: 22ch;
  color: var(--rm-navy);
  font-size: clamp(1.38rem, 1.7vw, 1.75rem);
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -0.03em;
  text-wrap: pretty;
}

body.asset-management-page .am-governance__lede {
  margin: 0;
  max-width: 38ch;
  color: rgba(28, 53, 94, 0.88);
  font-size: clamp(1rem, 1.06vw, 1.1rem);
  font-weight: 500;
  line-height: 1.74;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

body.asset-management-page .am-governance__media {
  grid-column-start: auto !important;
  grid-column-end: auto !important;
  grid-row-start: auto !important;
  grid-row-end: auto !important;
  min-width: 0;
  justify-self: end;
  width: min(100%, 470px);
}

body.asset-management-page .am-governance__media .cf-governance__media-frame {
  min-height: clamp(320px, 25vw, 420px);
  padding: 10px;
  border-radius: 24px 24px 92px 24px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 50px rgba(20, 40, 68, 0.08);
}

body.asset-management-page .am-governance__media .cf-governance__media-frame img {
  border-radius: 18px 18px 82px 18px;
}

body.asset-management-page .am-governance__cards {
  grid-column-start: auto !important;
  grid-column-end: auto !important;
  grid-row-start: auto !important;
  grid-row-end: auto !important;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
  margin-top: 6px;
  padding-block: 0;
}

body.asset-management-page .am-governance__cards .cf-governance-card:first-child {
  grid-column: span 2;
}

body.asset-management-page .am-governance__cards .cf-governance-card {
  grid-column: span 2;
}

body.asset-management-page .am-governance__cards .cf-governance-card:nth-child(4) {
  grid-column: 2 / span 2;
}

body.asset-management-page .am-governance__cards .cf-governance-card:nth-child(5) {
  grid-column: 4 / span 2;
}

body.asset-management-page .cf-governance-card {
  grid-template-columns: 70px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  padding: 22px 26px;
}

body.asset-management-page .cf-governance-card,
body.asset-management-page .cf-governance-card:nth-child(2),
body.asset-management-page .cf-governance-card:nth-child(3) {
  margin-left: 0;
}

body.asset-management-page .cf-governance-card__header {
  justify-content: flex-start;
}

body.asset-management-page .cf-governance-card__icon {
  color: var(--rm-teal);
}

body.asset-management-page .cf-governance-card__title {
  font-size: clamp(1.08rem, 1.18vw, 1.28rem);
}

body.asset-management-page .cf-governance-card__text {
  max-width: none;
  color: rgba(28, 53, 94, 0.74);
  font-size: 0.98rem;
  line-height: 1.58;
}

body.asset-management-page .cf-governance-card:hover,
body.asset-management-page .cf-governance-card:focus-within {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.985), rgba(246, 250, 252, 0.98)),
    radial-gradient(circle at 100% 0%, rgba(0, 163, 180, 0.1), transparent 34%);
  transform: translateY(-8px);
  border-color: rgba(0, 163, 180, 0.22);
  box-shadow: 0 24px 52px rgba(20, 40, 68, 0.1);
}

body.asset-management-page .cf-governance-card:hover .cf-governance-card__title,
body.asset-management-page .cf-governance-card:focus-within .cf-governance-card__title {
  color: var(--rm-navy);
}

body.asset-management-page .cf-governance-card:hover .cf-governance-card__text,
body.asset-management-page .cf-governance-card:focus-within .cf-governance-card__text {
  color: rgba(28, 53, 94, 0.88);
}

body.asset-management-page .cf-governance-card:hover .cf-governance-card__icon,
body.asset-management-page .cf-governance-card:focus-within .cf-governance-card__icon {
  background: linear-gradient(180deg, rgba(240, 252, 253, 0.98), rgba(232, 248, 251, 0.92));
  border-color: rgba(0, 163, 180, 0.2);
  transform: translateY(-4px) scale(1.02);
}

body.asset-management-page .am-clients-section {
  padding: clamp(58px, 5.6vw, 84px) 0;
  background:
    radial-gradient(circle at 12% 18%, rgba(16, 182, 194, 0.08), transparent 30%),
    radial-gradient(circle at 92% 78%, rgba(16, 182, 194, 0.07), transparent 26%),
    linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
}

body.asset-management-page .am-clients-section__head {
  max-width: 760px;
  margin-inline: auto;
}

body.asset-management-page .am-clients-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(26px, 2.5vw, 34px);
  max-width: 1120px;
  margin: clamp(28px, 3vw, 42px) auto 0;
}

body.asset-management-page .am-client-card {
  position: relative;
  grid-column: span 2;
  display: grid;
  gap: 14px;
  align-content: start;
  padding: 46px 26px 24px;
  overflow: hidden;
  border: 1px solid rgba(28, 53, 94, 0.09);
  border-radius: calc(var(--rm-radius-card, 18px) + 2px);
  background:
    linear-gradient(135deg, rgba(255,255,255,0.985), rgba(248,251,252,0.96)),
    radial-gradient(circle at 100% 0%, rgba(0, 163, 180, 0.09), transparent 38%);
  box-shadow: 0 20px 58px rgba(28, 53, 94, 0.08);
  transition:
    transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 320ms ease,
    border-color 320ms ease;
}

body.asset-management-page .am-client-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, var(--rm-teal), rgba(28, 53, 94, 0.84));
}

body.asset-management-page .am-client-card:nth-child(4) {
  grid-column: 2 / span 2;
}

body.asset-management-page .am-client-card:nth-child(5) {
  grid-column: 4 / span 2;
}

body.asset-management-page .am-client-card:hover,
body.asset-management-page .am-client-card:focus-within {
  transform: translateY(-8px);
  border-color: rgba(0, 163, 180, 0.26);
  box-shadow: 0 28px 72px rgba(28, 53, 94, 0.12);
}

body.asset-management-page .am-client-card__icon {
  position: absolute;
  top: -18px;
  left: 22px;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  color: var(--rm-teal);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(240, 252, 253, 0.98));
  border: 1px solid rgba(0, 163, 180, 0.2);
  box-shadow:
    0 14px 28px rgba(20, 40, 68, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.85);
}

body.asset-management-page .am-client-card__icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.asset-management-page .am-client-card__body {
  display: grid;
  gap: 10px;
  align-content: start;
}

body.asset-management-page .am-client-card__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.1rem, 1.16vw, 1.24rem);
  font-weight: 800;
  line-height: 1.42;
  text-wrap: balance;
}

body.asset-management-page .cf-strengths__mosaic {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: none;
  grid-auto-rows: 1fr;
  gap: 22px;
  will-change: auto;
  transition: none;
}

body.asset-management-page .cf-strengths__mosaic.is-expertise-active {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: none;
}

body.asset-management-page .cf-strengths__mosaic.is-values-active {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: none;
}

body.asset-management-page .cf-strength-tile {
  display: block;
  height: 100%;
  min-height: 100%;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 22px;
  background:
    linear-gradient(180deg, var(--strength-accent) 0, var(--strength-accent) 142px, rgba(255, 255, 255, 0.98) 142px, #ffffff 100%);
  box-shadow:
    0 18px 42px rgba(20, 40, 68, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.58);
  transition:
    transform 260ms ease,
    box-shadow 260ms ease,
    border-color 260ms ease;
}

body.asset-management-page .cf-strength-tile--service {
  --strength-accent: #17355a;
  --strength-glow: rgba(79, 196, 214, 0.24);
  grid-row: auto;
  min-height: 0;
  border-radius: 22px;
}

body.asset-management-page .cf-strength-tile--expertise {
  --strength-accent: #1d4467;
  --strength-glow: rgba(73, 158, 201, 0.24);
}

body.asset-management-page .cf-strength-tile--values {
  --strength-accent: #23506b;
  --strength-glow: rgba(68, 183, 171, 0.24);
}

body.asset-management-page .cf-strength-tile::before {
  top: 0;
  left: 0;
  z-index: 0;
  width: 80px;
  height: 80px;
  border-radius: 14px 0 0 14px;
  background: var(--rm-teal);
  opacity: 1;
}

body.asset-management-page .cf-strength-tile::after {
  content: "";
  position: absolute;
  top: 26px;
  left: 26px;
  z-index: 0;
  width: 54px;
  height: 54px;
  border-radius: 12px 0 0 0;
  background: var(--strength-accent);
}


body.asset-management-page .cf-strength-tile__media,
body.asset-management-page .cf-strength-tile__caption {
  display: none;
}

body.asset-management-page .cf-strength-tile__panel,
body.asset-management-page .cf-strength-tile__info {
  position: relative;
  inset: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  max-width: none;
  padding: 24px 22px 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}

body.asset-management-page .cf-strength-tile__head {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: 104px;
  padding: 8px 12px 0;
  text-align: center;
}

body.asset-management-page .cf-strength-tile__info-head {
  margin-bottom: 0;
}

body.asset-management-page .cf-strength-tile__info .cf-strength-tile__title,
body.asset-management-page .cf-strength-tile__panel .cf-strength-tile__title {
  color: #ffffff;
  max-width: 11ch;
  font-size: clamp(1.52rem, 1.9vw, 2rem);
  line-height: 1.08;
  text-shadow: none;
}

body.asset-management-page .cf-strength-tile__head .cf-strength-tile__title {
  color: #ffffff;
}

body.asset-management-page .cf-strength-tile__list li,
body.asset-management-page .cf-strength-tile__info-list li {
  color: rgba(18, 43, 74, 0.95);
}

body.asset-management-page .cf-strength-tile__list,
body.asset-management-page .cf-strength-tile__info-list {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 20px 4px 0;
}

body.asset-management-page .cf-strength-tile__list li,
body.asset-management-page .cf-strength-tile__info-list li {
  font-size: 0.93rem;
  line-height: 1.52;
}

body.asset-management-page .cf-pubs--home {
  display: grid;
  gap: clamp(18px, 2vw, 26px);
}

body.asset-management-page .cf-pubs--home .cf-pubs__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

body.asset-management-page .cf-pubs--home .cf-pub-card {
  grid-template-columns: minmax(0, 1fr) 104px;
  min-height: 220px;
  padding: 18px;
  border-radius: 20px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.78),
    0 10px 24px rgba(20, 40, 68, 0.045);
}

body.asset-management-page .cf-pubs--home .cf-pub-card__tags {
  gap: 7px;
}

body.asset-management-page .cf-pubs--home .section-pill {
  min-height: 28px;
  padding: 0 9px;
  font-size: 0.62rem;
}

body.asset-management-page .cf-pubs--home .cf-pub-card__date {
  font-size: 0.8rem;
}

body.asset-management-page .cf-pubs--home .cf-pub-card__cover {
  max-width: 104px;
}

body.asset-management-page .cf-pubs--home .cf-pub-card__title {
  font-size: clamp(1.42rem, 1.6vw, 1.82rem);
}

body.asset-management-page .cf-pubs--home .cf-pub-card__download {
  padding: 9px 12px;
  font-size: 0.68rem;
}

body.asset-management-page .cf-fundgrid--teaser .cf-fund {
  background: transparent;
  border-color: rgba(28, 53, 94, 0.12);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
}

body.asset-management-page .cf-fundgrid--teaser .cf-fund::before,
body.asset-management-page .cf-fundgrid--teaser .cf-fund::after {
  content: none;
}

body.asset-management-page .cf-fundgrid--teaser .cf-fund__cat {
  background: transparent;
  box-shadow: none;
  border: 1px solid rgba(28, 53, 94, 0.1);
}

body.opcvm-page .cf-fundgrid .cf-fund {
  gap: 16px;
  padding: clamp(24px, 2vw, 28px);
  background: transparent;
  border-color: rgba(28, 53, 94, 0.12);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
}

body.opcvm-page .cf-fundgrid .cf-fund::before,
body.opcvm-page .cf-fundgrid .cf-fund::after {
  content: none;
}

body.opcvm-page .cf-fundgrid .cf-fund:hover,
body.opcvm-page .cf-fundgrid .cf-fund:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(28, 53, 94, 0.18);
  box-shadow: none;
}

body.opcvm-page .cf-fundgrid .cf-fund__cat {
  background: transparent;
  box-shadow: none;
  border: 1px solid rgba(28, 53, 94, 0.1);
}

body.opcvm-page .cf-fundgrid .cf-fund__name {
  font-size: clamp(1.2rem, 1.55vw, 1.5rem);
}

body.opcvm-page .cf-fundgrid .cf-fund__desc {
  color: rgba(28, 53, 94, 0.74);
}

body.opcvm-page .cf-fundgrid .cf-fund__stats {
  padding-top: 18px;
  border-top-color: rgba(28, 53, 94, 0.12);
}

body.asset-management-page .cf-team {
  padding-bottom: clamp(88px, 8vw, 128px);
}

body.asset-management-page .cf-team-nav {
  margin-top: clamp(18px, 2vw, 28px);
  margin-bottom: 0;
  padding-bottom: 0;
}

body.asset-management-page .cf-team-nav__btn {
  border-color: rgba(28, 53, 94, 0.14);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.62)),
    linear-gradient(135deg, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.22));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    0 14px 34px rgba(20, 40, 68, 0.08);
  backdrop-filter: blur(18px) saturate(145%);
  -webkit-backdrop-filter: blur(18px) saturate(145%);
}

body.asset-management-page .cf-team-nav__btn:disabled {
  opacity: 0.36;
  cursor: default;
  transform: none;
}

body.asset-management-page .cf-team-nav__btn:disabled:hover {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.62)),
    linear-gradient(135deg, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.22));
  border-color: rgba(28, 53, 94, 0.14);
  color: var(--rm-navy);
  transform: none;
}

body.asset-management-page .cf-team-nav__hint {
  color: rgba(28, 53, 94, 0.52);
}

body.asset-management-page .site-footer {
  margin-top: clamp(72px, 7vw, 120px);
}

@media (max-width: 1200px) {
  body.asset-management-page .cf-pubs--home .cf-pubs__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  body.asset-management-page .cf-section--approach .cf-shell,
  body.asset-management-page .cf-section--governance .cf-shell,
  body.asset-management-page .cf-section--strengths .cf-shell {
    width: min(100% - 48px, 1180px);
  }

  body.asset-management-page .cf-strengths__mosaic,
  body.asset-management-page .cf-strengths__mosaic.is-expertise-active,
  body.asset-management-page .cf-strengths__mosaic.is-values-active {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }

  body.asset-management-page .cf-pubs--home .cf-pubs__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.asset-management-page .am-governance__feature {
    grid-template-columns: minmax(0, 1fr);
  }

  body.asset-management-page .am-governance__media {
    justify-self: stretch;
    width: 100%;
    order: 2;
  }

  body.asset-management-page .am-governance__intro {
    order: 1;
    padding-left: 24px;
  }

  body.asset-management-page .am-governance__cards,
  body.asset-management-page .am-clients-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.asset-management-page .am-governance__cards .cf-governance-card,
  body.asset-management-page .am-governance__cards .cf-governance-card:first-child,
  body.asset-management-page .am-governance__cards .cf-governance-card:nth-child(4),
  body.asset-management-page .am-governance__cards .cf-governance-card:nth-child(5),
  body.asset-management-page .am-client-card,
  body.asset-management-page .am-client-card:nth-child(4),
  body.asset-management-page .am-client-card:nth-child(5) {
    grid-column: auto;
  }
}

@media (max-width: 700px) {
  body.asset-management-page .am-governance__cards {
    grid-template-columns: 1fr;
  }

  body.asset-management-page .am-governance__intro {
    padding: 14px 2px 6px 18px;
  }

  body.asset-management-page .am-governance__message {
    max-width: none;
    font-size: clamp(1.25rem, 6vw, 1.55rem);
  }

  body.asset-management-page .am-governance__lede {
    max-width: none;
  }

  body.asset-management-page .cf-governance-card {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 20px 20px 22px 24px;
  }

  body.asset-management-page .am-clients-grid {
    grid-template-columns: 1fr;
  }

  body.asset-management-page .am-client-card {
    min-height: 0;
    padding: 44px 22px 20px;
  }

  body.asset-management-page .cf-approach-card {
    grid-template-columns: 46px minmax(0, 1fr);
    padding-left: 24px;
  }

  body.asset-management-page .cf-approach-card__index {
    font-size: 2.8rem;
  }

  body.asset-management-page .cf-strength-tile,
  body.asset-management-page .cf-strength-tile--service,
  body.asset-management-page .cf-strength-tile:not(.cf-strength-tile--service) {
    min-height: 0;
  }

  body.asset-management-page .cf-strength-tile__panel,
  body.asset-management-page .cf-strength-tile__info {
    padding: 22px 18px 22px;
    gap: 18px;
  }

  body.asset-management-page .cf-strength-tile__head {
    min-height: 96px;
    padding: 6px 10px 0;
  }

  body.asset-management-page .cf-strength-tile::before {
    width: 72px;
    height: 72px;
    border-radius: 16px 0 0 16px;
  }

  body.asset-management-page .cf-strength-tile::after {
    top: 22px;
    left: 22px;
    width: 50px;
    height: 50px;
    border-radius: 14px 0 0 0;
  }

  body.asset-management-page .cf-strength-tile__list,
  body.asset-management-page .cf-strength-tile__info-list {
    padding-top: 16px;
  }

  body.asset-management-page .cf-pubs--home .cf-pubs__grid {
    grid-template-columns: 1fr;
  }

  body.asset-management-page .cf-pubs--home .cf-pub-card {
    grid-template-columns: 1fr;
    grid-template-areas:
      "tags"
      "date"
      "cover"
      "title"
      "download";
  }

  body.asset-management-page .cf-team-nav__hint {
    font-size: 0.62rem;
    letter-spacing: 0.18em;
  }
}

@media (max-width: 920px) {
  .cf-fundgrid--teaser .cf-fundgrid__list { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 620px) {
  .cf-fundgrid--teaser .cf-fundgrid__list { grid-template-columns: 1fr; }
}


.cookie-banner {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1200;
  background: #ffffff;
  border-top: 3px solid var(--rm-teal, #00a3b4);
  box-shadow: 0 -18px 50px rgba(17, 29, 51, 0.12);
  transform: translateY(110%);
  transition: transform var(--rm-ease, 320ms cubic-bezier(0.22, 1, 0.36, 1));
  font-family: "Rubik", Tahoma, sans-serif;
}

.cookie-banner.is-visible {
  transform: translateY(0);
}

.cookie-banner,
.cookie-banner * {
  box-sizing: border-box;
}

.cookie-banner__inner {
  width: min(1200px, calc(100% - 40px));
  margin: 0 auto;
  padding: 28px clamp(18px, 2.2vw, 28px);
  display: flex;
  flex-wrap: wrap;
  gap: 28px;
  align-items: flex-start;
  justify-content: space-between;
}

.cookie-banner__body {
  flex: 1 1 620px;
  min-width: min(100%, 320px);
}

.cookie-banner__text {
  margin: 0 0 16px;
  color: var(--rm-ink, #1d1d1b);
  font-size: 15px;
  line-height: 1.6;
  max-width: 76ch;
}

.cookie-banner__text:last-of-type {
  margin-bottom: 18px;
}

.cookie-banner__links {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.cookie-banner__link {
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: var(--rm-navy, #1c355e);
  font: inherit;
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 160ms ease;
}

.cookie-banner__link:hover {
  color: var(--rm-teal, #00a3b4);
}

.cookie-banner__actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 0 0 300px;
  width: min(100%, 300px);
  max-width: 300px;
  margin-left: auto;
}

.cookie-banner__btn {
  appearance: none;
  cursor: pointer;
  width: 100%;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 12px;
  border: 1px solid transparent;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 500;
  transition: transform 180ms ease, background-color 180ms ease, color 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.cookie-banner__btn:hover {
  transform: translateY(-1px);
}


.cookie-banner__btn--accept {
  background: var(--rm-navy, #1c355e);
  color: #ffffff;
  box-shadow: 0 14px 30px rgba(17, 29, 51, 0.18);
}

.cookie-banner__btn--accept:hover {
  background: var(--rm-navy-strong, #142844);
  box-shadow: 0 18px 36px rgba(17, 29, 51, 0.22);
}


.cookie-banner__btn--refuse {
  background: #ffffff;
  border-color: var(--rm-line-strong, rgba(28, 53, 94, 0.2));
  color: var(--rm-navy, #1c355e);
}

.cookie-banner__btn--refuse:hover {
  border-color: var(--rm-navy, #1c355e);
  background: rgba(28, 53, 94, 0.04);
}


.cookie-banner__btn--cancel {
  background: transparent;
  color: var(--rm-text-soft, #5d6f89);
  min-height: 40px;
}

.cookie-banner__btn--cancel:hover {
  color: var(--rm-navy, #1c355e);
  background: rgba(28, 53, 94, 0.04);
}

.cookie-banner__btn:focus-visible,
.cookie-banner__link:focus-visible {
  outline: 2px solid var(--rm-teal, #00a3b4);
  outline-offset: 3px;
}

@media (max-width: 920px) {
  .cookie-banner__inner {
    gap: 24px;
    padding: 22px var(--home-page-gutter, 20px);
    width: min(100%, calc(100% - 16px));
  }
  .cookie-banner__actions {
    flex: 1 1 100%;
    width: 100%;
    max-width: none;
    flex-direction: row;
    flex-wrap: wrap;
    margin-left: 0;
  }
  .cookie-banner__btn {
    flex: 1 1 160px;
  }
}

@media (max-width: 560px) {
  .cookie-banner__inner {
    padding: 16px 16px calc(16px + env(safe-area-inset-bottom, 0px));
    gap: 14px;
  }
  .cookie-banner__actions {
    flex-direction: column;
    gap: 10px;
  }
  .cookie-banner__text {
    font-size: 13.5px;
    line-height: 1.5;
    margin-bottom: 8px;
  }
  .cookie-banner__text:last-of-type {
    margin-bottom: 12px;
  }
  .cookie-banner__links {
    gap: 18px;
  }
  .cookie-banner__btn {
    min-height: 46px;
    flex: 0 0 auto;
  }
}


.side-dock {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 1100;
  display: flex;
  flex-direction: column;
  border-radius: 20px 0 0 20px;
  overflow: hidden;
  background: var(--rm-navy, #1c355e);
  box-shadow: -10px 18px 40px rgba(17, 29, 51, 0.22);
  font-family: "Rubik", Tahoma, sans-serif;
}

.side-dock__btn {
  position: relative;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  background: transparent;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 200ms ease, color 200ms ease;
}

.side-dock__btn:last-child {
  border-bottom: 0;
}

.side-dock__btn:hover,
.side-dock__btn:focus-visible {
  background: var(--rm-teal, #00a3b4);
  color: #ffffff;
  outline: none;
}

.side-dock__btn svg {
  width: 23px;
  height: 23px;
  display: block;
}

.side-dock__label {
  position: absolute;
  right: calc(100% + 12px);
  top: 50%;
  transform: translateY(-50%) translateX(8px);
  padding: 7px 14px;
  border-radius: 999px;
  background: var(--rm-navy-strong, #142844);
  color: #ffffff;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  box-shadow: 0 10px 26px rgba(17, 29, 51, 0.22);
  transition: opacity 200ms ease, transform 200ms ease;
}

.side-dock__btn:hover .side-dock__label,
.side-dock__btn:focus-visible .side-dock__label {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}


.side-dock__top {
  display: none;
}

.side-dock.is-scrolled .side-dock__top {
  display: grid;
}

@media (max-width: 768px) {
  .side-dock__btn {
    width: 50px;
    height: 50px;
  }
  .side-dock__btn svg {
    width: 20px;
    height: 20px;
  }
}

@media (max-width: 480px) {
  .side-dock {
    border-radius: 16px 0 0 16px;
  }
  .side-dock__btn {
    width: 46px;
    height: 46px;
  }
}


.legal {
  padding: clamp(150px, 18vh, 210px) var(--home-page-gutter, 24px) clamp(80px, 10vw, 130px);
  background: var(--rm-bg, #ffffff);
}

.legal__shell {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
}

.legal__head {
  padding-bottom: 32px;
  margin-bottom: 40px;
  border-bottom: 1px solid var(--rm-line, rgba(28, 53, 94, 0.12));
}

.legal__eyebrow {
  margin: 0 0 14px;
  color: var(--rm-teal, #00a3b4);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.legal__title {
  margin: 0 0 14px;
  color: var(--rm-navy, #1c355e);
  font-size: clamp(2rem, 4vw, 2.9rem);
  font-weight: 600;
  line-height: 1.1;
}

.legal__updated {
  margin: 0 0 22px;
  color: var(--rm-text-soft, #5d6f89);
  font-size: 14px;
}

.legal__intro {
  margin: 0;
  color: var(--rm-ink, #1d1d1b);
  font-size: 1.08rem;
  line-height: 1.7;
}

.legal__section {
  margin-bottom: 38px;
}

.legal__section:last-child {
  margin-bottom: 0;
}

.legal__section h3 {
  margin: 0 0 14px;
  color: var(--rm-navy, #1c355e);
  font-size: 1.3rem;
  font-weight: 600;
}

.legal__section p {
  margin: 0 0 14px;
  color: var(--rm-ink, #1d1d1b);
  font-size: 1rem;
  line-height: 1.75;
}

.legal__section p:last-child {
  margin-bottom: 0;
}

.legal__section a {
  color: var(--rm-teal, #00a3b4);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.legal__section a:hover {
  color: var(--rm-navy, #1c355e);
}

.legal__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.legal__list li {
  position: relative;
  padding-left: 24px;
  color: var(--rm-ink, #1d1d1b);
  font-size: 1rem;
  line-height: 1.7;
}

.legal__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--rm-teal, #00a3b4);
}

.legal__list strong {
  color: var(--rm-navy, #1c355e);
  font-weight: 600;
}

.legal__cta {
  appearance: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 0 26px;
  border-radius: 12px;
  border: 0;
  background: var(--rm-navy, #1c355e);
  color: #ffffff;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 500;
  transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
  box-shadow: 0 14px 30px rgba(17, 29, 51, 0.16);
}

.legal__cta:hover {
  transform: translateY(-1px);
  background: var(--rm-navy-strong, #142844);
}

.legal__cta:focus-visible {
  outline: 2px solid var(--rm-teal, #00a3b4);
  outline-offset: 3px;
}


.lang-button.redmed-language-switch,
.mobile-menu__lang.redmed-language-switch,
.redmed-auth-page .auth-header__languages.redmed-language-switch {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 7px;
  max-width: min(20rem, 30vw);
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.lang-button.redmed-language-switch::-webkit-scrollbar,
.mobile-menu__lang.redmed-language-switch::-webkit-scrollbar,
.redmed-auth-page .auth-header__languages.redmed-language-switch::-webkit-scrollbar {
  display: none;
}

.redmed-language-switch__link {
  min-width: 24px;
  min-height: 32px;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  padding-inline: 1px;
  border-radius: 3px;
  background: transparent;
  color: inherit;
  font-size: clamp(0.72rem, 0.8vw, 0.78rem);
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  opacity: 0.45;
  transition: color 160ms ease, opacity 160ms ease;
}

.redmed-language-switch__link:hover {
  opacity: 1;
}

.redmed-language-switch__link:focus-visible {
  opacity: 1;
  outline: 2px solid var(--rm-teal, #00a3b4);
  outline-offset: 2px;
}

.redmed-language-switch__link.is-active,
.redmed-language-switch__link[aria-current="page"] {
  background: transparent;
  color: var(--rm-teal, #00a3b4);
  font-weight: 600;
  opacity: 1;
}

.redmed-language-switch__separator {
  width: 1px;
  height: 11px;
  flex: 0 0 1px;
  background: currentColor;
  opacity: 0.3;
}

.mobile-menu__lang.redmed-language-switch {
  max-width: min(16rem, 42vw);
}

.lang-button[data-lang-toggle],
.mobile-menu__lang[data-lang-toggle] {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.lang-button__opt {
  font-weight: 500;
  opacity: 0.45;
  transition: opacity 160ms ease, color 160ms ease;
}

.lang-button__opt.is-active {
  opacity: 1;
  color: var(--rm-teal, #00a3b4);
  font-weight: 600;
}

.lang-button__opt:hover {
  opacity: 0.85;
}

.lang-button__sep {
  width: 1px;
  height: 11px;
  background: currentColor;
  opacity: 0.3;
}


.article {
  padding: clamp(96px, 12vh, 132px) var(--home-page-gutter, 24px) clamp(96px, 10vw, 140px);
  background: var(--rm-bg, #ffffff);
}

.article__shell {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

.article__crumbs {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 26px;
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.86rem;
}

.article__crumbs a {
  color: var(--rm-text-soft, #5d6f89);
  text-decoration: none;
  transition: color 160ms ease;
}

.article__crumbs a:hover {
  color: var(--rm-teal, #00a3b4);
}

.article__tag {
  display: inline-block;
  margin-bottom: 18px;
  padding: 5px 13px;
  border-radius: 999px;
  background: rgba(0, 163, 180, 0.12);
  color: #0a7c89;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.article__title {
  margin: 0 0 22px;
  color: var(--rm-navy, #1c355e);
  font-size: clamp(1.9rem, 3.4vw, 2.85rem);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.03em;
}

.article__lede {
  margin: 0 0 24px;
  color: var(--rm-ink, #1d1d1b);
  font-size: 1.16rem;
  line-height: 1.6;
}

.article__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--rm-line, rgba(28, 53, 94, 0.12));
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.9rem;
}

.article__meta em {
  font-style: normal;
  color: var(--rm-navy, #1c355e);
  font-weight: 500;
}

.article__dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(28, 53, 94, 0.3);
}

.article__hero {
  margin: 34px 0;
}

.article__hero img {
  width: 100%;
  height: auto;
  border-radius: 20px;
  box-shadow: var(--rm-shadow, 0 14px 40px rgba(17, 29, 51, 0.08));
}

.article__metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin: 0 0 38px;
  padding: 26px;
  border-radius: 20px;
  background: linear-gradient(180deg, #f6f9fc, #fbfdff);
  border: 1px solid var(--rm-line, rgba(28, 53, 94, 0.1));
}

.article-metric {
  text-align: center;
}

.article-metric__value {
  display: block;
  color: var(--rm-navy, #1c355e);
  font-size: clamp(1.4rem, 2.2vw, 1.95rem);
  font-weight: 600;
  letter-spacing: -0.02em;
}

.article-metric__label {
  display: block;
  margin-top: 6px;
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.8rem;
  line-height: 1.3;
}

.article__body p {
  margin: 0 0 22px;
  color: var(--rm-ink, #1d1d1b);
  font-size: 1.06rem;
  line-height: 1.8;
}

.article__foot {
  position: relative;
  z-index: 2;
  margin-top: 40px;
  padding-top: 28px;
  border-top: 1px solid var(--rm-line, rgba(28, 53, 94, 0.12));
}

.article__back {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--rm-navy, #1c355e);
  font-weight: 500;
  text-decoration: none;
  transition: gap 200ms ease, color 200ms ease;
}

.article__back:hover {
  color: var(--rm-teal, #00a3b4);
  gap: 14px;
}


.article-listing {
  padding: clamp(96px, 12vh, 132px) var(--home-page-gutter, 24px) clamp(84px, 10vw, 140px);
  background:
    radial-gradient(circle at 12% 8%, rgba(0, 163, 180, 0.08), transparent 24%),
    linear-gradient(180deg, #f6fbff 0%, #ffffff 42%, #f7fbff 100%);
  min-height: 70vh;
}

.article-listing__shell {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.article-listing__hero {
  padding: clamp(34px, 6vw, 72px) 0 clamp(34px, 5vw, 64px);
}

.article-listing__crumbs {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.9rem;
}

.article-listing__crumbs a {
  color: inherit;
  text-decoration: none;
  transition: color 160ms ease;
}

.article-listing__crumbs a:hover {
  color: var(--rm-teal, #00a3b4);
}

.article-listing__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.article-listing__title {
  max-width: 780px;
  margin: 0;
  color: var(--rm-navy, #1c355e);
  font-size: clamp(3rem, 8vw, 6.5rem);
  font-weight: 600;
  line-height: 0.92;
  letter-spacing: -0.07em;
}

.article-listing__intro {
  max-width: 620px;
  margin: 24px 0 0;
  color: var(--rm-text-soft, #5d6f89);
  font-size: clamp(1rem, 1.4vw, 1.2rem);
  line-height: 1.75;
}

.article-listing__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.4vw, 30px);
}

.article-listing__grid.news-grid--boxed {
  margin-top: 0;
  overflow: visible;
  padding: 0;
}

.article-listing-news-card {
  width: auto;
  min-height: 100%;
}

.article-listing-news-card .news-card__body {
  flex: 1;
  min-height: clamp(190px, 18vw, 260px);
}

.article-listing-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 420px;
  border: 1px solid rgba(0, 163, 180, 0.24);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(244, 251, 253, 0.92));
  box-shadow: 0 22px 58px rgba(28, 53, 94, 0.08);
  overflow: hidden;
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease;
}

.article-listing-card:hover {
  transform: translateY(-6px);
  border-color: rgba(0, 163, 180, 0.55);
  box-shadow: 0 34px 78px rgba(28, 53, 94, 0.14);
}

.article-listing-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 4;
  overflow: hidden;
  text-indent: -9999px;
}

.article-listing-card__media {
  display: block;
  height: 190px;
  overflow: hidden;
  background: rgba(0, 163, 180, 0.08);
}

.article-listing-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 320ms ease;
}

.article-listing-card:hover .article-listing-card__media img {
  transform: scale(1.04);
}

.article-listing-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 24px;
}

.article-listing-card__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  min-height: 30px;
  margin: 0 0 18px;
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.82rem;
}

.article-listing-card__title {
  margin: 0;
  color: var(--rm-navy, #1c355e);
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -0.035em;
}

.article-listing-card__excerpt {
  margin: 16px 0 0;
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.96rem;
  line-height: 1.65;
}

.article-listing-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 24px;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.article-listing__empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 34px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.72);
  color: var(--rm-text-soft, #5d6f89);
  text-align: center;
}

@media (max-width: 620px) {
  .article {
    padding-top: 88px;
    padding-bottom: 180px;
  }

  .article__metrics {
    grid-template-columns: repeat(2, 1fr);
  }

  .article-listing {
    padding: 88px 18px 82px;
  }

  .article-listing__grid {
    grid-template-columns: 1fr;
  }

  .article-listing-news-card .news-card__body {
    min-height: 0;
  }

  .article-listing-card {
    min-height: 0;
  }
}

@media (min-width: 621px) and (max-width: 980px) {
  .article-listing__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


.news-feature__overlay {
  position: absolute;
  inset: 0;
  z-index: 4;
  border-radius: inherit;
}

.news-feature:has(.news-feature__overlay) {
  cursor: pointer;
}

.news-feature:has(.news-feature__overlay:hover) {
  transform: translateY(-3px);
  box-shadow: 0 38px 80px rgba(28, 53, 94, 0.16);
}

.news-feature:has(.news-feature__overlay:hover) .news-feature__title {
  color: var(--rm-teal, #00a3b4);
}


.primary-nav__item--rse {
  color: var(--rm-teal, #00a3b4);
  font-weight: 600;
}

.primary-nav__item--rse::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal, #00a3b4);
  box-shadow: 0 0 0 4px rgba(0, 163, 180, 0.16);
  margin-right: 2px;
}

.primary-nav__item--rse:hover,
.primary-nav__item--rse.is-open {
  background: rgba(0, 163, 180, 0.08);
  box-shadow: 0 8px 24px rgba(0, 163, 180, 0.12);
}

.rse-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.rse-head__eyebrow {
  margin: 0;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.rse-head__count {
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.82rem;
}

.rse-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.rse-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  border: 1px solid var(--rm-line, rgba(28, 53, 94, 0.12));
  border-radius: 16px;
  background: #fff;
  text-decoration: none;
  transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.3s ease, border-color 0.3s ease;
}

.rse-card:hover {
  transform: translateY(-3px);
  border-color: rgba(0, 163, 180, 0.4);
  box-shadow: 0 16px 34px rgba(17, 29, 51, 0.1);
}

.rse-card__img {
  width: 66px;
  height: 50px;
  object-fit: cover;
  border-radius: 10px;
  flex: none;
  background: #f3f6fb;
}

.rse-card__t {
  display: block;
  color: var(--rm-navy, #1c355e);
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.rse-card__s {
  display: block;
  color: var(--rm-text-soft, #5d6f89);
  font-size: 0.8rem;
  margin-top: 2px;
}


#rse {
  scroll-margin-top: 120px;
}

@media (max-width: 720px) {
  .rse-grid {
    grid-template-columns: 1fr;
  }
}


body.private-equity-page .cf-title--strengths {
  font-size: clamp(2.1rem, 3.1vw, 3.12rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

body.private-equity-page .cf-title--strengths::after {
  width: 98px;
  height: 2px;
  margin-top: 14px;
  transform: none;
  opacity: 1;
}

body.private-equity-page .cf-strengths__head {
  margin-bottom: clamp(24px, 3vw, 36px);
}

body.private-equity-page .pe-colombus-band {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(35, 95, 122, 0.98), rgba(24, 69, 91, 0.98)),
    #1c5770;
  color: #ffffff;
}

body.private-equity-page .pe-colombus-band::before,
body.private-equity-page .pe-colombus-band::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

body.private-equity-page .pe-colombus-band::before {
  inset: 0;
  background:
    linear-gradient(135deg, transparent 0 72%, rgba(255, 255, 255, 0.05) 72% 84%, transparent 84%),
    repeating-linear-gradient(135deg, transparent 0 9px, rgba(5, 27, 45, 0.18) 9px 12px, transparent 12px 22px);
  clip-path: polygon(72% 0, 100% 0, 100% 100%, 82% 100%);
  opacity: 0.62;
}

body.private-equity-page .pe-colombus-band::after {
  right: -36px;
  top: -60px;
  width: 360px;
  height: 240px;
  background:
    linear-gradient(60deg, transparent 0 26%, rgba(255, 255, 255, 0.06) 26% 50%, transparent 50%),
    linear-gradient(120deg, transparent 0 42%, rgba(13, 48, 70, 0.42) 42% 64%, transparent 64%);
  transform: skewX(-12deg);
  opacity: 0.8;
}

body.private-equity-page .pe-colombus-band__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(180px, 0.85fr) minmax(280px, 1.25fr) auto;
  align-items: center;
  gap: clamp(28px, 5vw, 72px);
  width: min(1600px, calc(100% - 96px));
  min-height: clamp(150px, 14vw, 176px);
  margin: 0 auto;
  padding: clamp(30px, 3.4vw, 46px) 0;
}

body.private-equity-page .pe-colombus-band__brand {
  display: grid;
  justify-items: start;
  gap: 20px;
}

body.private-equity-page .pe-colombus-band__title {
  margin: 0;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.55rem, 4vw, 4rem);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: 0;
}

body.private-equity-page .pe-colombus-band__line {
  width: 126px;
  height: 3px;
  background: var(--rm-teal);
}

body.private-equity-page .pe-colombus-band__copy {
  margin: 0;
  max-width: 18ch;
  justify-self: center;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.75rem, 2.25vw, 2.35rem);
  font-weight: 400;
  line-height: 1.12;
  text-align: center;
  letter-spacing: 0;
}

body.private-equity-page .pe-colombus-band__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 182px;
  min-height: 52px;
  padding: 14px 30px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--rm-teal), #19c1c5);
  color: #ffffff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.16);
  transition:
    transform var(--rm-ease),
    box-shadow var(--rm-ease),
    background var(--rm-ease);
}

body.private-equity-page .pe-colombus-band__cta:hover,
body.private-equity-page .pe-colombus-band__cta:focus-visible {
  transform: translateY(-2px);
  background: linear-gradient(135deg, #1ed5de, var(--rm-teal));
  box-shadow: 0 22px 42px rgba(0, 0, 0, 0.22);
}

body.private-equity-page .pe-colombus-spotlight {
  position: relative;
  overflow: hidden;
  color: #ffffff;
  background: #0d2338;
}

body.private-equity-page .pe-colombus-spotlight__media,
body.private-equity-page .pe-colombus-spotlight__media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

body.private-equity-page .pe-colombus-spotlight__media video {
  object-fit: cover;
  filter: saturate(1.02) contrast(1.02);
}

body.private-equity-page .pe-colombus-spotlight__veil {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, rgba(7, 20, 33, 0.84) 0%, rgba(7, 20, 33, 0.52) 42%, rgba(0, 163, 180, 0.14) 100%),
    radial-gradient(circle at 82% 22%, rgba(73, 220, 224, 0.24), transparent 24%),
    linear-gradient(180deg, rgba(12, 24, 36, 0.12), rgba(12, 24, 36, 0.44));
}

body.private-equity-page .pe-colombus-spotlight__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: clamp(24px, 4vw, 42px);
  align-items: center;
  width: min(1240px, calc(100% - 88px));
  min-height: clamp(420px, 48vw, 560px);
  margin: 0 auto;
  padding: clamp(44px, 5vw, 68px) 0;
}

body.private-equity-page .pe-colombus-spotlight__panel {
  display: grid;
  gap: 18px;
  align-content: start;
  max-width: 720px;
  padding: clamp(26px, 3vw, 36px);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 34px;
  background:
    linear-gradient(180deg, rgba(10, 24, 39, 0.74), rgba(14, 34, 53, 0.56));
  box-shadow: 0 28px 68px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(14px) saturate(122%);
  -webkit-backdrop-filter: blur(14px) saturate(122%);
}

body.private-equity-page .pe-colombus-spotlight__eyebrow {
  margin: 0;
  color: rgba(164, 248, 247, 0.94);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

body.private-equity-page .pe-colombus-spotlight__title {
  margin: 0;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.9rem, 4.4vw, 4.8rem);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.03em;
}

body.private-equity-page .pe-colombus-spotlight__lead {
  margin: 0;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.5rem, 2vw, 2.2rem);
  line-height: 1.08;
}

body.private-equity-page .pe-colombus-spotlight__text {
  margin: 0;
  max-width: 60ch;
  color: rgba(241, 248, 250, 0.88);
  font-size: 1rem;
  line-height: 1.78;
}

body.private-equity-page .pe-colombus-spotlight__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 6px;
}

body.private-equity-page .pe-colombus-spotlight__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 188px;
  min-height: 54px;
  padding: 14px 30px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--rm-teal), #19c1c5);
  color: #ffffff;
  font-size: 0.98rem;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.18);
  transition:
    transform var(--rm-ease),
    box-shadow var(--rm-ease),
    background var(--rm-ease);
}

body.private-equity-page .pe-colombus-spotlight__cta:hover,
body.private-equity-page .pe-colombus-spotlight__cta:focus-visible {
  transform: translateY(-2px);
  background: linear-gradient(135deg, #1ed5de, var(--rm-teal));
  box-shadow: 0 22px 42px rgba(0, 0, 0, 0.24);
}

body.private-equity-page .pe-colombus-spotlight__facts {
  display: grid;
  gap: 16px;
}

body.private-equity-page .pe-colombus-spotlight__fact {
  display: grid;
  gap: 10px;
  padding: 24px 22px 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
  backdrop-filter: blur(10px) saturate(118%);
  -webkit-backdrop-filter: blur(10px) saturate(118%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

body.private-equity-page .pe-colombus-spotlight__fact-kicker {
  color: rgba(164, 248, 247, 0.92);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.private-equity-page .pe-colombus-spotlight__fact strong {
  color: #ffffff;
  font-size: clamp(1.16rem, 1.4vw, 1.36rem);
  font-weight: 600;
  line-height: 1.18;
}

body.private-equity-page .pe-colombus-spotlight__fact p {
  margin: 0;
  color: rgba(241, 248, 250, 0.82);
  font-size: 0.94rem;
  line-height: 1.64;
}

body.private-equity-page .pe-colombus-spotlight__fact-link {
  align-self: end;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  margin-top: 4px;
  color: rgba(164, 248, 247, 0.96);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-decoration: none;
  text-transform: uppercase;
}

body.private-equity-page .pe-colombus-spotlight__fact-link::after {
  content: "→";
  font-size: 1rem;
  line-height: 1;
  transition: transform var(--rm-ease);
}

body.private-equity-page .pe-colombus-spotlight__fact-link:hover::after,
body.private-equity-page .pe-colombus-spotlight__fact-link:focus-visible::after {
  transform: translateX(4px);
}

body.pe-colombus-page .pe-colombus-hero {
  min-height: clamp(560px, 66vh, 720px);
}

body.pe-colombus-page .pe-colombus-hero .cf-hero__layout--single {
  width: min(1180px, calc(100% - 88px));
}

body.pe-colombus-page .pe-colombus-hero .cf-hero__title {
  max-width: 14ch;
}

body.pe-colombus-page .pe-colombus-hero .cf-hero__lede p {
  max-width: 78ch;
}

body.pe-colombus-page .pe-colombus-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

body.pe-colombus-page .pe-colombus-page__back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  font-size: 0.95rem;
  font-weight: 600;
  text-decoration: none;
  transition:
    transform var(--rm-ease),
    border-color var(--rm-ease),
    background var(--rm-ease);
}

body.pe-colombus-page .pe-colombus-page__back:hover,
body.pe-colombus-page .pe-colombus-page__back:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(113, 240, 236, 0.55);
  background: rgba(113, 240, 236, 0.15);
}

body.pe-colombus-page .pe-colombus-detail-section {
  background:
    radial-gradient(circle at 8% 16%, rgba(113, 240, 236, 0.08), transparent 26%),
    #ffffff;
}

body.pe-colombus-page .pe-colombus-detail-section.cf-section--alt {
  background: linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.pe-colombus-page .pe-colombus-detail {
  display: grid;
  gap: clamp(28px, 3vw, 42px);
}

body.pe-colombus-page .cf-section__head p {
  max-width: 860px;
  margin: 18px auto 0;
  color: rgba(28, 53, 94, 0.72);
  font-size: clamp(1rem, 1.2vw, 1.08rem);
  line-height: 1.75;
}

body.pe-colombus-page .pe-colombus-criteria-cards {
  position: relative;
}

body.pe-colombus-page .pe-colombus-criteria-cards::before {
  content: "";
  position: absolute;
  inset: 24px 6% 24px auto;
  width: min(46vw, 520px);
  background: repeating-linear-gradient(
    -32deg,
    rgba(28, 53, 94, 0.03) 0 2px,
    transparent 2px 10px
  );
  clip-path: polygon(18% 0, 100% 0, 82% 100%, 0 100%);
  pointer-events: none;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-mosaic {
  position: relative;
  z-index: 1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card {
  min-height: 100%;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__panel,
body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info {
  gap: 22px;
  padding: 26px 24px 28px;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__head {
  min-height: 132px;
  padding: 10px 18px 2px;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__head .cf-strength-tile__title,
body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__panel .cf-strength-tile__title,
body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info .cf-strength-tile__title {
  max-width: 20ch;
  font-size: clamp(1.28rem, 1.55vw, 1.72rem);
  line-height: 1.18;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__list,
body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info-list {
  gap: 17px;
  padding: 22px 8px 0;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__list li,
body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info-list li {
  color: rgba(18, 43, 74, 0.94);
  font-size: 0.98rem;
  line-height: 1.66;
}

body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__list li::before,
body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info-list li::before {
  box-shadow: 0 0 0 7px rgba(0, 163, 180, 0.11);
}

body.private-equity-page.pe-colombus-page .cf-solutions-grid.pe-colombus-response-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(22px, 2.2vw, 30px);
  width: 100%;
  animation: none;
  transform: none;
  will-change: auto;
}

body.private-equity-page.pe-colombus-page .cf-solutions-grid.pe-colombus-response-grid .cf-solution-box:nth-child(1),
body.private-equity-page.pe-colombus-page .cf-solutions-grid.pe-colombus-response-grid .cf-solution-box:nth-child(2),
body.private-equity-page.pe-colombus-page .cf-solutions-grid.pe-colombus-response-grid .cf-solution-box:nth-child(n + 3) {
  grid-column: span 1;
}

body.private-equity-page.pe-colombus-page .cf-solution-box.pe-colombus-response-card {
  width: auto;
  min-width: 0;
  min-height: 0;
  padding: 34px 30px 28px;
}

body.private-equity-page.pe-colombus-page .cf-solution-box.pe-colombus-response-card h3 {
  max-width: 22ch;
  font-size: clamp(1.34rem, 1.9vw, 1.82rem);
  line-height: 1.12;
}

body.private-equity-page.pe-colombus-page .cf-solution-box.pe-colombus-response-card p {
  max-width: none;
  margin-top: 16px;
  color: rgba(28, 53, 94, 0.72);
  font-size: 1rem;
  line-height: 1.72;
}

body.pe-colombus-page .pe-colombus-steps-flow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
  gap: clamp(14px, 2vw, 24px);
  align-items: center;
}

body.pe-colombus-page .pe-colombus-step {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 14px;
  text-align: center;
}

body.pe-colombus-page .pe-colombus-step img {
  width: clamp(128px, 12vw, 170px);
  aspect-ratio: 1;
  object-fit: contain;
}

body.pe-colombus-page .pe-colombus-step h3,
body.pe-colombus-page .pe-colombus-company h3 {
  margin: 0;
  color: var(--rm-navy);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0;
}

body.pe-colombus-page .pe-colombus-step h3 {
  font-size: clamp(1.28rem, 1.65vw, 1.6rem);
}

body.pe-colombus-page .pe-colombus-step p,
body.pe-colombus-page .pe-colombus-company p {
  margin: 0;
  color: rgba(28, 53, 94, 0.72);
  font-size: 0.98rem;
  line-height: 1.68;
}

body.pe-colombus-page .pe-colombus-steps__connector {
  position: relative;
  width: clamp(58px, 6vw, 86px);
  height: 24px;
}

body.pe-colombus-page .pe-colombus-steps__connector::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: calc(100% - 16px);
  height: 2px;
  background: rgba(28, 53, 94, 0.3);
  transform: translateY(-50%);
}

body.pe-colombus-page .pe-colombus-steps__connector::after {
  content: "";
  position: absolute;
  right: 2px;
  top: 50%;
  width: 12px;
  height: 12px;
  border-top: 2px solid rgba(28, 53, 94, 0.36);
  border-right: 2px solid rgba(28, 53, 94, 0.36);
  transform: translateY(-50%) rotate(45deg);
}

body.pe-colombus-page .pe-colombus-logos {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(22px, 4vw, 44px);
  align-items: center;
  justify-items: center;
  padding: 10px 0 2px;
}

body.pe-colombus-page .pe-colombus-logo-trigger {
  display: grid;
  place-items: center;
  width: 100%;
  min-height: 98px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  transition:
    transform var(--rm-ease),
    opacity var(--rm-ease);
}

body.pe-colombus-page .pe-colombus-logo-trigger:hover,
body.pe-colombus-page .pe-colombus-logo-trigger:focus-visible {
  transform: translateY(-4px) scale(1.02);
  opacity: 0.88;
}

body.pe-colombus-page .pe-colombus-logo-trigger img {
  max-width: min(100%, 220px);
  max-height: 116px;
  object-fit: contain;
}

body.pe-colombus-page .pe-colombus-company-source {
  display: none;
}

body.pe-colombus-page .pe-colombus-modal__dialog {
  width: min(1080px, 100%);
  max-height: min(88vh, 920px);
}

body.pe-colombus-page .pe-colombus-modal__body {
  padding-top: clamp(78px, 5.6vw, 92px);
}

body.pe-colombus-page .pe-colombus-company {
  display: grid;
  grid-template-columns: minmax(210px, 0.34fr) minmax(0, 1fr);
  gap: clamp(26px, 4vw, 58px);
  align-items: start;
}

body.pe-colombus-page .pe-colombus-company__media {
  display: grid;
  place-items: center;
  min-height: 220px;
  padding: 26px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 26px;
  background:
    radial-gradient(circle at 18% 20%, rgba(0, 163, 180, 0.12), transparent 34%),
    linear-gradient(180deg, #eef5f8 0%, #ffffff 100%);
}

body.pe-colombus-page .pe-colombus-company__media img {
  max-width: min(100%, 260px);
  max-height: 140px;
  object-fit: contain;
}

body.pe-colombus-page .pe-colombus-company__body {
  display: grid;
  gap: 16px;
}

body.pe-colombus-page .pe-colombus-company h3 {
  font-size: clamp(1.65rem, 2.4vw, 2.45rem);
}

body.pe-colombus-page .pe-colombus-company__meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 12px 0 0;
}

body.pe-colombus-page .pe-colombus-company__meta div {
  min-width: 0;
  padding: 14px 16px;
  border-radius: 8px;
  background: rgba(247, 251, 253, 0.96);
  border: 1px solid rgba(28, 53, 94, 0.07);
}

body.pe-colombus-page .pe-colombus-company__meta dt,
body.pe-colombus-page .pe-colombus-company__meta dd {
  margin: 0;
}

body.pe-colombus-page .pe-colombus-company__meta dt {
  color: rgba(28, 53, 94, 0.52);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.pe-colombus-page .pe-colombus-company__meta dd {
  margin-top: 6px;
  color: var(--rm-navy);
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.35;
}

body.private-equity-page .pe-colombus-detail-section {
  background:
    radial-gradient(circle at 8% 16%, rgba(113, 240, 236, 0.08), transparent 26%),
    #ffffff;
}

body.private-equity-page .pe-colombus-detail-section.cf-section--alt {
  background: linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.private-equity-page .pe-colombus-detail {
  display: grid;
  gap: clamp(28px, 3vw, 42px);
}

body.private-equity-page .pe-colombus-logos {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(22px, 4vw, 44px);
  align-items: center;
  justify-items: center;
  padding: 10px 0 2px;
}

body.private-equity-page .pe-colombus-logo-trigger {
  display: grid;
  place-items: center;
  width: 100%;
  min-height: 98px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  transition:
    transform var(--rm-ease),
    opacity var(--rm-ease);
}

body.private-equity-page .pe-colombus-logo-trigger:hover,
body.private-equity-page .pe-colombus-logo-trigger:focus-visible {
  transform: translateY(-4px) scale(1.02);
  opacity: 0.88;
}

body.private-equity-page .pe-colombus-logo-trigger img {
  max-width: min(100%, 220px);
  max-height: 116px;
  object-fit: contain;
}

body.private-equity-page .pe-colombus-company-source {
  display: none;
}

body.private-equity-page .pe-colombus-modal__dialog {
  width: min(1080px, 100%);
  max-height: min(88vh, 920px);
}

body.private-equity-page .pe-colombus-modal__body {
  padding-top: clamp(78px, 5.6vw, 92px);
}

body.private-equity-page .pe-colombus-company {
  display: grid;
  grid-template-columns: minmax(210px, 0.34fr) minmax(0, 1fr);
  gap: clamp(26px, 4vw, 58px);
  align-items: start;
}

body.private-equity-page .pe-colombus-company__media {
  display: grid;
  place-items: center;
  min-height: 220px;
  padding: 26px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 26px;
  background:
    radial-gradient(circle at 18% 20%, rgba(0, 163, 180, 0.12), transparent 34%),
    linear-gradient(180deg, #eef5f8 0%, #ffffff 100%);
}

body.private-equity-page .pe-colombus-company__media img {
  max-width: min(100%, 260px);
  max-height: 140px;
  object-fit: contain;
}

body.private-equity-page .pe-colombus-company__body {
  display: grid;
  gap: 16px;
}

body.private-equity-page .pe-colombus-company h3 {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.65rem, 2.4vw, 2.45rem);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0;
}

body.private-equity-page .pe-colombus-company p {
  margin: 0;
  color: rgba(28, 53, 94, 0.72);
  font-size: 0.98rem;
  line-height: 1.68;
}

body.private-equity-page .pe-colombus-company__meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 12px 0 0;
}

body.private-equity-page .pe-colombus-company__meta div {
  min-width: 0;
  padding: 14px 16px;
  border-radius: 8px;
  background: rgba(247, 251, 253, 0.96);
  border: 1px solid rgba(28, 53, 94, 0.07);
}

body.private-equity-page .pe-colombus-company__meta dt,
body.private-equity-page .pe-colombus-company__meta dd {
  margin: 0;
}

body.private-equity-page .pe-colombus-company__meta dt {
  color: rgba(28, 53, 94, 0.52);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.private-equity-page .pe-colombus-company__meta dd {
  margin-top: 6px;
  color: var(--rm-navy);
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.35;
}

body.private-equity-page .pe-approach-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 24%, rgba(113, 240, 236, 0.1), transparent 24%),
    linear-gradient(180deg, #fdfdfd 0%, #ffffff 100%);
}

body.private-equity-page .pe-approach-section::before,
body.private-equity-page .pe-approach-section::after {
  content: "";
  position: absolute;
  top: 50%;
  z-index: 0;
  width: clamp(76px, 8vw, 118px);
  height: clamp(42px, 4.6vw, 64px);
  border: 1px solid rgba(255, 255, 255, 0.44);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.46), rgba(255, 255, 255, 0.12)),
    linear-gradient(135deg, rgba(114, 232, 234, 0.24), rgba(28, 53, 94, 0.08));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.58),
    0 18px 34px rgba(28, 53, 94, 0.08);
  backdrop-filter: blur(14px) saturate(145%);
  -webkit-backdrop-filter: blur(14px) saturate(145%);
  opacity: 0.72;
  pointer-events: none;
}

body.private-equity-page .pe-approach-section::before {
  left: clamp(8px, 1.8vw, 24px);
  transform: translateY(-50%);
  clip-path: polygon(0 50%, 30% 0, 100% 0, 76% 50%, 100% 100%, 30% 100%);
}

body.private-equity-page .pe-approach-section::after {
  right: clamp(8px, 1.8vw, 24px);
  transform: translateY(-50%);
  clip-path: polygon(0 0, 70% 0, 100% 50%, 70% 100%, 0 100%, 24% 50%);
}

body.private-equity-page .pe-approach-section__layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(30px, 4vw, 54px);
  align-items: start;
}

body.private-equity-page .pe-approach-lead {
  display: grid;
  gap: 16px;
  align-content: start;
  justify-items: center;
  justify-self: center;
  max-width: 680px;
  padding: 0;
  text-align: center;
}

body.private-equity-page .pe-approach-lead__title {
  margin: 0;
  max-width: none;
  font-size: clamp(1.95rem, 2.8vw, 2.72rem);
  line-height: 1.06;
  letter-spacing: 0;
}

body.private-equity-page .pe-approach-lead__line {
  width: 96px;
  height: 2px;
  background: linear-gradient(90deg, var(--rm-teal), rgba(28, 53, 94, 0.14));
}

body.private-equity-page .pe-approach-rail {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 24px);
  padding: 0;
}

body.private-equity-page .pe-approach-rail::before {
  content: none;
}

body.private-equity-page .pe-approach-node {
  position: relative;
  display: grid;
  grid-column: span 2;
  justify-items: center;
  align-content: start;
  text-align: center;
  margin: 0;
  min-height: 190px;
  padding: 26px 24px 28px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  overflow: visible;
  transition: border-color 220ms ease, background 220ms ease;
}

body.private-equity-page .pe-approach-node::before {
  content: none;
}

body.private-equity-page .pe-approach-node::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  width: 42px;
  height: 42px;
  border-radius: 0 8px 0 14px;
  background: linear-gradient(135deg, rgba(23, 182, 191, 0.92), rgba(31, 208, 218, 0.78));
}

body.private-equity-page .pe-approach-node:nth-child(4) {
  grid-column: 2 / span 2;
}

body.private-equity-page .pe-approach-node:nth-child(5) {
  grid-column: 4 / span 2;
}

body.private-equity-page .pe-approach-node:hover,
body.private-equity-page .pe-approach-node:focus-within {
  transform: none;
  border-color: rgba(0, 163, 180, 0.24);
  background: #ffffff;
}

body.private-equity-page .pe-approach-node__icon {
  display: grid;
  place-items: center;
  width: clamp(48px, 4vw, 56px);
  height: clamp(48px, 4vw, 56px);
  margin: 0 0 18px;
  border-radius: 16px;
  border: 1px solid rgba(0, 163, 180, 0.2);
  background:
    radial-gradient(circle at 32% 26%, #ffffff, rgba(229, 245, 249, 0.92));
  color: var(--rm-teal);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  transition:
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 240ms ease,
    background 240ms ease,
    box-shadow 240ms ease;
}

body.private-equity-page .pe-approach-node__icon svg {
  width: clamp(24px, 2.2vw, 28px);
  height: clamp(24px, 2.2vw, 28px);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.private-equity-page .pe-approach-node:hover .pe-approach-node__icon,
body.private-equity-page .pe-approach-node:focus-within .pe-approach-node__icon {
  transform: translateY(-2px) scale(1.06);
  border-color: rgba(0, 163, 180, 0.4);
  background:
    radial-gradient(circle at 32% 26%, #ffffff, rgba(214, 240, 246, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 14px 26px -16px rgba(0, 163, 180, 0.7);
}

body.private-equity-page .pe-approach-node__body {
  display: grid;
  gap: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
}

body.private-equity-page .pe-approach-node__text {
  margin: 0;
  color: rgba(28, 53, 94, 0.92);
  max-width: 28ch;
  font-size: clamp(1rem, 1.08vw, 1.1rem);
  font-weight: 500;
  line-height: 1.55;
  text-wrap: pretty;
}

body.private-equity-page .pe-values-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.private-equity-page .pe-values-section__head {
  margin-bottom: clamp(28px, 3vw, 40px);
}

body.private-equity-page .pe-values-flow {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  max-width: none;
  margin: 0;
}

body.private-equity-page .pe-values-flow::before {
  display: none;
}

body.private-equity-page .pe-values-flow__item {
  position: relative;
  display: block;
  min-height: 360px;
  padding: 30px 28px 30px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 30px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
  overflow: hidden;
}

body.private-equity-page .pe-values-flow__item::before {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  width: 56px;
  height: 56px;
  border-radius: 0 30px 0 18px;
  background: linear-gradient(135deg, #17b6bf, #1fd0da);
}

body.private-equity-page .pe-values-flow__item:nth-child(2),
body.private-equity-page .pe-values-flow__item:nth-child(3) {
  margin-left: 0;
}

body.private-equity-page .pe-values-flow__panel {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  overflow: visible;
}

body.private-equity-page .pe-values-flow__panel::before,
body.private-equity-page .pe-values-flow__panel::after {
  display: none;
}

body.private-equity-page .pe-values-flow__copy {
  display: grid;
  gap: 10px;
  align-content: start;
}

body.private-equity-page .pe-values-flow__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.55rem, 2vw, 2rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.03em;
}

body.private-equity-page .pe-values-flow__lead {
  margin: 0;
  max-width: none;
  color: rgba(28, 53, 94, 0.74);
  font-size: 0.98rem;
  line-height: 1.7;
}

body.private-equity-page .pe-values-flow__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 12px;
  align-content: start;
}

body.private-equity-page .pe-values-flow__list li {
  position: relative;
  margin: 0;
  padding: 0 0 0 20px;
  color: rgba(28, 53, 94, 0.92);
  font-size: 0.98rem;
  line-height: 1.58;
}

body.private-equity-page .pe-values-flow__list li + li {
  border-top: 0;
}

body.private-equity-page .pe-values-flow__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.78em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
  box-shadow: none;
  transform: translateY(-50%);
}

body.private-equity-page .private-equity-team {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(113, 240, 236, 0.12), transparent 24%),
    radial-gradient(circle at 88% 78%, rgba(28, 53, 94, 0.08), transparent 26%),
    linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.private-equity-page .private-equity-team::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.46), rgba(255, 255, 255, 0));
  pointer-events: none;
}


body.private-equity-page .private-equity-team .cf-strengths__head {
  position: relative;
  z-index: 1;
  margin-bottom: clamp(18px, 2.4vw, 28px);
}

body.private-equity-page .private-equity-team .cf-title--strengths {
  font-size: clamp(1.95rem, 2.8vw, 2.6rem);
}

body.private-equity-page .private-equity-team .cf-team-slider {
  position: relative;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(247, 250, 252, 0.96) 100%);
  backdrop-filter: blur(16px) saturate(118%);
  -webkit-backdrop-filter: blur(16px) saturate(118%);
}

body.private-equity-page .private-equity-team .cf-team-col {
  height: clamp(410px, 48vh, 520px);
}

body.private-equity-page .private-equity-team .cf-team-col__caption {
  top: 10%;
  left: 20px;
  right: 20px;
}

body.private-equity-page .private-equity-team .cf-team-col__role {
  margin-bottom: 8px;
  font-size: 0.68rem;
  letter-spacing: 0.16em;
}

body.private-equity-page .private-equity-team .cf-team-col__name {
  font-size: clamp(1.18rem, 1.45vw, 1.58rem);
  font-weight: 500;
}

body.private-equity-page .private-equity-team .cf-team-col__photo {
  position: absolute;
  display: grid;
  place-items: end center;
  padding: 0 22px clamp(24px, 4vh, 36px);
  height: 76%;
  isolation: isolate;
}

body.private-equity-page .private-equity-team .cf-team-col__photo::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: clamp(24px, 4vh, 36px);
  width: min(calc(100% - 34px), 246px);
  height: clamp(248px, 34vh, 320px);
  transform: translateX(-50%);
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 34px 34px 0 0;
  background:
    radial-gradient(circle at 50% 18%, rgba(0, 163, 180, 0.16), transparent 42%),
    linear-gradient(180deg, #fbfdff 0%, #e8f1f5 100%);
  z-index: 0;
  transition:
    transform 800ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 320ms ease,
    background 320ms ease;
}

body.private-equity-page .private-equity-team .cf-team-col__photo::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: clamp(10px, 2vh, 18px);
  width: min(calc(100% - 110px), 140px);
  height: 26px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.14);
  filter: blur(18px);
  opacity: 0.22;
  z-index: 0;
}

body.private-equity-page .private-equity-team .cf-team-col__photo img {
  position: relative;
  z-index: 1;
  width: min(100%, 194px);
  height: clamp(232px, 31vh, 298px);
  border-radius: 26px 26px 0 0;
  border: 1px solid rgba(255, 255, 255, 0.68);
  background: transparent;
  object-fit: cover;
  object-position: center top;
  box-shadow: none;
  filter: grayscale(0.12) contrast(1.03);
}


body.private-equity-page .pe-approach-marquee {
  position: relative;
  margin-top: clamp(34px, 4rem, 58px);
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

body.private-equity-page .pe-approach-grid {
  position: relative;
  display: flex;
  align-items: stretch;
  width: max-content;
  gap: 18px;
  margin-top: 0;
  padding: 10px 0 16px;
  animation: pe-approach-scroll 34s linear infinite;
  will-change: transform;
}

body.private-equity-page .pe-approach-marquee:hover .pe-approach-grid,
body.private-equity-page .pe-approach-marquee:focus-within .pe-approach-grid,
body.private-equity-page .pe-approach-marquee.is-paused .pe-approach-grid {
  animation-play-state: paused;
}

@keyframes pe-approach-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

body.private-equity-page .pe-approach-grid .cf-solution-box {
  position: relative;
  flex: 0 0 clamp(248px, 20vw, 292px);
  min-height: 182px;
  padding: 28px 24px 22px 30px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 28px;
  background: #ffffff;
  box-shadow: none;
  overflow: hidden;
  isolation: isolate;
  display: grid;
  align-content: start;
  gap: 12px;
  transition:
    border-color 260ms ease,
    transform 260ms ease;
}

body.private-equity-page .pe-approach-grid .cf-solution-box::after {
  content: "";
  position: absolute;
  top: 28px;
  right: 18px;
  width: 84px;
  height: 54px;
  background: rgba(0, 163, 180, 0.12);
  clip-path: polygon(0 38%, 54% 38%, 54% 0, 100% 50%, 54% 100%, 54% 62%, 0 62%);
  opacity: 0.18;
  pointer-events: none;
  z-index: -1;
}

body.private-equity-page .pe-approach-grid .cf-solution-box:hover,
body.private-equity-page .pe-approach-grid .cf-solution-box:focus-within {
  border-color: rgba(0, 163, 180, 0.4);
  transform: translateY(-2px);
}

body.private-equity-page .pe-approach-grid .cf-solution-box > * {
  position: relative;
  z-index: 1;
}

body.private-equity-page .pe-approach-grid .cf-solution-box__corner {
  position: absolute;
  top: 0;
  left: 0;
  width: 74px;
  height: 16px;
  border-radius: 0 0 16px 0;
  background: var(--rm-teal);
  pointer-events: none;
  z-index: 0;
}

body.private-equity-page .pe-approach-grid .cf-solution-box__corner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 74px;
  border-radius: 0 0 16px 0;
  background: inherit;
}

body.private-equity-page .pe-approach-grid .cf-solution-box h3 {
  margin: 0;
  max-width: 12ch;
  color: var(--rm-navy);
  font-size: clamp(1.18rem, 1.35vw, 1.5rem);
  font-weight: 600;
  line-height: 1.12;
}

body.private-equity-page .pe-approach-grid .cf-solution-box p {
  margin: 0;
  max-width: none;
  color: rgba(28, 53, 94, 0.66);
  font-size: 0.93rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (max-width: 980px) {
  body.private-equity-page .pe-approach-section::before,
  body.private-equity-page .pe-approach-section::after {
    width: 82px;
    height: 48px;
    opacity: 0.56;
  }

  body.private-equity-page .pe-colombus-spotlight__inner {
    grid-template-columns: 1fr;
    width: min(100% - 48px, 900px);
    padding: 46px 0;
  }

  body.private-equity-page .pe-colombus-spotlight__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.private-equity-page .pe-colombus-spotlight__panel {
    max-width: none;
  }

  body.private-equity-page .pe-approach-marquee {
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
  }

  body.private-equity-page .pe-approach-grid .cf-solution-box {
    flex-basis: clamp(250px, 34vw, 290px);
  }
}

@media (max-width: 700px) {
  body.private-equity-page .pe-approach-section::before,
  body.private-equity-page .pe-approach-section::after {
    width: 62px;
    height: 36px;
    opacity: 0.42;
  }

  body.private-equity-page .pe-colombus-spotlight__inner {
    width: min(100% - 36px, 640px);
    min-height: 0;
    padding: 34px 0 38px;
  }

  body.private-equity-page .pe-colombus-spotlight__facts {
    grid-template-columns: 1fr;
  }

  body.private-equity-page .pe-colombus-spotlight__panel,
  body.private-equity-page .pe-colombus-spotlight__fact {
    border-radius: 24px;
  }

  body.private-equity-page .pe-colombus-spotlight__title {
    font-size: clamp(2.4rem, 11vw, 3.4rem);
  }

  body.private-equity-page .pe-colombus-spotlight__lead {
    font-size: clamp(1.28rem, 5.8vw, 1.72rem);
  }

  body.private-equity-page .pe-approach-marquee {
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-mask-image: none;
    mask-image: none;
  }

  body.private-equity-page .pe-approach-marquee::-webkit-scrollbar {
    display: none;
  }

  body.private-equity-page .pe-approach-grid {
    animation-duration: 30s;
  }

  body.private-equity-page .pe-approach-grid .cf-solution-box {
    flex-basis: min(82vw, 280px);
    min-height: 168px;
    padding: 24px 20px 18px 24px;
    border-radius: 24px;
  }
}


body.private-equity-page .cf-title--strengths {
  font-size: clamp(2.05rem, 3.05vw, 3.18rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

body.private-equity-page .cf-title--strengths::after {
  width: 96px;
  height: 2px;
  margin-top: 12px;
}

body.private-equity-page .cf-strengths__head {
  margin-bottom: clamp(18px, 2vw, 28px);
}

body.private-equity-page .cf-section--strengths .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.private-equity-page .cf-strength-tile__index {
  display: none;
}

body.private-equity-page .cf-strengths,
body.private-equity-page .cf-strengths [data-reveal] {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  clip-path: none !important;
}

body.private-equity-page .cf-strengths__mosaic {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: none;
  grid-auto-rows: 1fr;
  gap: 22px;
  will-change: auto;
  transition: none;
}

body.private-equity-page .cf-strength-tile {
  display: block;
  height: 100%;
  min-height: 100%;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 22px;
  background:
    linear-gradient(180deg, var(--strength-accent) 0, var(--strength-accent) 142px, rgba(255, 255, 255, 0.98) 142px, #ffffff 100%);
  box-shadow:
    0 18px 42px rgba(20, 40, 68, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.58);
  transition:
    transform 260ms ease,
    box-shadow 260ms ease,
    border-color 260ms ease;
}

body.private-equity-page .cf-strength-tile--service {
  --strength-accent: #17355a;
  grid-row: auto;
  min-height: 0;
  border-radius: 22px;
}

body.private-equity-page .cf-strength-tile--expertise {
  --strength-accent: #1d4467;
}

body.private-equity-page .cf-strength-tile--values {
  --strength-accent: #23506b;
}

body.private-equity-page .cf-strength-tile::before {
  top: 0;
  left: 0;
  z-index: 0;
  width: 80px;
  height: 80px;
  border-radius: 14px 0 0 14px;
  background: var(--rm-teal);
  opacity: 1;
}

body.private-equity-page .cf-strength-tile::after {
  content: "";
  position: absolute;
  top: 26px;
  left: 26px;
  z-index: 0;
  width: 54px;
  height: 54px;
  border-radius: 12px 0 0 0;
  background: var(--strength-accent);
}



body.private-equity-page .cf-strength-tile__media,
body.private-equity-page .cf-strength-tile__caption {
  display: none;
}

body.private-equity-page .cf-strength-tile__panel,
body.private-equity-page .cf-strength-tile__info {
  position: relative;
  inset: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  max-width: none;
  padding: 24px 22px 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}

body.private-equity-page .cf-strength-tile__head {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: 104px;
  padding: 8px 12px 0;
  text-align: center;
}

body.private-equity-page .cf-strength-tile__info-head {
  margin-bottom: 0;
}

body.private-equity-page .cf-strength-tile__info .cf-strength-tile__title,
body.private-equity-page .cf-strength-tile__panel .cf-strength-tile__title {
  color: #ffffff;
  max-width: 11ch;
  font-size: clamp(1.52rem, 1.9vw, 2rem);
  line-height: 1.08;
  text-shadow: none;
}

body.private-equity-page .cf-strength-tile__head .cf-strength-tile__title {
  color: #ffffff;
}

body.private-equity-page .cf-strength-tile__list,
body.private-equity-page .cf-strength-tile__info-list {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 20px 4px 0;

}

body.private-equity-page .cf-strength-tile__list li,
body.private-equity-page .cf-strength-tile__info-list li {
  color: rgba(18, 43, 74, 0.95);
  font-size: 0.93rem;
  line-height: 1.52;
}

@media (max-width: 860px) {
  body.private-equity-page .cf-strengths__mosaic {
    grid-template-columns: 1fr;
  }
}


body.securities-page .cf-solutions-grid {
  position: relative;
  margin-top: clamp(34px, 4rem, 58px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(258px, 1fr));
  gap: 18px;
}

body.securities-page .cf-solution-box {
  position: relative;
  min-height: 188px;
  padding: 38px 28px 26px 40px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 24px;
  background: #ffffff;
  overflow: hidden;
  isolation: isolate;
  transition:
    border-color 260ms ease,
    opacity 620ms ease,
    transform 560ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 620ms ease;
}

body.securities-page .cf-solution-box:hover,
body.securities-page .cf-solution-box:focus-within {
  border-color: rgba(0, 163, 180, 0.4);
}

body.securities-page .cf-solution-box > * {
  position: relative;
  z-index: 1;
}

body.securities-page .cf-solution-box__corner {
  position: absolute;
  top: 0;
  left: 0;
  width: 80px;
  height: 18px;
  border-radius: 0 0 16px 0;
  background: var(--rm-teal);
  pointer-events: none;
  z-index: 0;
}

body.securities-page .cf-solution-box__corner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 80px;
  border-radius: 0 0 16px 0;
  background: inherit;
}

body.securities-page .cf-solution-box__icon {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  margin-bottom: 18px;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid rgba(0, 163, 180, 0.18);
  box-shadow: 0 12px 26px -14px rgba(20, 40, 68, 0.4);
  color: var(--rm-teal);
  transition:
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 240ms ease;
}

body.securities-page .cf-solution-box__icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.securities-page .cf-solution-box:hover .cf-solution-box__icon,
body.securities-page .cf-solution-box:focus-within .cf-solution-box__icon {
  transform: translateY(-2px);
  border-color: rgba(0, 163, 180, 0.4);
}

body.securities-page .cf-solution-box h3 {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.24rem, 1.6vw, 1.62rem);
  font-weight: 600;
  line-height: 1.12;
}

body.securities-page .cf-solution-box p {
  margin: 12px 0 0;
  max-width: 34ch;
  color: rgba(28, 53, 94, 0.66);
  font-size: clamp(0.92rem, 1vw, 1rem);
  line-height: 1.55;
}

body.securities-page .securities-typology {
  position: relative;
  z-index: 1;
  overflow: visible;
}

body.securities-page .securities-typology__cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  padding-top: 8px;
  overflow: visible;
}

body.securities-page .securities-typology-section {
  position: relative;
  overflow: hidden;
  color: #ffffff;
  background: #0f2337;
}

body.securities-page .securities-typology-section__media,
body.securities-page .securities-typology-section__media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

body.securities-page .securities-typology-section__media video {
  object-fit: cover;
  filter: saturate(1.02) contrast(1.02) brightness(0.62);
}

body.securities-page .securities-typology-section__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, rgba(8, 21, 35, 0.84) 0%, rgba(8, 21, 35, 0.62) 42%, rgba(0, 163, 180, 0.18) 100%),
    radial-gradient(circle at 84% 20%, rgba(73, 220, 224, 0.22), transparent 24%),
    linear-gradient(180deg, rgba(12, 24, 36, 0.24), rgba(12, 24, 36, 0.52));
}

body.securities-page .securities-typology-section__shell {
  position: relative;
  z-index: 1;
}

body.securities-page .securities-typology-section__head {
  max-width: 920px;
  margin-inline: auto;
}

body.securities-page .securities-typology-section__eyebrow {
  margin: 0 0 12px;
  color: rgba(164, 248, 247, 0.94);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

body.securities-page .securities-typology-section__head .cf-title--strengths {
  color: #ffffff;
}

body.securities-page .securities-typology-section__head .cf-title--strengths::after {
  background: linear-gradient(90deg, rgba(164, 248, 247, 0.2), rgba(164, 248, 247, 0.9), rgba(164, 248, 247, 0.2));
}

body.securities-page .securities-typology-section__lead {
  max-width: 72ch;
  margin: 18px auto 0;
  color: rgba(238, 245, 247, 0.84);
  font-size: 1rem;
  line-height: 1.74;
}

body.securities-page .securities-typology__card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 228px;
  padding: 28px 24px 24px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
  backdrop-filter: blur(12px) saturate(118%);
  -webkit-backdrop-filter: blur(12px) saturate(118%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 18px 36px rgba(0, 0, 0, 0.14);
  transition:
    transform 260ms ease,
    border-color 260ms ease,
    box-shadow 260ms ease;
}

body.securities-page .securities-typology__card::before {
  content: none;
}

body.securities-page .securities-typology__card::after {
  content: none;
}

body.securities-page .securities-typology__card:hover,
body.securities-page .securities-typology__card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(164, 248, 247, 0.26);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 24px 44px rgba(0, 0, 0, 0.18);
}

body.securities-page .securities-typology__number {
  position: relative;
  z-index: 1;
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 22px;
  border-radius: 14px;
  background: rgba(164, 248, 247, 0.16);
  color: #ffffff;
  font-size: 1.05rem;
  font-weight: 700;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

body.securities-page .securities-typology__card h3 {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #ffffff;
  font-size: clamp(1.18rem, 1.45vw, 1.52rem);
  line-height: 1.18;
}

body.securities-page .securities-typology__card p {
  position: relative;
  z-index: 1;
  margin: 22px 0 0;
  width: 100%;
  color: rgba(238, 245, 247, 0.82);
  font-size: 0.96rem;
  line-height: 1.62;
}


body.securities-page .cf-title--strengths {
  font-size: clamp(2.05rem, 3.05vw, 3.18rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

body.securities-page .cf-title--strengths::after {
  width: 96px;
  height: 2px;
  margin-top: 12px;
}

body.securities-page .cf-strengths__head {
  margin-bottom: clamp(18px, 2vw, 28px);
}

body.securities-page .cf-section--strengths .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.securities-page .cf-strength-tile__index {
  display: none;
}

body.securities-page .cf-strengths,
body.securities-page .cf-strengths [data-reveal] {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  clip-path: none !important;
}

body.securities-page .cf-strengths__mosaic {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: none;
  grid-auto-rows: 1fr;
  gap: 22px;
  will-change: auto;
  transition: none;
}

body.securities-page .cf-strength-tile {
  display: block;
  height: 100%;
  min-height: 100%;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 22px;
  background:
    linear-gradient(180deg, var(--strength-accent) 0, var(--strength-accent) 142px, rgba(255, 255, 255, 0.98) 142px, #ffffff 100%);
  box-shadow:
    0 18px 42px rgba(20, 40, 68, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.58);
  transition:
    transform 260ms ease,
    box-shadow 260ms ease,
    border-color 260ms ease;
}

body.securities-page .cf-strength-tile--service {
  --strength-accent: #17355a;
  grid-row: auto;
  min-height: 0;
  border-radius: 22px;
}

body.securities-page .cf-strength-tile--expertise {
  --strength-accent: #1d4467;
}

body.securities-page .cf-strength-tile--values {
  --strength-accent: #23506b;
}

body.securities-page .cf-strength-tile::before {
  top: 0;
  left: 0;
  z-index: 0;
  width: 80px;
  height: 80px;
  border-radius: 14px 0 0 14px;
  background: var(--rm-teal);
  opacity: 1;
}

body.securities-page .cf-strength-tile::after {
  content: "";
  position: absolute;
  top: 26px;
  left: 26px;
  z-index: 0;
  width: 54px;
  height: 54px;
  border-radius: 12px 0 0 0;
  background: var(--strength-accent);
}


body.securities-page .cf-strength-tile__media,
body.securities-page .cf-strength-tile__caption {
  display: none;
}

body.securities-page .cf-strength-tile__panel,
body.securities-page .cf-strength-tile__info {
  position: relative;
  inset: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  max-width: none;
  padding: 24px 22px 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}

body.securities-page .cf-strength-tile__head {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: 104px;
  padding: 8px 12px 0;
  text-align: center;
}

body.securities-page .cf-strength-tile__info-head {
  margin-bottom: 0;
}

body.securities-page .cf-strength-tile__info .cf-strength-tile__title,
body.securities-page .cf-strength-tile__panel .cf-strength-tile__title {
  color: #ffffff;
  max-width: 14ch;
  font-size: clamp(1.4rem, 1.8vw, 1.86rem);
  line-height: 1.08;
  text-shadow: none;
}

body.securities-page .cf-strength-tile__head .cf-strength-tile__title {
  color: #ffffff;
}

body.securities-page .cf-strength-tile__list,
body.securities-page .cf-strength-tile__info-list {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 20px 4px 0;

}

body.securities-page .cf-strength-tile__list li,
body.securities-page .cf-strength-tile__info-list li {
  color: rgba(18, 43, 74, 0.95);
  font-size: 0.93rem;
  line-height: 1.52;
}

@media (max-width: 860px) {
  body.securities-page .securities-typology {
    grid-template-columns: 1fr;
  }

  body.securities-page .securities-typology__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.securities-page .cf-strengths__mosaic {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  body.securities-page .securities-typology-section__lead {
    font-size: 0.94rem;
  }

  body.securities-page .securities-typology__cards {
    grid-template-columns: 1fr;
  }

body.securities-page .securities-typology__card {
    min-height: 0;
    padding: 22px 20px 20px;
  }
}


body.real-estate-page .cf-hero__layout {
  grid-template-columns: minmax(0, 1fr);
  align-content: end;
  align-items: end;
  gap: clamp(28px, 4vw, 54px);
  min-height: min(780px, calc(100vh - 128px));
  padding-bottom: clamp(42px, 6vw, 82px);
}

body.real-estate-page .cf-hero__layout--single {
  width: min(1120px, calc(100% - 72px));
}

body.real-estate-page .cf-hero__copy {
  max-width: 980px;
}

body.real-estate-page .cf-hero__heading-stack--real-estate {
  display: grid;
  gap: clamp(22px, 2.5vw, 34px);
}

body.real-estate-page .cf-hero__super {
  max-width: 100%;
  margin: 0;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(1rem, 1.22vw, 1.26rem);
  font-weight: 300;
  line-height: 1.1;
  letter-spacing: -0.02em;
  text-wrap: balance;
}

body.real-estate-page .cf-hero__title,
body.real-estate-page .cf-hero__title--subline {
  max-width: min(100%, 16ch);
}

body.real-estate-page .cf-hero__title--subline {
  margin: 0;
  font-size: clamp(2.12rem, 2.95vw, 3.08rem);
  line-height: 0.98;
}

body.real-estate-page .cf-hero__lede {
  max-width: 920px;
}

body.real-estate-page .re-hero-brief {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  width: 100%;
  align-self: auto;
}

body.real-estate-page .re-hero-brief__item {
  position: relative;
  overflow: hidden;
  min-height: 134px;
  padding: 20px 20px 18px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 28px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.06)),
    rgba(5, 21, 38, 0.42);
  color: #ffffff;
  backdrop-filter: blur(14px);
}

body.real-estate-page .re-hero-brief__item::after {
  content: none;
}

body.real-estate-page .re-hero-brief__item--wide {
  grid-column: auto;
  min-height: 134px;
}

body.real-estate-page .re-hero-brief__item span {
  display: block;
  margin-bottom: 14px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.real-estate-page .re-hero-brief__item strong {
  display: block;
  max-width: 14ch;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.32rem, 1.65vw, 1.9rem);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.05em;
}

body.real-estate-page .re-hero-brief__item:first-child strong {
  font-size: clamp(1.6rem, 2.1vw, 2.45rem);
}

body.real-estate-page .re-hero-brief__item p {
  margin: 12px 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.95rem;
  line-height: 1.58;
}

body.real-estate-page .re-expertise-section {
  background:
    radial-gradient(circle at 10% 16%, rgba(0, 163, 180, 0.08), transparent 28%),
    #ffffff;
}

body.real-estate-page .re-expertise-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  gap: clamp(30px, 4vw, 70px);
  align-items: center;
}

body.real-estate-page .re-expertise-copy {
  display: grid;
  gap: 20px;
}

body.real-estate-page .re-expertise-copy .cf-title {
  max-width: 12ch;
}

body.real-estate-page .re-expertise-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

body.real-estate-page .re-expertise-card,
body.real-estate-page .re-solution-card {
  position: relative;
  overflow: hidden;
  min-height: 246px;
  padding: 32px 26px 26px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 28px;
  background: #ffffff;
  box-shadow: none;
  isolation: isolate;
  transition:
    border-color 260ms ease,
    transform 260ms ease;
}

body.real-estate-page .re-expertise-card::after,
body.real-estate-page .re-solution-card::after {
  content: "";
  position: absolute;
  top: 30px;
  right: 18px;
  width: 86px;
  height: 56px;
  background: rgba(0, 163, 180, 0.13);
  clip-path: polygon(0 38%, 54% 38%, 54% 0, 100% 50%, 54% 100%, 54% 62%, 0 62%);
  opacity: 0.2;
  pointer-events: none;
  z-index: -1;
}

body.real-estate-page .re-expertise-card:hover,
body.real-estate-page .re-expertise-card:focus-within,
body.real-estate-page .re-solution-card:hover,
body.real-estate-page .re-solution-card:focus-within {
  border-color: rgba(0, 163, 180, 0.42);
  transform: translateY(-2px);
}

body.real-estate-page .re-card-corner {
  position: absolute;
  top: 0;
  left: 0;
  width: 74px;
  height: 16px;
  border-radius: 0 0 16px 0;
  background: var(--rm-teal);
  pointer-events: none;
  z-index: 0;
}

body.real-estate-page .re-card-corner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 74px;
  border-radius: 0 0 16px 0;
  background: inherit;
}

body.real-estate-page .re-card-index {
  margin: 0 0 28px;
  color: rgba(28, 53, 94, 0.22);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 3.6rem;
  font-style: italic;
  line-height: 0.9;
}

body.real-estate-page .re-expertise-card h3,
body.real-estate-page .re-solution-card h3 {
  position: relative;
  z-index: 1;
  margin: 0;
  max-width: 12ch;
  color: var(--rm-navy);
  font-size: clamp(1.18rem, 1.35vw, 1.52rem);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -0.035em;
}

body.real-estate-page .re-expertise-card p:not(.re-card-index),
body.real-estate-page .re-solution-card p {
  position: relative;
  z-index: 1;
  margin: 18px 0 0;
  color: rgba(28, 53, 94, 0.68);
  font-size: 0.95rem;
  line-height: 1.55;
}

body.real-estate-page .re-solutions-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.08), transparent 26%),
    linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.real-estate-page .re-solutions-section .cf-shell {
  max-width: 1180px;
}

body.real-estate-page .re-solutions-section .cf-title--strengths {
  max-width: 28ch;
  font-size: clamp(1.85rem, 3vw, 2.5rem);
  line-height: 1.08;
}

body.real-estate-page .re-solutions-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  width: min(100%, 1080px);
  margin: clamp(36px, 4vw, 58px) auto 0;
  align-items: stretch;
}

body.real-estate-page .re-solution-card {
  display: flex;
  height: 100%;
  min-height: 210px;
  padding: 0;
  border-radius: 30px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.88), rgba(247, 250, 252, 0.92)),
    radial-gradient(circle at top right, rgba(0, 163, 180, 0.09), transparent 34%);
  backdrop-filter: blur(10px);
  box-shadow: none;
}

body.real-estate-page .re-solution-card::after {
  top: auto;
  right: 22px;
  bottom: 22px;
  width: 108px;
  height: 64px;
  opacity: 0.1;
}

body.real-estate-page .re-solution-card__copy {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 12px;
  min-height: 100%;
  padding: 28px 28px 30px;
  align-content: start;
}

body.real-estate-page .re-solution-card h3 {
  max-width: none;
  font-size: clamp(1.16rem, 1.2vw, 1.36rem);
  font-weight: 400;
  line-height: 1.22;
}

body.real-estate-page .re-solution-card p {
  margin: 0;
  max-width: 32ch;
  font-size: 1rem;
  line-height: 1.62;
}

body.real-estate-page .re-commitments-section {
  position: relative;
  overflow: hidden;
  color: #ffffff;
  background: #07172a;
}

body.real-estate-page .re-commitments-media,
body.real-estate-page .re-commitments-media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

body.real-estate-page .re-commitments-media video {
  object-fit: cover;
  filter: saturate(0.72) contrast(1.08);
  transform: scale(1.04);
}

body.real-estate-page .re-commitments-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 14% 20%, rgba(0, 163, 180, 0.32), transparent 32%),
    linear-gradient(90deg, rgba(4, 16, 31, 0.96), rgba(7, 23, 42, 0.8) 54%, rgba(4, 16, 31, 0.94));
  z-index: 1;
}

body.real-estate-page .re-commitments-section .cf-shell {
  position: relative;
  z-index: 2;
}

body.real-estate-page .re-commitments-head {
  justify-items: center;
  display: grid;
  gap: 18px;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: clamp(34px, 4vw, 54px);
  text-align: center;
}

body.real-estate-page .re-commitments-head .cf-kicker,
body.real-estate-page .re-commitments-head .cf-title {
  color: #ffffff;
}

body.real-estate-page .re-commitments-head .cf-title {
  max-width: 18ch;
}

body.real-estate-page .re-commitments-head p:not(.cf-kicker) {
  margin: 0;
  max-width: 100ch;
  color: rgba(255, 255, 255, 0.9);
  font-size: clamp(1.02rem, 1.15vw, 1.18rem);
  font-weight: 300;
  line-height: 1.72;
}

body.real-estate-page .re-commitments-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

body.real-estate-page .re-commitment-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 228px;
  padding: 28px 24px 24px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
  backdrop-filter: blur(12px) saturate(118%);
  -webkit-backdrop-filter: blur(12px) saturate(118%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 18px 36px rgba(0, 0, 0, 0.14);
  transition:
    transform 260ms ease,
    border-color 260ms ease,
    box-shadow 260ms ease;
}

body.real-estate-page .re-commitment-card:hover,
body.real-estate-page .re-commitment-card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(164, 248, 247, 0.26);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 24px 44px rgba(0, 0, 0, 0.18);
}

body.real-estate-page .re-commitment-card h3 {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #ffffff;
  font-size: clamp(1.18rem, 1.45vw, 1.52rem);
  font-weight: 400;
  line-height: 1.18;
}

body.real-estate-page .re-commitment-card p {
  position: relative;
  z-index: 1;
  margin: 22px 0 0;
  width: 100%;
  color: rgba(238, 245, 247, 0.82);
  font-size: 0.96rem;
  font-weight: 300;
  line-height: 1.62;
}

body.real-estate-page .re-commitments-close {
  margin: clamp(34px, 4vw, 58px) auto 0;
  max-width: 1080px;
  color: rgba(255, 255, 255, 0.94);
  font-size: clamp(1rem, 1.15vw, 1rem);
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
}

body.real-estate-page .re-projects-section {
  background:
    radial-gradient(circle at 12% 18%, rgba(0, 163, 180, 0.08), transparent 30%),
    linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.real-estate-page .re-projects-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: clamp(34px, 4vw, 58px);
}

body.real-estate-page .re-project-card {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border-radius: 32px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  background: #10243e;
}

body.real-estate-page .re-project-card__trigger {
  position: relative;
  display: block;
  width: 100%;
  min-height: 420px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-align: left;
}

body.real-estate-page .re-project-card__trigger img,
body.real-estate-page .re-project-card__trigger::before {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

body.real-estate-page .re-project-card__trigger img {
  object-fit: cover;
  object-position: center center;
  transition: transform 720ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.real-estate-page .re-project-card__trigger::before {
  content: "";
  background: linear-gradient(180deg, rgba(8, 24, 45, 0.08) 0%, rgba(8, 24, 45, 0.88) 100%);
}

body.real-estate-page .re-project-card__overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 82% 18%, rgba(0, 163, 180, 0.24), transparent 32%),
    linear-gradient(180deg, transparent 0%, rgba(7, 23, 42, 0.24) 38%, rgba(7, 23, 42, 0.86) 100%);
}

body.real-estate-page .re-project-card__index {
  position: absolute;
  top: 22px;
  left: 22px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.14);
  color: #ffffff;
  font-weight: 800;
  backdrop-filter: blur(10px);
}

body.real-estate-page .re-project-card__copy {
  position: absolute;
  right: 24px;
  bottom: 24px;
  left: 24px;
  z-index: 2;
}

body.real-estate-page .re-project-card h3 {
  margin: 0;
  max-width: 15ch;
  color: #ffffff;
  font-size: clamp(1.75rem, 3vw, 2rem);
  line-height: 1;
  letter-spacing: -0.06em;
  font-weight: 400;
}

body.real-estate-page .re-project-card p {
  margin: 16px 0 0;
  max-width: 36ch;
  color: rgba(255, 255, 255, 0.76);
  font-size: 1.02rem;
  line-height: 1.65;
}

body.real-estate-page .re-project-card__trigger:hover img,
body.real-estate-page .re-project-card__trigger:focus-visible img {
  transform: scale(1.04);
}

body.real-estate-page .re-project-card__trigger:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.72);
  outline-offset: -6px;
}

body.real-estate-page .re-team-section {
  background: #ffffff;
  margin-bottom: clamp(28px, 5vw, 64px);
  padding-bottom: clamp(56px, 7vw, 96px);
}

body.real-estate-page .re-team-section .cf-strengths__head {
  margin-bottom: clamp(24px, 3vw, 34px);
}

body.real-estate-page .cf-team-slider {
  cursor: grab;
}

body.real-estate-page .cf-team-slider.is-dragging {
  cursor: grabbing;
}

body.real-estate-page .cf-team-col__photo--mono {
  display: grid;
  place-items: end center;
  padding: 0 24px clamp(24px, 4vh, 38px);
}

body.real-estate-page .cf-team-col__photo--mono span {
  display: grid;
  place-items: center;
  position: relative;
  width: min(100%, 212px);
  height: clamp(220px, 32vh, 300px);
  border-radius: 32px 32px 0 0;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background:
    radial-gradient(circle at top center, rgba(0, 163, 180, 0.12), transparent 42%),
    linear-gradient(180deg, #fbfdfe 0%, #edf4f8 100%);
  color: var(--rm-navy);
  font-size: clamp(2rem, 2.6vw, 2.8rem);
  font-weight: 700;
  letter-spacing: 0.14em;
  box-shadow:
    0 24px 46px -30px rgba(28, 53, 94, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
  transition:
    transform 800ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 700ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 320ms ease;
}

body.real-estate-page .cf-team-col__photo--mono span::before {
  content: "";
  position: absolute;
  inset: 18px 18px auto;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rm-teal), #5caee0 58%, rgba(92, 174, 224, 0.14) 100%);
}

body.real-estate-page .cf-team-col:hover .cf-team-col__photo--mono span,
body.real-estate-page .cf-team-col:focus-visible .cf-team-col__photo--mono span,
body.real-estate-page .cf-team-col.is-active .cf-team-col__photo--mono span {
  transform: translateY(-10px);
  box-shadow: 0 30px 54px -28px rgba(28, 53, 94, 0.42);
  border-color: rgba(0, 163, 180, 0.24);
}

body.real-estate-page .team-modal__media-mono {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 28px;
}

body.real-estate-page .team-modal__media-mono span {
  display: grid;
  place-items: center;
  position: relative;
  width: min(100%, 250px);
  height: min(100%, 320px);
  border-radius: 42px 42px 0 0;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background:
    radial-gradient(circle at top center, rgba(0, 163, 180, 0.14), transparent 42%),
    linear-gradient(180deg, #fbfdfe 0%, #edf4f8 100%);
  color: var(--rm-navy);
  font-size: clamp(3rem, 6vw, 4.2rem);
  font-weight: 600;
  letter-spacing: 0.1em;
  box-shadow:
    0 30px 60px -24px rgba(28, 53, 94, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

body.real-estate-page .team-modal__media-mono span::before {
  content: "";
  position: absolute;
  inset: 18px 18px auto;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rm-teal), #5caee0 58%, rgba(92, 174, 224, 0.14) 100%);
}

body.real-estate-page .re-project-modal__dialog {
  width: min(1180px, 100%);
}

body.real-estate-page .re-project-modal__body {
  padding-top: clamp(76px, 5.4vw, 92px);
}

body.real-estate-page .re-project-modal__layout {
  display: grid;
  grid-template-columns: minmax(320px, 0.96fr) minmax(0, 1.04fr);
  gap: clamp(24px, 3.4vw, 42px);
  align-items: start;
}

body.real-estate-page .re-project-modal__media {
  margin: 0;
}

body.real-estate-page .re-project-modal__media img {
  display: block;
  width: 100%;
  min-height: 420px;
  border-radius: 28px;
  object-fit: cover;
  object-position: center center;
}

body.real-estate-page .re-project-modal__copy {
  display: grid;
  gap: 18px;
}

body.real-estate-page .re-project-modal__link {
  align-self: flex-start;
  margin-top: clamp(12px, 1.4vw, 18px);
}

body.real-estate-page .re-project-modal__kicker {
  margin: 0;
  color: rgba(18, 68, 109, 0.68);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.real-estate-page .re-project-modal__title {
  margin: 0;
  color: var(--rm-navy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.4rem, 4vw, 3.8rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.045em;
}

body.real-estate-page .re-project-modal__lead,
body.real-estate-page .re-project-modal__copy p {
  margin: 0;
  color: var(--rm-ink);
  font-size: 1.02rem;
  line-height: 1.72;
}

body.real-estate-page .re-project-modal__facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body.real-estate-page .re-project-modal__fact {
  padding: 16px 18px;
  border: 1px solid rgba(18, 68, 109, 0.1);
  border-radius: 18px;
  background: linear-gradient(180deg, #fbfdfe 0%, #f3f8fb 100%);
}

body.real-estate-page .re-project-modal__fact dt {
  margin: 0 0 6px;
  color: rgba(18, 68, 109, 0.52);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.real-estate-page .re-project-modal__fact dd {
  margin: 0;
  color: var(--rm-navy);
  font-size: 0.96rem;
  font-weight: 600;
}

body.real-estate-page .re-contact-section {
  background: linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.real-estate-page .re-contact-strip {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto;
  gap: 28px;
  align-items: center;
  padding: 30px 34px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 32px;
  background: #ffffff;
}

body.real-estate-page .re-contact-strip__copy {
  display: grid;
  gap: 12px;
  max-width: 66ch;
}

body.real-estate-page .re-contact-strip h2 {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.35rem, 2vw, 2.1rem);
  line-height: 1.12;
  letter-spacing: -0.045em;
}

body.real-estate-page .re-contact-strip p {
  margin: 0;
  color: rgba(28, 53, 94, 0.72);
  font-size: 1rem;
  line-height: 1.7;
}

body.real-estate-page .re-contact-strip__actions {
  display: grid;
  justify-items: end;
  gap: 10px;
}

body.real-estate-page .re-contact-strip__actions a {
  color: var(--rm-teal);
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
}

body.real-estate-page .re-contact-strip__actions a:hover,
body.real-estate-page .re-contact-strip__actions a:focus-visible {
  color: var(--rm-navy);
}

@media (max-width: 1180px) {
  body.real-estate-page .re-hero-brief,
  body.real-estate-page .re-solutions-grid,
  body.real-estate-page .re-project-modal__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  body.real-estate-page .re-hero-brief,
  body.real-estate-page .re-commitments-grid,
  body.real-estate-page .re-projects-grid {
    grid-template-columns: 1fr;
  }

  body.real-estate-page .re-project-modal__layout {
    grid-template-columns: 1fr;
  }

  body.real-estate-page .re-contact-strip {
    grid-template-columns: 1fr;
  }

  body.real-estate-page .re-contact-strip__actions {
    justify-items: start;
  }
}

@media (max-width: 640px) {
  body.real-estate-page .cf-hero__layout {
    gap: 24px;
  }

  body.real-estate-page .cf-hero__super {
    font-size: 0.94rem;
  }

  body.real-estate-page .re-hero-brief {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.real-estate-page .re-hero-brief__item,
  body.real-estate-page .re-hero-brief__item--wide {
    min-height: 0;
    padding: 15px 14px;
    border-radius: 18px;
  }

  body.real-estate-page .re-hero-brief__item::after {
    content: none;
  }

  body.real-estate-page .re-hero-brief__item span {
    margin-bottom: 8px;
    font-size: 0.62rem;
    letter-spacing: 0.14em;
  }

  body.real-estate-page .re-hero-brief__item strong,
  body.real-estate-page .re-hero-brief__item:first-child strong {
    font-size: 1.06rem;
    line-height: 1.03;
    letter-spacing: -0.04em;
  }

  body.real-estate-page .re-hero-brief__item p {
    display: none;
  }

  body.real-estate-page .re-solution-card,
  body.real-estate-page .re-commitment-card,
  body.real-estate-page .re-project-card,
  body.real-estate-page .re-contact-strip {
    border-radius: 24px;
  }

  body.real-estate-page .re-solutions-grid,
  body.real-estate-page .re-project-modal__facts {
    grid-template-columns: 1fr;
  }

  body.real-estate-page .re-project-card h3 {
    margin-top: 64px;
  }
}

body.private-equity-page .pe-contact-section {
  background: linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
}

body.private-equity-page .pe-contact-strip {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto;
  gap: 28px;
  align-items: center;
  padding: 28px 32px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 32px;
  background: #ffffff;
}

body.private-equity-page .pe-contact-strip__copy {
  display: grid;
  gap: 10px;
  max-width: 58ch;
}

body.private-equity-page .pe-contact-strip__lead {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.18rem, 1.5vw, 1.5rem);
  line-height: 1.4;
  letter-spacing: -0.02em;
}

body.private-equity-page .pe-contact-strip__text {
  margin: 0;
  color: rgba(28, 53, 94, 0.74);
  font-size: 1rem;
  line-height: 1.7;
}

body.private-equity-page .pe-contact-strip__actions {
  display: grid;
  justify-items: end;
  gap: 8px;
}

body.private-equity-page .pe-contact-strip__link {
  color: var(--rm-teal);
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
}

body.private-equity-page .pe-contact-strip__link:hover {
  color: var(--rm-navy);
}

body.private-equity-page .pe-contact-strip__meta {
  margin: 0;
  color: rgba(28, 53, 94, 0.62);
  font-size: 0.92rem;
  letter-spacing: 0.08em;
}

@media (max-width: 980px) {
  body.private-equity-page .pe-colombus-band__inner {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 22px;
    width: min(100% - 48px, 760px);
    min-height: 0;
    padding: 38px 0 42px;
    text-align: center;
  }

  body.private-equity-page .pe-colombus-band__brand {
    justify-items: center;
    gap: 16px;
  }

  body.private-equity-page .pe-colombus-band__copy {
    justify-self: center;
  }

  body.pe-colombus-page .pe-colombus-hero .cf-hero__layout--single {
    width: min(100% - 48px, 1180px);
  }

  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-mosaic {
    grid-template-columns: 1fr;
  }

  body.pe-colombus-page .pe-colombus-response-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.pe-colombus-page .pe-colombus-steps-flow,
  body.pe-colombus-page .pe-colombus-company {
    grid-template-columns: 1fr;
  }

  body.pe-colombus-page .pe-colombus-steps__connector {
    display: none;
  }

  body.private-equity-page .pe-colombus-logos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.private-equity-page .pe-colombus-company__meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.private-equity-page .pe-approach-section__layout {
    grid-template-columns: 1fr;
  }

  body.private-equity-page .pe-approach-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.private-equity-page .pe-approach-node,
  body.private-equity-page .pe-approach-node:nth-child(4) {
    grid-column: auto;
  }

  body.private-equity-page .pe-approach-node:nth-child(5) {
    grid-column: 1 / -1;
    justify-self: center;
    width: min(100%, calc((100% - clamp(18px, 2vw, 24px)) / 2));
  }

  body.private-equity-page .pe-values-flow__item {
    min-height: 0;
  }

  body.private-equity-page .pe-values-flow {
    grid-template-columns: 1fr;
  }

  body.private-equity-page .pe-contact-strip {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  body.private-equity-page .pe-contact-strip__actions {
    justify-items: start;
  }
}

@media (max-width: 640px) {
  body.pe-colombus-page .pe-colombus-response-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 620px) {
  body.private-equity-page .pe-colombus-band::before {
    clip-path: polygon(38% 0, 100% 0, 100% 100%, 54% 100%);
    opacity: 0.32;
  }

  body.private-equity-page .pe-colombus-band::after {
    width: 220px;
    height: 170px;
    opacity: 0.44;
  }

  body.private-equity-page .pe-colombus-band__inner {
    width: min(100% - 36px, 520px);
    padding: 34px 0 38px;
  }

  body.private-equity-page .pe-colombus-band__line {
    width: 96px;
  }

  body.private-equity-page .pe-colombus-band__copy {
    max-width: 15ch;
  }

  body.private-equity-page .pe-colombus-band__cta {
    width: min(100%, 220px);
  }

  body.pe-colombus-page .pe-colombus-hero {
    min-height: auto;
  }

  body.pe-colombus-page .pe-colombus-hero__actions {
    margin-top: 24px;
  }

  body.pe-colombus-page .pe-colombus-page__back {
    width: 100%;
  }

  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__panel,
  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info {
    padding: 24px 20px 24px;
  }

  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__head {
    min-height: 108px;
    padding: 10px 12px 0;
  }

  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__head .cf-strength-tile__title,
  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__panel .cf-strength-tile__title,
  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info .cf-strength-tile__title {
    font-size: 1.28rem;
    max-width: 17ch;
  }

  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__list,
  body.private-equity-page.pe-colombus-page .pe-colombus-criteria-card .cf-strength-tile__info-list {
    padding: 20px 2px 0;
  }

  body.pe-colombus-page .pe-colombus-response-grid,
  body.private-equity-page .pe-colombus-logos,
  body.private-equity-page .pe-colombus-company__meta {
    grid-template-columns: 1fr;
  }

  body.private-equity-page .pe-colombus-company {
    gap: 22px;
  }

  body.private-equity-page .pe-colombus-company {
    grid-template-columns: 1fr;
  }

  body.private-equity-page .pe-colombus-company__media {
    min-height: 150px;
    padding: 20px;
  }

  body.pe-colombus-page .pe-colombus-step img {
    width: 132px;
  }

  body.private-equity-page .pe-approach-node {
    min-height: 0;
    padding: 22px 18px 24px;
    border-radius: 8px;
  }

  body.private-equity-page .pe-approach-rail {
    grid-template-columns: 1fr;
  }

  body.private-equity-page .pe-approach-node:nth-child(5) {
    grid-column: auto;
    width: 100%;
  }

  body.private-equity-page .pe-approach-node::after,
  body.private-equity-page .pe-values-flow__item::before {
    width: 48px;
    height: 48px;
  }

  body.private-equity-page .pe-values-flow__item {
    padding: 20px 18px 22px;
    border-radius: 24px;
  }

  body.private-equity-page .pe-contact-strip {
    padding: 22px 18px;
    border-radius: 26px;
  }
}


.amb-shell { max-width: 1280px; margin: 0 auto; padding: 0 clamp(24px, 4vw, 40px); }
.amb-module { padding: clamp(58px, 6.5vw, 96px) 0; }
.amb-module--tint { background: linear-gradient(180deg, #f6f9fc, #fff); }

.amb-head { text-align: center; margin: 0 auto clamp(34px, 4vw, 46px); max-width: 760px; }
.amb-eyebrow { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 14px; color: var(--rm-teal); font-size: 0.76rem; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; }
.amb-eyebrow b { color: var(--rm-navy); font-weight: 700; }
.amb-eyebrow::before, .amb-eyebrow::after { content: ""; width: 26px; height: 2px; background: var(--rm-teal); opacity: 0.5; }
.amb-title { margin: 0; color: var(--rm-navy); font-size: clamp(2rem, 3.4vw, 3.1rem); font-weight: 400; letter-spacing: -0.03em; line-height: 1.04; }
.amb-title::after { content: ""; display: block; width: 104px; height: 4px; margin: 16px auto 0; border-radius: 999px; background: linear-gradient(90deg, rgba(0,163,180,0.2), var(--rm-teal), rgba(0,163,180,0.2)); }
.amb-sub { margin: 14px auto 0; max-width: 60ch; color: var(--rm-text-soft); font-size: 1.04rem; line-height: 1.6; }


.amb-appro { display: grid; grid-template-columns: 0.86fr 1.14fr; gap: clamp(28px, 3vw, 56px); align-items: center; }
.amb-appro-list { display: grid; gap: 16px; }
.amb-appro-card { position: relative; display: grid; grid-template-columns: 64px 1fr; gap: 16px; align-items: center; padding: 22px 26px; border-radius: 24px; background: #fff; border: 1px solid rgba(28,53,94,0.06); box-shadow: 0 12px 34px rgba(17,29,51,0.05); overflow: hidden; transition: transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease; }
.amb-appro-card::before { content: ""; position: absolute; left: 0; top: 16px; bottom: 16px; width: 4px; border-radius: 0 999px 999px 0; background: linear-gradient(180deg, rgba(113,240,236,0.5), var(--rm-teal) 45%, var(--rm-navy)); }
.amb-appro-card:hover { transform: translate3d(8px,-4px,0); box-shadow: 0 20px 44px rgba(17,29,51,0.1); }
.amb-appro-card__i { font-family: Georgia, "Times New Roman", serif; font-style: italic; font-size: 3.6rem; line-height: .9; color: rgba(28,53,94,0.26); }
.amb-appro-card__t { margin: 0; color: rgba(28,53,94,0.92); font-size: 1rem; line-height: 1.5; }
.amb-appro-stage { position: relative; }
.amb-appro-stage__img { width: 100%; aspect-ratio: 3/2; object-fit: cover; border-radius: 28px; border: 8px solid #fff; box-shadow: 0 24px 60px rgba(17,29,51,0.16); }
.amb-appro-badge { position: absolute; top: -14px; right: -6px; background: rgba(255,255,255,0.96); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-radius: 24px 24px 24px 70px; padding: 16px 20px; box-shadow: 0 16px 36px rgba(17,29,51,0.16); display: grid; gap: 8px; width: 168px; }
.amb-appro-badge img { width: 100%; height: auto; object-fit: contain; }


.amb-figband { position: relative; overflow: hidden; background: radial-gradient(130% 130% at 0% 0%, #1f3c6a, #16335b 45%, #0f223f 100%); color: #eef3fb; }
.amb-figband::after { content: ""; position: absolute; right: -80px; top: -80px; width: 320px; height: 320px; background: radial-gradient(circle, rgba(0,163,180,0.25), transparent 70%); }
.amb-figband__in { position: relative; display: grid; grid-template-columns: 1.1fr 2.4fr; gap: 48px; align-items: center; padding: clamp(44px, 5vw, 70px) clamp(24px, 4vw, 40px); max-width: 1280px; margin: 0 auto; }
.amb-figband__eyebrow { margin: 0 0 14px; color: #6fe3ec; font-size: 0.74rem; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; }
.amb-figband__lead { margin: 0; font-size: clamp(1.4rem, 2vw, 1.9rem); font-weight: 400; line-height: 1.2; letter-spacing: -0.02em; }
.amb-figband__lead em { font-style: normal; color: #6fe3ec; }
.amb-figgrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; }
.amb-figc { padding: 6px 22px; border-left: 1px solid rgba(255,255,255,0.14); }
.amb-figc:first-child { border-left: 0; padding-left: 0; }
.amb-figc__n { color: #fff; font-size: clamp(1.9rem, 2.6vw, 2.7rem); font-weight: 500; letter-spacing: -0.02em; line-height: 1; }
.amb-figc__n .s { color: #6fe3ec; }
.amb-figc__n .u { display: block; font-size: 0.86rem; font-weight: 500; color: rgba(238,243,251,0.72); margin-top: 6px; }
.amb-figc__l { margin-top: 10px; color: rgba(238,243,251,0.66); font-size: 0.86rem; line-height: 1.35; }
.amb-figc--cert { display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.amb-figchip { display: inline-flex; align-items: center; gap: 8px; background: #fff; border-radius: 11px; padding: 7px 11px; width: fit-content; }
.amb-figchip img { height: 17px; width: auto; }
.amb-figchip span { color: var(--rm-navy); font-size: 0.72rem; font-weight: 600; }


.amb-gov { display: grid; grid-template-columns: 1fr 1.05fr; gap: clamp(28px, 3vw, 56px); align-items: center; }
.amb-gov-img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 28px; border: 8px solid #fff; box-shadow: 0 24px 60px rgba(17,29,51,0.16); }
.amb-gov-list { display: grid; gap: 14px; }
.amb-gov-card { display: grid; grid-template-columns: auto 1fr; gap: 16px; align-items: center; padding: 20px 24px; border-radius: 20px; background: #fff; border: 1px solid rgba(28,53,94,0.07); box-shadow: 0 10px 30px rgba(17,29,51,0.05); transition: transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease; }
.amb-gov-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(17,29,51,0.1); }
.amb-gov-card__ic { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: linear-gradient(180deg, rgba(0,163,180,0.12), rgba(0,163,180,0.04)); }
.amb-gov-card__ic img { width: 26px; height: 26px; object-fit: contain; }
.amb-gov-card__t { margin: 0; color: var(--rm-navy); font-size: 1.02rem; font-weight: 500; line-height: 1.4; }


.amb-atouts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.amb-atout { position: relative; padding: 30px 28px; border-radius: 24px; background: #fff; border: 1px solid rgba(28,53,94,0.08); box-shadow: 0 14px 40px rgba(17,29,51,0.06); transition: transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease, border-color .35s ease; }
.amb-atout:hover { transform: translateY(-6px); box-shadow: 0 26px 56px rgba(17,29,51,0.12); border-color: rgba(0,163,180,0.32); }
.amb-atout__bracket { position: absolute; top: 18px; left: 18px; width: 30px; height: 30px; border-top: 3px solid var(--rm-teal); border-left: 3px solid var(--rm-teal); border-radius: 8px 0 0 0; }
.amb-atout__t { margin: 6px 0 18px 16px; color: var(--rm-navy); font-size: 1.24rem; font-weight: 600; letter-spacing: -0.01em; }
.amb-atout__list { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.amb-atout__list li { position: relative; padding-left: 20px; color: rgba(28,53,94,0.82); font-size: 0.93rem; line-height: 1.5; }
.amb-atout__list li::before { content: ""; position: absolute; left: 0; top: 8px; width: 7px; height: 7px; border-radius: 50%; background: var(--rm-teal); }

@media (max-width: 980px) {
  .amb-appro, .amb-gov, .amb-figband__in { grid-template-columns: 1fr; }
  .amb-figgrid { grid-template-columns: repeat(2, 1fr); gap: 18px 0; }
  .amb-atouts { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .amb-figgrid { grid-template-columns: 1fr; }
  .amb-figc { border-left: 0; padding-left: 0; }
}


.site-footer__newsletter--cta {
  grid-template-columns: minmax(0, 1.25fr) auto;
  gap: clamp(28px, 4vw, 56px);
  align-items: center;
}

.cta-band__eyebrow {
  margin: 0 0 14px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--rm-teal);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.cta-band__eyebrow::before {
  content: "";
  width: 28px;
  height: 2px;
  background: var(--rm-teal);
}

.cta-band__title {
  margin: 0;
  max-width: 18ch;
  color: var(--rm-navy);
  font-size: clamp(1.6rem, 2.6vw, 2.45rem);
  font-weight: 400;
  line-height: 1.07;
  letter-spacing: -0.03em;
}

.cta-band__title em {
  font-style: normal;
  color: var(--rm-teal);
}

.cta-band__text {
  margin: 16px 0 0;
  max-width: 42ch;
  color: rgba(28, 53, 94, 0.7);
  font-size: 1rem;
  line-height: 1.55;
}

.cta-band__actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 250px;
  max-width: 100%;
}

.cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 54px;
  padding: 0 26px;
  border-radius: 14px;
  font: inherit;
  font-size: 0.98rem;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.cta-btn--primary {
  background: var(--rm-teal);
  color: #ffffff;
  border: 0;
  box-shadow: 0 14px 30px rgba(0, 163, 180, 0.28);
}

.cta-btn--primary:hover {
  transform: translateY(-2px);
  background: #109eac;
}

.cta-btn--ghost {
  background: rgba(255, 255, 255, 0.5);
  color: var(--rm-navy);
  border: 1px solid rgba(28, 53, 94, 0.18);
}

.cta-btn--ghost:hover {
  transform: translateY(-2px);
  border-color: var(--rm-navy);
  background: rgba(255, 255, 255, 0.85);
}

@media (max-width: 1040px) {
  .site-footer__newsletter--cta { grid-template-columns: 1fr; }
  .cta-band__actions { width: 100%; flex-direction: row; }
  .cta-btn { flex: 1; }
}

@media (max-width: 560px) {
  .cta-band__actions { flex-direction: column; }
}


.motors-hero__video-shell .motors-hero__video-el {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.04);
}

.motors-hero__slides,
.motors-hero__slide {
  position: absolute;
  inset: 0;
}

body.home-mode .home-v2-flow .motors-hero--carousel {
  z-index: 6;
  isolation: isolate;
}

.motors-hero__slides {
  z-index: 1;
}

.motors-hero__slide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 850ms cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 850ms;
}

.motors-hero__slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}

.motors-hero__slide .motors-hero__video-shell {
  z-index: 0;
}

.motors-hero__slide .motors-hero__scrim {
  z-index: 1;
}

.motors-hero__responsive-picture--video-fallback {
  display: none;
}

.motors-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.motors-hero__cta--secondary {
  color: var(--rm-navy);
  border-color: rgba(28, 53, 94, 0.35);
  background: rgba(255, 255, 255, 0.78);
}

.motors-hero__controls {
  position: absolute;
  z-index: 36;
  right: clamp(20px, 3.8vw, 72px);
  top: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.68);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow:
    0 18px 44px rgba(17, 29, 51, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  transform: translateY(-50%);
  -webkit-backdrop-filter: blur(16px) saturate(1.2);
  backdrop-filter: blur(16px) saturate(1.2);
}

.motors-hero__arrow,
.motors-hero__dot {
  border: 0;
  cursor: pointer;
}

.motors-hero__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid rgba(28, 53, 94, 0.14);
  border-radius: 50%;
  color: var(--rm-navy);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 20px rgba(17, 29, 51, 0.14);
  transition: color 180ms ease, background 180ms ease, transform 180ms ease,
    box-shadow 180ms ease;
}

.motors-hero__arrow svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.motors-hero__arrow:hover {
  color: #fff;
  background: var(--rm-teal);
  transform: scale(1.06);
  box-shadow: 0 10px 24px rgba(17, 29, 51, 0.24);
}

.motors-hero__arrow:focus-visible {
  color: #fff;
  background: var(--rm-teal);
  outline: 3px solid #fff;
  outline-offset: 3px;
}

.motors-hero__arrow:active {
  transform: scale(0.94);
}

.motors-hero__dots {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  padding: 4px 0;
}

.motors-hero__dot {
  position: relative;
  width: 24px;
  height: 24px;
  padding: 0;
  border-radius: 999px;
  background: transparent;
}

.motors-hero__dot::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.35);
  transform: translate(-50%, -50%);
  transition: height 220ms ease, width 220ms ease, background 220ms ease;
}

.motors-hero__dot:hover::before {
  background: rgba(28, 53, 94, 0.6);
}

.motors-hero__dot:focus-visible {
  outline: 3px solid var(--rm-teal);
  outline-offset: 3px;
}

.motors-hero__dot.is-active {
  background: transparent;
}

.motors-hero__dot.is-active::before {
  height: 24px;
  background: var(--rm-teal);
}

body.home-mode .motors-hero--staged .motors-hero__controls {
  opacity: 0;
  pointer-events: none;
}

body.home-mode.home-hero-ready .motors-hero__controls {
  animation: homeHeroOverlayIn 760ms cubic-bezier(0.22, 1, 0.36, 1) 180ms both;
  pointer-events: auto;
}

@media (max-width: 1024px) {
  .motors-hero__responsive-picture--video-fallback {
    display: block;
  }

  .motors-hero__responsive-picture--video-fallback + .motors-hero__slide-video {
    display: none;
  }
}

.motors-hero__scrim {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.78) 30%, rgba(255,255,255,0.28) 58%, rgba(255,255,255,0) 78%),
    linear-gradient(180deg, rgba(10, 28, 49, 0.16) 0%, rgba(10, 28, 49, 0) 32%, rgba(10, 28, 49, 0.18) 100%);
}

.motors-hero__message {
  position: absolute;
  z-index: 3;
  left: var(--home-header-start, clamp(24px, 6vw, 96px));
  top: 54%;
  width: min(900px, calc(100% - var(--home-header-start, 24px) - 132px));
  padding-left: clamp(18px, 1.6vw, 28px);
  transform: translateY(-42%);
  color: var(--rm-navy);
}

.motors-hero__message::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.36em;
  bottom: 0.42em;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--rm-teal), rgba(0, 163, 180, 0.2));
  box-shadow: 0 0 24px rgba(0, 163, 180, 0.32);
}

.motors-hero__statement {
  margin: 0;
  max-width: 100%;
  color: inherit;
  font-size: clamp(2.1rem, 3.35vw, 3.75rem);
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: 0;
  text-shadow: 0 18px 34px rgba(255, 255, 255, 0.36);
}

.motors-hero__statement-line {
  display: block;
  white-space: nowrap;
}

.motors-hero__eyebrow {
  margin: 0 0 18px;
  color: inherit;
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  line-height: 1.2;
}

.motors-hero__lead {
  max-width: 52ch;
  margin: 18px auto 0;
  color: inherit;
  font-size: clamp(1rem, 1.45vw, 1.35rem);
  font-weight: 300;
  line-height: 1.42;
}

.motors-hero__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: clamp(26px, 3vw, 40px);
  padding: 0 clamp(26px, 2.8vw, 44px);
  border: 1px solid var(--rm-teal);
  border-radius: 12px;
  color: #ffffff;
  background: var(--rm-teal);
  box-shadow: 0 14px 30px rgba(0, 163, 180, 0.24);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-decoration: none;
  text-transform: uppercase;
  transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}

.motors-hero__cta:hover,
.motors-hero__cta:focus-visible {
  transform: translateY(-2px);
  color: var(--rm-teal);
  background: #ffffff;
  box-shadow: 0 18px 36px rgba(0, 163, 180, 0.28);
  outline: none;
}


.hero-story {
  position: absolute;
  z-index: 3;
  right: clamp(24px, 5vw, 86px);
  bottom: clamp(76px, 9vh, 118px);
  width: clamp(245px, 22vw, 390px);
  aspect-ratio: 16 / 9;
  display: block;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(120, 226, 255, 0.68);
  border-radius: clamp(18px, 1.7vw, 28px);
  cursor: pointer;
  color: #fff;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0.08) 18%, rgba(93, 178, 234, 0.14) 42%, rgba(9, 31, 56, 0.24) 100%),
    radial-gradient(circle at 18% 14%, rgba(255, 255, 255, 0.4), transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(0, 198, 233, 0.28), transparent 34%),
    linear-gradient(180deg, rgba(10, 31, 53, 0.18), rgba(10, 31, 53, 0.38));
  box-shadow:
    0 26px 68px rgba(9, 25, 44, 0.2),
    0 0 0 1px rgba(255, 255, 255, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.78),
    inset 0 -24px 56px rgba(0, 163, 180, 0.12),
    inset 0 18px 34px rgba(255, 255, 255, 0.08);
  -webkit-backdrop-filter: blur(28px) saturate(1.45);
  backdrop-filter: blur(28px) saturate(1.45);
  isolation: isolate;
  transition:
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.35s ease,
    box-shadow 0.35s ease,
    background 0.35s ease;
}

.hero-story::before,
.hero-story::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: inherit;
  pointer-events: none;
}

.hero-story::before {
  background:
    linear-gradient(132deg, rgba(255, 255, 255, 0.52) 0%, rgba(255, 255, 255, 0.12) 18%, transparent 38%),
    radial-gradient(circle at 78% 6%, rgba(255, 255, 255, 0.3), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.1), transparent 28%);
  mix-blend-mode: screen;
  opacity: 0.78;
}

.hero-story::after {
  background:
    radial-gradient(circle at 22% 118%, rgba(255, 255, 255, 0.24), transparent 28%),
    linear-gradient(116deg, rgba(255, 255, 255, 0.18), transparent 32%, transparent 66%, rgba(126, 228, 255, 0.12) 100%);
  box-shadow: inset 0 0 38px rgba(255, 255, 255, 0.08);
}

.hero-story:hover {
  transform: translateY(-4px);
  border-color: rgba(139, 239, 255, 0.92);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.32) 0%, rgba(255, 255, 255, 0.1) 18%, rgba(93, 178, 234, 0.18) 42%, rgba(9, 31, 56, 0.24) 100%),
    radial-gradient(circle at 18% 14%, rgba(255, 255, 255, 0.44), transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(0, 198, 233, 0.32), transparent 34%),
    linear-gradient(180deg, rgba(10, 31, 53, 0.18), rgba(10, 31, 53, 0.4));
  box-shadow:
    0 34px 84px rgba(9, 25, 44, 0.26),
    0 0 0 1px rgba(255, 255, 255, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    inset 0 -30px 60px rgba(0, 163, 180, 0.18),
    inset 0 20px 38px rgba(255, 255, 255, 0.1);
}

.hero-story__preview,
.hero-story__preview::after,
.hero-story__preview img,
.hero-story__preview video,
.hero-story__preview-fallback {
  position: absolute;
  inset: 0;
}

.hero-story__preview {
  display: block;
  overflow: hidden;
  border-radius: inherit;
}

.hero-story__preview img,
.hero-story__preview video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.03);
  filter: saturate(0.98) contrast(1.04);
  transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1), filter 0.35s ease, opacity 0.3s ease;
}

.hero-story__preview video {
  pointer-events: none;
}


.hero-story__frames {
  position: absolute;
  inset: 0;
  display: block;
  border-radius: inherit;
  overflow: hidden;
  transition: opacity 0.28s ease;
}

.hero-story__frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.09);
  filter: saturate(0.98) contrast(1.04);
  
  transition: opacity 0.62s ease, transform 5.2s linear;
  will-change: opacity, transform;
}

.hero-story__frame.is-active {
  opacity: 1;
  transform: scale(1.035);
}

.hero-story__hover-video {
  opacity: 0;
}


.hero-story__preview.is-frame-cycling video {
  opacity: 1;
  transform: scale(1.035);
  transition: opacity 0.5s ease, transform 4.8s linear;
}

.hero-story__preview.is-frame-cycling.is-frame-out video {
  opacity: 0;
  transform: scale(1.09);
  transition: opacity 0.34s ease, transform 0.34s ease;
}


.hero-story__preview.is-frame-cycling::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--rm-teal), rgba(255, 255, 255, 0.92));
  box-shadow: 0 0 12px rgba(0, 163, 180, 0.5);
  opacity: 1;
  transform: scaleX(var(--hero-story-progress, 0));
  transform-origin: left center;
  transition: transform var(--hero-story-progress-duration, 0ms) linear, opacity 0.24s ease;
  pointer-events: none;
}

.hero-story:hover .hero-story__preview img,
.hero-story:hover .hero-story__preview video,
.hero-story:focus-visible .hero-story__preview img,
.hero-story:focus-visible .hero-story__preview video {
  transform: scale(1.08);
  filter: saturate(1.04) contrast(1.06);
}

.hero-story:hover .hero-story__frame.is-active,
.hero-story:focus-visible .hero-story__frame.is-active {
  transform: scale(1.07);
}

.hero-story__preview.is-story-preview-active .hero-story__frames {
  opacity: 0;
}

.hero-story__preview.is-story-preview-active.is-story-preview-fallback .hero-story__frames {
  opacity: 1;
}

.hero-story__preview.is-story-preview-active .hero-story__hover-video {
  opacity: 1;
  transform: scale(1.035);
  filter: saturate(1.02) contrast(1.06);
}

.hero-story__preview.is-story-preview-active.is-story-preview-fallback .hero-story__hover-video {
  opacity: 0;
}

.hero-story__preview.is-story-preview-active::before {
  opacity: 0;
}

.hero-story__preview-fallback {
  display: block;
  background:
    linear-gradient(135deg, rgba(12, 25, 43, 0.94), rgba(28, 53, 94, 0.9)),
    radial-gradient(circle at 82% 20%, rgba(0, 163, 180, 0.3), transparent 46%);
}

.hero-story__preview::after {
  content: "";
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5, 14, 27, 0.06) 0%, rgba(5, 14, 27, 0.14) 44%, rgba(5, 14, 27, 0.58) 100%),
    linear-gradient(118deg, rgba(255, 255, 255, 0.16) 0%, rgba(115, 199, 241, 0.12) 28%, rgba(28, 53, 94, 0.12) 56%, rgba(0, 163, 180, 0.2) 100%);
}

.hero-story__ring {
  display: none;
}

@keyframes heroStoryLiquidSheen {
  0%, 100% {
    transform: translate(-24%, -26%) rotate(-18deg) scale(0.92);
    opacity: 0.42;
  }

  50% {
    transform: translate(18%, 20%) rotate(18deg) scale(1.08);
    opacity: 0.76;
  }
}

@keyframes heroStoryPlaySignal {
  0%, 100% {
    transform: translateX(0) scale(1);
    opacity: 0.88;
  }

  16% {
    transform: translateX(3px) scale(1.16);
    opacity: 1;
  }

  28% {
    transform: translateX(-1px) scale(0.98);
    opacity: 0.94;
  }

  42% {
    transform: translateY(-2px) scale(1.06);
    opacity: 1;
  }
}

.hero-story__play {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translate(-50%, -50%);
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.28s ease,
    filter 0.28s ease;
}

.hero-story__play::before,
.hero-story__play::after {
  display: none;
}

.hero-story:hover .hero-story__play {
  transform: translate(-50%, -50%) scale(1.08);
  filter: drop-shadow(0 12px 28px rgba(7, 20, 38, 0.34));
}

.hero-story__play svg {
  position: relative;
  z-index: 1;
  width: clamp(42px, 3.5vw, 54px);
  height: clamp(42px, 3.5vw, 54px);
  fill: #fff;
  margin-left: 2px;
  transform-origin: 50% 50%;
  filter:
    drop-shadow(0 10px 24px rgba(5, 14, 27, 0.46))
    drop-shadow(0 0 12px rgba(255, 255, 255, 0.26));
  animation: heroStoryPlaySignal 2.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.hero-story__label {
  position: absolute;
  left: 20px;
  bottom: 22px;
  z-index: 3;
  max-width: calc(100% - 96px);
  font-size: clamp(0.64rem, 0.58vw, 0.76rem);
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.25;
  text-align: left;
  text-shadow: 0 8px 18px rgba(5, 14, 27, 0.45);
  text-transform: uppercase;
}


.story-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.story-modal[hidden] { display: none; }

.story-modal.is-open {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease;
}

.story-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(8, 16, 30, 0.82);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}

.story-modal__dialog {
  position: relative;
  width: min(1040px, 100%);
  transform: translateY(14px) scale(0.98);
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.story-modal.is-open .story-modal__dialog { transform: none; }

.story-modal__frame {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
  background: #000;
  aspect-ratio: 16 / 9;
}

.story-modal__video { position: absolute; inset: 0; width: 100%; height: 100%; }

.story-modal__close {
  position: absolute;
  top: -48px;
  right: 0;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  transition: background 0.2s ease;
}

.story-modal__close:hover { background: rgba(255, 255, 255, 0.28); }

@media (max-width: 900px), (max-height: 560px) {
  .motors-hero__controls {
    left: auto;
    right: 16px;
    top: 84px;
    bottom: auto;
    flex-direction: row;
    gap: 7px;
    padding: 7px;
    transform: none;
  }

  .motors-hero__arrow {
    width: 40px;
    height: 40px;
  }

  .motors-hero__dots {
    flex-direction: row;
    gap: 6px;
    padding: 0 3px;
  }

  .motors-hero__dot {
    width: 24px;
    height: 24px;
  }

  .motors-hero__dot::before {
    width: 7px;
    height: 7px;
  }

  .motors-hero__dot.is-active::before {
    width: 20px;
    height: 7px;
  }
}

@media (max-width: 700px) {
  .motors-hero__controls {
    right: 14px;
    top: 80px;
  }

  .motors-hero__arrow {
    width: 38px;
    height: 38px;
  }

  .motors-hero--carousel .hero-scroll {
    display: none;
  }

  .motors-hero__message {
    left: var(--home-header-start, 24px);
    width: calc(100% - var(--home-header-start, 24px) - 24px);
    top: clamp(118px, 24vh, 180px);
    transform: none;
  }

  .motors-hero__statement {
    font-size: clamp(1.08rem, 4.55vw, 1.75rem);
    line-height: 1.16;
    letter-spacing: -0.045em;
  }

  .motors-hero__cta {
    min-height: 44px;
    margin-top: 18px;
    padding-inline: 24px;
    font-size: 0.68rem;
  }

  .hero-story {
    top: auto;
    right: 16px;
    bottom: clamp(72px, 10vh, 96px);
    width: clamp(168px, 48vw, 224px);
    border-radius: 18px;
  }

  .hero-story__ring {
    display: none;
  }

  .hero-story__label {
    left: 13px;
    bottom: 14px;
    max-width: calc(100% - 62px);
    font-size: 0.56rem;
    letter-spacing: 0.13em;
  }

  .hero-story__play {
    transform: translate(-50%, -50%);
  }

  .hero-story__play svg {
    width: 36px;
    height: 36px;
  }

  .story-modal__close { top: 0; right: 0; transform: translate(50%, -50%); }
}

@media (max-width: 360px) {
  .motors-hero__message {
    left: var(--home-header-start, 16px);
    width: calc(100% - var(--home-header-start, 16px) - 16px);
  }

  .motors-hero__statement {
    font-size: clamp(0.96rem, 4.35vw, 1.12rem);
  }
}


.site-header:not(.is-compact) .primary-nav {
  display: none;
}


.hero-scroll {
  position: absolute;
  left: 50%;
  bottom: clamp(18px, 3.5vh, 36px);
  transform: translateX(-50%);
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  padding: 6px 12px;
  background: none;
  border: 0;
  cursor: pointer;
  color: var(--rm-navy);
  transition: transform 0.3s ease, opacity 0.35s ease, visibility 0s linear 0s;
}

.hero-scroll:hover { transform: translateX(-50%) translateY(-2px); }


body.has-scrolled .hero-scroll {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: transform 0.3s ease, opacity 0.35s ease, visibility 0s linear 0.35s;
}

.hero-scroll__label {
  font-size: 0.66rem;
  font-weight: 600;
  letter-spacing: 0.26em;
  text-transform: uppercase;
}

.hero-scroll__track {
  position: relative;
  width: 1px;
  height: 38px;
  background: rgba(28, 53, 94, 0.22);
  overflow: hidden;
}

.hero-scroll__dot {
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 13px;
  background: var(--rm-teal);
  animation: heroScrollDot 1.9s cubic-bezier(0.7, 0, 0.3, 1) infinite;
}

@keyframes heroScrollDot {
  0% { transform: translateY(-13px); opacity: 0; }
  25% { opacity: 1; }
  100% { transform: translateY(38px); opacity: 0; }
}

.hero-scroll__chevron svg {
  width: 16px;
  height: 16px;
  display: block;
  fill: none;
  stroke: var(--rm-teal);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  animation: heroScrollBounce 1.9s ease-in-out infinite;
}

@keyframes heroScrollBounce {
  0%, 100% { transform: translateY(0); opacity: 0.7; }
  50% { transform: translateY(3px); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .hero-story__play,
  .hero-story__play::before,
  .hero-story__play::after,
  .hero-story__play svg {
    animation: none;
  }

  .hero-story__play::before,
  .hero-story__play::after {
    display: none;
  }

  .hero-story__preview.is-frame-cycling video,
  .hero-story__preview.is-frame-cycling.is-frame-out video,
  .hero-story__preview.is-frame-cycling::before,
  .hero-story__frame {
    transition: none;
  }

  .hero-story__frame {
    transform: scale(1.035);
  }

  .hero-story__preview.is-frame-cycling::before {
    display: none;
  }

  .hero-scroll__dot, .hero-scroll__chevron svg { animation: none; }
}

@media (max-width: 700px) {
  .hero-scroll { display: none; }
}


@media (max-width: 900px) {
  .home-v2-flow .home-expertise,
  .home-v2-flow .home-expertise-card,
  .home-stats-band,
  .home-csr-list,
  .home-csr-list__row,
  .home-news,
  .news-feature,
  .news-card,
  .trusted,
  [data-reveal],
  [data-reveal-group],
  [data-reveal-variant] {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
  }

  .home-v2-flow .home-expertise__cards {
    margin-top: 0 !important;
  }
}


.cfx-mt { margin-top: clamp(30px, 3.6vw, 52px); }


.cfx-axes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.cfx-axis { position: relative; padding: 30px 28px; border-radius: 22px; background: #fff; border: 1px solid var(--rm-line); box-shadow: 0 14px 40px rgba(17,29,51,0.05); transition: transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease, border-color .35s ease; }
.cfx-axis::before { content: ""; position: absolute; left: 0; top: 24px; bottom: 24px; width: 3px; border-radius: 0 4px 4px 0; background: linear-gradient(180deg, var(--rm-teal), var(--rm-navy)); opacity: 0; transition: opacity .35s ease; }
.cfx-axis:hover { transform: translateY(-5px); box-shadow: 0 24px 52px rgba(17,29,51,0.1); border-color: rgba(0,163,180,0.3); }
.cfx-axis:hover::before { opacity: 1; }
.cfx-axis__n { font-family: Georgia, "Times New Roman", serif; font-style: italic; font-size: 2.6rem; line-height: 1; color: rgba(28,53,94,0.24); }
.cfx-axis__t { margin: 14px 0 0; color: rgba(28,53,94,0.9); font-size: 1rem; line-height: 1.55; }


.cfx-sectors { display: flex; flex-wrap: wrap; gap: 12px; }
.cfx-sector { display: inline-flex; align-items: center; gap: 9px; padding: 12px 18px; border-radius: 999px; background: #fff; border: 1px solid var(--rm-line); color: var(--rm-navy); font-size: 0.95rem; font-weight: 500; transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease; }
.cfx-sector::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--rm-teal); }
.cfx-sector:hover { transform: translateY(-2px); border-color: rgba(0,163,180,0.4); box-shadow: 0 10px 24px rgba(17,29,51,0.08); }


.cfx-solutions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.cfx-sol { padding: 28px 26px; border-radius: 22px; background: #fff; border: 1px solid var(--rm-line); box-shadow: 0 14px 40px rgba(17,29,51,0.05); transition: transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease, border-color .35s ease; }
.cfx-sol:hover { transform: translateY(-5px); box-shadow: 0 24px 52px rgba(17,29,51,0.1); border-color: rgba(0,163,180,0.3); }
.cfx-sol__ic { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: linear-gradient(180deg, rgba(0,163,180,0.12), rgba(0,163,180,0.04)); margin-bottom: 16px; }
.cfx-sol__ic svg { width: 24px; height: 24px; fill: none; stroke: var(--rm-teal); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.cfx-sol__t { margin: 0 0 8px; color: var(--rm-navy); font-size: 1.12rem; font-weight: 600; }
.cfx-sol__d { margin: 0; color: var(--rm-text-soft); font-size: 0.92rem; line-height: 1.55; }


.cfx-deals { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.cfx-deal { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: start; padding: 22px 24px; border-radius: 18px; background: #fff; border: 1px solid var(--rm-line); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.cfx-deal:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(17,29,51,0.09); border-color: rgba(0,163,180,0.3); }
.cfx-deal__year { color: var(--rm-teal); font-size: 1.06rem; font-weight: 700; letter-spacing: -0.02em; padding-top: 2px; }
.cfx-deal__body { min-width: 0; }
.cfx-deal__client { margin: 0 0 8px; color: var(--rm-navy); font-size: 1.04rem; font-weight: 600; }
.cfx-deal__sector { display: inline-block; margin-bottom: 8px; padding: 3px 10px; border-radius: 999px; background: rgba(0,163,180,0.1); color: #0a7c89; font-size: 0.66rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }
.cfx-deal__d { margin: 0; color: var(--rm-text-soft); font-size: 0.9rem; line-height: 1.5; }

body.our-group-page .our-group-platform {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

body.our-group-page .our-group-platform-band {
  position: relative;
  isolation: isolate;
  overflow: visible;
  padding-top: clamp(92px, 8vw, 134px);
  padding-bottom: clamp(96px, 10vw, 148px);
  background:
    linear-gradient(180deg, rgba(239, 247, 251, 0.82) 0%, rgba(255, 255, 255, 0) 38%),
    radial-gradient(circle at 16% 14%, rgba(0, 163, 180, 0.08), transparent 32%),
    radial-gradient(circle at 84% 88%, rgba(28, 53, 94, 0.05), transparent 28%);
}

body.our-group-page .our-group-platform-band::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5, 14, 30, 0.1), rgba(5, 14, 30, 0.03) 48%, rgba(5, 14, 30, 0.1)),
    radial-gradient(ellipse at 50% 34%, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 34%),
    radial-gradient(ellipse at 50% 58%, rgba(0, 163, 180, 0.16), rgba(0, 163, 180, 0) 46%);
}

body.our-group-page .our-group-platform-band::after {
  content: none;
}

.our-group-platform-band__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
  background: #edf7fb;
}

.our-group-platform-band__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 1;
  filter: saturate(1.08) contrast(1.02);
}

.our-group-platform-band__shell {
  position: relative;
  z-index: 2;
  display: grid;
  gap: clamp(42px, 5vw, 68px);
}

.our-group-platform-band .cf-title--strengths {
  color: rgba(245, 250, 255, 0.98);
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.28);
}

.our-group-platform-band .cf-title--strengths::after {
  background: linear-gradient(90deg, rgba(0, 163, 180, 0), #3de7f2, rgba(0, 163, 180, 0));
}

.our-group-platform-band__head {
  max-width: 780px;
  margin: 0 auto;
  display: grid;
  justify-items: center;
  gap: 18px;
  text-align: center;
}

.our-group-platform-band__eyebrow {
  margin: 0;
  color: var(--rm-teal);
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.our-group-platform-band__title {
  margin: 0;
  color: #48505c;
  font-size: clamp(2.7rem, 4.9vw, 4.9rem);
  font-weight: 300;
  letter-spacing: -0.055em;
  line-height: 0.97;
}

.our-group-platform-band__copy {
  margin: 0;
  max-width: 62ch;
  color: var(--rm-text-soft);
  font-size: 1.03rem;
  line-height: 1.66;
}

.our-group-platform-band__tree {
  position: relative;
  width: min(100%, 1100px);
  min-height: clamp(560px, 58vw, 720px);
  aspect-ratio: 1000 / 640;
  margin: 0 auto;
  justify-self: center;
  overflow: visible;
}

body.about-page .our-group-platform-band__tree[data-reveal-group] {
  opacity: 1;
  transform: none;
  transition: none;
}

.our-group-platform-band__tree::before,
.our-group-platform-band__tree::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.our-group-platform-band__tree::before {
  inset: 8% 14% 10%;
  border-radius: 44% 44% 38% 38% / 18% 18% 34% 34%;
  background:
    radial-gradient(circle at 50% 18%, rgba(0, 163, 180, 0.14), transparent 18%),
    radial-gradient(circle at 50% 58%, rgba(28, 53, 94, 0.06), transparent 38%);
}

.our-group-platform-band__tree::after {
  inset: 13% 20% 17%;
  border: 1px solid rgba(0, 163, 180, 0.08);
  border-top-color: rgba(0, 163, 180, 0.18);
  border-radius: 46% 46% 40% 40% / 16% 16% 30% 30%;
}

.our-group-platform-band__lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
  filter: drop-shadow(0 18px 30px rgba(28, 53, 94, 0.12));
  opacity: 1;
}

.our-group-platform-band__line {
  fill: none;
  stroke: url(#our-group-tree-gradient);
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0;
  stroke-dasharray: 1200;
  stroke-dashoffset: 1200;
}

.our-group-platform-band__line-end {
  fill: #fff;
  stroke: url(#our-group-tree-gradient);
  stroke-width: 4;
  opacity: 0;
  transform-box: fill-box;
  transform-origin: center;
  transform: scale(0.35);
}

.our-group-platform-band__brand-node,
.our-group-platform-band__node {
  position: absolute;
  z-index: 1;
  display: grid;
  justify-items: center;
  text-align: center;
  transform: translate(-50%, -50%);
  opacity: 0;
  filter: blur(6px);
  transition:
    opacity 980ms ease,
    filter 1240ms ease;
  transition-delay: var(--tree-delay, 0ms);
}

.our-group-platform-band__brand-node {
  top: 12%;
  left: 50%;
  gap: 0;
}

.our-group-platform-band__brand-wordmark {
  width: clamp(272px, 29vw, 360px);
  height: auto;
  opacity: 0;
  transform: translateY(22px) scale(0.96);
  transform-origin: center;
  filter: drop-shadow(0 14px 26px rgba(28, 53, 94, 0.1));
  transition:
    opacity 1180ms ease,
    transform 1480ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--tree-delay, 0ms);
}

.our-group-platform-band__node {
  width: clamp(170px, 17vw, 240px);
  gap: 10px;
  text-decoration: none;
  color: inherit;
  pointer-events: none;
  transition: transform 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-platform-band__node--cf {
  top: 36%;
  left: 25%;
  animation-delay: 240ms;
}

.our-group-platform-band__node--am {
  top: 36%;
  left: 75%;
  animation-delay: 320ms;
}

.our-group-platform-band__node--pe {
  top: 80%;
  left: 12%;
  animation-delay: 400ms;
}

.our-group-platform-band__node--bc {
  top: 72%;
  left: 50%;
  animation-delay: 480ms;
}

.our-group-platform-band__node--re {
  top: 80%;
  left: 88%;
  animation-delay: 560ms;
}

body.our-group-page .our-group-platform-band .home-expertise-card__icon {
  position: relative;
  isolation: isolate;
  width: clamp(80px, 5.2vw, 94px);
  height: clamp(80px, 5.2vw, 94px);
  margin-top: 0;
  flex: none;
  border-radius: 50%;
  border: 1px solid rgba(191, 221, 232, 0.52);
  background:
    radial-gradient(circle at 36% 28%, rgba(255, 255, 255, 0.98), rgba(230, 243, 249, 0.95) 58%, rgba(216, 234, 244, 0.68));
  box-shadow:
    0 18px 40px rgba(28, 53, 94, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.75);
  transition:
    transform 240ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms ease,
    background 220ms ease,
    box-shadow 220ms ease,
    opacity 1180ms ease;
  opacity: 0;
  transform: translateY(18px);
}

.our-group-platform-band__node .home-expertise-card__icon::before {
  content: "";
  position: absolute;
  inset: -14px;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.16), rgba(0, 163, 180, 0) 72%);
  opacity: 0.72;
}

.our-group-platform-band__node-copy {
  display: grid;
  justify-items: center;
  gap: 0;
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 920ms ease,
    transform 1220ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--tree-delay, 0ms) + 180ms);
}

.our-group-platform-band__node strong {
  margin: 0;
  color: rgba(245, 250, 255, 0.96);
  font-size: clamp(1.08rem, 1.08vw, 1.24rem);
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.1;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.4);
  transition: color 220ms ease, transform 220ms ease;
}

.our-group-platform-band__node:hover,
.our-group-platform-band__node:focus-visible {
  transform: translate(-50%, calc(-50% - 4px));
  outline: none;
}

.our-group-platform-band__node:hover .home-expertise-card__icon,
.our-group-platform-band__node:focus-visible .home-expertise-card__icon {
  transform: translateY(-2px);
  border-color: rgba(0, 163, 180, 0.28);
  background:
    radial-gradient(circle at 36% 28%, rgba(255, 255, 255, 1), rgba(234, 248, 252, 0.98) 56%, rgba(219, 238, 247, 0.82));
  box-shadow:
    0 22px 44px rgba(28, 53, 94, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.our-group-platform-band__node:hover strong,
.our-group-platform-band__node:focus-visible strong {
  color: #75f4ff;
  transform: translateY(-1px);
}

.our-group-platform-band__lines path:nth-of-type(1) { --line-delay: 180ms; }
.our-group-platform-band__lines path:nth-of-type(2) { --line-delay: 420ms; }
.our-group-platform-band__lines path:nth-of-type(3) { --line-delay: 620ms; }
.our-group-platform-band__lines path:nth-of-type(4) { --line-delay: 860ms; }
.our-group-platform-band__lines path:nth-of-type(5) { --line-delay: 1160ms; }
.our-group-platform-band__lines path:nth-of-type(6) { --line-delay: 1460ms; }

.our-group-platform-band__lines circle:nth-of-type(1) { --end-delay: 2100ms; }
.our-group-platform-band__lines circle:nth-of-type(2) { --end-delay: 1680ms; }
.our-group-platform-band__lines circle:nth-of-type(3) { --end-delay: 2320ms; }

.our-group-platform-band__tree.is-visible .our-group-platform-band__line {
  animation: our-group-tree-draw 1820ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: var(--line-delay, 0ms);
}

.our-group-platform-band__tree.is-visible .our-group-platform-band__line-end {
  animation: our-group-tree-dot 760ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: var(--end-delay, 0ms);
}

.our-group-platform-band__tree.is-visible .our-group-platform-band__brand-node,
.our-group-platform-band__tree.is-visible .our-group-platform-band__node {
  opacity: 1;
  filter: blur(0);
}

.our-group-platform-band__tree.is-visible .our-group-platform-band__node {
  pointer-events: auto;
}

.our-group-platform-band__tree.is-visible .our-group-platform-band__brand-wordmark,
.our-group-platform-band__tree.is-visible .our-group-platform-band__node .home-expertise-card__icon,
.our-group-platform-band__tree.is-visible .our-group-platform-band__node-copy {
  opacity: 1;
  transform: translateY(0) scale(1);
}

@keyframes our-group-tree-draw {
  0% {
    opacity: 0;
    stroke-dashoffset: 1200;
  }
  12% {
    opacity: 1;
  }
  100% {
    opacity: 0.96;
    stroke-dashoffset: 0;
  }
}

@keyframes our-group-tree-dot {
  0% {
    opacity: 0;
    transform: scale(0.35);
  }
  65% {
    opacity: 1;
    transform: scale(1.16);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

body.our-group-page .our-group-values {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(246, 250, 253, 0.96), rgba(255, 255, 255, 0.98));
}

body.our-group-page .our-group-values::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 84% 12%, rgba(0, 163, 180, 0.06), transparent 30%),
    radial-gradient(circle at 12% 92%, rgba(28, 53, 94, 0.04), transparent 26%);
}

body.our-group-page .our-group-values .cf-shell {
  position: relative;
  z-index: 1;
}

body.our-group-page .our-group-values__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.4rem, 4.2vw, 4.25rem);
  font-weight: 300;
  letter-spacing: 0.08em;
  line-height: 0.98;
  text-transform: uppercase;
}

body.our-group-page .our-group-values__cards.home-expertise__cards {
  --home-card-progress: 1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2rem, 30px);
  margin-top: clamp(34px, 4rem, 58px);
  transform: none;
}

body.about-page .our-group-values__cards[data-reveal-group] {
  opacity: 1;
  transform: none;
  transition: none;
}

body.our-group-page .our-group-value-card {
  --home-card-progress: 1;
  min-height: 310px;
  opacity: 0;
  box-shadow: none;
  transform: translateY(34px);
  transition:
    opacity 820ms ease,
    transform 920ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 260ms ease,
    border-color 260ms ease,
    box-shadow 260ms ease;
  transition-delay: var(--value-delay, 0ms);
}

body.our-group-page .our-group-values__cards.is-visible .our-group-value-card {
  opacity: 1;
  transform: translateY(0);
}

body.our-group-page .our-group-values__cards.is-visible .our-group-value-card:hover,
body.our-group-page .our-group-values__cards.is-visible .our-group-value-card:focus-visible {
  border-color: rgba(191, 221, 232, 0.72);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: none;
  transform: translateY(0);
}

body.our-group-page .our-group-value-card:hover::before,
body.our-group-page .our-group-value-card:focus-visible::before {
  opacity: 0;
}

body.our-group-page .our-group-value-card:hover::after,
body.our-group-page .our-group-value-card:focus-visible::after {
  color: rgba(28, 53, 94, 0.38);
}

body.our-group-page .our-group-value-card .home-expertise-card__icon {
  border-radius: 18px;
}

body.our-group-page .our-group-value-card:hover .home-expertise-card__icon,
body.our-group-page .our-group-value-card:focus-visible .home-expertise-card__icon {
  transform: none;
}

body.our-group-page .our-group-value-card:hover h3,
body.our-group-page .our-group-value-card:focus-visible h3 {
  color: var(--rm-navy);
}

body.our-group-page .our-group-value-card:hover p,
body.our-group-page .our-group-value-card:focus-visible p {
  color: rgba(28, 53, 94, 0.66);
}

body.our-group-page .our-group-value-card:hover .home-expertise-card__icon-art *,
body.our-group-page .our-group-value-card:focus-visible .home-expertise-card__icon-art * {
  animation: none !important;
}


body.our-group-page .cf-hero__layout {
  grid-template-columns: minmax(0, 1fr);
}

body.our-group-page .page-video-hero {
  padding-block: clamp(48px, 6vw, 84px);
}

body.our-group-page .page-video-hero::after {
  background:
    linear-gradient(180deg, rgba(8, 22, 42, 0.18), rgba(8, 22, 42, 0.28)),
    linear-gradient(90deg, rgba(9, 24, 45, 0.08), rgba(9, 24, 45, 0.04));
}

body.our-group-page .cf-hero .page-video-hero__media video {
  filter: saturate(1.04) contrast(1.04) brightness(0.64);
}

body.our-group-page .cf-hero__copy {
  max-width: min(100%, 980px);
}

body.our-group-page .cf-hero__title {
  max-width: none;
  display: inline-block;
  padding-bottom: 0.14em;
  line-height: 1.12;
  text-wrap: balance;
}

@media (min-width: 861px) {
  body .cf-hero--with-stats .cf-hero__layout {
    grid-template-columns: minmax(0, 1.14fr) minmax(280px, 0.62fr);
    align-content: center;
    align-items: center;
    min-height: 0;
    padding-bottom: 0;
  }

  body .cf-hero--with-stats .cf-hero__copy {
    max-width: 860px;
  }

  body .cf-hero--with-stats .cf-hero__title {
    max-width: 20ch;
    display: block;
    padding-bottom: 0;
    line-height: 0.96;
  }

  body .cf-hero--with-stats .cf-hero__stats {
    padding-top: 0;
    padding-left: clamp(22px, 3vw, 38px);
    border-top: 0;
    border-left: 1px solid rgba(255, 255, 255, 0.16);
  }
}


.our-group-platform-band__row {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(12px, 2.4vw, 44px);
  width: min(100%, 1120px);
  margin: 0 auto;
  padding-block: 18px 24px;
  overflow: visible;
}

.our-group-platform-band__row .our-group-platform-band__node {
  position: static;
  flex: 1 1 0;
  width: auto;
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 14px;
  text-align: center;
  opacity: 0;
  filter: none;
  pointer-events: auto;
  transform: translateY(22px);
  transition:
    opacity 720ms ease,
    transform 820ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--i, 0) * 120ms);
  overflow: visible;
}

.our-group-platform-band__row .home-expertise-card__icon,
.our-group-platform-band__row .our-group-platform-band__node-copy {
  overflow: visible;
}

.our-group-platform-band__row .home-expertise-card__icon,
.our-group-platform-band__row .our-group-platform-band__node-copy {
  transition-delay: calc(var(--i, 0) * 120ms + 90ms);
}

.our-group-platform-band__row.is-visible .our-group-platform-band__node {
  opacity: 1;
  transform: translateY(0);
}

body.our-group-page .our-group-platform-band__row.is-visible .home-expertise-card__icon,
.our-group-platform-band__row.is-visible .our-group-platform-band__node-copy {
  opacity: 1;
  transform: translateY(0) scale(1);
}

@media (max-width: 720px) {
  .our-group-platform-band__row {
    flex-wrap: wrap;
    gap: clamp(20px, 5vw, 36px);
  }

  .our-group-platform-band__row .our-group-platform-band__node {
    flex: 0 1 40%;
  }
}

.our-group-platform-band__row .our-group-platform-band__node:hover,
.our-group-platform-band__row .our-group-platform-band__node:focus-visible {
  z-index: 3;
  transform: translateY(-4px);
  outline: none;
}

.our-group-platform-band__row .our-group-platform-band__node:hover .home-expertise-card__icon,
.our-group-platform-band__row .our-group-platform-band__node:focus-visible .home-expertise-card__icon {
  transform: translateY(-2px);
}

.our-group-platform-band__row .our-group-platform-band__node:hover strong,
.our-group-platform-band__row .our-group-platform-band__node:focus-visible strong {
  transform: none;
}


body.our-group-page .cf-title--strengths {
  font-size: clamp(2.05rem, 3.05vw, 3.18rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

body.our-group-page .cf-title--strengths::after {
  width: 96px;
  height: 2px;
  margin-top: 12px;
}

body.our-group-page .cf-strengths__head {
  margin-bottom: clamp(18px, 2vw, 28px);
}

body.our-group-page .cf-section--strengths .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.our-group-page .cf-strength-tile__index {
  display: none;
}

body.our-group-page .cf-strengths__mosaic {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: none;
  grid-auto-rows: 1fr;
  gap: 22px;
  will-change: auto;
  transition: none;
}

body.our-group-page .cf-strength-tile {
  display: block;
  height: 100%;
  min-height: 100%;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 22px;
  background:
    linear-gradient(180deg, var(--strength-accent) 0, var(--strength-accent) 142px, rgba(255, 255, 255, 0.98) 142px, #ffffff 100%);
  box-shadow:
    0 18px 42px rgba(20, 40, 68, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.58);
  transition:
    transform 260ms ease,
    box-shadow 260ms ease,
    border-color 260ms ease;
}

body.our-group-page .cf-strength-tile--service {
  --strength-accent: #17355a;
  --strength-glow: rgba(79, 196, 214, 0.24);
  grid-row: auto;
  min-height: 0;
  border-radius: 22px;
}

body.our-group-page .cf-strength-tile--expertise {
  --strength-accent: #1d4467;
  --strength-glow: rgba(73, 158, 201, 0.24);
}

body.our-group-page .cf-strength-tile--values {
  --strength-accent: #23506b;
  --strength-glow: rgba(68, 183, 171, 0.24);
}

body.our-group-page .cf-strength-tile::before {
  top: 0;
  left: 0;
  z-index: 0;
  width: 80px;
  height: 80px;
  border-radius: 14px 0 0 14px;
  background: var(--rm-teal);
  opacity: 1;
}

body.our-group-page .cf-strength-tile::after {
  content: "";
  position: absolute;
  top: 26px;
  left: 26px;
  z-index: 0;
  width: 54px;
  height: 54px;
  border-radius: 12px 0 0 0;
  background: var(--strength-accent);
}



body.our-group-page .cf-strength-tile__media,
body.our-group-page .cf-strength-tile__caption {
  display: none;
}

body.our-group-page .cf-strength-tile__panel,
body.our-group-page .cf-strength-tile__info {
  position: relative;
  inset: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  max-width: none;
  padding: 24px 22px 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}

body.our-group-page .cf-strength-tile__head {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: 104px;
  padding: 8px 12px 0;
  text-align: center;
}

body.our-group-page .cf-strength-tile__info-head {
  margin-bottom: 0;
}

body.our-group-page .cf-strength-tile__info .cf-strength-tile__title,
body.our-group-page .cf-strength-tile__panel .cf-strength-tile__title {
  color: #ffffff;
  max-width: 11ch;
  font-size: clamp(1.52rem, 1.9vw, 2rem);
  line-height: 1.08;
  text-shadow: none;
}

body.our-group-page .cf-strength-tile__head .cf-strength-tile__title {
  color: #ffffff;
}

body.our-group-page .cf-strength-tile__list,
body.our-group-page .cf-strength-tile__info-list {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 20px 4px 0;
}

body.our-group-page .cf-strength-tile__list li,
body.our-group-page .cf-strength-tile__info-list li {
  color: rgba(18, 43, 74, 0.95);
  font-size: 0.93rem;
  line-height: 1.52;
}

.our-group-founder {
  position: relative;
  overflow: hidden;
  padding: clamp(82px, 7rem, 118px) clamp(24px, 4rem, 58px);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(239, 247, 250, 0.92));
}

.our-group-founder::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 12% 14%, rgba(0, 163, 180, 0.05), transparent 30%),
    radial-gradient(circle at 88% 86%, rgba(28, 53, 94, 0.04), transparent 28%);
}

.our-group-founder__head {
  position: relative;
  z-index: 1;
  margin: 0 auto clamp(40px, 4.5vw, 66px);
}

.our-group-founder__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(260px, 0.84fr) minmax(0, 1.16fr);
  gap: clamp(42px, 5rem, 92px);
  max-width: 1240px;
  margin: 0 auto;
  align-items: center;
}


.our-group-founder__portrait {
  position: relative;
  z-index: 1;
  margin: 0;
  display: grid;
  gap: 24px;
}

.our-group-founder__portrait-frame {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  aspect-ratio: 1 / 1;
  background: linear-gradient(160deg, rgba(28, 53, 94, 0.08), rgba(0, 163, 180, 0.08));
  isolation: isolate;
}

.our-group-founder__portrait-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 46%, rgba(28, 53, 94, 0.42) 100%);
}

.our-group-founder__portrait-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 22%;
  display: block;
  filter: saturate(1.02) contrast(1.02);
  transform: scale(1.02);
  transition: transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-founder__portrait:hover .our-group-founder__portrait-frame img {
  transform: scale(1.08);
}

.our-group-founder__portrait-badge {
  position: absolute;
  z-index: 2;
  left: 18px;
  bottom: 18px;
  display: grid;
  place-items: center;
  width: clamp(48px, 5vw, 62px);
  height: clamp(48px, 5vw, 62px);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 30px -14px rgba(28, 53, 94, 0.6);
  backdrop-filter: blur(4px);
}

.our-group-founder__portrait-badge img {
  width: 58%;
  height: auto;
}

.our-group-founder__identity {
  display: grid;
  gap: 5px;
  color: var(--rm-navy);
  padding-left: 18px;
  border-left: 3px solid var(--rm-teal);
}

.our-group-founder__name {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.our-group-founder__identity small {
  color: rgba(28, 53, 94, 0.62);
  font-size: 0.94rem;
}


.our-group-founder__content {
  display: grid;
  gap: 18px;
  max-width: 760px;
}

.our-group-founder__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.05rem, 3.3vw, 3.1rem);
  font-weight: 300;
  letter-spacing: 0;
  line-height: 1.05;
}

.our-group-founder__message {
  position: relative;
  display: grid;
  gap: 22px;
  padding-top: 24px;
  margin-top: 4px;
  color: rgba(28, 53, 94, 0.76);
}

.our-group-founder__message::before {
  content: "\201C";
  position: absolute;
  top: -0.42em;
  left: -4px;
  color: rgba(0, 163, 180, 0.32);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 5.6rem;
  line-height: 1;
  pointer-events: none;
}

.our-group-founder__message p {
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.74;
}

.our-group-founder__lead {
  color: var(--rm-navy);
  font-size: 1.2rem !important;
  line-height: 1.48 !important;
}

.our-group-founder__message blockquote {
  margin: 10px 0;
  padding: 18px 0 18px 24px;
  border-left: 2px solid var(--rm-teal);
  color: var(--rm-navy);
  font-size: 1.30rem;
  font-weight: 400;
  line-height: 1.45;
}

.our-group-founder__cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: fit-content;
  margin-top: 6px;
  padding: 13px 26px;
  border-radius: 999px;
  background: var(--rm-navy);
  color: #fff;
  font-size: 0.82rem;
  font-weight: 400;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 240ms ease, transform 240ms ease, box-shadow 240ms ease;
  box-shadow: 0 18px 38px -22px rgba(28, 53, 94, 0.8);
}

.our-group-founder__cta svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 240ms ease;
}

.our-group-founder__cta:hover,
.our-group-founder__cta:focus-visible {
  background: var(--rm-teal);
  transform: translateY(-2px);
  box-shadow: 0 22px 44px -20px rgba(0, 163, 180, 0.7);
}

.our-group-founder__cta:hover svg,
.our-group-founder__cta:focus-visible svg {
  transform: translateX(4px);
}


body.founder-page [data-reveal] {
  opacity: 0;
  transform: translateY(30px);
  transition:
    opacity 760ms ease,
    transform 920ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--reveal-delay, 0ms);
}

body.founder-page [data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  body.founder-page [data-reveal] {
    opacity: 1 !important;
    transform: none !important;
  }
}

body.page-mode.founder-page .site-main {
  padding-top: 120px;
}

.founder-page .founder-letter {
  position: relative;
  padding: clamp(6px, 1.4vw, 16px) clamp(22px, 5vw, 60px) clamp(64px, 8vw, 120px);
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}

.founder-page .founder-letter__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  max-width: 840px;
  margin: 0 auto;
}


.founder-page .founder-letter__back,
.founder-page .founder-letter__return {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  color: var(--rm-teal);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
  transition: color 220ms ease;
}

.founder-page .founder-letter__back {
  margin-bottom: clamp(30px, 4vw, 48px);
}

.founder-page .founder-letter__back svg,
.founder-page .founder-letter__return svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 220ms ease;
}

.founder-page .founder-letter__back:hover svg,
.founder-page .founder-letter__return:hover svg {
  transform: translateX(-4px);
}


.founder-page .founder-letter__header {
  display: grid;
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr);
  gap: clamp(28px, 4vw, 52px);
  align-items: center;
  padding-bottom: clamp(30px, 4vw, 48px);
  margin-bottom: clamp(30px, 4vw, 50px);
  border-bottom: 1px solid rgba(28, 53, 94, 0.12);
}

.founder-page .founder-letter__portrait {
  position: relative;
  z-index: 1;
  margin: 0;
}

.founder-page .founder-letter__portrait::before {
  content: "";
  position: absolute;
  inset: 16px -16px -20px 16px;
  border: 2px solid rgba(0, 163, 180, 0.4);
  border-radius: 20px;
  z-index: -1;
  transition: inset 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.founder-page .founder-letter__portrait:hover::before {
  inset: 10px -10px -14px 10px;
}

.founder-page .founder-letter__portrait-frame {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  aspect-ratio: 1 / 1;
  background: linear-gradient(160deg, rgba(28, 53, 94, 0.08), rgba(0, 163, 180, 0.08));
  box-shadow: 0 26px 60px -34px rgba(28, 53, 94, 0.5);
  isolation: isolate;
}

.founder-page .founder-letter__portrait-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 50%, rgba(28, 53, 94, 0.38) 100%);
}

.founder-page .founder-letter__portrait-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 22%;
  display: block;
  transform: scale(1.02);
  transition: transform 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.founder-page .founder-letter__portrait:hover .founder-letter__portrait-frame img {
  transform: scale(1.07);
}

.founder-page .founder-letter__portrait-badge {
  position: absolute;
  z-index: 2;
  left: 14px;
  bottom: 14px;
  display: grid;
  place-items: center;
  width: clamp(42px, 5vw, 52px);
  height: clamp(42px, 5vw, 52px);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 12px 28px -14px rgba(28, 53, 94, 0.55);
}

.founder-page .founder-letter__portrait-badge img {
  width: 58%;
  height: auto;
}

.founder-page .founder-letter__heading {
  display: grid;
  gap: 16px;
}

.founder-page .founder-letter__heading .cf-kicker {
  margin: 0;
}

.founder-page .founder-letter__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.9rem, 3.4vw, 3rem);
  font-weight: 300;
  line-height: 1.07;
}

.founder-page .founder-letter__identity {
  display: grid;
  gap: 4px;
  color: var(--rm-navy);
  padding-left: 16px;
  border-left: 3px solid var(--rm-teal);
}

.founder-page .founder-letter__name {
  font-size: 0.98rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.founder-page .founder-letter__identity small {
  color: rgba(28, 53, 94, 0.62);
  font-size: 0.92rem;
}


.founder-page .founder-letter__body {
  position: relative;
  display: grid;
  gap: 22px;
  color: rgba(28, 53, 94, 0.78);
}

.founder-page .founder-letter__body p {
  margin: 0;
  font-size: 1.06rem;
  line-height: 1.8;
}


.founder-page .founder-letter__lead {
  position: relative;
  margin-top: 18px !important;
  color: var(--rm-navy);
  font-size: 1.34rem !important;
  line-height: 1.55 !important;
  font-weight: 400;
}

.founder-page .founder-letter__lead::before {
  content: "\201C";
  position: absolute;
  top: -0.62em;
  left: -0.06em;
  color: rgba(0, 163, 180, 0.28);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 4.6rem;
  line-height: 1;
  pointer-events: none;
}

.founder-page .founder-letter__lead::first-letter {
  font-weight: 600;
}


.founder-page .founder-letter__team {
  margin: clamp(14px, 2vw, 26px) 0;
  display: grid;
  gap: 12px;
}

.founder-page .founder-letter__team img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 18px;
  box-shadow: 0 30px 66px -38px rgba(28, 53, 94, 0.5);
}

.founder-page .founder-letter__team figcaption {
  color: rgba(28, 53, 94, 0.52);
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-align: center;
}


.founder-page .founder-letter__quote {
  margin: clamp(16px, 2.4vw, 30px) auto;
  max-width: 640px;
  padding: 26px 0 0;
  border-top: 2px solid var(--rm-teal);
  color: var(--rm-navy);
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
  font-weight: 300;
  line-height: 1.35;
  text-align: center;
}


.founder-page .founder-letter__signature {
  display: grid;
  gap: 4px;
  margin-top: clamp(30px, 3.4vw, 44px);
  padding-top: clamp(22px, 2.4vw, 30px);
  border-top: 1px solid rgba(28, 53, 94, 0.12);
}

.founder-page .founder-letter__sign-name {
  color: var(--rm-navy);
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.founder-page .founder-letter__sign-role {
  color: rgba(28, 53, 94, 0.6);
  font-size: 0.92rem;
}

.founder-page .founder-letter__return {
  margin-top: clamp(28px, 3vw, 40px);
}

@media (max-width: 720px) {
  .founder-page .founder-letter__header {
    grid-template-columns: 1fr;
    gap: 24px;
    justify-items: start;
  }
  .founder-page .founder-letter__portrait {
    width: min(240px, 68%);
  }
}

@media (max-width: 600px) {
  .founder-page .founder-letter__lead {
    font-size: 1.18rem !important;
  }
}

@property --timeline-progress {
  syntax: "<angle>";
  inherits: true;
  initial-value: 0deg;
}

@property --timeline-arc-progress {
  syntax: "<number>";
  inherits: true;
  initial-value: 0;
}

@keyframes timeline-node-pulse {
  0%, 100% {
    box-shadow:
      0 0 0 8px rgba(49, 184, 255, 0.14),
      0 0 18px rgba(49, 184, 255, 0.22);
  }
  50% {
    box-shadow:
      0 0 0 12px rgba(49, 184, 255, 0.08),
      0 0 24px rgba(49, 184, 255, 0.16);
  }
}

.our-group-timeline {
  overflow: visible;
}

.our-group-timeline__head {
  padding-top: clamp(30px, 5vw, 72px);
  margin-bottom: clamp(24px, 4vw, 52px);
}

.our-group-timeline__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.4rem, 4.4vw, 4.6rem);
  font-weight: 300;
  letter-spacing: -0.05em;
  line-height: 0.96;
}

.our-group-timeline__viewport {
  position: relative;
  max-width: min(100%, 1240px);
  margin: 0 auto;
  margin-top: clamp(20px, 4vw, 48px);
  padding-bottom: clamp(72px, 8vw, 124px);
}

.cards-container {
  --duration: 420ms;
  --radius: clamp(150px, 16vw, 220px);
  --label-size: clamp(82px, 7vw, 98px);
  --orbit-gap: clamp(34px, 3vw, 52px);
  --dial-size: calc((var(--radius) * 2) + clamp(72px, 7vw, 108px));
  position: relative;
  display: grid;
  grid-template-columns: minmax(320px, var(--dial-size)) minmax(0, 1fr);
  gap: clamp(40px, 6vw, 92px);
  align-items: center;
}

.timeline-dial {
  --timeline-progress: 0deg;
  position: relative;
  width: min(100%, var(--dial-size));
  aspect-ratio: 1;
  margin-inline: auto;
  display: grid;
  place-items: center;
  background: radial-gradient(circle at 50% 50%, rgba(0, 163, 180, 0.1), rgba(0, 163, 180, 0.025) 22%, rgba(0, 163, 180, 0) 48%);
}

.timeline-dial::before {
  content: "";
  position: absolute;
  inset: var(--orbit-gap);
  border-radius: 50%;
  background: conic-gradient(
    from -90deg,
    rgba(0, 163, 180, 0.92) 0deg,
    rgba(0, 163, 180, 0.92) var(--timeline-progress),
    rgba(0, 163, 180, 0.14) var(--timeline-progress),
    rgba(0, 163, 180, 0.14) 360deg
  );
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 3px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 3px));
  box-shadow: 0 0 18px rgba(0, 163, 180, 0.16);
  transition: --timeline-progress 920ms cubic-bezier(0.22, 1, 0.36, 1);
}

.timeline-dial::after {
  content: "";
  position: absolute;
  inset: calc(var(--orbit-gap) + clamp(72px, 6vw, 96px));
  border-radius: 50%;
  border: 1px dashed rgba(0, 163, 180, 0.16);
  pointer-events: none;
}

.timeline-dial__brand {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  width: clamp(102px, 9vw, 138px);
  display: grid;
  place-items: center;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.timeline-dial__brand img {
  width: 100%;
  height: auto;
  opacity: 0.94;
  filter:
    drop-shadow(0 14px 24px rgba(17, 29, 51, 0.12))
    drop-shadow(0 0 12px rgba(0, 163, 180, 0.12));
}

.cards-container input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.cards {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border-radius: 50%;
}

.cards::before,
.cards::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
}

.cards::before {
  inset: var(--orbit-gap);
  border: 1px solid rgba(0, 163, 180, 0.08);
}

.cards::after {
  inset: calc(var(--orbit-gap) - 16px);
  border: 1px solid rgba(0, 163, 180, 0.04);
}

.cards li {
  position: absolute;
  inset: 0;
  margin: 0;
  display: grid;
  place-items: center;
  transform: rotate(calc((var(--i) * 1turn / var(--items)) - 90deg));
  pointer-events: none;
}

.cards li > label {
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  place-items: center;
  width: max(var(--label-size), 104px);
  height: calc(var(--label-size) + 34px);
  padding: 0;
  color: rgba(28, 53, 94, 0.58);
  font-size: clamp(0.7rem, 0.46vw + 0.62rem, 0.88rem);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
  cursor: pointer;
  pointer-events: auto;
  user-select: none;
  touch-action: manipulation;
  z-index: 3;
  overflow: visible;
  transform: translate(-50%, -50%) translateY(calc(var(--radius) * -1));
  transition:
    color var(--duration) ease,
    transform var(--duration) ease;
}

.cards li > label::before,
.cards li > label::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition:
    opacity var(--duration) ease,
    border-color var(--duration) ease,
    box-shadow var(--duration) ease,
    transform var(--duration) ease,
    background-color var(--duration) ease;
}

.cards li > label::before {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(49, 184, 255, 0.9);
  box-shadow:
    0 0 0 5px rgba(49, 184, 255, 0.08),
    0 0 12px rgba(49, 184, 255, 0.14);
}

.cards li > label::after {
  width: 1px;
  height: 20px;
  background: linear-gradient(180deg, rgba(0, 163, 180, 0.6), rgba(0, 163, 180, 0));
  opacity: 0.42;
  transform: translate(-50%, calc(-100% - 2px));
}

.cards li > label span {
  position: absolute;
  left: 50%;
  bottom: calc(50% + 30px);
  padding: 0 0 6px;
  white-space: nowrap;
  transform: translateX(-50%) rotate(calc(90deg - (var(--i) * 1turn / var(--items))));
  transform-origin: center;
  transition: opacity var(--duration) ease, color var(--duration) ease, transform var(--duration) ease;
}

.cards li > label:hover {
  color: var(--rm-navy);
  transform: translate(-50%, -50%) translateY(calc(var(--radius) * -1));
}

.cards li > label:hover::before {
  background: rgba(49, 184, 255, 0.9);
  box-shadow:
    0 0 0 5px rgba(49, 184, 255, 0.08),
    0 0 12px rgba(49, 184, 255, 0.14);
}

.cards li > label:hover::after {
  opacity: 0.42;
}

.cards li > label:hover span {
  transform: translateX(-50%) rotate(calc(90deg - (var(--i) * 1turn / var(--items))));
}

.timeline-card {
  position: absolute;
  inset: 0;
  display: grid;
  align-content: center;
  gap: 20px;
  padding-left: clamp(28px, 3vw, 44px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(18px);
  transition:
    opacity var(--duration) ease,
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear var(--duration);
}

.timeline-card__eyebrow {
  margin: 0;
  color: rgba(28, 53, 94, 0.52);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.timeline-card h3 {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(3rem, 6vw, 5.4rem);
  font-weight: 300;
  letter-spacing: -0.06em;
  line-height: 0.92;
}

.timeline-card__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px 24px;
}

.timeline-card__list li {
  position: relative;
  padding-left: 18px;
  color: var(--rm-text-soft);
  font-size: 1rem;
  line-height: 1.72;
  opacity: 0;
  transform: translateY(10px);
  transition:
    opacity 260ms ease,
    transform 340ms cubic-bezier(0.22, 1, 0.36, 1);
}

.timeline-card__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: linear-gradient(135deg, #31b8ff, #8fd3ff);
  box-shadow: 0 0 0 6px rgba(49, 184, 255, 0.1);
  transform: translateY(-50%);
}

.timeline-details {
  position: relative;
  min-height: clamp(360px, 30vw, 520px);
}

.timeline-details::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6%;
  bottom: 6%;
  width: 1px;
  background: linear-gradient(180deg, rgba(49, 184, 255, 0), rgba(49, 184, 255, 0.54), rgba(49, 184, 255, 0));
}

.timeline-card__list li:nth-child(1) { transition-delay: 60ms; }
.timeline-card__list li:nth-child(2) { transition-delay: 110ms; }
.timeline-card__list li:nth-child(3) { transition-delay: 160ms; }
.timeline-card__list li:nth-child(4) { transition-delay: 210ms; }
.timeline-card__list li:nth-child(5) { transition-delay: 260ms; }
.timeline-card__list li:nth-child(6) { transition-delay: 310ms; }
.timeline-card__list li:nth-child(7) { transition-delay: 360ms; }
.timeline-card__list li:nth-child(8) { transition-delay: 410ms; }

.cards li:has(input:checked) > label {
  color: var(--rm-navy);
  transform: translate(-50%, -50%) translateY(calc(var(--radius) * -1));
}

.cards li:has(input:checked) > label::before {
  background: #31b8ff;
  box-shadow:
    0 0 0 8px rgba(49, 184, 255, 0.14),
    0 0 18px rgba(49, 184, 255, 0.24);
  animation: timeline-node-pulse 1.8s ease-in-out infinite;
}

.cards li:has(input:checked) > label::after {
  opacity: 1;
  background: linear-gradient(180deg, rgba(0, 163, 180, 0.92), rgba(0, 163, 180, 0));
}

.cards li:has(input:checked) > label span {
  transform: translateX(-50%) rotate(calc(90deg - (var(--i) * 1turn / var(--items))));
}

.cards-container:has(#group-year-2004:checked) .timeline-dial { --timeline-progress: 0deg; }
.cards-container:has(#group-year-2007:checked) .timeline-dial { --timeline-progress: 32.73deg; }
.cards-container:has(#group-year-2010:checked) .timeline-dial { --timeline-progress: 65.45deg; }
.cards-container:has(#group-year-2011:checked) .timeline-dial { --timeline-progress: 98.18deg; }
.cards-container:has(#group-year-2018:checked) .timeline-dial { --timeline-progress: 130.91deg; }
.cards-container:has(#group-year-2020:checked) .timeline-dial { --timeline-progress: 163.64deg; }
.cards-container:has(#group-year-2021:checked) .timeline-dial { --timeline-progress: 196.36deg; }
.cards-container:has(#group-year-2022:checked) .timeline-dial { --timeline-progress: 229.09deg; }
.cards-container:has(#group-year-2023:checked) .timeline-dial { --timeline-progress: 261.82deg; }
.cards-container:has(#group-year-2024:checked) .timeline-dial { --timeline-progress: 294.55deg; }
.cards-container:has(#group-year-2025:checked) .timeline-dial { --timeline-progress: 327.27deg; }

.cards-container:has(#group-year-2004:checked) .cards li:nth-child(-n+1) > label,
.cards-container:has(#group-year-2007:checked) .cards li:nth-child(-n+2) > label,
.cards-container:has(#group-year-2010:checked) .cards li:nth-child(-n+3) > label,
.cards-container:has(#group-year-2011:checked) .cards li:nth-child(-n+4) > label,
.cards-container:has(#group-year-2018:checked) .cards li:nth-child(-n+5) > label,
.cards-container:has(#group-year-2020:checked) .cards li:nth-child(-n+6) > label,
.cards-container:has(#group-year-2021:checked) .cards li:nth-child(-n+7) > label,
.cards-container:has(#group-year-2022:checked) .cards li:nth-child(-n+8) > label,
.cards-container:has(#group-year-2023:checked) .cards li:nth-child(-n+9) > label,
.cards-container:has(#group-year-2024:checked) .cards li:nth-child(-n+10) > label,
.cards-container:has(#group-year-2025:checked) .cards li:nth-child(-n+11) > label {
  color: rgba(28, 53, 94, 0.82);
}

.cards-container:has(#group-year-2004:checked) .cards li:nth-child(-n+1) > label::before,
.cards-container:has(#group-year-2007:checked) .cards li:nth-child(-n+2) > label::before,
.cards-container:has(#group-year-2010:checked) .cards li:nth-child(-n+3) > label::before,
.cards-container:has(#group-year-2011:checked) .cards li:nth-child(-n+4) > label::before,
.cards-container:has(#group-year-2018:checked) .cards li:nth-child(-n+5) > label::before,
.cards-container:has(#group-year-2020:checked) .cards li:nth-child(-n+6) > label::before,
.cards-container:has(#group-year-2021:checked) .cards li:nth-child(-n+7) > label::before,
.cards-container:has(#group-year-2022:checked) .cards li:nth-child(-n+8) > label::before,
.cards-container:has(#group-year-2023:checked) .cards li:nth-child(-n+9) > label::before,
.cards-container:has(#group-year-2024:checked) .cards li:nth-child(-n+10) > label::before,
.cards-container:has(#group-year-2025:checked) .cards li:nth-child(-n+11) > label::before {
  background: rgba(49, 184, 255, 0.9);
  box-shadow: 0 0 0 6px rgba(49, 184, 255, 0.1);
}

.cards-container:has(#group-year-2004:checked) .timeline-card--2004,
.cards-container:has(#group-year-2007:checked) .timeline-card--2007,
.cards-container:has(#group-year-2010:checked) .timeline-card--2010,
.cards-container:has(#group-year-2011:checked) .timeline-card--2011,
.cards-container:has(#group-year-2018:checked) .timeline-card--2018,
.cards-container:has(#group-year-2020:checked) .timeline-card--2020,
.cards-container:has(#group-year-2021:checked) .timeline-card--2021,
.cards-container:has(#group-year-2022:checked) .timeline-card--2022,
.cards-container:has(#group-year-2023:checked) .timeline-card--2023,
.cards-container:has(#group-year-2024:checked) .timeline-card--2024,
.cards-container:has(#group-year-2025:checked) .timeline-card--2025 {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  transition-delay: 0s;
}

.cards-container:has(#group-year-2004:checked) .timeline-card--2004 .timeline-card__list li,
.cards-container:has(#group-year-2007:checked) .timeline-card--2007 .timeline-card__list li,
.cards-container:has(#group-year-2010:checked) .timeline-card--2010 .timeline-card__list li,
.cards-container:has(#group-year-2011:checked) .timeline-card--2011 .timeline-card__list li,
.cards-container:has(#group-year-2018:checked) .timeline-card--2018 .timeline-card__list li,
.cards-container:has(#group-year-2020:checked) .timeline-card--2020 .timeline-card__list li,
.cards-container:has(#group-year-2021:checked) .timeline-card--2021 .timeline-card__list li,
.cards-container:has(#group-year-2022:checked) .timeline-card--2022 .timeline-card__list li,
.cards-container:has(#group-year-2023:checked) .timeline-card--2023 .timeline-card__list li,
.cards-container:has(#group-year-2024:checked) .timeline-card--2024 .timeline-card__list li,
.cards-container:has(#group-year-2025:checked) .timeline-card--2025 .timeline-card__list li {
  opacity: 1;
  transform: translateY(0);
}

.our-group-timeline-arc {
  position: relative;
  overflow: hidden;
  padding-top: clamp(34px, 4vw, 54px);
  padding-bottom: clamp(80px, 9vw, 140px);
}

.our-group-timeline-arc::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 14%, rgba(49, 184, 255, 0.07), transparent 26%),
    radial-gradient(circle at 82% 80%, rgba(28, 53, 94, 0.04), transparent 28%);
}

.our-group-timeline-arc .cf-shell {
  position: relative;
  z-index: 1;
}

.our-group-timeline-arc__head {
  margin-bottom: clamp(10px, 2vw, 26px);
}

.our-group-timeline-arc__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.3rem, 4.2vw, 4.3rem);
  font-weight: 300;
  letter-spacing: -0.05em;
  line-height: 0.98;
}

.our-group-timeline-arc__viewport {
  max-width: min(100%, 1100px);
  margin: 0 auto;
}

.timeline-arc {
  --duration: 420ms;
  --timeline-arc-progress: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}


.timeline-arc__dial {
  position: relative;
  width: min(900px, 100%);
  aspect-ratio: 1000 / 500;
  margin: 0 auto;
}

.timeline-arc__rail {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.timeline-arc__track,
.timeline-arc__progress {
  fill: none;
  stroke-linecap: round;
}

.timeline-arc__track {
  stroke: rgba(28, 53, 94, 0.12);
  stroke-width: 3;
}

.timeline-arc__progress {
  stroke: url(#timeline-arc-gradient);
  stroke-width: 4;
  stroke-dasharray: var(--timeline-arc-progress) 100;
  filter: drop-shadow(0 6px 14px rgba(49, 184, 255, 0.22));
  transition: --timeline-arc-progress 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

.timeline-arc input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.timeline-arc__years {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}


.timeline-arc__years li {
  position: absolute;
  inset: 0;
  transform-origin: 50% 92%;
  transform: rotate(calc(-90deg + var(--i) * 18deg));
  pointer-events: none;
}

.timeline-arc__years label {
  position: absolute;
  left: 50%;
  top: 4%;
  width: 26px;
  height: 26px;
  transform: translate(-50%, -50%);
  cursor: pointer;
  pointer-events: auto;
}


.timeline-arc__years label::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid rgba(28, 53, 94, 0.3);
  box-shadow: 0 4px 10px -4px rgba(28, 53, 94, 0.4);
  transform: translate(-50%, -50%);
  transition:
    background-color var(--duration) ease,
    border-color var(--duration) ease,
    box-shadow var(--duration) ease,
    transform var(--duration) ease;
}


.timeline-arc__years label span {
  position: absolute;
  left: 50%;
  top: 50%;
  transform:
    translate(-50%, -50%)
    translateY(-24px)
    rotate(calc(90deg - var(--i) * 18deg));
  color: rgba(28, 53, 94, 0.5);
  font-size: clamp(0.74rem, 0.5vw + 0.64rem, 0.92rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  white-space: nowrap;
  transition: color var(--duration) ease;
}

.timeline-arc__years label:hover span,
.timeline-arc__years label:focus-visible span {
  color: var(--rm-navy);
}


.timeline-arc:has(#group-year-arc-2004:checked) { --timeline-arc-progress: 0; }
.timeline-arc:has(#group-year-arc-2007:checked) { --timeline-arc-progress: 10; }
.timeline-arc:has(#group-year-arc-2010:checked) { --timeline-arc-progress: 20; }
.timeline-arc:has(#group-year-arc-2011:checked) { --timeline-arc-progress: 30; }
.timeline-arc:has(#group-year-arc-2018:checked) { --timeline-arc-progress: 40; }
.timeline-arc:has(#group-year-arc-2020:checked) { --timeline-arc-progress: 50; }
.timeline-arc:has(#group-year-arc-2021:checked) { --timeline-arc-progress: 60; }
.timeline-arc:has(#group-year-arc-2022:checked) { --timeline-arc-progress: 70; }
.timeline-arc:has(#group-year-arc-2023:checked) { --timeline-arc-progress: 80; }
.timeline-arc:has(#group-year-arc-2024:checked) { --timeline-arc-progress: 90; }
.timeline-arc:has(#group-year-arc-2025:checked) { --timeline-arc-progress: 100; }


.timeline-arc:has(#group-year-arc-2004:checked) .timeline-arc__years li:nth-child(-n+1) label::before,
.timeline-arc:has(#group-year-arc-2007:checked) .timeline-arc__years li:nth-child(-n+2) label::before,
.timeline-arc:has(#group-year-arc-2010:checked) .timeline-arc__years li:nth-child(-n+3) label::before,
.timeline-arc:has(#group-year-arc-2011:checked) .timeline-arc__years li:nth-child(-n+4) label::before,
.timeline-arc:has(#group-year-arc-2018:checked) .timeline-arc__years li:nth-child(-n+5) label::before,
.timeline-arc:has(#group-year-arc-2020:checked) .timeline-arc__years li:nth-child(-n+6) label::before,
.timeline-arc:has(#group-year-arc-2021:checked) .timeline-arc__years li:nth-child(-n+7) label::before,
.timeline-arc:has(#group-year-arc-2022:checked) .timeline-arc__years li:nth-child(-n+8) label::before,
.timeline-arc:has(#group-year-arc-2023:checked) .timeline-arc__years li:nth-child(-n+9) label::before,
.timeline-arc:has(#group-year-arc-2024:checked) .timeline-arc__years li:nth-child(-n+10) label::before,
.timeline-arc:has(#group-year-arc-2025:checked) .timeline-arc__years li:nth-child(-n+11) label::before {
  background: #31b8ff;
  border-color: #31b8ff;
}

.timeline-arc:has(#group-year-arc-2004:checked) .timeline-arc__years li:nth-child(-n+1) label span,
.timeline-arc:has(#group-year-arc-2007:checked) .timeline-arc__years li:nth-child(-n+2) label span,
.timeline-arc:has(#group-year-arc-2010:checked) .timeline-arc__years li:nth-child(-n+3) label span,
.timeline-arc:has(#group-year-arc-2011:checked) .timeline-arc__years li:nth-child(-n+4) label span,
.timeline-arc:has(#group-year-arc-2018:checked) .timeline-arc__years li:nth-child(-n+5) label span,
.timeline-arc:has(#group-year-arc-2020:checked) .timeline-arc__years li:nth-child(-n+6) label span,
.timeline-arc:has(#group-year-arc-2021:checked) .timeline-arc__years li:nth-child(-n+7) label span,
.timeline-arc:has(#group-year-arc-2022:checked) .timeline-arc__years li:nth-child(-n+8) label span,
.timeline-arc:has(#group-year-arc-2023:checked) .timeline-arc__years li:nth-child(-n+9) label span,
.timeline-arc:has(#group-year-arc-2024:checked) .timeline-arc__years li:nth-child(-n+10) label span,
.timeline-arc:has(#group-year-arc-2025:checked) .timeline-arc__years li:nth-child(-n+11) label span {
  color: rgba(28, 53, 94, 0.72);
}


.timeline-arc__years li:has(input:checked) label::before {
  background: #31b8ff;
  border-color: #fff;
  transform: translate(-50%, -50%) scale(1.5);
  box-shadow:
    0 0 0 6px rgba(49, 184, 255, 0.16),
    0 12px 24px -8px rgba(49, 184, 255, 0.55);
  animation: timeline-node-pulse 1.9s ease-in-out infinite;
}

.timeline-arc__years li:has(input:checked) label span {
  color: var(--rm-navy);
  font-size: clamp(0.82rem, 0.5vw + 0.72rem, 1rem);
}


.timeline-arc__content {
  position: relative;
  z-index: 2;
  display: grid;
  width: min(100%, 560px);
  margin-top: clamp(-200px, -16vw, -110px);
  text-align: center;
}

.timeline-arc__card {
  grid-area: 1 / 1;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: clamp(14px, 2vw, 22px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(16px);
  transition:
    opacity var(--duration) ease,
    transform 460ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear var(--duration);
}

.timeline-arc__card h3 {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(3rem, 6vw, 5.6rem);
  font-weight: 300;
  letter-spacing: -0.06em;
  line-height: 0.9;
}

.timeline-arc__list {
  width: min(100%, 560px);
  margin: 0 auto;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 24px;
  text-align: left;
}

.timeline-arc__list li {
  position: relative;
  padding-left: 20px;
  color: var(--rm-text-soft);
  font-size: 0.98rem;
  line-height: 1.65;
  opacity: 0;
  transform: translateY(10px);
  transition:
    opacity 260ms ease,
    transform 340ms cubic-bezier(0.22, 1, 0.36, 1);
}

.timeline-arc__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: linear-gradient(135deg, #31b8ff, #1c355e);
  box-shadow: 0 0 0 5px rgba(49, 184, 255, 0.08);
  transform: translateY(-50%);
}

.timeline-arc__list li:only-child {
  grid-column: 1 / -1;
  max-width: 44ch;
  justify-self: center;
  text-align: center;
  padding-left: 0;
  font-size: 1.08rem;
}

.timeline-arc__list li:only-child::before {
  display: none;
}

.timeline-arc__list li:nth-child(1) { transition-delay: 80ms; }
.timeline-arc__list li:nth-child(2) { transition-delay: 130ms; }
.timeline-arc__list li:nth-child(3) { transition-delay: 180ms; }
.timeline-arc__list li:nth-child(4) { transition-delay: 230ms; }
.timeline-arc__list li:nth-child(5) { transition-delay: 280ms; }
.timeline-arc__list li:nth-child(6) { transition-delay: 330ms; }
.timeline-arc__list li:nth-child(7) { transition-delay: 380ms; }
.timeline-arc__list li:nth-child(8) { transition-delay: 430ms; }


.timeline-arc:has(#group-year-arc-2004:checked) .timeline-arc__card--2004,
.timeline-arc:has(#group-year-arc-2007:checked) .timeline-arc__card--2007,
.timeline-arc:has(#group-year-arc-2010:checked) .timeline-arc__card--2010,
.timeline-arc:has(#group-year-arc-2011:checked) .timeline-arc__card--2011,
.timeline-arc:has(#group-year-arc-2018:checked) .timeline-arc__card--2018,
.timeline-arc:has(#group-year-arc-2020:checked) .timeline-arc__card--2020,
.timeline-arc:has(#group-year-arc-2021:checked) .timeline-arc__card--2021,
.timeline-arc:has(#group-year-arc-2022:checked) .timeline-arc__card--2022,
.timeline-arc:has(#group-year-arc-2023:checked) .timeline-arc__card--2023,
.timeline-arc:has(#group-year-arc-2024:checked) .timeline-arc__card--2024,
.timeline-arc:has(#group-year-arc-2025:checked) .timeline-arc__card--2025 {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  transition-delay: 0s;
}

.timeline-arc:has(#group-year-arc-2004:checked) .timeline-arc__card--2004 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2007:checked) .timeline-arc__card--2007 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2010:checked) .timeline-arc__card--2010 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2011:checked) .timeline-arc__card--2011 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2018:checked) .timeline-arc__card--2018 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2020:checked) .timeline-arc__card--2020 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2021:checked) .timeline-arc__card--2021 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2022:checked) .timeline-arc__card--2022 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2023:checked) .timeline-arc__card--2023 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2024:checked) .timeline-arc__card--2024 .timeline-arc__list li,
.timeline-arc:has(#group-year-arc-2025:checked) .timeline-arc__card--2025 .timeline-arc__list li {
  opacity: 1;
  transform: translateY(0);
}

.our-group-scroll-timeline {
  position: relative;
  overflow: hidden;
  padding-top: clamp(70px, 8vw, 112px);
  padding-bottom: clamp(190px, 18vw, 320px);
}

body.our-group-page .our-group-scroll-timeline.cf-section--alt {
  background: #ffffff;
}


.group-tl {
  position: relative;
  max-width: min(100%, 960px);
  margin: 0 auto;
  outline: none;
}

.group-tl:focus-visible {
  outline: 2px solid rgba(0, 163, 180, 0.5);
  outline-offset: 14px;
  border-radius: 24px;
}

.group-tl__stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(120px, 0.6fr) clamp(54px, 6vw, 78px) minmax(0, 1fr);
  align-items: stretch;
  gap: clamp(10px, 2.4vw, 34px);
  height: clamp(380px, 48vw, 540px);
  overflow: visible;
  transition: height 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

.group-tl__years {
  position: relative;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 17%, #000 83%, transparent 100%);
          mask-image: linear-gradient(180deg, transparent 0, #000 17%, #000 83%, transparent 100%);
}

.group-tl__track {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: clamp(14px, 1.8vw, 26px);
  transition: transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

.group-tl__yitem {
  display: flex;
  justify-content: flex-end;
}

.group-tl__ybtn {
  --tl-dist: 3;
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: none;
  padding: 4px 8px;
  cursor: pointer;
  font-family: inherit;
  font-weight: 300;
  letter-spacing: -0.04em;
  line-height: 1;
  color: var(--rm-navy);
  font-size: clamp(1.5rem, 2.6vw, 2.6rem);
  transform: scale(0.78);
  transform-origin: right center;
  opacity: max(0.12, calc(1 - var(--tl-dist) * 0.28));
  transition:
    color 380ms ease,
    transform 540ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 380ms ease;
}

.group-tl__ybtn:hover {
  color: var(--rm-teal);
}

.group-tl__yitem.is-active .group-tl__ybtn {
  color: var(--rm-navy);
  opacity: 1;
  transform: scale(1.12);
  font-weight: 400;
}

.group-tl__rail {
  --tl-inset: clamp(46px, 6vw, 64px);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

.group-tl__rail-line,
.group-tl__rail-fill {
  position: absolute;
  left: 50%;
  width: 2px;
  border-radius: 999px;
  transform: translateX(-50%);
  pointer-events: none;
}


.group-tl__rail-line {
  top: var(--tl-inset);
  bottom: var(--tl-inset);
  background: rgba(28, 53, 94, 0.16);
  z-index: 0;
}


.group-tl__rail-fill {
  top: var(--tl-inset);
  height: calc((100% - var(--tl-inset) * 2) * var(--tl-progress, 0));
  background: linear-gradient(180deg, var(--rm-teal), #4aa6cf);
  z-index: 1;
  transition: height 700ms cubic-bezier(0.22, 1, 0.36, 1);
}


.group-tl__rail::before,
.group-tl__rail::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid rgba(28, 53, 94, 0.30);
  transform: translateX(-50%);
  z-index: 2;
}

.group-tl__rail::before {
  top: calc(var(--tl-inset) - 5.5px);
}

.group-tl__rail::after {
  bottom: calc(var(--tl-inset) - 5.5px);
}


.group-tl__rail-ring {
  position: absolute;
  left: 50%;
  top: calc(var(--tl-inset) + (100% - var(--tl-inset) * 2) * var(--tl-progress, 0));
  width: 18px;
  height: 18px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: var(--rm-teal);
  border: 3px solid #fff;
  box-shadow: 0 0 0 4px rgba(0, 163, 180, 0.18);
  pointer-events: none;
  z-index: 3;
  transition: top 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

.group-tl__nav {
  position: relative;
  z-index: 3;
  display: grid;
  place-items: center;
  width: clamp(40px, 4vw, 48px);
  height: clamp(40px, 4vw, 48px);
  border-radius: 50%;
  border: 1px solid rgba(28, 53, 94, 0.16);
  background: #fff;
  color: var(--rm-navy);
  cursor: pointer;
  box-shadow: none;
  transition:
    background 220ms ease,
    color 220ms ease,
    border-color 220ms ease,
    transform 220ms ease,
    opacity 220ms ease;
}

.group-tl__nav svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.group-tl__nav:hover:not(:disabled),
.group-tl__nav:focus-visible:not(:disabled) {
  background: var(--rm-navy);
  color: #fff;
  border-color: var(--rm-navy);
  transform: translateY(-1px);
  outline: none;
}

.group-tl__nav:disabled {
  opacity: 0.3;
  cursor: default;
  box-shadow: none;
}

.group-tl__panels {
  position: relative;
  padding-left: clamp(18px, 3vw, 40px);
}

.group-tl__panel {
  position: absolute;
  top: 50%;
  left: clamp(18px, 3vw, 40px);
  right: 0;
  transform: translateY(-44%);
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 460ms ease,
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 460ms;
}

.group-tl__panel.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%);
  transition:
    opacity 520ms ease 90ms,
    transform 720ms cubic-bezier(0.22, 1, 0.36, 1) 90ms,
    visibility 0s;
}

.group-tl__panel ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.group-tl__panel li {
  position: relative;
  padding-left: 22px;
  color: rgba(28, 53, 94, 0.82);
  font-size: clamp(0.98rem, 0.4vw + 0.9rem, 1.1rem);
  line-height: 1.62;
}

.group-tl__panel li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

@media (max-width: 720px) {
  .group-tl__stage {
    grid-template-columns: auto clamp(46px, 11vw, 60px) minmax(0, 1fr);
    gap: clamp(6px, 2vw, 16px);
    height: clamp(420px, 92vw, 520px);
  }

  .group-tl__ybtn {
    font-size: clamp(1.2rem, 6vw, 1.8rem);
  }

  .group-tl__panel li {
    font-size: 0.96rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .group-tl__track,
  .group-tl__rail-fill,
  .group-tl__rail-ring,
  .group-tl__panel {
    transition: none;
  }
}


.our-group-scroll-timeline__head {
  margin-bottom: clamp(46px, 6vw, 86px);
}

.our-group-scroll-timeline__eyebrow {
  margin: 0 0 12px;
  color: var(--rm-teal);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.our-group-scroll-timeline__title {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.4rem, 4.4vw, 4.8rem);
  font-weight: 300;
  letter-spacing: -0.05em;
  line-height: 0.96;
}

.our-group-scroll-timeline__viewport {
  --timeline-scroll-progress: 1;
  max-width: min(100%, 940px);
  margin: 0 auto;
}

.our-group-scroll-timeline__viewport.is-scroll-ready {
  --timeline-scroll-progress: 0;
}

.our-group-scroll-timeline__list {
  --timeline-line-x: 50%;
  position: relative;
  display: grid;
  gap: clamp(30px, 3.4vw, 52px);
  margin: 0;
  padding: clamp(18px, 2vw, 26px) 0;
  list-style: none;
}

.our-group-scroll-timeline__list::before,
.our-group-scroll-timeline__list::after {
  content: "";
  position: absolute;
  top: var(--timeline-line-top, 0px);
  bottom: var(--timeline-line-bottom, 0px);
  left: var(--timeline-line-x);
  width: 2px;
  border-radius: 999px;
  pointer-events: none;
  transform: translateX(-50%);
}

.our-group-scroll-timeline__list::before {
  background: rgba(28, 53, 94, 0.14);
}

.our-group-scroll-timeline__list::after {
  background: linear-gradient(180deg, var(--rm-teal), #4aa6cf 56%, var(--rm-navy));
  transform: translateX(-50%) scaleY(var(--timeline-scroll-progress));
  transform-origin: 50% 0;
}

.our-group-scroll-timeline__item {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(54px, 6vw, 86px) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 40px);
  align-items: center;
  opacity: 1;
  transform: none;
}

.our-group-scroll-timeline__item,
.our-group-scroll-timeline__end {
  --timeline-year-color: rgba(28, 53, 94, 0.26);
  --timeline-text-color: rgba(28, 53, 94, 0.54);
  --timeline-marker-bg: #ffffff;
  --timeline-marker-outline: rgba(28, 53, 94, 0.18);
  --timeline-bullet-color: rgba(0, 163, 180, 0.36);
}

.our-group-scroll-timeline__item.is-reached,
.our-group-scroll-timeline__end.is-reached {
  --timeline-year-color: rgba(28, 53, 94, 0.72);
  --timeline-text-color: rgba(28, 53, 94, 0.88);
  --timeline-marker-bg: var(--rm-teal);
  --timeline-marker-outline: rgba(0, 163, 180, 0.58);
  --timeline-bullet-color: var(--rm-teal);
}

.our-group-scroll-timeline__item.is-current {
  --timeline-year-color: var(--rm-navy);
  --timeline-text-color: rgba(20, 40, 68, 0.96);
  --timeline-marker-outline: var(--rm-teal);
}

.our-group-scroll-timeline__viewport.is-scroll-ready .our-group-scroll-timeline__item {
  opacity: 0;
  transform: translateY(34px);
  transition:
    opacity 700ms ease,
    transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-scroll-timeline__viewport.is-scroll-ready .our-group-scroll-timeline__item.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.our-group-scroll-timeline__year {
  grid-column: 1;
  justify-self: end;
  margin-top: -0.08em;
  color: var(--timeline-year-color);
  font-size: clamp(2.3rem, 4vw, 4.2rem);
  font-weight: 300;
  letter-spacing: -0.06em;
  line-height: 0.9;
  transition: color 420ms ease, transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-scroll-timeline__marker {
  grid-column: 2;
  justify-self: center;
  width: 17px;
  height: 17px;
  margin-top: 0;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background: var(--timeline-marker-bg);
  outline: 1px solid var(--timeline-marker-outline);
  transform: scale(1);
  transition:
    background-color 360ms ease,
    outline-color 360ms ease,
    width 360ms ease,
    height 360ms ease,
    transform 540ms cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-scroll-timeline__item.is-current .our-group-scroll-timeline__year {
  transform: translateY(-2px);
}

.our-group-scroll-timeline__item.is-current .our-group-scroll-timeline__marker {
  width: 21px;
  height: 21px;
  border-width: 3px;
  transform: scale(1.24);
}

.our-group-scroll-timeline__entry {
  grid-column: 3;
  max-width: 520px;
  padding-top: 0;
  color: var(--timeline-text-color);
  transition: color 420ms ease, transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-scroll-timeline__item.is-current .our-group-scroll-timeline__entry {
  transform: translateY(-2px);
}

.our-group-scroll-timeline__entry p,
.our-group-scroll-timeline__entry ul {
  margin: 0;
}

.our-group-scroll-timeline__entry p,
.our-group-scroll-timeline__entry li {
  font-size: clamp(0.98rem, 0.45vw + 0.88rem, 1.08rem);
  line-height: 1.72;
}

.our-group-scroll-timeline__entry ul {
  display: grid;
  gap: 10px;
  padding: 0;
  list-style: none;
}

.our-group-scroll-timeline__entry li {
  position: relative;
  padding-left: 18px;
}

.our-group-scroll-timeline__entry li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.78em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--timeline-bullet-color);
  transform: translateY(-50%);
  transition: background-color 360ms ease;
}

.our-group-scroll-timeline__item:nth-child(even) .our-group-scroll-timeline__year {
  grid-column: 3;
  justify-self: start;
}

.our-group-scroll-timeline__item:nth-child(even) .our-group-scroll-timeline__entry {
  grid-column: 1;
  justify-self: end;
}

.our-group-scroll-timeline__end {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(54px, 6vw, 86px) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 40px);
  align-items: center;
  min-height: clamp(82px, 8vw, 122px);
  color: var(--timeline-text-color);
}

.our-group-scroll-timeline__end-dot {
  grid-column: 2;
  justify-self: center;
  width: 14px;
  height: 14px;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background: var(--timeline-marker-bg);
  outline: 1px solid var(--timeline-marker-outline);
  transition:
    background-color 360ms ease,
    outline-color 360ms ease,
    transform 540ms cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-scroll-timeline__end-label {
  grid-column: 3;
  justify-self: start;
  color: var(--timeline-text-color);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  transition: color 420ms ease, transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.our-group-scroll-timeline__end.is-reached .our-group-scroll-timeline__end-dot {
  transform: scale(1.28);
}

.our-group-scroll-timeline__end.is-reached .our-group-scroll-timeline__end-label {
  transform: translateX(3px);
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .our-group-scroll-timeline__list::after {
    transform: translateX(-50%) scaleY(1);
  }

  .our-group-scroll-timeline__viewport.is-scroll-ready .our-group-scroll-timeline__item,
  .our-group-scroll-timeline__viewport.is-scroll-ready .our-group-scroll-timeline__item.is-visible {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

@media (max-width: 760px) {
  .our-group-scroll-timeline {
    padding-top: clamp(58px, 12vw, 84px);
  }

  .our-group-scroll-timeline__head {
    margin-bottom: 42px;
  }

  .our-group-scroll-timeline__list {
    --timeline-year-column: clamp(72px, 22vw, 98px);
    --timeline-marker-column: 30px;
    --timeline-line-x: calc(var(--timeline-year-column) + (var(--timeline-marker-column) / 2));
    gap: 46px;
  }

  .our-group-scroll-timeline__item {
    grid-template-columns: var(--timeline-year-column) var(--timeline-marker-column) minmax(0, 1fr);
    gap: 12px;
  }

  .our-group-scroll-timeline__end {
    grid-template-columns: var(--timeline-year-column) var(--timeline-marker-column) minmax(0, 1fr);
    gap: 12px;
  }

  .our-group-scroll-timeline__year,
  .our-group-scroll-timeline__item:nth-child(even) .our-group-scroll-timeline__year {
    grid-column: 1;
    justify-self: end;
    font-size: clamp(2.35rem, 12vw, 3.55rem);
  }

  .our-group-scroll-timeline__marker {
    grid-column: 2;
    width: 15px;
    height: 15px;
    margin-top: clamp(8px, 2vw, 14px);
  }

  .our-group-scroll-timeline__end-dot {
    grid-column: 2;
  }

  .our-group-scroll-timeline__entry,
  .our-group-scroll-timeline__item:nth-child(even) .our-group-scroll-timeline__entry {
    grid-column: 3;
    justify-self: start;
    max-width: none;
    min-width: 0;
    padding-top: 0;
  }

  .our-group-scroll-timeline__entry p,
  .our-group-scroll-timeline__entry li {
    font-size: 0.96rem;
    line-height: 1.62;
  }

  .our-group-scroll-timeline__end-label {
    grid-column: 3;
  }
}

@media (max-width: 460px) {
  .our-group-scroll-timeline .cf-shell {
    width: min(100% - 36px, 1480px);
  }

  .our-group-scroll-timeline__list {
    --timeline-year-column: 64px;
    gap: 40px;
  }

  .our-group-scroll-timeline__year,
  .our-group-scroll-timeline__item:nth-child(even) .our-group-scroll-timeline__year {
    font-size: clamp(2rem, 10.5vw, 2.7rem);
  }

  .our-group-scroll-timeline__entry p,
  .our-group-scroll-timeline__entry li {
    font-size: 0.92rem;
  }
}


.cfx-team { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.cfx-member { padding: 24px 20px; border-radius: 18px; background: #fff; border: 1px solid var(--rm-line); text-align: center; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.cfx-member:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(17,29,51,0.09); border-color: rgba(0,163,180,0.3); }
.cfx-member__mono { width: 58px; height: 58px; margin: 0 auto 14px; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(120% 120% at 30% 20%, #234a82, #1c355e 60%, #142844); color: #fff; font-size: 1.05rem; font-weight: 600; letter-spacing: 0.04em; }
.cfx-member__name { margin: 0 0 4px; color: var(--rm-navy); font-size: 1rem; font-weight: 600; }
.cfx-member__role { margin: 0; color: var(--rm-text-soft); font-size: 0.82rem; line-height: 1.4; }


.cfx-contact { display: grid; grid-template-columns: 1.3fr 1fr; gap: clamp(28px, 4vw, 52px); align-items: center; padding: clamp(32px, 4vw, 50px); border-radius: 26px; background: radial-gradient(130% 130% at 0% 0%, #1f3c6a, #16335b 45%, #0f223f 100%); color: #eef3fb; }
.cfx-contact__d { margin: 0; color: rgba(238,243,251,0.82); font-size: 1.05rem; line-height: 1.6; max-width: 46ch; }
.cfx-contact__side { display: flex; flex-direction: column; gap: 18px; }
.cfx-contact__btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 54px; padding: 0 26px; border-radius: 14px; font: inherit; font-size: 0.98rem; font-weight: 500; text-decoration: none; transition: transform .2s ease, background-color .2s ease; }
.cfx-contact__btn--primary { background: var(--rm-teal); color: #fff; box-shadow: 0 14px 30px rgba(0,163,180,0.3); }
.cfx-contact__btn--primary:hover { transform: translateY(-2px); background: #109eac; }
.cfx-contact__info { display: flex; flex-direction: column; gap: 7px; font-size: 0.95rem; color: rgba(238,243,251,0.8); }
.cfx-contact__info a { color: #6fe3ec; text-decoration: none; }
.cfx-contact__info a:hover { text-decoration: underline; }

body.corporate-finance-page .cf-section--approach .cf-shell,
body.corporate-finance-page .cf-section--governance .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.corporate-finance-page .cf-section__head .cf-title,
body.corporate-finance-page .cf-governance__copy .cf-title,
body.corporate-finance-page .cf-approach-head .cf-title {
  font-size: clamp(1.6rem, 2.4vw, 2.45rem);
  line-height: 1.12;
  letter-spacing: -0.03em;
}

body.corporate-finance-page .cf-positioning-section__head,
body.corporate-finance-page .corporate-finance-opportunities__head {
  opacity: 1;
  transform: none;
  filter: none;
  clip-path: none;
}

body.corporate-finance-page .cf-approach-head {
  margin-bottom: clamp(12px, 1.8vw, 20px);
}

body.corporate-finance-page .corporate-finance-editorial__badge {
  justify-items: start;
  top: auto;
  right: 0;
  bottom: 24px;
  width: min(30%, 220px);
  min-width: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.corporate-finance-page .corporate-finance-editorial__badge-stack {
  display: grid;
  gap: 10px;
  width: min(100%, 196px);
}

body.corporate-finance-page .corporate-finance-editorial__badge-stack img {
  width: min(100%, 162px);
  height: auto;
}

body.corporate-finance-page .corporate-finance-editorial__badge-stack p {
  margin: 0;
  padding-left: 16px;
  border-left: 1px solid rgba(28, 53, 94, 0.14);
  color: rgba(28, 53, 94, 0.66);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.45;
}

body.corporate-finance-page .cf-governance {
  row-gap: clamp(22px, 2.6vw, 36px);
}

body.corporate-finance-page .cf-governance__copy {
  max-width: 900px;
  gap: 14px;
}

body.corporate-finance-page .cf-governance__statement {
  margin: 0;
  max-width: 64ch;
  color: rgba(28, 53, 94, 0.7);
  font-size: clamp(0.98rem, 1.02vw, 1.08rem);
  font-weight: 400;
  line-height: 1.72;
}

body.corporate-finance-page .cf-governance-card {
  grid-template-columns: 70px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  padding: 22px 26px;
}

body.corporate-finance-page .cf-governance-card__header {
  justify-content: flex-start;
}

body.corporate-finance-page .cf-governance-card__text {
  max-width: 34ch;
}

body.corporate-finance-page .corporate-finance-services__cards.home-expertise__cards {
  --home-card-progress: 1;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: clamp(14px, 1.1vw, 18px);
  margin-top: clamp(34px, 4rem, 58px);
  transform: none;
}

body.corporate-finance-page .corporate-finance-service-card {
  --home-card-progress: 1;
  min-height: clamp(288px, 23vw, 332px);
  transform: none;
  opacity: 1;
}

body.corporate-finance-page .corporate-finance-service-card .home-expertise-card__body {
  gap: 10px;
}

body.corporate-finance-page .corporate-finance-service-card p {
  max-width: none;
}

body.corporate-finance-page .cf-hero__lede p,
body.corporate-finance-page .redmed-rich-text p,
body.corporate-finance-page .cf-solution-modal__sections p {
  text-align: justify;
  text-justify: inter-word;
}

body.corporate-finance-page .corporate-finance-opportunities {
  position: relative;
  overflow: hidden;
}

body.corporate-finance-page .corporate-finance-opportunities::after {
  content: "";
  position: absolute;
  right: -78px;
  bottom: 24px;
  width: min(22vw, 240px);
  aspect-ratio: 1;
  border-radius: 42px 0 0 42px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0)),
    repeating-linear-gradient(135deg, rgba(28, 53, 94, 0.04), rgba(28, 53, 94, 0.04) 2px, transparent 2px, transparent 11px);
  opacity: 0.75;
  pointer-events: none;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.corporate-finance-page .corporate-finance-opportunities__head {
  margin-bottom: clamp(18px, 2vw, 28px);
}

body.corporate-finance-page .corporate-finance-opportunities .cf-title--strengths {
  font-size: clamp(2.05rem, 3.05vw, 3.18rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-title--strengths::after {
  width: 96px;
  height: 2px;
  margin-top: 12px;
}

body.corporate-finance-page .corporate-finance-opportunities__mosaic {
  position: relative;
  z-index: 1;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile {
  border-radius: 34px;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile--service {
  border-radius: 34px 142px 34px 34px;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__caption--opportunity {
  inset: 34px 38px 34px 38px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  gap: 26px;
  height: calc(100% - 68px);
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__caption--opportunity .cf-strength-tile__title {
  align-self: stretch;
  max-width: 17ch;
  margin-top: auto;
  font-size: clamp(2rem, 2.45vw, 3rem);
  line-height: 0.94;
  white-space: normal;
  text-wrap: balance;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile--expertise .cf-strength-tile__caption--opportunity .cf-strength-tile__title,
body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile--values .cf-strength-tile__caption--opportunity .cf-strength-tile__title {
  max-width: 19ch;
  font-size: clamp(1.9rem, 2.1vw, 2.55rem);
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__panel {
  inset: auto auto 28px 28px;
  max-width: min(72%, 560px);
  padding: 26px 28px 30px;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info {
  inset: 18px;
  width: auto;
  padding: 24px 28px 26px;
  border-radius: 32px 100px 32px 32px;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__panel .cf-strength-tile__title,
body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info .cf-strength-tile__title {
  max-width: none;
  font-size: clamp(1.72rem, 1.95vw, 2.3rem);
  white-space: normal;
  text-wrap: balance;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info-head {
  gap: 12px;
  margin-bottom: 12px;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__list,
body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info-list {
  gap: 12px;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__list li,
body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info-list li {
  font-size: 0.9rem;
  line-height: 1.54;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-opportunity-meta {
  margin: 0;
  max-width: 28ch;
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  line-height: 1.68;
  text-transform: uppercase;
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__caption--opportunity .cf-opportunity-meta {
  color: rgba(255, 255, 255, 0.92);
}

body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile--service .cf-strength-tile__caption--opportunity .cf-opportunity-meta {
  color: var(--rm-teal);
}

body.corporate-finance-page .corporate-finance-opportunities .cf-opportunity-meta--panel {
  max-width: none;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.7rem;
  letter-spacing: 0.16em;
}

body.corporate-finance-page .corporate-finance-opportunities .corporate-finance-opportunity-list li {
  color: rgba(28, 53, 94, 0.82);
}

body.corporate-finance-page .corporate-finance-team .cf-strengths__head {
  margin-bottom: clamp(18px, 2.4vw, 28px);
  display: grid;
  gap: 12px;
}

body.corporate-finance-page .corporate-finance-team .cf-strengths__head .cf-title {
  font-size: clamp(1.6rem, 2.4vw, 2.45rem);
  line-height: 1.12;
  letter-spacing: -0.03em;
}

body.corporate-finance-page .corporate-finance-team .cf-team-slider {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
}

body.corporate-finance-page .corporate-finance-team .cf-team-col {
  height: clamp(390px, 47vh, 500px);
}

body.corporate-finance-page .corporate-finance-team .cf-team-col__caption {
  top: 10%;
  left: 22px;
  right: 22px;
}

body.corporate-finance-page .corporate-finance-team .cf-team-col__role {
  margin-bottom: 8px;
  font-size: 0.68rem;
  letter-spacing: 0.16em;
}

body.corporate-finance-page .corporate-finance-team .cf-team-col__name {
  font-size: clamp(1.18rem, 1.45vw, 1.58rem);
  font-weight: 500;
}

body.corporate-finance-page .corporate-finance-team .cf-team-col__photo {
  display: grid;
  place-items: end center;
  padding: 0 24px clamp(24px, 4vh, 38px);
  height: 74%;
}

body.corporate-finance-page .corporate-finance-team .cf-team-col__photo img {
  width: min(100%, 212px);
  height: clamp(220px, 32vh, 300px);
  border-radius: 32px 32px 0 0;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background: linear-gradient(180deg, #fbfdfe 0%, #edf4f8 100%);
  box-shadow: 0 24px 46px -30px rgba(28, 53, 94, 0.32);
  object-fit: cover;
  object-position: center top;
  filter: grayscale(0.08) contrast(1.02);
}

body.corporate-finance-page .cf-team-col__photo--mono {
  display: grid;
  place-items: end center;
  padding: 0 24px clamp(24px, 4vh, 38px);
}

body.corporate-finance-page .cf-team-col__photo--mono span {
  display: grid;
  place-items: center;
  position: relative;
  width: min(100%, 212px);
  height: clamp(220px, 32vh, 300px);
  border-radius: 32px 32px 0 0;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background:
    radial-gradient(circle at top center, rgba(0, 163, 180, 0.12), transparent 42%),
    linear-gradient(180deg, #fbfdfe 0%, #edf4f8 100%);
  color: var(--rm-navy);
  font-size: clamp(2rem, 2.6vw, 2.8rem);
  font-weight: 600;
  letter-spacing: 0.14em;
  box-shadow:
    0 24px 46px -30px rgba(28, 53, 94, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
  transition:
    transform 800ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 700ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 320ms ease;
}

body.corporate-finance-page .cf-team-col__photo--mono span::before {
  content: "";
  position: absolute;
  inset: 18px 18px auto;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rm-teal), #5caee0 58%, rgba(92, 174, 224, 0.14) 100%);
}

body.corporate-finance-page .cf-team-col:hover .cf-team-col__photo img,
body.corporate-finance-page .cf-team-col:focus-visible .cf-team-col__photo img,
body.corporate-finance-page .cf-team-col.is-active .cf-team-col__photo img,
body.corporate-finance-page .cf-team-col:hover .cf-team-col__photo--mono span,
body.corporate-finance-page .cf-team-col:focus-visible .cf-team-col__photo--mono span,
body.corporate-finance-page .cf-team-col.is-active .cf-team-col__photo--mono span {
  transform: translateY(-10px);
  box-shadow:
    0 30px 54px -28px rgba(28, 53, 94, 0.42);
  border-color: rgba(0, 163, 180, 0.24);
  filter: grayscale(0) contrast(1.03);
}

body.corporate-finance-page .team-modal__media-mono {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 28px;
}

body.corporate-finance-page .team-modal__media-mono span {
  display: grid;
  place-items: center;
  position: relative;
  width: min(100%, 250px);
  height: min(100%, 320px);
  border-radius: 42px 42px 0 0;
  border: 1px solid rgba(28, 53, 94, 0.08);
  background:
    radial-gradient(circle at top center, rgba(0, 163, 180, 0.14), transparent 42%),
    linear-gradient(180deg, #fbfdfe 0%, #edf4f8 100%);
  color: var(--rm-navy);
  font-size: clamp(3rem, 6vw, 4.2rem);
  font-weight: 600;
  letter-spacing: 0.1em;
  box-shadow:
    0 30px 60px -24px rgba(28, 53, 94, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

body.corporate-finance-page .team-modal__media-mono span::before {
  content: "";
  position: absolute;
  inset: 18px 18px auto;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--rm-teal), #5caee0 58%, rgba(92, 174, 224, 0.14) 100%);
}

@media (max-width: 980px) {
  .our-group-platform-band {
    padding-top: clamp(72px, 9vw, 108px);
  }
  .our-group-platform-band__tree {
    width: 100%;
    min-height: 0;
    aspect-ratio: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 22px;
    max-width: 720px;
    justify-items: center;
  }
  .our-group-platform-band__tree::before {
    inset: 0;
    border-radius: 36px;
    background:
      radial-gradient(circle at 50% 10%, rgba(0, 163, 180, 0.12), transparent 24%),
      linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0));
  }
  .our-group-platform-band__tree::after {
    display: none;
  }
  .our-group-platform-band__lines {
    display: none;
  }
  .our-group-platform-band__brand-node,
  .our-group-platform-band__node,
  .our-group-platform-band__node:hover,
  .our-group-platform-band__node:focus-visible {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    transform: none;
  }
  .our-group-platform-band__brand-node {
    grid-column: 1 / -1;
    margin-bottom: 8px;
  }
  .our-group-platform-band__brand-wordmark {
    width: min(240px, 46vw);
  }
  .our-group-platform-band__node {
    max-width: 240px;
  }
  .our-group-platform-band__node--re {
    grid-column: 1 / -1;
    max-width: 220px;
    justify-self: center;
  }
  body.our-group-page .our-group-values__cards.home-expertise__cards {
    grid-template-columns: 1fr;
    max-width: 560px;
    margin-inline: auto;
  }
  .our-group-founder__inner {
    grid-template-columns: 1fr;
    gap: 44px;
  }
  .our-group-founder__portrait {
    max-width: 440px;
  }
  .our-group-founder__title {
    max-width: 760px;
    font-size: 2.58rem;
  }
  body.corporate-finance-page .cf-section--approach .cf-shell,
  body.corporate-finance-page .cf-section--governance .cf-shell {
    width: min(100%, calc(100% - 48px));
  }
  body.corporate-finance-page .cf-governance-card {
    grid-template-columns: 58px minmax(0, 1fr);
    padding: 20px 22px;
  }
  body.corporate-finance-page .corporate-finance-team .cf-team-col {
    height: clamp(360px, 46vh, 460px);
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-shell {
    width: min(100% - 48px, 1180px);
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strengths__mosaic,
  body.corporate-finance-page .corporate-finance-opportunities .cf-strengths__mosaic.is-expertise-active,
  body.corporate-finance-page .corporate-finance-opportunities .cf-strengths__mosaic.is-values-active {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile--service {
    grid-row: auto;
    min-height: 520px;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile:not(.cf-strength-tile--service) {
    min-height: 340px;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__caption--opportunity {
    inset: 24px;
    height: calc(100% - 48px);
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info {
    width: auto;
  }
  body.corporate-finance-page .corporate-finance-team .cf-team-col__photo,
  body.corporate-finance-page .cf-team-col__photo--mono {
    padding-inline: 18px;
  }
  body.corporate-finance-page .corporate-finance-team .cf-team-col__photo img,
  body.corporate-finance-page .cf-team-col__photo--mono span {
    width: min(100%, 184px);
    height: clamp(204px, 28vh, 264px);
  }
  body.corporate-finance-page .cf-team-col__photo--mono span {
    font-size: clamp(1.7rem, 4vw, 2.2rem);
  }
  .cfx-axes, .cfx-solutions { grid-template-columns: 1fr 1fr; }
  .cfx-deals { grid-template-columns: 1fr; }
  .cfx-team { grid-template-columns: repeat(3, 1fr); }
  .cfx-contact { grid-template-columns: 1fr; }
  body.our-group-page .our-group-platform { grid-template-columns: 1fr 1fr; }
  .cards-container {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .timeline-details {
    width: min(100%, 820px);
    margin: 0 auto;
  }
  .timeline-arc__content {
    width: min(100%, 640px);
  }
  .timeline-arc__list {
    max-width: 560px;
    margin-inline: auto;
  }
  .timeline-arc__list li:only-child {
    max-width: none;
    justify-self: center;
  }
}
@media (max-width: 620px) {
  .our-group-platform-band__shell {
    gap: 34px;
  }
  .our-group-platform-band__title {
    font-size: clamp(2.3rem, 10.8vw, 3.8rem);
  }
  .our-group-platform-band__copy {
    font-size: 0.98rem;
    line-height: 1.62;
  }
  .our-group-platform-band__tree {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .our-group-platform-band__node--re {
    grid-column: auto;
    max-width: none;
  }
  .our-group-platform-band__brand-wordmark {
    width: min(208px, 62vw);
  }
  body.our-group-page .our-group-platform-band .home-expertise-card__icon {
    width: 72px;
    height: 72px;
  }
  .our-group-founder {
    padding-inline: 22px;
  }
  .our-group-founder::before {
    font-size: 4.8rem;
  }
  .our-group-founder::after {
    display: none;
  }
  .our-group-founder__portrait::before {
    inset: 14px -12px -16px 14px;
  }
  .our-group-founder__title {
    font-size: 2.1rem;
    line-height: 1.06;
  }
  .our-group-founder__message::before {
    font-size: 4.8rem;
    top: -0.34em;
  }
  .our-group-founder__lead {
    font-size: 1.22rem !important;
  }
  .our-group-founder__message blockquote {
    font-size: 1.12rem;
  }
  body.corporate-finance-page .cf-governance__statement {
    font-size: 1rem;
  }
  body.corporate-finance-page .corporate-finance-opportunities::after {
    display: none;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-title--strengths {
    font-size: clamp(2rem, 10vw, 2.8rem);
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-title--strengths::after {
    width: 92px;
    margin-top: 12px;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile,
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile--service,
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile:not(.cf-strength-tile--service) {
    min-height: 0;
    border-radius: 28px;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__panel,
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info {
    inset: auto 18px 18px 18px;
    width: auto;
    max-width: none;
    padding: 22px 18px 22px;
    gap: 18px;
    border-radius: 28px 72px 28px 28px;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__info {
    inset: 16px;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__caption--opportunity {
    inset: 26px;
    height: calc(100% - 52px);
    gap: 18px;
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-strength-tile__caption--opportunity .cf-strength-tile__title {
    max-width: 19ch;
    font-size: clamp(1.85rem, 8vw, 2.45rem);
  }
  body.corporate-finance-page .corporate-finance-opportunities .cf-opportunity-meta {
    max-width: 30ch;
    font-size: 0.7rem;
    letter-spacing: 0.14em;
  }
  body.corporate-finance-page .corporate-finance-editorial__badge {
    right: 0;
    bottom: 18px;
    width: min(48%, 176px);
  }
  body.corporate-finance-page .corporate-finance-editorial__badge-stack p {
    font-size: 0.76rem;
  }
  body.corporate-finance-page .corporate-finance-team .cf-team-col {
    height: clamp(340px, 44vh, 420px);
  }
  body.corporate-finance-page .corporate-finance-team .cf-team-col__photo,
  body.corporate-finance-page .cf-team-col__photo--mono {
    padding-inline: 14px;
    padding-bottom: 28px;
  }
  body.corporate-finance-page .corporate-finance-team .cf-team-col__photo img,
  body.corporate-finance-page .cf-team-col__photo--mono span {
    width: min(100%, 160px);
    height: 198px;
  }
  body.corporate-finance-page .cf-team-col__photo--mono span {
    font-size: 1.55rem;
  }
  body.corporate-finance-page .team-modal__media-mono span {
    width: min(100%, 210px);
    height: min(100%, 260px);
    font-size: clamp(2.5rem, 14vw, 3.5rem);
  }
  .our-group-platform-band__node strong {
    font-size: 1.06rem;
  }
  .cfx-axes, .cfx-solutions { grid-template-columns: 1fr; }
  .cfx-team { grid-template-columns: repeat(2, 1fr); }
  body.our-group-page .our-group-platform { grid-template-columns: 1fr; }
  .cards-container {
    --radius: clamp(112px, 30vw, 132px);
    --label-size: 74px;
    gap: 28px;
  }
  .cards li > label {
    font-size: 0.7rem;
    letter-spacing: 0.04em;
  }
  .cards li:has(input:checked) > label {
    transform: translate(-50%, -50%) translateY(calc(var(--radius) * -1));
  }
  .cards li > label span {
    bottom: calc(50% + 24px);
    padding-bottom: 4px;
  }
  .cards li > label::before {
    width: 8px;
    height: 8px;
  }
  .cards li > label::after {
    height: 16px;
  }
  .timeline-details {
    min-height: 560px;
  }
  .timeline-details::before {
    top: 0;
    right: 0;
    bottom: auto;
    width: auto;
    height: 1px;
    background: linear-gradient(90deg, rgba(49, 184, 255, 0), rgba(49, 184, 255, 0.54), rgba(49, 184, 255, 0));
  }
  .timeline-card {
    align-content: start;
    padding-top: 24px;
    padding-left: 0;
  }
  .timeline-card h3 {
    font-size: clamp(2.7rem, 12vw, 4rem);
  }
  .timeline-card__list {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .timeline-card__list li {
    font-size: 0.95rem;
    line-height: 1.6;
  }
  .timeline-arc__years label {
    width: 44px;
    height: 28px;
  }
  .timeline-arc__years label span {
    font-size: 0.72rem;
    letter-spacing: 0.03em;
  }
  .timeline-arc__years label::before {
    width: 11px;
    height: 11px;
  }
  .timeline-arc__content {
    width: min(100%, 92vw);
  }
  .timeline-arc__card h3 {
    font-size: clamp(2.8rem, 15vw, 4.4rem);
  }
  .timeline-arc__list {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .timeline-arc__list li {
    font-size: 0.94rem;
    line-height: 1.58;
  }
  .timeline-arc__content {
    margin-top: clamp(-110px, -13vw, -56px);
  }
}

@media (min-width: 860px) {
  .timeline-card__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


.cfx-photo-badge { position: absolute; left: -14px; bottom: 18px; z-index: 3; background: rgba(255,255,255,0.97); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-radius: 20px 20px 20px 6px; padding: 14px 20px; box-shadow: 0 18px 40px rgba(17,29,51,0.18); }
.cfx-photo-badge strong { display: block; color: var(--rm-navy); font-size: 1.6rem; font-weight: 600; letter-spacing: -0.02em; line-height: 1; }
.cfx-photo-badge strong span { color: var(--rm-teal); }
.cfx-photo-badge em { display: block; margin-top: 4px; color: var(--rm-text-soft); font-style: normal; font-size: 0.78rem; }
.cfx-team--side { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
.cfx-team--side .cfx-member { padding: 18px 14px; }
.cfx-team--side .cfx-member__mono { width: 48px; height: 48px; margin-bottom: 10px; font-size: 0.95rem; }
.cfx-sectors--side { align-content: flex-start; }
@media (max-width: 980px){ .cfx-team--side{ grid-template-columns: repeat(2,1fr) !important; } }
.cfx-team-banner { margin: 0 0 20px; }
.cfx-team-banner img { width: 100%; height: clamp(220px, 30vw, 360px); object-fit: cover; border-radius: 24px; box-shadow: 0 18px 50px rgba(17,29,51,0.12); }


.fd-body { padding: clamp(22px,3vw,40px); display: grid; gap: clamp(14px,1.8vw,20px); background: #f6f9fc; }
.fd-grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: clamp(14px,1.8vw,20px); }
.fd-panel { background: #fff; border: 1px solid var(--rm-line); border-radius: 18px; padding: clamp(18px,2.2vw,26px); }
.fd-perfrow { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--rm-line); }
.fd-perfrow span { color: var(--rm-text-soft); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.fd-perfrow strong { font-size: 1.5rem; font-weight: 700; font-variant-numeric: tabular-nums; display: inline-flex; align-items: center; gap: 4px; }
.fd-perfrow strong.is-up { color: #0f9d6a; }
.fd-perfrow strong.is-down { color: #d6453f; }
.fd-srri { display: grid; grid-template-columns: repeat(7,1fr); gap: 6px; margin-top: 4px; }
.fd-srri__seg { height: 46px; display: grid; place-items: center; border-radius: 9px; background: rgba(28,53,94,.06); color: rgba(28,53,94,.4); font-weight: 700; font-size: 1rem; transition: transform .2s ease; }
.fd-srri__seg.is-on { background: var(--rm-teal); color: #fff; box-shadow: 0 8px 18px rgba(0,163,180,.28); transform: translateY(-2px); }
.fd-srri__legend { display: flex; justify-content: space-between; margin-top: 8px; color: var(--rm-text-soft); font-size: .72rem; }
.fd-risk-note { margin: 14px 0 0; color: var(--rm-text-soft); font-size: .85rem; line-height: 1.5; }
.fd-risk-note strong { color: var(--rm-navy); }
.fd-specs { display: grid; grid-template-columns: repeat(4,1fr); gap: 1px; background: var(--rm-line); border: 1px solid var(--rm-line); border-radius: 14px; overflow: hidden; }
.fd-spec { background: #fff; padding: 15px 18px; margin: 0; }
.fd-spec dt { color: var(--rm-text-soft); font-size: .66rem; letter-spacing: .06em; text-transform: uppercase; }
.fd-spec dd { margin: 6px 0 0; color: var(--rm-navy); font-size: .98rem; font-weight: 600; }
@media (max-width: 760px){ .fd-grid{ grid-template-columns: 1fr; } .fd-specs{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 440px){ .fd-specs{ grid-template-columns: 1fr; } .fd-srri__seg{ height: 38px; font-size: .85rem; } }


body.corporate-finance-page .corporate-finance-team .cf-team-col__photo {
  display: block;
  padding: 0;
  height: 78%;
}
body.corporate-finance-page .corporate-finance-team .cf-team-col__photo img {
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  object-fit: contain;
  object-position: bottom center;
  filter: grayscale(1) contrast(1.03);
}
body.corporate-finance-page .corporate-finance-team .cf-team-col:hover .cf-team-col__photo img,
body.corporate-finance-page .corporate-finance-team .cf-team-col:focus-visible .cf-team-col__photo img,
body.corporate-finance-page .corporate-finance-team .cf-team-col.is-active .cf-team-col__photo img {
  transform: none;
  border-color: transparent;
  box-shadow: none;
  filter: grayscale(0.12) contrast(1.04);
}


body.corporate-finance-page .corporate-finance-team {
  padding-bottom: clamp(104px, 12vw, 176px);
}


body.corporate-finance-page .corporate-finance-service-card,
body.corporate-finance-page .corporate-finance-service-card:hover,
body.corporate-finance-page .corporate-finance-service-card:focus-within {
  box-shadow: none;
}


.cf-sectors-section {
  position: relative;
  overflow: visible;
  background:
    radial-gradient(circle at 12% 16%, rgba(0, 163, 180, 0.18), transparent 30%),
    radial-gradient(circle at 88% 88%, rgba(0, 163, 180, 0.12), transparent 32%),
    linear-gradient(160deg, #15335a 0%, #102a4c 55%, #0d2342 100%);
  color: #ffffff;
}

.cf-sectors-section .cf-kicker {
  color: var(--rm-teal);
}

.cf-sectors-section .cf-title {
  color: #ffffff;
}

.cf-sectors {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(26px, 3vw, 42px) clamp(16px, 2vw, 28px);
}

.cf-sector {
  display: flex;
  align-items: center;
  gap: 14px;
}

.cf-sector__icon {
  flex: none;
  display: grid;
  place-items: center;
  width: clamp(54px, 5vw, 66px);
  height: clamp(54px, 5vw, 66px);
  border-radius: 50%;
  background: var(--rm-teal);
  box-shadow: 0 16px 32px -16px rgba(0, 163, 180, 0.75);
  transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-sector__icon svg {
  width: 52%;
  height: 52%;
  fill: none;
  stroke: #ffffff;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cf-sector__label {
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(0.95rem, 1vw, 1.05rem);
  font-weight: 500;
  line-height: 1.3;
}

.cf-sector:hover .cf-sector__icon {
  transform: translateY(-4px) scale(1.05);
}

@media (max-width: 1040px) {
  .cf-sectors { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .cf-sectors { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 16px; }
}

@media (max-width: 400px) {
  .cf-sectors { grid-template-columns: 1fr; }
}


.cf-references-section {
  position: relative;
  background:
    radial-gradient(circle at 10% 0%, rgba(0, 163, 180, 0.08), transparent 28%),
    linear-gradient(180deg, #f7fafc 0%, #f4f7f9 100%);
}

.cf-references-section--preview {
  padding-top: clamp(84px, 8vw, 128px);
  padding-bottom: clamp(76px, 8vw, 116px);
}

.cf-references-section--all {
  padding-top: clamp(54px, 5vw, 82px);
  padding-bottom: clamp(96px, 9vw, 148px);
}

.cf-references-section--all .cf-shell {
  width: min(100% - 48px, 1280px);
}

.cf-references-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr) minmax(130px, 170px);
  grid-template-areas:
    "search sector year";
  gap: 16px;
  align-items: end;
  margin-bottom: clamp(22px, 2.6vw, 34px);
  padding: 18px;
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.88);
}

.cf-references-search,
.cf-references-sector,
.cf-references-year {
  position: relative;
  display: grid;
  gap: 7px;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.cf-references-search {
  grid-area: search;
}

.cf-references-sector {
  grid-area: sector;
}

.cf-references-year {
  grid-area: year;
}

.cf-references-search input,
.cf-references-sector__button,
.cf-references-year select {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(28, 53, 94, 0.14);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  color: #1c355e;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 500;
  letter-spacing: 0;
  outline: none;
  text-transform: none;
}

.cf-references-search input {
  padding: 0 18px 0 44px;
  background:
    url("data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%2024%2024%27%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20fill%3D%27none%27%20stroke%3D%27%231c355e%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2711%27%20r%3D%276.5%27/%3E%3Cpath%20d%3D%27m16%2016%204.5%204.5%27/%3E%3C/svg%3E") 16px 50% / 17px 17px no-repeat,
    rgba(255, 255, 255, 0.94);
}

.cf-references-year select {
  padding: 0 16px;
  cursor: pointer;
}

.cf-references-search input:focus,
.cf-references-sector__button:focus-visible,
.cf-references-year select:focus {
  border-color: rgba(0, 163, 180, 0.58);
}

.cf-references-sector__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 0 15px 0 18px;
  cursor: pointer;
  text-align: left;
}

.cf-references-sector__button svg {
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 180ms ease;
}

.cf-references-sector.is-open .cf-references-sector__button svg {
  transform: rotate(180deg);
}

.cf-references-sector__menu {
  position: absolute;
  z-index: 24;
  top: calc(100% + 8px);
  right: 0;
  left: 0;
  padding: 10px;
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 22px 60px -34px rgba(20, 40, 68, 0.44);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  backdrop-filter: blur(18px) saturate(1.15);
}

.cf-references-sector__menu[hidden] {
  display: none;
}

.cf-references-sector__search {
  display: block;
}

.cf-references-sector__search input {
  width: 100%;
  min-height: 38px;
  padding: 0 12px 0 36px;
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: 12px;
  background:
    url("data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%2024%2024%27%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20fill%3D%27none%27%20stroke%3D%27%231c355e%27%20stroke-width%3D%272.2%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2711%27%20r%3D%276.5%27/%3E%3Cpath%20d%3D%27m16%2016%204.5%204.5%27/%3E%3C/svg%3E") 12px 50% / 15px 15px no-repeat,
    rgba(247, 250, 252, 0.95);
  color: #1c355e;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 500;
  letter-spacing: 0;
  outline: none;
  text-transform: none;
}

.cf-references-sector__search input:focus {
  border-color: rgba(0, 163, 180, 0.5);
}

.cf-references-sector__options {
  display: grid;
  gap: 4px;
  max-height: 226px;
  margin-top: 8px;
  overflow: auto;
  padding-right: 2px;
}

.cf-references-sector__option {
  width: 100%;
  min-height: 36px;
  padding: 8px 11px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: rgba(28, 53, 94, 0.76);
  cursor: pointer;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.25;
  text-align: left;
  text-transform: none;
}

.cf-references-sector__option:hover,
.cf-references-sector__option:focus-visible,
.cf-references-sector__option.is-active {
  background: rgba(0, 163, 180, 0.12);
  color: #007d95;
  outline: none;
}

.cf-references-filters {
  grid-area: filters;
  display: flex;
  flex-wrap: nowrap;
  gap: 7px;
  align-items: center;
  overflow-x: auto;
  padding: 2px 2px 6px;
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 163, 180, 0.5) rgba(28, 53, 94, 0.08);
}

.cf-references-filters::-webkit-scrollbar {
  height: 6px;
}

.cf-references-filters::-webkit-scrollbar-track {
  background: rgba(28, 53, 94, 0.08);
  border-radius: 999px;
}

.cf-references-filters::-webkit-scrollbar-thumb {
  background: rgba(0, 163, 180, 0.52);
  border-radius: 999px;
}

.cf-references-filter {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 999px;
  background: rgba(247, 250, 252, 0.88);
  color: rgba(28, 53, 94, 0.74);
  cursor: pointer;
  font-size: 0.66rem;
  font-weight: 650;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

.cf-references-filter:hover,
.cf-references-filter:focus-visible,
.cf-references-filter.is-active {
  border-color: rgba(0, 163, 180, 0.4);
  background: var(--rm-teal);
  color: #ffffff;
  outline: none;
}

.cf-references-filter:hover,
.cf-references-filter:focus-visible {
  transform: translateY(-1px);
}

.cf-references-status {
  min-height: 20px;
  margin: -18px 0 20px;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.8rem;
  font-weight: 600;
}


.cf-references-hero {
  padding: clamp(132px, 12vw, 184px) 0 clamp(58px, 6vw, 86px);
  background:
    radial-gradient(circle at 16% 18%, rgba(0, 163, 180, 0.12), transparent 30%),
    linear-gradient(145deg, #102848 0%, #193a62 58%, #0f253f 100%);
  color: #ffffff;
}

.cf-references-hero .cf-title,
.cf-references-hero .cf-hero__eyebrow {
  color: #ffffff;
}

.cf-references-grid {
  display: grid;
  gap: clamp(18px, 1.7vw, 26px);
  margin-top: clamp(38px, 4vw, 64px);
}

.cf-references-grid--preview {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cf-references-grid--all {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 0;
}

.cf-reference-card {
  display: grid;
  grid-template-rows: auto auto auto 96px 1fr;
  align-items: start;
  min-height: 430px;
  padding: 28px 30px 30px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-bottom: 3px solid var(--rm-navy);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.96);
  text-align: center;
  transition:
    border-color 300ms ease,
    box-shadow 360ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-reference-card.is-hidden {
  display: none;
}

.cf-reference-card:hover,
.cf-reference-card:focus-within {
  border-color: rgba(0, 163, 180, 0.45);
  border-bottom-color: var(--rm-teal);
  transform: translateY(-10px) scale(1.018);
  box-shadow: 0 30px 60px -22px rgba(20, 40, 68, 0.4);
}

.cf-reference-card__sector {
  justify-self: center;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  margin: 0;
  padding: 8px 16px;
  border-radius: 999px;
  background: var(--rm-teal);
  color: #ffffff;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
}

.cf-reference-card__year {
  margin: 22px 0 0;
  color: rgba(28, 53, 94, 0.42);
  font-size: 1.2rem;
  font-weight: 600;
}

.cf-reference-card__title {
  margin: 26px 0 0;
  color: rgba(28, 53, 94, 0.84);
  font-size: clamp(1.12rem, 1.35vw, 1.42rem);
  font-weight: 600;
  line-height: 1.18;
}

.cf-reference-card__logo {
  display: grid;
  place-items: center;
  margin-top: 22px;
  min-height: 96px;
}

.cf-reference-card__logo img {
  max-width: min(100%, 180px);
  max-height: 86px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: 0.78;
  transition:
    filter 320ms ease,
    opacity 320ms ease,
    transform 460ms cubic-bezier(0.22, 1, 0.36, 1);
}

.cf-reference-card:hover .cf-reference-card__logo img,
.cf-reference-card:focus-within .cf-reference-card__logo img {
  filter: grayscale(0);
  opacity: 1;
  transform: scale(1.08);
}

.cf-reference-card__sector {
  transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 320ms ease;
}

.cf-reference-card:hover .cf-reference-card__sector,
.cf-reference-card:focus-within .cf-reference-card__sector {
  transform: translateY(-2px) scale(1.04);
  box-shadow: 0 10px 22px -10px rgba(0, 163, 180, 0.7);
}

.cf-reference-card__description {
  margin: 20px 0 0;
  padding-top: 20px;
  border-top: 1px dashed rgba(28, 53, 94, 0.16);
  color: rgba(28, 53, 94, 0.76);
  font-size: 0.92rem;
  font-weight: 500;
  line-height: 1.72;
}

.cf-references-actions {
  display: flex;
  justify-content: center;
  margin-top: clamp(38px, 4vw, 58px);
}

.cf-references-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 34px;
  border-radius: 999px;
  background: var(--rm-teal);
  color: #ffffff;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 220ms ease, transform 220ms ease;
}

.cf-references-button:hover,
.cf-references-button:focus-visible {
  background: #0b8f9a;
  transform: translateY(-2px);
  outline: none;
}

@media (max-width: 1180px) {
  .cf-references-grid--preview,
  .cf-references-grid--all {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cf-references-toolbar {
    grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(130px, 170px);
    grid-template-areas:
      "search sector year";
  }

  .cf-references-year {
    grid-column: auto;
  }
}

@media (max-width: 820px) {
  .cf-references-toolbar {
    grid-template-columns: 1fr;
    grid-template-areas:
      "search"
      "sector"
      "year";
    padding: 12px;
    border-radius: 18px;
  }

  .cf-references-sector__menu {
    position: static;
    margin-top: 0;
  }

  .cf-references-grid--preview,
  .cf-references-grid--all {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .cf-references-grid--preview,
  .cf-references-grid--all {
    grid-template-columns: 1fr;
  }
}


body.contact-page .contact-hero .cf-hero__layout {
  min-height: clamp(520px, 74vh, 720px);
  align-items: end;
  padding-bottom: clamp(72px, 9vw, 128px);
}

body.contact-page .contact-hero .cf-hero__title {
  max-width: 9ch;
}

body.contact-page .contact-hero .cf-hero__lede {
  max-width: 58ch;
}

body.contact-page .contact-section {
  position: relative;
  padding: clamp(72px, 8vw, 116px) clamp(20px, 5vw, 64px);
  background: #ffffff;
}

body.contact-page .contact-section--form {
  background: #ffffff;
}

body.contact-page .contact-section--offices {
  background: #f7fafc;
  padding-bottom: clamp(180px, 18vw, 260px);
}

body.contact-page .contact-shell {
  width: min(100%, 1180px);
  margin: 0 auto;
}

body.contact-page .contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: start;
}

body.contact-page .contact-intro {
  position: sticky;
  top: 126px;
  display: grid;
  gap: 18px;
}

body.contact-page .contact-eyebrow {
  margin: 0;
  color: var(--rm-teal);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body.contact-page .contact-intro h3,
body.contact-page .contact-section__head h3 {
  margin: 0;
  color: var(--rm-navy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.25rem, 4vw, 4.5rem);
  font-weight: 400;
  line-height: 1;
}

body.contact-page .contact-intro p {
  margin: 0;
  max-width: 42ch;
  color: rgba(28, 53, 94, 0.68);
  font-size: 1.04rem;
  line-height: 1.72;
}

body.contact-page .contact-direct-link {
  width: fit-content;
  color: var(--rm-navy);
  font-size: 1.02rem;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 2px solid var(--rm-teal);
}

body.contact-page .contact-form {
  display: grid;
  gap: 26px;
  padding: clamp(26px, 4vw, 42px);
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 28px;
  background: #ffffff;
  --reveal-y: 52px;
  --reveal-scale: 0.96;
  --reveal-blur: 14px;
}

body.contact-page .contact-form,
body.contact-page .contact-form * {
  box-sizing: border-box;
}

body.contact-page .contact-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 20px;
}

body.contact-page .contact-form label,
body.contact-page .contact-form__field {
  display: grid;
  gap: 9px;
  min-width: 0;
}

body.contact-page .contact-form label span:first-child,
body.contact-page .contact-form__field > span:first-child {
  color: rgba(28, 53, 94, 0.62);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.contact-page .contact-form input:not([type="checkbox"]),
body.contact-page .contact-form textarea {
  width: 100%;
  border: 1px solid rgba(28, 53, 94, 0.22);
  border-radius: 16px;
  background: #ffffff;
  color: var(--rm-navy);
  font: inherit;
  font-size: 1rem;
  line-height: 1.4;
  outline: none;
  transition: border-color 220ms ease, box-shadow 220ms ease;
}

body.contact-page .contact-form input:not([type="checkbox"]) {
  min-height: 52px;
  padding: 0 16px;
}

body.contact-page .contact-form textarea {
  min-height: 160px;
  resize: vertical;
  padding: 15px 16px;
}

body.contact-page .contact-form input:focus,
body.contact-page .contact-form textarea:focus {
  border-color: rgba(0, 163, 180, 0.62);
}

body.contact-page .contact-form__consent {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

body.contact-page .contact-form__consent input {
  width: 18px;
  height: 18px;
  margin-top: 3px;
  accent-color: var(--rm-teal);
}

body.contact-page .contact-form__consent span {
  color: rgba(28, 53, 94, 0.7);
  font-size: 0.9rem;
  line-height: 1.65;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 400;
}

body.contact-page .contact-form__notice {
  margin: 0;
  color: rgba(28, 53, 94, 0.58);
  font-size: 0.84rem;
  line-height: 1.68;
}

body.contact-page .contact-form__notice a {
  color: var(--rm-navy);
  font-weight: 700;
  text-decoration: none;
}

body.contact-page .contact-form__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

body.contact-page .contact-form__actions button,
body.contact-page .contact-form__actions input[type="submit"],
body.contact-page .contact-form__actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  border-radius: 999px;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
}

body.contact-page .contact-form__actions button,
body.contact-page .contact-form__actions input[type="submit"] {
  padding: 0 28px;
  border: 0;
  background: var(--rm-teal);
  color: #ffffff;
  cursor: pointer;
  transition: transform 220ms cubic-bezier(0.22, 1, 0.36, 1), background-color 220ms ease;
}

body.contact-page .contact-form__actions button:hover,
body.contact-page .contact-form__actions input[type="submit"]:hover {
  transform: translateY(-2px);
  background: #008c98;
}

body.contact-page .contact-form__actions a {
  color: rgba(28, 53, 94, 0.7);
}

body.contact-page .contact-section__head {
  display: grid;
  justify-items: center;
  gap: 14px;
  margin-bottom: clamp(34px, 5vw, 58px);
  text-align: center;
}

body.contact-page .contact-office-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

body.contact-page .contact-office-card {
  display: flex;
  flex-direction: column;
  min-height: 360px;
  padding: 28px 24px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 26px;
  background: #ffffff;
  transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1), border-color 260ms ease;
}

body.contact-page .contact-office-card:hover {
  transform: translateY(-6px);
  border-color: rgba(0, 163, 180, 0.4);
}

body.contact-page .contact-office-card h4 {
  margin: 0 0 24px;
  color: var(--rm-navy);
  font-size: clamp(1.22rem, 1.45vw, 1.55rem);
  font-weight: 400;
  line-height: 1.15;
}

body.contact-page .contact-office-card dl,
body.contact-page .contact-office-card dd {
  margin: 0;
}

body.contact-page .contact-office-card dl {
  display: grid;
  gap: 9px;
}

body.contact-page .contact-office-card dt {
  margin-top: 12px;
  color: var(--rm-teal);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body.contact-page .contact-office-card dt:first-child {
  margin-top: 0;
}

body.contact-page .contact-office-card dd {
  color: rgba(28, 53, 94, 0.68);
  font-size: 0.94rem;
  line-height: 1.55;
}

body.contact-page .contact-office-card a {
  color: var(--rm-navy);
  font-weight: 700;
  text-decoration: none;
}


body.error-page {
  background: #f7fafc;
}

body.error-page .site-main.site-main--flush {
  padding-bottom: clamp(140px, 14vw, 210px) !important;
}

section.error-page {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  min-height: clamp(570px, calc(100svh - 116px), 820px);
  overflow: hidden;
  padding: clamp(56px, 8vw, 112px) clamp(24px, 5vw, 72px);
  background:
    linear-gradient(135deg, rgba(246, 250, 253, 0.96), rgba(255, 255, 255, 0.88)),
    #ffffff;
}

.error-page__background,
.error-page__grid,
.error-page__orb {
  position: absolute;
  pointer-events: none;
}

.error-page__background {
  inset: 0;
  z-index: -1;
  overflow: hidden;
}

.error-page__grid {
  inset: -20%;
  opacity: 0.48;
  background-image:
    linear-gradient(rgba(28, 53, 94, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(28, 53, 94, 0.045) 1px, transparent 1px);
  background-size: 52px 52px;
  transform: perspective(780px) rotateX(64deg) translateY(27%);
  transform-origin: center bottom;
  -webkit-mask-image: radial-gradient(ellipse at center, #000 5%, transparent 70%);
          mask-image: radial-gradient(ellipse at center, #000 5%, transparent 70%);
}

.error-page__orb {
  width: clamp(260px, 34vw, 620px);
  aspect-ratio: 1;
  border-radius: 50%;
  filter: blur(2px);
}

.error-page__orb--one {
  top: -35%;
  right: -10%;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.16), rgba(0, 163, 180, 0) 70%);
}

.error-page__orb--two {
  bottom: -45%;
  left: -8%;
  background: radial-gradient(circle, rgba(28, 53, 94, 0.16), rgba(28, 53, 94, 0) 70%);
}

.error-page__shell {
  position: relative;
  width: min(1280px, 100%);
  display: grid;
  grid-template-columns: minmax(280px, 0.82fr) minmax(420px, 1fr);
  align-items: center;
  gap: clamp(24px, 5vw, 84px);
}

.error-page__code {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  color: var(--rm-navy);
  font-size: clamp(10rem, 20vw, 22rem);
  font-weight: 700;
  line-height: 0.78;
  letter-spacing: -0.11em;
  user-select: none;
}

.error-page__code::before {
  content: "";
  position: absolute;
  width: min(72%, 290px);
  aspect-ratio: 1;
  border: 1px solid rgba(0, 163, 180, 0.24);
  border-radius: 50%;
  box-shadow:
    0 0 0 26px rgba(0, 163, 180, 0.035),
    0 0 0 72px rgba(28, 53, 94, 0.025);
}

.error-page__code span {
  position: relative;
  display: block;
  padding-right: 0.1em;
  background: linear-gradient(145deg, var(--rm-navy-strong) 6%, #295d85 56%, var(--rm-teal) 100%);
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  filter: drop-shadow(0 24px 35px rgba(28, 53, 94, 0.13));
}

.error-page__content {
  position: relative;
  padding: clamp(34px, 4.4vw, 62px);
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: clamp(24px, 3vw, 36px);
  background: rgba(255, 255, 255, 0.76);
  box-shadow:
    0 35px 90px rgba(17, 29, 51, 0.12),
    inset 0 1px 0 #ffffff;
  -webkit-backdrop-filter: blur(24px) saturate(1.16);
          backdrop-filter: blur(24px) saturate(1.16);
}

.error-page__content::before {
  content: "";
  position: absolute;
  top: clamp(34px, 4.4vw, 62px);
  left: 0;
  width: 3px;
  height: 54px;
  border-radius: 0 99px 99px 0;
  background: linear-gradient(180deg, var(--rm-teal), var(--rm-navy));
}

.error-page__eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 18px;
  color: var(--rm-teal);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.error-page__eyebrow::before {
  content: "";
  width: 28px;
  height: 1px;
  background: currentColor;
}

.error-page__title {
  max-width: 13ch;
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(2.25rem, 4.5vw, 4.65rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.055em;
}

.error-page__text {
  max-width: 50ch;
  margin-top: 24px;
  color: rgba(28, 53, 94, 0.68);
  font-size: clamp(1rem, 1.15vw, 1.12rem);
  line-height: 1.7;
}

.error-page__text > :first-child {
  margin-top: 0;
}

.error-page__text > :last-child {
  margin-bottom: 0;
}

.error-page__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: clamp(28px, 3vw, 40px);
}

.error-page__action {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 0 22px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.94rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition:
    color 220ms ease,
    background-color 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease,
    transform 220ms ease;
}

.error-page__action svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 220ms ease;
}

.error-page__action--primary {
  background: var(--rm-navy);
  color: #ffffff;
  box-shadow: 0 13px 28px rgba(28, 53, 94, 0.2);
}

.error-page__action--primary:hover {
  background: var(--rm-teal);
  color: #ffffff;
  box-shadow: 0 16px 34px rgba(0, 163, 180, 0.24);
  transform: translateY(-2px);
}

.error-page__action--primary:hover svg {
  transform: translateX(3px);
}

.error-page__action--secondary {
  border-color: rgba(28, 53, 94, 0.18);
  background: rgba(255, 255, 255, 0.62);
  color: var(--rm-navy);
}

.error-page__action--secondary:hover {
  border-color: var(--rm-teal);
  background: #ffffff;
  color: var(--rm-teal);
  transform: translateY(-2px);
}

.error-page__action:focus-visible {
  outline: 3px solid rgba(0, 163, 180, 0.35);
  outline-offset: 4px;
}

@media (max-width: 940px) {
  .error-page__shell {
    grid-template-columns: 1fr;
    width: min(680px, 100%);
    gap: 32px;
  }

  .error-page__code {
    font-size: clamp(8.4rem, 35vw, 15rem);
  }

  .error-page__code::before {
    width: min(46%, 220px);
  }

  .error-page__title {
    max-width: 15ch;
  }
}

@media (max-width: 640px) {
  body.error-page .site-main.site-main--flush {
    padding-bottom: 170px !important;
  }

  .error-page {
    min-height: 0;
    padding: 48px 18px 82px;
  }

  .error-page__shell {
    gap: 24px;
  }

  .error-page__code {
    font-size: clamp(7.6rem, 43vw, 11.5rem);
  }

  .error-page__code::before {
    box-shadow:
      0 0 0 18px rgba(0, 163, 180, 0.035),
      0 0 0 44px rgba(28, 53, 94, 0.025);
  }

  .error-page__content {
    padding: 32px 24px;
    border-radius: 24px;
  }

  .error-page__content::before {
    top: 32px;
  }

  .error-page__title {
    font-size: clamp(2.25rem, 12vw, 3.25rem);
  }

  .error-page__actions,
  .error-page__action {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .error-page__action,
  .error-page__action svg {
    transition: none;
  }
}

@media (max-width: 1080px) {
  body.contact-page .contact-layout,
  body.contact-page .contact-office-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.contact-page .contact-intro {
    position: static;
  }
}

@media (max-width: 720px) {
  body.contact-page .contact-hero .cf-hero__layout {
    min-height: 520px;
  }

  body.contact-page .contact-layout,
  body.contact-page .contact-form__grid,
  body.contact-page .contact-office-grid {
    grid-template-columns: 1fr;
  }

  body.contact-page .contact-section {
    padding-inline: 18px;
  }

  body.contact-page .contact-form {
    padding: 22px 18px;
    border-radius: 22px;
  }

  body.contact-page .contact-office-card {
    min-height: 0;
  }
}



@media (max-width: 1040px) {
  body {
    background-attachment: scroll;
  }

  .view--home {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-v2-flow,
  .home-v2-flow > *,
  .site-main > *,
  .cf-page__view {
    min-width: 0;
    max-width: 100%;
  }

  .mobile-menu {
    z-index: 1400;
  }

  .mobile-menu__panel {
    height: 100vh;
    height: 100dvh;
    min-height: 0;
    max-height: 100vh;
    max-height: 100dvh;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  body.menu-open .side-dock,
  body.has-overlay-open .side-dock {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .header-context__title {
    min-width: 0;
    max-width: min(32vw, 19rem);
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .site-header.is-page .context-tabs[aria-hidden="false"],
  body.service-page .site-header.is-page .context-tabs[aria-hidden="false"] {
    display: flex;
    width: 100%;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: inline proximity;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .site-header.is-page .context-tabs[aria-hidden="false"]::-webkit-scrollbar {
    display: none;
  }

  .site-header.is-page .context-tabs[aria-hidden="true"],
  body.service-page .site-header.is-page .context-tabs[aria-hidden="true"] {
    display: none;
  }

  .context-tabs__group {
    width: max-content;
    min-width: 100%;
    flex: 0 0 auto;
    flex-wrap: nowrap;
  }

  .context-tabs__button {
    min-height: 44px;
    scroll-snap-align: start;
  }

  body.home-mode.home-hero-ready .site-header {
    pointer-events: auto !important;
  }

  body.home-mode .motors-hero--staged .motors-hero__video-shell,
  body.home-mode.home-hero-reveal .motors-hero--staged .motors-hero__video-shell {
    width: 100%;
    height: 100%;
    border-radius: 0;
    animation: none !important;
  }

  body.home-mode .motors-hero--staged .motors-hero__copy,
  body.index2-page.home-mode.home-hero-reveal .motors-hero--staged .motors-hero__copy {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    animation: none !important;
  }

  body.home-mode .motors-hero__copy-state {
    animation: none !important;
  }

  body.home-mode .motors-hero__copy-state--primary {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }

  body.home-mode .motors-hero__copy-state--secondary,
  body.home-mode .motors-hero__copy-state--tertiary {
    opacity: 0 !important;
  }

  body.static-image-version.home-mode .motors-hero__video-image {
    animation: none !important;
  }

  body.static-image-version.home-mode .motors-hero__video-image--primary {
    opacity: 1 !important;
    transform: translate(-50%, -50%) scale(1.02) !important;
  }

  body.static-image-version.home-mode .motors-hero__video-image--secondary,
  body.static-image-version.home-mode .motors-hero__video-image--tertiary {
    opacity: 0 !important;
  }

  .home-v2-flow .home-expertise__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .home-v2-flow .home-expertise-card,
  .home-v2-flow .home-expertise.is-visible .home-expertise-card,
  .home-v2-flow .home-expertise-card:hover,
  .home-v2-flow .home-expertise-card:focus-visible {
    height: auto;
    min-height: 220px;
  }

  body.contact-page .contact-layout,
  body.contact-page .contact-form__grid,
  body.contact-page .contact-office-grid {
    grid-template-columns: 1fr;
  }

  body.contact-page .contact-intro {
    position: static;
  }

  .cf-fundgrid__list.is-list .cf-fund > * {
    grid-column: 1;
    grid-row: auto;
  }

  .opcvm-range,
  .cf-fundgrid,
  .cf-fundgrid__toolbar,
  .cf-fundgrid__list,
  .cf-fund {
    min-width: 0;
    max-width: 100%;
  }

  .cf-fundgrid {
    width: 100%;
  }

  .cf-fundgrid__toolbar > * {
    min-width: 0;
  }

  .site-main table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  .site-main iframe,
  .site-main video,
  .site-main embed,
  .site-main object {
    max-width: 100%;
  }

  .cf-team-slider {
    cursor: grab;
    scroll-snap-type: inline mandatory;
    overscroll-behavior-inline: contain;
    touch-action: pan-x pan-y;
  }

  .cf-team-col {
    scroll-snap-align: start;
  }

  .site-footer,
  body.asset-management-page .site-footer {
    margin-top: clamp(112px, 14vw, 148px);
  }

  .redmed-auth-page .site-footer {
    margin-top: 0;
  }

  .site-footer__newsletter {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    margin: -96px auto 0;
  }

  .redmed-auth-page .site-footer__newsletter {
    margin-top: 0;
  }

  .site-footer__inner,
  body.index2-page .site-footer__inner {
    width: min(100% - 40px, 1500px);
    padding-top: clamp(56px, 8vw, 88px);
  }

  .site-footer__main,
  body.index2-page .site-footer__main {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .side-dock {
    display: none;
  }

  .trusted__logos {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: visible;
    -webkit-mask-image: none;
    mask-image: none;
  }

  .trusted__row {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: visible;
  }

  .trusted__inner,
  .trusted__intro,
  .trusted__title {
    min-width: 0;
    max-width: 100%;
  }

  .trusted__title {
    width: 100%;
    overflow-wrap: anywhere;
  }

  .trusted__eyebrow {
    max-width: 100%;
    flex-wrap: wrap;
  }

  body.publications-page .cf-pubs__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cf-solutions-marquee,
  .pe-approach-marquee {
    overflow-x: auto;
    scroll-snap-type: inline mandatory;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .cf-solutions-grid,
  .pe-approach-grid {
    animation: none !important;
    transform: none !important;
  }

  .cf-solutions-grid .cf-solution-box,
  .pe-approach-grid .cf-solution-box {
    scroll-snap-align: start;
  }

  .cf-solutions-grid .is-clone,
  .pe-approach-grid .is-clone {
    display: none !important;
  }
}

@media (max-width: 900px), (max-height: 560px) {
  .cookie-banner {
    left: 8px;
    right: 8px;
    bottom: max(8px, env(safe-area-inset-bottom));
    max-height: calc(100vh - 16px);
    max-height: calc(100dvh - 16px);
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid rgba(28, 53, 94, 0.14);
    border-top: 3px solid var(--rm-teal, #00a3b4);
    border-radius: 20px;
    -webkit-overflow-scrolling: touch;
  }

  .cookie-banner__inner {
    padding: 18px 16px;
  }

  .cookie-banner__actions {
    position: sticky;
    bottom: 0;
    padding-top: 4px;
    background: #ffffff;
  }
}

@media (max-width: 720px) {
  :root {
    --home-page-gutter: 18px;
    --home-section-y: clamp(52px, 12vw, 76px);
  }

  .site-header {
    padding: 8px 8px 0;
  }

  .site-header__shell,
  .site-header.is-page .site-header__shell,
  body.service-page .site-header.is-page .site-header__shell {
    gap: 6px;
    min-height: 60px;
    padding-inline: 8px;
  }

  .site-header.is-page .context-tabs,
  body.service-page .site-header.is-page:not(.is-compact) .context-tabs {
    padding: 4px 8px 6px;
  }

  body.service-page .site-header.is-page:not(.is-compact) .brand-link {
    width: 104px !important;
    min-width: 104px !important;
    height: 30px !important;
  }

  body.service-page .site-header.is-page:not(.is-compact) .brand-link__wordmark {
    width: 104px !important;
  }

  .header-tools {
    gap: 4px;
    min-width: 0;
  }

  .lang-button.redmed-language-switch {
    max-width: min(8rem, 28vw);
    min-height: 40px;
    padding-inline: 8px;
  }

  .lang-button .redmed-language-switch__link {
    min-width: 24px;
    min-height: 32px;
  }

  .mobile-menu-button {
    min-height: 44px;
    padding-inline: 11px;
    font-size: 0.84rem;
  }

  .mobile-menu__panel {
    padding: max(14px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom));
  }

  .mobile-menu__topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "brand tools";
    gap: 8px;
    align-items: center;
  }

  .mobile-menu__brand-wrap {
    grid-area: brand;
    min-width: 0;
    gap: 8px;
  }

  .mobile-menu__tools {
    grid-area: tools;
    display: flex;
    min-width: 0;
    gap: 6px;
  }

  .mobile-menu__lang.redmed-language-switch {
    width: auto;
    max-width: min(34vw, 10rem);
    min-height: 36px;
    padding-inline: 8px;
  }

  .mobile-menu__lang .redmed-language-switch__link {
    min-width: 24px;
    min-height: 30px;
  }

  .mobile-menu__close {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
  }

  .mobile-menu__brand-link {
    min-width: 0;
    flex: 0 1 auto;
  }

  .mobile-menu__brand-logo {
    width: 104px;
    max-width: 100%;
    flex-shrink: 0;
  }

  .mobile-menu__content,
  .mobile-menu--two-level .mobile-menu__content {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    width: 100%;
    padding: 28px 4px 40px;
  }

  .mobile-menu__primary-button,
  .mobile-menu__primary-text,
  .mobile-menu__secondary-button,
  .mobile-menu__secondary-title {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .mobile-menu__primary-button,
  .mobile-menu__secondary-button {
    align-items: flex-start;
  }

  .mobile-menu__secondary-button {
    min-height: 44px;
  }

  .home-v2-flow {
    min-height: 0;
  }

  .home-v2-flow .motors-hero {
    min-height: clamp(560px, 100svh, 760px);
    height: clamp(560px, 100svh, 760px);
  }

  .home-v2-flow .home-expertise__cards {
    grid-template-columns: minmax(0, 1fr);
  }

  .news-feature__media {
    min-width: 0;
    min-height: 0;
  }

  .news-feature,
  .news-feature__body {
    min-width: 0;
    max-width: 100%;
  }

  .news-feature__title,
  .news-feature__excerpt {
    overflow-wrap: anywhere;
  }

  .home-v2-flow .home-expertise-card,
  .home-v2-flow .home-expertise.is-visible .home-expertise-card,
  .home-v2-flow .home-expertise-card:hover,
  .home-v2-flow .home-expertise-card:focus-visible {
    grid-template-columns: 64px minmax(0, 1fr);
    grid-template-rows: auto;
    align-items: center;
    gap: 16px;
    height: auto;
    min-height: 178px;
    padding: 20px 42px 20px 16px;
  }

  .home-v2-flow .home-expertise-card__icon {
    width: 64px;
    height: 64px;
    margin: 0;
  }

  .home-v2-flow .home-expertise-card__body {
    gap: 8px;
  }

  .group-tl__stage {
    grid-template-columns: clamp(72px, 20vw, 96px) clamp(46px, 11vw, 60px) minmax(0, 1fr);
  }

  .group-tl,
  .group-tl__stage {
    touch-action: pan-y;
  }

  .cf-hero {
    padding: 48px 0 56px;
  }

  .cf-hero__layout,
  .cf-hero__layout--single,
  .cf-shell {
    width: min(100% - 36px, 1480px);
  }

  .cf-hero__stats,
  .cf-hero__metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 20px 0 0;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    border-left: 0;
  }

  .cf-hero__stat {
    min-width: 0;
    padding: 12px 8px;
  }

  .cf-hero__stat strong {
    font-size: clamp(1.75rem, 10vw, 2.55rem);
  }

  .cf-hero__stat--network,
  .cf-hero__metric--wide {
    grid-column: 1 / -1;
  }

  .cf-editorial__stage-frame {
    min-height: clamp(340px, 112vw, 430px);
  }

  .cf-strength-tile__caption .cf-strength-tile__title,
  .cf-strength-tile__title {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .cf-pub-card__download {
    max-width: 100%;
    min-height: 44px;
    white-space: normal;
    overflow: visible;
    text-align: center;
  }

  .cf-fundgrid__filters {
    flex: 1 1 100%;
    width: 100%;
    max-width: 100%;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: inline proximity;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .cf-fundgrid__filters::-webkit-scrollbar {
    display: none;
  }

  .cf-fund-tab {
    flex: 0 0 auto;
    min-height: 44px;
    scroll-snap-align: start;
  }

  .cf-fundgrid__list {
    grid-template-columns: minmax(0, 1fr);
  }

  .cf-fund__top,
  .cf-fund__risk {
    min-width: 0;
    flex-wrap: wrap;
  }

  .cf-fund__cat,
  .cf-fund__name,
  .cf-fund__desc,
  .cf-fund__stats dt,
  .cf-fund__stats dd {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .cf-fund__stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cf-solutions-marquee,
  .pe-approach-marquee {
    overflow-x: auto;
    scroll-snap-type: inline mandatory;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  .cf-solutions-grid,
  .pe-approach-grid {
    animation: none !important;
    transform: none !important;
  }

  .cf-solutions-grid .cf-solution-box,
  .pe-approach-grid .cf-solution-box {
    scroll-snap-align: start;
  }

  .cf-solutions-grid .is-clone,
  .pe-approach-grid .is-clone {
    display: none !important;
  }

  .side-dock {
    display: none;
  }

  .cookie-banner {
    left: 8px;
    right: 8px;
    bottom: max(8px, env(safe-area-inset-bottom));
    max-height: calc(100vh - 16px);
    max-height: calc(100dvh - 16px);
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid rgba(28, 53, 94, 0.14);
    border-top: 3px solid var(--rm-teal, #00a3b4);
    border-radius: 20px;
    -webkit-overflow-scrolling: touch;
  }

  .cookie-banner__inner {
    padding: 18px 16px;
  }

  .cookie-banner__actions {
    position: sticky;
    bottom: 0;
    padding-top: 4px;
    background: #ffffff;
  }

  .site-footer {
    overflow: visible;
    margin-top: clamp(72px, 20vw, 104px);
  }

  .site-footer__newsletter {
    width: calc(100% - 28px);
    margin-top: -52px;
    padding: 22px 18px;
    border-radius: 20px;
  }

  .redmed-auth-page .site-footer__newsletter {
    margin-top: 0;
  }

  .site-footer__inner,
  body.index2-page .site-footer__inner {
    width: 100%;
    padding: 52px 20px 24px;
  }

  .site-footer__main,
  .site-footer__links,
  body.index2-page .site-footer__main,
  body.index2-page .site-footer__links {
    grid-template-columns: minmax(0, 1fr);
  }

  .site-footer__main {
    gap: 32px;
  }

  .site-footer__brand {
    gap: 18px;
  }

  .site-footer__links {
    gap: 28px;
  }

  .site-footer__wordmark {
    width: min(72vw, 240px);
  }

  .site-footer__newsletter-fields,
  .site-footer__newsletter--cta .cta-band__actions {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .site-footer__newsletter-fields input,
  .site-footer__newsletter-fields button,
  .cta-btn {
    width: 100%;
  }

  body.contact-page .contact-section {
    padding: 56px 18px;
  }

  body.contact-page .contact-form__actions,
  body.contact-page .contact-form__actions button,
  body.contact-page .contact-form__actions input[type="submit"],
  body.contact-page .contact-form__actions a {
    width: 100%;
  }

  input,
  select,
  textarea {
    font-size: max(16px, 1em);
  }
}

@media (max-width: 480px) {
  :root {
    --home-page-gutter: 16px;
  }

  .brand-link {
    width: 104px;
    min-width: 104px;
  }

  .brand-link__wordmark {
    width: 104px;
  }

  .site-header.is-page .brand-link {
    width: 26px;
    min-width: 26px;
  }

  .site-header.is-page .header-context__title {
    max-width: 24vw;
    font-size: 0.98rem;
  }

  .redmed-auth-page .auth-header {
    min-height: 0;
    flex-wrap: nowrap;
    gap: 0.75rem;
    padding-block: 12px;
  }

  .redmed-auth-page .auth-header__brand {
    flex: 0 0 auto;
  }

  .redmed-auth-page .auth-header__brand img {
    width: min(9rem, 38vw);
  }

  .redmed-auth-page .auth-header__languages {
    width: auto;
    max-width: 45vw;
    min-width: 0;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-inline: 10px;
  }

  .redmed-auth-page .auth-header__languages a {
    flex: 0 0 auto;
  }

  .article__metrics {
    grid-template-columns: minmax(0, 1fr);
  }

  .cf-hero__stats {
    gap: 8px;
  }

  .cf-hero__stat-label {
    font-size: 0.88rem;
  }
}


@media (max-width: 900px) {
  .trusted__logos {
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
  }

  .trusted__row {
    overflow: hidden;
  }

  .trusted__track {
    display: flex;
    width: max-content;
    gap: 10px;
    transform: none;
  }

  .trusted__row--ltr .trusted__track {
    animation: trustedScroll 32s linear infinite !important;
  }

  .trusted__row--rtl .trusted__track {
    animation: trustedScroll 32s linear infinite reverse !important;
  }

  .trusted__logo {
    width: clamp(132px, 38vw, 170px);
    min-width: clamp(132px, 38vw, 170px);
    height: clamp(70px, 21vw, 88px);
  }

  .trusted__logo[aria-hidden="true"] {
    display: flex;
  }
}

@media (max-width: 700px) {
  .mobile-content-rail-hint {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    color: var(--rm-teal, #00a3b4);
    font-size: 0.78rem;
    font-weight: 650;
    letter-spacing: 0.02em;
  }

  .mobile-content-rail-hint::after {
    content: "→";
    font-size: 1rem;
  }

  .cf-references-grid--all,
  body.publications-page .cf-pubs__grid {
    grid-template-columns: none;
    grid-template-rows: repeat(2, minmax(0, max-content));
    grid-auto-flow: column;
    grid-auto-columns: clamp(272px, 82vw, 320px);
    gap: 16px;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scroll-padding-inline: 2px;
    touch-action: pan-x pan-y;
    padding: 4px 0 18px;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 163, 180, 0.55) rgba(28, 53, 94, 0.08);
    -webkit-overflow-scrolling: touch;
  }

  .cf-references-grid--all {
    margin-top: 0;
  }

  .cf-references-grid--all:focus-visible {
    outline: 2px solid var(--rm-teal, #00a3b4);
    outline-offset: 4px;
  }

  .cf-references-grid--all > .cf-reference-card,
  body.publications-page .cf-pubs__grid > .cf-pub-card {
    min-width: 0;
    scroll-snap-align: start;
    scroll-snap-stop: normal;
  }
}

@media (max-width: 360px) {
  .mobile-menu__panel {
    padding-inline: 12px;
  }

  .mobile-menu__brand-wrap {
    gap: 6px;
  }

  .mobile-menu__close {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
  }

  .mobile-menu__brand-logo {
    width: 88px;
  }

  .mobile-menu__search {
    width: 36px;
    height: 36px;
  }

  .mobile-menu__lang.redmed-language-switch {
    max-width: 92px;
    gap: 5px;
    padding-inline: 6px;
  }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .trusted__logos {
    -webkit-mask-image: none;
    mask-image: none;
  }

  .trusted__row {
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
  }

  .trusted__track {
    animation: none !important;
  }

  .trusted__logo[aria-hidden="true"] {
    display: none;
  }
}


.cf-page__view.redmed-structured-page .home-expertise__cards,
.cf-page__view.redmed-structured-page .home-expertise-card,
.cf-page__view.redmed-structured-page .home-expertise.is-visible .home-expertise-card,
.cf-page__view.redmed-structured-page .home-expertise-card:hover,
.cf-page__view.redmed-structured-page .home-expertise-card:focus-visible {
  --home-card-progress: 1;
  transform: none;
}

.cf-page__view.redmed-structured-page .page-video-hero__media:empty {
  background:
    radial-gradient(circle at 76% 34%, rgba(0, 163, 180, 0.22), transparent 34%),
    linear-gradient(135deg, #020b15 0%, #0d213d 100%);
}

.cf-page__view.redmed-structured-page .cf-hero__layout,
.cf-page__view.redmed-structured-page .cf-hero__copy,
.cf-page__view.redmed-structured-page .cf-hero__lede,
.cf-page__view.redmed-structured-page .cf-hero__stats,
.cf-page__view.redmed-structured-page .home-expertise__cards,
.cf-page__view.redmed-structured-page .contact-office-grid,
.cf-page__view.redmed-structured-page .cf-pubs__grid,
.cf-page__view.redmed-structured-page .cf-fundgrid__list,
.cf-page__view.redmed-structured-page .cf-approach-list,
.cf-page__view.redmed-structured-page .redmed-editor-timeline__grid,
.cf-page__view.redmed-structured-page .group-tl,
.cf-page__view.redmed-structured-page .group-tl__stage,
.cf-page__view.redmed-structured-page .re-hero-brief {
  min-width: 0;
  max-width: 100%;
}

@media (max-width: 1040px) {
  .cf-page__view.redmed-structured-page .page-video-hero,
  .cf-page__view.redmed-structured-page .cf-hero {
    min-height: auto;
    height: auto;
  }

  .cf-page__view.redmed-structured-page .cf-hero {
    align-items: flex-start;
    padding: clamp(118px, 18vw, 154px) 0 clamp(56px, 9vw, 92px);
  }

  .cf-page__view.redmed-structured-page .cf-hero__layout,
  .cf-page__view.redmed-structured-page .cf-hero--with-stats .cf-hero__layout,
  .cf-page__view.redmed-structured-page .cf-hero__layout--single {
    width: min(100% - 40px, 1480px);
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(24px, 6vw, 46px);
  }

  .cf-page__view.redmed-structured-page .cf-hero__copy {
    max-width: min(100%, 760px);
  }

  .cf-page__view.redmed-structured-page .cf-hero__title,
  body.contact-page .contact-hero .cf-hero__title {
    max-width: min(100%, 13ch);
    overflow-wrap: anywhere;
  }

  .cf-page__view.redmed-structured-page .cf-hero__lede p,
  .cf-page__view.redmed-structured-page .cf-hero__stat-label {
    max-width: none;
  }

  .cf-page__view.redmed-structured-page .cf-hero__stats,
  .cf-page__view.redmed-structured-page .cf-hero--with-stats .cf-hero__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
    padding: 20px 0 0;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    border-left: 0;
  }

  .cf-page__view.redmed-structured-page .cf-hero__stat {
    min-width: 0;
    padding: 14px 12px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    background: linear-gradient(135deg, rgba(113, 240, 236, 0.1), rgba(255, 255, 255, 0.025));
  }

  .cf-page__view.redmed-structured-page .cf-hero__stat::before {
    display: none;
  }

  .cf-page__view.redmed-structured-page .cf-hero__stat:hover,
  .cf-page__view.redmed-structured-page .cf-hero__stat:focus-within,
  .cf-page__view.redmed-structured-page .cf-hero__stat:hover strong,
  .cf-page__view.redmed-structured-page .cf-hero__stat:focus-within strong,
  .cf-page__view.redmed-structured-page .cf-hero__stat:hover .cf-hero__stat-label,
  .cf-page__view.redmed-structured-page .cf-hero__stat:focus-within .cf-hero__stat-label {
    transform: none;
  }

  .cf-page__view.redmed-structured-page .re-hero-brief,
  body.contact-page .contact-layout,
  body.contact-page .contact-office-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cf-page__view.redmed-structured-page .home-expertise__cards,
  .cf-page__view.redmed-structured-page .cf-fundgrid__list,
  .cf-page__view.redmed-structured-page .cf-pubs__grid,
  .cf-page__view.redmed-structured-page .redmed-editor-timeline__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cf-page__view.redmed-structured-page .cf-fundgrid__list.is-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .cf-page__view.redmed-structured-page .cf-fundgrid__list.is-list .cf-fund {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 700px) {
  .cf-page__view.redmed-structured-page .cf-hero {
    padding: clamp(104px, 28vw, 132px) 0 clamp(46px, 14vw, 70px);
  }

  .cf-page__view.redmed-structured-page .cf-hero__layout,
  .cf-page__view.redmed-structured-page .cf-hero--with-stats .cf-hero__layout,
  .cf-page__view.redmed-structured-page .cf-hero__layout--single {
    width: min(100% - 32px, 1480px);
  }

  .cf-page__view.redmed-structured-page .cf-hero__title {
    font-size: clamp(2rem, 11vw, 3.25rem);
    letter-spacing: -0.055em;
  }

  .cf-page__view.redmed-structured-page .cf-hero__lede {
    gap: 14px;
    margin-top: 22px;
  }

  .cf-page__view.redmed-structured-page .cf-hero__lede p {
    font-size: 0.96rem;
    line-height: 1.68;
  }

  .cf-page__view.redmed-structured-page .cf-hero__stats,
  .cf-page__view.redmed-structured-page .cf-hero--with-stats .cf-hero__stats,
  .cf-page__view.redmed-structured-page .cf-opcvm-hero__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    overflow: visible;
  }

  .cf-page__view.redmed-structured-page .cf-hero__stat strong {
    flex-wrap: wrap;
    gap: 0 4px;
    font-size: clamp(1.75rem, 10vw, 2.5rem);
  }

  .cf-page__view.redmed-structured-page .cf-hero__stat .home-figure__unit {
    font-size: 0.42em;
  }

  .cf-page__view.redmed-structured-page .re-hero-brief,
  body.contact-page .contact-layout,
  body.contact-page .contact-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cf-page__view.redmed-structured-page .home-expertise__cards,
  .cf-page__view.redmed-structured-page .contact-office-grid,
  .cf-page__view.redmed-structured-page .cf-pubs__grid,
  .cf-page__view.redmed-structured-page .cf-fundgrid__list,
  .cf-page__view.redmed-structured-page .cf-approach-list,
  .cf-page__view.redmed-structured-page .redmed-editor-timeline__grid {
    display: grid;
    grid-template-columns: none;
    grid-template-rows: repeat(2, minmax(0, max-content));
    grid-auto-flow: column;
    grid-auto-columns: clamp(252px, 82vw, 330px);
    align-items: stretch;
    gap: 14px;
    width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scroll-padding-inline: 2px;
    touch-action: pan-x pan-y;
    padding: 2px 0 16px;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 163, 180, 0.55) rgba(28, 53, 94, 0.08);
    -webkit-overflow-scrolling: touch;
  }

  .cf-page__view.redmed-structured-page .home-expertise__cards > *,
  .cf-page__view.redmed-structured-page .contact-office-grid > *,
  .cf-page__view.redmed-structured-page .cf-pubs__grid > *,
  .cf-page__view.redmed-structured-page .cf-fundgrid__list > *,
  .cf-page__view.redmed-structured-page .cf-approach-list > *,
  .cf-page__view.redmed-structured-page .redmed-editor-timeline__grid > * {
    min-width: 0;
    scroll-snap-align: start;
  }

  .cf-page__view.redmed-structured-page .cf-fundgrid__list.is-list {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    grid-auto-flow: row;
    grid-auto-columns: auto;
    overflow-x: visible;
    scroll-snap-type: none;
    padding: 0;
  }

  .cf-page__view.redmed-structured-page .cf-fundgrid__list.is-list > * {
    scroll-snap-align: none;
  }

  .cf-page__view.redmed-structured-page .cf-fundgrid__list.is-list .cf-fund {
    grid-template-columns: minmax(0, 1fr);
  }

  .cf-page__view.redmed-structured-page .home-expertise-card,
  .cf-page__view.redmed-structured-page .contact-office-card,
  .cf-page__view.redmed-structured-page .cf-fund,
  .cf-page__view.redmed-structured-page .redmed-editor-timeline__card {
    min-height: 0;
  }

  .cf-page__view.redmed-structured-page .cf-approach-card {
    grid-template-columns: 48px minmax(0, 1fr);
    min-height: 0;
    padding: 20px 18px 20px 22px;
    border-radius: 22px;
  }

  .cf-page__view.redmed-structured-page .cf-approach-card__index {
    font-size: 2rem;
  }

  .cf-page__view.redmed-structured-page .group-tl__stage {
    grid-template-columns: minmax(58px, 18vw) 42px minmax(0, 1fr);
    gap: 8px;
    height: clamp(390px, 108vw, 520px);
  }

  .cf-page__view.redmed-structured-page .group-tl__rail {
    --tl-inset: 44px;
  }

  .cf-page__view.redmed-structured-page .group-tl__ybtn {
    padding-inline: 2px;
    font-size: clamp(1.05rem, 6vw, 1.55rem);
  }

  .cf-page__view.redmed-structured-page .group-tl__panels {
    padding-left: 4px;
  }

  .cf-page__view.redmed-structured-page .group-tl__panel {
    left: 4px;
  }

  .cf-page__view.redmed-structured-page .group-tl__panel li {
    padding-left: 16px;
    font-size: 0.92rem;
    line-height: 1.55;
  }
}

@media (max-width: 420px) {
  .cf-page__view.redmed-structured-page .cf-hero__stats,
  .cf-page__view.redmed-structured-page .cf-hero--with-stats .cf-hero__stats,
  .cf-page__view.redmed-structured-page .cf-opcvm-hero__stats {
    display: grid;
    grid-template-columns: none;
    grid-template-rows: repeat(2, minmax(0, max-content));
    grid-auto-flow: column;
    grid-auto-columns: clamp(132px, 44vw, 172px);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline proximity;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .cf-page__view.redmed-structured-page .cf-hero__stats::-webkit-scrollbar,
  .cf-page__view.redmed-structured-page .cf-opcvm-hero__stats::-webkit-scrollbar {
    display: none;
  }
}


body.section-lab-page .cookie-banner {
  display: none !important;
}

body.section-lab-page .page-video-hero__media,
body.section-lab-page .motors-hero__video-shell,
body.section-lab-page .cf-sectors-section__media,
body.section-lab-page .re-commitments-media,
body.section-lab-page .securities-typology-section__media,
body.section-lab-page .pe-colombus-spotlight__media,
body.section-lab-page .our-group-platform-band__media,
body.section-lab-page .site-footer__media {
  background:
    radial-gradient(circle at 78% 30%, rgba(0, 163, 180, 0.22), transparent 34%),
    linear-gradient(135deg, rgba(3, 12, 24, 0.96), rgba(13, 49, 92, 0.9));
}

body.section-lab-page video[data-redmed-lab-video] {
  opacity: 0;
}

@media (max-width: 700px) {
  body.section-lab-page .context-tabs {
    max-height: 44px;
  }

  body.section-lab-page .context-tabs__button {
    max-width: min(78vw, 320px);
    overflow: hidden;
    text-overflow: ellipsis;
  }
}


.impact-section {
  position: relative;
  padding: var(--home-section-y) clamp(24px, 3.2vw, 56px);
  background: transparent;
}

.impact-section--alt {
  background:
    radial-gradient(circle at 12% 0%, rgba(0, 163, 180, 0.07), transparent 46%),
    linear-gradient(180deg, rgba(247, 250, 253, 0.9), rgba(255, 255, 255, 0.6));
}

.impact-shell {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

.impact-section__head {
  display: grid;
  gap: 18px;
  margin-bottom: clamp(34px, 4vw, 56px);
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 620ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.impact-section__head.is-visible {
  opacity: 1;
  transform: none;
}

.impact-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: rgba(28, 53, 94, 0.56);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.impact-eyebrow__line {
  width: 34px;
  height: 1px;
  background: rgba(28, 53, 94, 0.22);
}

.impact-eyebrow__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--rm-teal);
}

.impact-section__heading {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.85fr);
  align-items: end;
  gap: clamp(20px, 3vw, 56px);
}

.impact-section__title {
  margin: 0;
  max-width: 18ch;
  color: var(--rm-navy);
  font-size: clamp(1.9rem, 3vw, 3rem);
  font-weight: 300;
  line-height: 1.06;
  letter-spacing: -0.045em;
}

.impact-section__copy {
  margin: 0;
  max-width: 46ch;
  color: rgba(28, 53, 94, 0.7);
  font-size: 1rem;
  line-height: 1.72;
}


.impact-icon__stroke {
  fill: none;
  stroke: var(--rm-navy);
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.impact-icon__stroke--accent {
  stroke: var(--rm-teal);
}


.impact-pillars__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 1.8vw, 24px);
}

.impact-pillar {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: clamp(24px, 2.4vw, 32px);
  border: 1px solid rgba(28, 53, 94, 0.09);
  border-radius: 26px;
  background:
    radial-gradient(circle at top right, rgba(0, 163, 180, 0.09), transparent 52%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 248, 252, 0.92));
  box-shadow:
    0 20px 46px rgba(17, 43, 76, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  opacity: 0;
  transform: translateY(32px);
  transition:
    opacity 700ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 700ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms ease,
    box-shadow 220ms ease;
  transition-delay: var(--impact-delay, 0ms);
}

[data-reveal-group].is-visible .impact-pillar {
  opacity: 1;
  transform: none;
}

.impact-pillar:hover {
  border-color: rgba(0, 163, 180, 0.24);
  box-shadow:
    0 28px 60px rgba(16, 55, 101, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.95);
  transform: translateY(-6px);
}

.impact-pillar__icon {
  display: inline-grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  border: 1px solid rgba(0, 163, 180, 0.2);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(233, 246, 249, 0.9));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.impact-pillar__icon svg {
  width: 32px;
  height: 32px;
}

.impact-pillar__index {
  position: absolute;
  top: clamp(20px, 2.2vw, 28px);
  right: clamp(20px, 2.2vw, 28px);
  color: rgba(28, 53, 94, 0.18);
  font-size: 1.5rem;
  font-weight: 300;
  letter-spacing: -0.04em;
}

.impact-pillar__name {
  margin: 6px 0 0;
  color: var(--rm-navy);
  font-size: 1.08rem;
  font-weight: 600;
  line-height: 1.28;
  letter-spacing: -0.015em;
}

.impact-pillar__text {
  margin: 0;
  color: rgba(28, 53, 94, 0.72);
  font-size: 0.92rem;
  line-height: 1.62;
}


.impact-labels__viewport {
  position: relative;
  overflow: hidden;
  margin-inline: calc(-1 * clamp(14px, 2.4vw, 34px));
  padding: 8px clamp(14px, 2.4vw, 34px) clamp(20px, 2.2vw, 32px);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
}

.impact-labels__rows {
  --impact-label-gap: clamp(18px, 2vw, 28px);
  display: flex;
  width: max-content;
  gap: var(--impact-label-gap);
  animation: none;
  will-change: transform;
}

.impact-labels__set {
  display: flex;
  flex: 0 0 auto;
  min-width: max-content;
  gap: var(--impact-label-gap);
}

.impact-labels__set--clone {
  pointer-events: none;
}

@keyframes impactLabelsMarquee {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(calc(-50% - (var(--impact-label-gap) / 2)), 0, 0);
  }
}


.impact-label {
  --label-image-space: clamp(180px, 25%, 270px);
  flex: 0 0 clamp(420px, 43vw, 640px);
  position: relative;
  display: block;
  min-height: clamp(260px, 24vw, 340px);
  padding: clamp(24px, 2.4vw, 34px);
  border: 1px solid rgba(28, 53, 94, 0.08);
  border-radius: 30px;
  background:
    radial-gradient(circle at top left, rgba(0, 163, 180, 0.1), transparent 42%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(243, 247, 252, 0.92));
  box-shadow:
    0 24px 54px rgba(17, 43, 76, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);
  overflow: hidden;
  opacity: 0;
  transform: translateY(38px);
  transition:
    opacity 720ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 720ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms ease,
    box-shadow 220ms ease;
  transition-delay: var(--impact-delay, 0ms);
}

.impact-label--full {
  flex-basis: clamp(540px, 56vw, 820px);
  --label-image-space: clamp(200px, 20%, 300px);
}

[data-reveal-group].is-visible .impact-label {
  opacity: 1;
  transform: none;
}

.impact-label:hover {
  border-color: rgba(0, 163, 180, 0.16);
  box-shadow:
    0 30px 64px rgba(16, 55, 101, 0.13),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  transform: translateY(-6px);
}

.impact-label__watermark {
  position: absolute;
  top: 50%;
  left: clamp(20px, 2vw, 28px);
  z-index: 0;
  display: block;
  width: calc(var(--label-image-space) - clamp(8px, 0.8vw, 12px));
  max-width: 40%;
  transform: translateY(-50%);
  opacity: 0.28;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.impact-label--reverse .impact-label__watermark {
  left: clamp(20px, 2vw, 28px);
  right: auto;
}

.impact-label__watermark img {
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: saturate(1.02) contrast(1.02);
  transition:
    transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 260ms ease;
}

.impact-label:hover .impact-label__watermark {
  opacity: 0.44;
  mix-blend-mode: normal;
}

.impact-label:hover .impact-label__watermark img {
  transform: scale(1.04);
}

.impact-label__content {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: center;
  gap: 12px;
  min-width: 0;
  padding-left: calc(var(--label-image-space) + clamp(18px, 2vw, 28px));
}

.impact-label--reverse .impact-label__content {
  padding-left: calc(var(--label-image-space) + clamp(18px, 2vw, 28px));
  padding-right: 0;
}

.impact-label__meta {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px 14px;
}

.impact-label__index {
  color: rgba(28, 53, 94, 0.46);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.impact-label__tag {
  color: var(--rm-teal);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.impact-label__name {
  margin: 0;
  color: var(--rm-navy);
  font-size: clamp(1.32rem, 1.8vw, 2rem);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.045em;
}

.impact-label__summary {
  margin: 0;
  max-width: 62ch;
  color: rgba(28, 53, 94, 0.66);
  font-size: 0.95rem;
  line-height: 1.7;
}


.impact-figures__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(14px, 1.6vw, 22px);
}

.impact-figure {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: clamp(22px, 2.2vw, 30px);
  border: 1px solid rgba(28, 53, 94, 0.09);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(0, 163, 180, 0.1), transparent 55%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 248, 252, 0.92));
  box-shadow:
    0 20px 46px rgba(17, 43, 76, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  opacity: 0;
  transform: translateY(30px);
  transition:
    opacity 700ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 700ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 220ms ease,
    box-shadow 220ms ease;
  transition-delay: var(--impact-delay, 0ms);
}

[data-reveal-group].is-visible .impact-figure {
  opacity: 1;
  transform: none;
}

.impact-figure:hover {
  border-color: rgba(0, 163, 180, 0.24);
  box-shadow:
    0 28px 60px rgba(16, 55, 101, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.95);
  transform: translateY(-6px);
}

.impact-figure__icon {
  display: inline-grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  border: 1px solid rgba(0, 163, 180, 0.2);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(233, 246, 249, 0.9));
}

.impact-figure__icon svg {
  width: 30px;
  height: 30px;
}

.impact-figure__value {
  display: flex;
  align-items: baseline;
  gap: 2px;
  color: var(--rm-navy);
  font-size: clamp(2.1rem, 3.2vw, 3.1rem);
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.05em;
}

.impact-figure__sign,
.impact-figure__unit {
  color: var(--rm-teal);
  font-weight: 400;
}

.impact-figure__unit {
  font-size: 0.42em;
  letter-spacing: 0;
  transform: translateY(-0.15em);
}

.impact-figure__label {
  color: rgba(28, 53, 94, 0.7);
  font-size: 0.9rem;
  line-height: 1.55;
}


.founder-note {
  position: relative;
  padding: var(--home-section-y) clamp(24px, 3.2vw, 56px);
  background:
    radial-gradient(circle at 86% 6%, rgba(0, 163, 180, 0.09), transparent 44%),
    linear-gradient(180deg, rgba(247, 250, 253, 0.92), rgba(255, 255, 255, 0.55));
}

.founder-note__inner {
  display: grid;
  grid-template-columns: minmax(220px, 0.32fr) minmax(0, 1fr);
  align-items: start;
  gap: clamp(28px, 4vw, 68px);
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.founder-note__aside {
  display: grid;
  gap: 16px;
  margin: 0;
  position: sticky;
  top: 120px;
}

.founder-note__portrait {
  position: relative;
  border-radius: 26px;
  overflow: hidden;
  border: 1px solid rgba(28, 53, 94, 0.1);
  box-shadow: 0 26px 56px rgba(17, 43, 76, 0.14);
  background: linear-gradient(180deg, rgba(233, 246, 249, 0.9), rgba(255, 255, 255, 0.9));
}

.founder-note__portrait img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.founder-note__badge {
  position: absolute;
  left: 14px;
  bottom: 14px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 8px 20px rgba(17, 43, 76, 0.18);
}

.founder-note__badge img {
  width: 24px;
  height: 24px;
}

.founder-note__identity {
  display: grid;
  gap: 3px;
  padding-left: 14px;
  border-left: 2px solid var(--rm-teal);
}

.founder-note__name {
  color: var(--rm-navy);
  font-size: 0.86rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.founder-note__identity small {
  color: var(--rm-text-soft);
  font-size: 0.84rem;
}

.founder-note__body {
  display: grid;
  gap: clamp(18px, 2vw, 26px);
  min-width: 0;
}

.founder-note__quote,
.founder-note__heading {
  position: relative;
  margin: 0;
  padding-top: 34px;
  color: var(--rm-navy);
  font-size: clamp(1.5rem, 2.5vw, 2.35rem);
  font-weight: 300;
  font-style: normal;
  line-height: 1.24;
  letter-spacing: -0.04em;
}

.founder-note__quote::before {
  content: "“";
  position: absolute;
  top: -12px;
  left: -4px;
  color: rgba(0, 163, 180, 0.34);
  font-size: 5rem;
  line-height: 1;
}

.founder-note__copy {
  display: grid;
  gap: 16px;
  max-width: 66ch;
}

.founder-note__copy p {
  margin: 0;
  color: rgba(28, 53, 94, 0.74);
  font-size: 1rem;
  line-height: 1.78;
}

.founder-note__foot {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px 28px;
  padding-top: clamp(6px, 1vw, 12px);
  border-top: 1px solid var(--rm-line);
}

.founder-note__signature {
  color: var(--rm-navy);
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.founder-note__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  color: var(--rm-teal);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
}

.founder-note__link svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 220ms ease;
}

.founder-note__link:hover svg {
  transform: translateX(4px);
}


.impact-resources__slider {
  position: relative;
}


.impact-resources__rail {
  --resources-per-view: 3;
  --resources-gap: clamp(16px, 1.8vw, 24px);
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc(
    (100% - (var(--resources-per-view) - 1) * var(--resources-gap)) / var(--resources-per-view)
  );
  gap: var(--resources-gap);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  
  padding: 6px 2px 22px;
  scrollbar-width: none;
}

.impact-resources__rail::-webkit-scrollbar {
  display: none;
}

.impact-resources__rail > .impact-resource {
  scroll-snap-align: start;
}

.impact-resources__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: clamp(10px, 1.4vw, 18px);
}

.impact-resources__nav[hidden] {
  display: none;
}

.impact-resources__arrow {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 50%;
  border: 1px solid rgba(0, 163, 180, 0.3);
  background: rgba(255, 255, 255, 0.8);
  color: var(--rm-teal);
  cursor: pointer;
  transition:
    background 220ms ease,
    border-color 220ms ease,
    color 220ms ease,
    opacity 220ms ease;
}

.impact-resources__arrow svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.impact-resources__arrow:hover:not(:disabled) {
  border-color: var(--rm-teal);
  background: var(--rm-teal);
  color: #ffffff;
}

.impact-resources__arrow:disabled {
  opacity: 0.32;
  cursor: default;
}

.impact-resources__dots {
  display: flex;
  align-items: center;
  gap: 9px;
}

.impact-resources__dot {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(28, 53, 94, 0.22);
  cursor: pointer;
  transition:
    background 220ms ease,
    width 220ms ease;
}

.impact-resources__dot.is-active {
  width: 24px;
  border-radius: 999px;
  background: var(--rm-teal);
}

.impact-resource {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(120px, 26%, 152px);
  grid-template-areas:
    "tags   cover"
    "title  cover"
    "action cover";
  align-items: start;
  gap: 12px 20px;
  min-height: clamp(228px, 22vw, 262px);
  padding: clamp(22px, 2vw, 25px);
  border-radius: 30px;
  border: 1px solid rgba(165, 224, 235, 0.55);
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.8), rgba(244, 250, 252, 0.66)),
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.75), transparent 42%);
  box-shadow: none;
  overflow: hidden;
  isolation: isolate;
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 660ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 660ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 240ms ease,
    box-shadow 240ms ease;
  transition-delay: var(--impact-delay, 0ms);
}


.impact-resource:not(:has(.impact-resource__action)) {
  grid-template-areas:
    "tags  cover"
    "title cover";
  min-height: clamp(180px, 17vw, 210px);
}

.impact-resource::before,
.impact-resource::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  z-index: 0;
}

.impact-resource::before {
  width: 180px;
  height: 180px;
  inset: -80px auto auto -60px;
  background: radial-gradient(circle, rgba(117, 230, 243, 0.18), transparent 70%);
}

.impact-resource::after {
  width: 220px;
  height: 120px;
  inset: auto -50px -34px auto;
  background: radial-gradient(circle, rgba(0, 163, 180, 0.09), transparent 72%);
  filter: blur(14px);
}

[data-reveal-group].is-visible .impact-resource {
  opacity: 1;
  transform: none;
}

.impact-resource:hover {
  transform: translateY(-4px);
  border-color: rgba(0, 163, 180, 0.34);
}

.impact-resource__tags {
  grid-area: tags;
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.impact-resource__cover {
  grid-area: cover;
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 140px;
  justify-self: end;
  align-self: center;
  padding-right: 8px;
}


.impact-resource__cover::before {
  content: "";
  position: absolute;
  inset: 12px 0 12px auto;
  width: 12px;
  border-radius: 0 6px 6px 0;
  background: linear-gradient(180deg, #1d4267 0%, #153251 100%);
  box-shadow: 2px 0 0 rgba(255, 255, 255, 0.3);
}

.impact-resource__cover::after {
  content: "";
  position: absolute;
  inset: auto 12px 10px;
  height: 22px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(18, 68, 109, 0.18), transparent 74%);
  filter: blur(8px);
}

.impact-resource__cover img {
  display: block;
  width: 100%;
  aspect-ratio: 0.74;
  object-fit: cover;
  border-radius: 4px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(20, 40, 68, 0.1);
}

.impact-resource__plate {
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 9px;
  width: 100%;
  aspect-ratio: 0.74;
  padding: 14px 12px;
  border-radius: 4px;
  background: linear-gradient(165deg, #1d4267 0%, #0f2740 100%);
  box-shadow: 0 8px 18px rgba(20, 40, 68, 0.16);
}

.impact-resource__plate-kind {
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
}

.impact-resource__plate-rule {
  width: 30px;
  height: 1px;
  background: var(--rm-teal);
}

.impact-resource__plate-brand {
  color: rgba(255, 255, 255, 0.55);
  font-size: 0.54rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-align: center;
  text-transform: uppercase;
}

.impact-resource__title {
  grid-area: title;
  position: relative;
  z-index: 1;
  align-self: end;
  min-width: 0;
  margin: 0;
  color: var(--rm-navy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.5rem, 1.9vw, 1.95rem);
  font-weight: 400;
  line-height: 1.08;
  text-wrap: balance;
}

.impact-resource__action {
  grid-area: action;
  position: relative;
  z-index: 1;
  align-self: end;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 9px 18px;
  border-radius: 999px;
  border: 1px solid rgba(0, 163, 180, 0.32);
  background: rgba(255, 255, 255, 0.7);
  color: var(--rm-teal);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  transition:
    background 220ms ease,
    border-color 220ms ease,
    color 220ms ease;
}

.impact-resource__action svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.impact-resource--video .impact-resource__action svg {
  fill: currentColor;
  stroke: none;
}

.impact-resource__action:hover {
  border-color: var(--rm-teal);
  background: var(--rm-teal);
  color: #ffffff;
}

.impact-resources__actions {
  display: flex;
  justify-content: center;
  margin-top: clamp(26px, 3vw, 38px);
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 560ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 560ms cubic-bezier(0.22, 1, 0.36, 1);
}

.impact-resources__actions.is-visible {
  opacity: 1;
  transform: none;
}


.founder-page--section {
  background:
    radial-gradient(circle at 88% 4%, rgba(0, 163, 180, 0.08), transparent 42%),
    linear-gradient(180deg, rgba(247, 250, 253, 0.92), rgba(255, 255, 255, 0.55));
}

.founder-page--section .founder-letter {
  padding-top: clamp(56px, 6vw, 96px);
}

.founder-page--section .founder-letter__return--forward {
  align-self: flex-start;
}

.founder-page--section .founder-letter__return--forward svg {
  transition: transform 220ms ease;
}

.founder-page--section .founder-letter__return--forward:hover svg {
  transform: translateX(4px);
}


@media (max-width: 1100px) {
  .impact-section__heading {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 16px;
  }

  .impact-section__title {
    max-width: 22ch;
  }

  .impact-pillars__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .impact-figures__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .impact-resources__rail {
    --resources-per-view: 2;
  }

  .impact-labels__rows {
    animation-duration: 48s;
  }

  .impact-label,
  .impact-label--full {
    flex-basis: clamp(360px, 72vw, 540px);
    --label-image-space: clamp(160px, 24%, 240px);
  }

  .founder-note__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
  }

  .founder-note__aside {
    position: static;
    grid-template-columns: 168px minmax(0, 1fr);
    align-items: center;
  }
}



@media (max-width: 760px) {
  .impact-section {
    padding-inline: 20px;
  }

  .impact-labels__viewport {
    margin-inline: -20px;
    padding-inline: 20px;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
  }

  .impact-pillars__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .impact-labels__rows {
    animation-duration: 42s;
  }

  .impact-figures__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  
  .impact-label,
  .impact-label--full {
    flex-basis: min(86vw, 430px);
    --label-image-space: 0px;
  }

  .impact-label__watermark {
    position: static;
    width: 128px;
    max-width: 45%;
    margin-bottom: 14px;
    transform: none;
    opacity: 0.5;
  }

  .impact-label--reverse .impact-label__watermark {
    right: auto;
  }

  .impact-label__content,
  .impact-label--reverse .impact-label__content {
    padding-left: 0;
    padding-right: 0;
  }

  .founder-note {
    padding-inline: 20px;
  }

  .founder-note__aside {
    grid-template-columns: minmax(0, 1fr);
  }

  .founder-note__portrait {
    max-width: 240px;
  }

  .impact-resources__rail {
    --resources-per-view: 1;
  }

  .impact-resource {
    grid-template-columns: minmax(0, 1fr) clamp(100px, 30%, 128px);
  }

  .impact-resource__title {
    font-size: 1.35rem;
  }
}


body.impact-page .impact-figures--home {
  background: #ffffff;
  padding-top: clamp(64px, 7vw, 112px);
  padding-bottom: clamp(72px, 8vw, 126px);
}

body.impact-page .impact-figures--home .home-stats-band__head,
body.impact-page .impact-figures--home .home-stats-band__inner {
  max-width: 1500px;
}

body.impact-page .impact-eyebrow,
body.impact-page .impact-figures--home .home-stats-band__eyebrow {
  display: none !important;
}

body.impact-page .impact-figures--home .home-stats-band__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-items: center;
  width: min(100%, 920px);
  max-width: 920px;
  text-align: center;
}

body.impact-page .impact-figures--home .home-stats-band__title {
  width: auto;
  max-width: 21ch;
  margin-inline: auto;
  justify-self: center;
  font-size: clamp(2.35rem, 4vw, 4rem) !important;
  text-align: center;
}

body.impact-page .impact-figures--home .home-stats-band__title br {
  display: block;
}

@media (max-width: 600px) {
  body.impact-page .impact-figures--home .home-stats-band__title {
    font-size: clamp(1.82rem, 8.4vw, 2.45rem);
    line-height: 1.02;
  }
}

body.impact-page .impact-figures--home .home-figure__icon svg {
  width: 44px;
  height: 44px;
}

body.impact-page .impact-figures--home .home-figure__unit {
  color: rgba(28, 53, 94, 0.56);
}

body.impact-page .impact-figures--home .home-figure__label {
  max-width: 22ch;
}


@media (max-width: 720px) {
  body.impact-page .impact-figures--home .home-figure {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "icon"
      "value"
      "label";
    justify-items: center;
    text-align: center;
    row-gap: 8px;
    padding: 26px 16px;
  }

  body.impact-page .impact-figures--home .home-figure strong {
    justify-content: center;
  }

  body.impact-page .impact-figures--home .home-figure__label {
    max-width: 26ch;
  }

  
  .founder-note__aside {
    justify-items: center;
  }

  .founder-note__portrait {
    max-width: 240px;
    margin-inline: auto;
  }

  .founder-note__identity {
    justify-items: center;
    text-align: center;
    padding-left: 0;
    padding-top: 12px;
    border-left: 0;
    border-top: 2px solid var(--rm-teal);
  }
}

@media (prefers-reduced-motion: reduce) {
  .impact-resources__rail {
    scroll-behavior: auto;
  }

  .impact-labels__viewport {
    overflow-x: auto;
    -webkit-mask-image: none;
    mask-image: none;
  }

  .impact-labels__rows {
    animation: none;
    width: max-content;
  }

  .impact-labels__set--clone {
    display: none;
  }

  .impact-section__head,
  .impact-pillar,
  .impact-label,
  .impact-figure,
  .impact-resource,
  .impact-resources__actions {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .impact-pillar:hover,
  .impact-label:hover,
  .impact-figure:hover,
  .impact-resource:hover {
    transform: none;
  }
}


:root {
  --rm-radius: 14px;
  --rm-radius-card: 12px;
  --rm-radius-card-inner: 10px;
  --rm-radius-button: 10px;
}

body:not(.path-admin) :where(
  [class$="-card"],
  [class*="-card "],
  [class$="-panel"],
  [class*="-panel "],
  [class$="-tile"],
  [class*="-tile "],
  [class$="-box"],
  [class*="-box "],
  .home-csr-list__row,
  .home-news__spotlight,
  .news-feature,
  .news-card,
  .impact-pillar,
  .impact-label,
  .impact-figure,
  .impact-resource,
  .cfx-axis,
  .cfx-sol,
  .cfx-deal,
  .cfx-member,
  .cfx-contact,
  .fd-panel
) {
  border-radius: var(--rm-radius-card);
}

body:not(.path-admin) .news-feature::before,
body:not(.path-admin) .news-card::before,
body:not(.path-admin) .home-csr-list__row::before,
body:not(.path-admin) .impact-pillar::before,
body:not(.path-admin) .impact-label::before,
body:not(.path-admin) .impact-resource::before {
  border-radius: var(--rm-radius-card-inner);
}

body:not(.path-admin) :where(
  .news-feature__media,
  .news-card__media,
  .home-news__spotlight img,
  [class$="-card"] [class$="__media"],
  [class*="-card "] [class$="__media"]
) {
  border-radius: var(--rm-radius-card-inner);
}

body:not(.path-admin) :where(
  [class$="-btn"],
  [class*="-btn "],
  [class$="__btn"],
  [class*="__btn "],
  [class$="__cta"],
  [class*="__cta "],
  .home-news__all,
  .cf-more-btn,
  .motors-hero__cta
):not(.hero-story__play):not(.story-modal__close):not(.trusted__motion-toggle) {
  border-radius: var(--rm-radius-button);
}


body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__layout--single {
  width: min(1140px, calc(100% - 72px));
}

body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__copy {
  max-width: 980px;
}

body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__super {
  max-width: 100%;
  white-space: nowrap;
}

body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__title--subline {
  max-width: min(100%, 19ch);
  font-size: clamp(2.1rem, 3vw, 3rem);
}

body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__lede {
  max-width: 940px;
}

body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__layout--single {
  width: min(1140px, calc(100% - 72px));
}

body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__copy {
  max-width: 980px;
}

body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__heading-stack--asset-management {
  display: grid;
  gap: clamp(26px, 2.8vw, 40px);
}

body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__super {
  max-width: 100%;
  margin: 0;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(0.98rem, 1.2vw, 1.22rem);
  font-weight: 300;
  line-height: 1.12;
  letter-spacing: -0.02em;
  white-space: nowrap;
}

body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__title--subline {
  max-width: min(100%, 14ch);
  margin: 0;
  font-size: clamp(1.88rem, 2.45vw, 2.45rem);
  line-height: 0.98;
}

body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__lede {
  max-width: 940px;
}

body.corporate-finance-page .cf-positioning-section .cf-shell {
  max-width: min(1240px, calc(100% - 72px));
}

body.corporate-finance-page .cf-positioning-cards {
  padding-left: clamp(24px, 2vw, 36px);
}

@media (max-width: 700px) {
  body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__layout--single {
    width: min(100% - 32px, 1140px);
  }

  body.corporate-finance-page .cf-positioning-cards {
    padding-left: 0;
  }

  body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__super {
    white-space: normal;
  }

  body.corporate-finance-page .cf-page__view.redmed-structured-page .cf-hero__title--subline {
    max-width: 12ch;
    font-size: clamp(2rem, 9.5vw, 2.9rem);
  }

  body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__layout--single {
    width: min(100% - 32px, 1140px);
  }

  body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__super {
    white-space: normal;
  }

  body.asset-management-page .cf-page__view.redmed-structured-page .cf-hero__title--subline {
    max-width: 12ch;
    font-size: clamp(2rem, 9.1vw, 2.8rem);
  }
}


body.asset-management-page :is(
  .cf-section__head .cf-title,
  .cf-strengths__head .cf-title,
  .home-stats-band__title
) {
  color: var(--rm-navy);
  font-size: clamp(3.5rem, 4.8vw, 4.8rem);
  line-height: 0.98;
  letter-spacing: -0.055em;
}

body.asset-management-page :is(
  .cf-section__head .cf-title,
  .cf-strengths__head .cf-title,
  .home-stats-band__title
)::after {
  width: 124px;
  height: 2px;
  margin-top: 14px;
}

body.asset-management-page .asset-management-governance-title {
  font-size: inherit;
}

body.asset-management-page .asset-management-positioning {
  padding: clamp(86px, 8vw, 132px) 0;
  background:
    radial-gradient(circle at 10% 18%, rgba(0, 163, 180, 0.06), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
}

body.asset-management-page .asset-management-positioning .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.asset-management-page .asset-management-positioning .cf-positioning-section__head {
  max-width: 820px;
  margin: 0 auto clamp(34px, 4vw, 58px);
}

body.asset-management-page .asset-management-positioning .cf-positioning-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(26px, 3vw, 42px);
  max-width: 1220px;
  margin: 0 auto;
  border-top: 0;
  align-items: start;
}

body.asset-management-page .asset-management-positioning .cf-positioning-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(18px, 2vw, 24px);
  justify-items: center;
  align-items: center;
  min-height: 0;
  padding: 0;
  border: 0;
  border-bottom: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  text-align: center;
  transform: none;
  translate: none;
}

body.asset-management-page .asset-management-positioning .cf-positioning-card::before {
  content: none;
}

body.asset-management-page .asset-management-positioning .cf-positioning-card:hover,
body.asset-management-page .asset-management-positioning .cf-positioning-card:focus-within {
  transform: none;
  translate: none;
  border-color: rgba(28, 53, 94, 0.12);
  background: transparent;
  box-shadow: none;
}

body.asset-management-page .asset-management-positioning .cf-positioning-card__icon {
  width: 72px;
  height: 72px;
  margin: 0;
  color: var(--rm-teal);
}

body.asset-management-page .asset-management-positioning .cf-positioning-card__body {
  display: grid;
  gap: 14px;
  justify-items: center;
}

body.asset-management-page .asset-management-positioning .cf-positioning-card__title {
  margin: 0;
  max-width: 14ch;
  color: var(--rm-navy);
  font-size: clamp(1.42rem, 1.7vw, 1.9rem);
  line-height: 1.08;
  text-wrap: balance;
}

body.asset-management-page .asset-management-positioning .cf-positioning-card__text {
  max-width: 32ch;
  margin: 0;
  color: rgba(28, 53, 94, 0.76);
  font-size: clamp(1rem, 1.04vw, 1.08rem);
  line-height: 1.72;
  text-wrap: balance;
}

body.asset-management-page .asset-management-positioning .cf-positioning-cards > .cf-positioning-card:nth-child(3) {
  grid-column: auto;
  width: auto;
  max-width: none;
  justify-self: stretch;
}

body.asset-management-page .rm-audience-section--asset-management-clients {
  background:
    radial-gradient(circle at 12% 16%, rgba(0, 163, 180, 0.05), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
}

body.asset-management-page .rm-audience-section--asset-management-clients .cf-shell {
  width: min(1180px, calc(100% - 88px));
}

body.asset-management-page .rm-audience-section--asset-management-clients .rm-audience-section__head {
  max-width: 860px;
  margin: 0 auto clamp(34px, 4vw, 50px);
}

body.asset-management-page .rm-audience-section--asset-management-clients .rm-audience-section__summary {
  max-width: 46ch;
  margin: 20px auto 0;
  color: rgba(28, 53, 94, 0.66);
  font-size: clamp(1rem, 1.02vw, 1.08rem);
  font-weight: 600;
  line-height: 1.72;
  text-align: center;
}

body.asset-management-page .am-client-figures {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 1120px;
  margin: clamp(26px, 3.5vw, 42px) auto 0;
  border-top: 1px solid rgba(28, 53, 94, 0.12);
  border-bottom: 1px solid rgba(28, 53, 94, 0.12);
}

body.asset-management-page .am-client-figure {
  display: grid;
  place-items: center;
  width: 33.3333%;
  min-height: 138px;
  padding: clamp(26px, 2.4vw, 34px) clamp(20px, 2vw, 28px);
  position: relative;
  box-sizing: border-box;
}

body.asset-management-page .am-client-figure::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 1px;
  background: rgba(28, 53, 94, 0.12);
}

body.asset-management-page .am-client-figure:nth-child(3n + 1)::before {
  content: none;
}

body.asset-management-page .am-client-figure:nth-child(n + 4) {
  border-top: 1px solid rgba(28, 53, 94, 0.12);
}

body.asset-management-page .am-client-figure__title {
  margin: 0;
  max-width: 15ch;
  color: var(--rm-navy);
  font-size: clamp(1.36rem, 1.72vw, 1.9rem);
  font-weight: 700;
  line-height: 1.08;
  text-align: center;
  text-wrap: balance;
}

body.asset-management-page .am-philosophy-rotator {
  width: min(1180px, 100%);
  margin: clamp(30px, 4vw, 44px) auto 0;
}

body.asset-management-page .am-philosophy-rotator__stage {
  display: grid;
  width: 100%;
  min-height: 318px;
}

body.asset-management-page .am-philosophy-card {
  grid-area: 1 / 1;
  width: 100%;
  opacity: 0;
  transform: translateY(20px) scale(0.985);
  filter: blur(8px);
  pointer-events: none;
  transition:
    opacity 760ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 760ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) :is(.cf-hero__title--subline, .cf-hero__super, .cf-section .cf-title, .home-stats-band__title, .rm-audience-section__title, .securities-bel__title, .securities-bel__super, .cf-positioning-card__title, .cf-approach-card__title, .cf-governance-card__title, .am-range-card__title, .am-philosophy-card__title, .rm-audience-figure__title, .cf-client-pill h3, .cf-solution-box h3, .cf-solution-box__lede, .cf-solution-modal__section-title, .cf-strength-tile__title, .home-figure strong) {
  font-weight: 300 !important;
}

body.asset-management-page .am-governance__message {
  font-weight: 400 !important;
}

body.asset-management-page .am-governance__lede,
body.asset-management-page .am-governance__lede strong,
body.asset-management-page .am-governance__lede b {
  font-weight: 300 !important;
}

body.asset-management-page .am-philosophy-cards {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(20px, 2.4vw, 30px) !important;
  align-items: stretch !important;
}

body.asset-management-page .am-philosophy-cards > .am-philosophy-card {
  grid-area: auto !important;
  grid-column: auto !important;
  grid-row: auto !important;
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: clamp(18px, 2vw, 26px) !important;
  align-items: start !important;
  align-content: start !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: clamp(26px, 2.7vw, 36px) !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
  pointer-events: auto !important;
  z-index: auto !important;
  overflow: hidden !important;
}

body.asset-management-page .am-philosophy-cards > .am-philosophy-card:nth-child(3) {
  grid-column: 1 / -1 !important;
  width: min(100%, 760px) !important;
  justify-self: center !important;
}

body.asset-management-page .am-philosophy-cards .cf-positioning-card__body {
  min-width: 0;
}

body.asset-management-page .am-philosophy-cards .cf-positioning-card__text {
  max-width: none !important;
}

@media (max-width: 980px) {
  body.asset-management-page .am-philosophy-cards {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.asset-management-page .am-philosophy-cards > .am-philosophy-card,
  body.asset-management-page .am-philosophy-cards > .am-philosophy-card:nth-child(3) {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
    justify-self: stretch !important;
  }
}

body.asset-management-page .am-philosophy-card.is-active {
  opacity: 1;
  transform: translateY(0) scale(1);
  filter: blur(0);
  pointer-events: auto;
}

body.asset-management-page .am-philosophy-rotator .am-philosophy-card:nth-child(3) {
  grid-column: auto;
  width: 100%;
  max-width: none;
  justify-self: stretch;
}

body.asset-management-page .am-philosophy-card__surface {
  width: 100%;
  max-width: 1120px;
  min-height: 318px;
  margin: 0 auto;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: clamp(24px, 2.4vw, 34px);
  align-items: start;
  padding: clamp(32px, 3vw, 42px);
  text-align: left;
}

body.asset-management-page .am-philosophy-card__copy {
  gap: 18px;
}

body.asset-management-page .am-philosophy-card__title {
  max-width: 16ch;
  font-size: clamp(2rem, 2.8vw, 2.8rem);
  line-height: 0.98;
}

body.asset-management-page .am-philosophy-card__text {
  max-width: 40ch;
  font-size: clamp(1rem, 1.04vw, 1.08rem);
}

body.asset-management-page .am-philosophy-rotator__controls {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  margin-top: 20px;
}

body.asset-management-page .am-philosophy-rotator__dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 1px solid rgba(0, 163, 180, 0.34);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  cursor: pointer;
  transition:
    width 220ms ease,
    background-color 220ms ease,
    border-color 220ms ease;
}

body.asset-management-page .am-philosophy-rotator__dot.is-active {
  width: 28px;
  border-color: var(--rm-teal);
  background: var(--rm-teal);
}

body.asset-management-page :is(
  .am-philosophy-card__surface,
  .am-governance__feature,
  .am-governance__media .cf-governance__media-frame,
  .cf-governance-card,
  .cf-client-pill,
  .cf-team-nav__btn
) {
  box-shadow: none;
}

body.asset-management-page .am-philosophy-card__surface,
body.asset-management-page .am-governance__feature,
body.asset-management-page .cf-governance-card,
body.asset-management-page .cf-client-pill {
  background: rgba(255, 255, 255, 0.97);
}

body.asset-management-page :is(
  .am-philosophy-card__surface,
  .cf-governance-card,
  .cf-client-pill,
  .cf-team-nav__btn
):hover,
body.asset-management-page :is(
  .am-philosophy-card__surface,
  .cf-governance-card,
  .cf-client-pill,
  .cf-team-nav__btn
):focus-within {
  transform: none;
  box-shadow: none;
}

body.asset-management-page .am-philosophy-card__surface::before {
  content: none;
}

body.asset-management-page .am-philosophy-card__icon,
body.asset-management-page .cf-governance-card__icon {
  background: rgba(239, 250, 252, 0.92);
}

body.asset-management-page .cf-section--funds {
  background: #ffffff;
}

body.asset-management-page .am-range-card {
  background: #ffffff;
  border: 1px solid rgba(28, 53, 94, 0.12);
  box-shadow: none;
}

body.asset-management-page .am-range-card:hover,
body.asset-management-page .am-range-card:focus-within {
  transform: none;
  border-color: rgba(28, 53, 94, 0.18);
  box-shadow: none;
}

body.asset-management-page .am-range-card__image,
body.asset-management-page .am-range-card__emblem {
  border-radius: 18px;
  box-shadow: none;
}

body.asset-management-page .am-range-card__image {
  border: 1px solid rgba(28, 53, 94, 0.08);
}

body.asset-management-page .am-range-card__emblem,
body.asset-management-page .am-range-card--money-market .am-range-card__emblem,
body.asset-management-page .am-range-card--short-term-bonds .am-range-card__emblem,
body.asset-management-page .am-range-card--bonds .am-range-card__emblem,
body.asset-management-page .am-range-card--diversified .am-range-card__emblem,
body.asset-management-page .am-range-card--equities .am-range-card__emblem {
  background: rgba(239, 250, 252, 0.94);
  border: 1px solid rgba(0, 163, 180, 0.14);
}

body.asset-management-page .am-range-card__emblem-icon {
  background: transparent;
  color: var(--rm-teal);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.asset-management-page .am-range-card__emblem-label {
  color: var(--rm-navy);
  font-size: 0.68rem;
  letter-spacing: 0.1em;
}

body.asset-management-page .cf-section--funds .am-range-card {
  background-image: none !important;
  background-color: #ffffff !important;
  border: 1px solid rgba(28, 53, 94, 0.12) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.asset-management-page .cf-section--funds .am-range-card:hover,
body.asset-management-page .cf-section--funds .am-range-card:focus-within {
  background-image: none !important;
  background-color: #ffffff !important;
  border-color: rgba(28, 53, 94, 0.18) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.asset-management-page .cf-section--funds .am-range-card__emblem,
body.asset-management-page .cf-section--funds .am-range-card--money-market .am-range-card__emblem,
body.asset-management-page .cf-section--funds .am-range-card--short-term-bonds .am-range-card__emblem,
body.asset-management-page .cf-section--funds .am-range-card--bonds .am-range-card__emblem,
body.asset-management-page .cf-section--funds .am-range-card--diversified .am-range-card__emblem,
body.asset-management-page .cf-section--funds .am-range-card--equities .am-range-card__emblem {
  background-image: none !important;
  background-color: rgba(239, 250, 252, 0.94) !important;
  border: 1px solid rgba(0, 163, 180, 0.14) !important;
  box-shadow: none !important;
}

body.asset-management-page .cf-section--funds .am-range-card__emblem-icon {
  background: transparent !important;
  color: var(--rm-teal) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.asset-management-page .cf-section--funds .am-range-card__emblem-label {
  color: var(--rm-navy) !important;
}

@media (max-width: 980px) {
  body.asset-management-page .asset-management-positioning .cf-shell {
    width: min(100% - 48px, 1180px);
  }

  body.asset-management-page .asset-management-positioning .cf-positioning-cards {
    gap: 24px;
  }

  body.asset-management-page .rm-audience-section--asset-management-clients .cf-shell {
    width: min(100% - 48px, 1180px);
  }

  body.asset-management-page .am-client-figure {
    width: 50%;
  }

  body.asset-management-page .am-client-figure:nth-child(2n + 1)::before {
    content: none;
  }

  body.asset-management-page .am-client-figure:nth-child(3n + 1)::before {
    content: "";
  }

  body.asset-management-page .am-client-figure:nth-child(n + 3) {
    border-top: 1px solid rgba(28, 53, 94, 0.12);
  }

  body.asset-management-page .am-philosophy-card__surface {
    min-height: 292px;
  }

  body.asset-management-page .am-philosophy-card__title {
    font-size: clamp(1.65rem, 4vw, 2.2rem);
  }
}

@media (max-width: 700px) {
  body.asset-management-page :is(
    .cf-section__head .cf-title,
    .cf-strengths__head .cf-title,
    .home-stats-band__title
  ) {
    font-size: clamp(2.3rem, 11vw, 3.5rem);
  }

  body.asset-management-page .asset-management-positioning .cf-shell {
    width: min(100% - 32px, 1180px);
  }

  body.asset-management-page .rm-audience-section--asset-management-clients .cf-shell {
    width: min(100% - 32px, 1180px);
  }

  body.asset-management-page .asset-management-positioning .cf-positioning-cards {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  body.asset-management-page .asset-management-positioning .cf-positioning-card {
    gap: 16px;
  }

  body.asset-management-page .asset-management-positioning .cf-positioning-card__icon {
    width: 60px;
    height: 60px;
  }

  body.asset-management-page .asset-management-positioning .cf-positioning-card__text {
    max-width: none;
  }

  body.asset-management-page .am-client-figures {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  body.asset-management-page .am-client-figure {
    width: 100%;
    min-height: 0;
    padding: 20px 0;
  }

  body.asset-management-page .am-client-figure::before {
    content: none;
  }

  body.asset-management-page .am-client-figure:nth-child(n + 2) {
    border-top: 1px solid rgba(28, 53, 94, 0.12);
  }

  body.asset-management-page .am-client-figure__title {
    max-width: none;
    font-size: 1.08rem;
  }

  body.asset-management-page .am-philosophy-rotator__stage {
    min-height: 0;
  }

  body.asset-management-page .am-philosophy-card__surface {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 26px 22px;
  }

  body.asset-management-page .am-philosophy-card__title {
    max-width: none;
    font-size: clamp(1.4rem, 7vw, 1.8rem);
  }

  body.asset-management-page .am-philosophy-card__text {
    max-width: none;
  }
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) :is(.cf-hero__title--subline, .cf-hero__super, .cf-section .cf-title, .home-stats-band__title, .rm-audience-section__title, .securities-bel__title, .securities-bel__super, .cf-positioning-card__title, .cf-approach-card__title, .cf-governance-card__title, .am-range-card__title, .am-philosophy-card__title, .rm-audience-figure__title, .cf-client-pill h3, .cf-solution-box h3, .cf-solution-box__lede, .cf-solution-modal__section-title, .cf-strength-tile__title, .home-figure strong) {
  font-weight: 300 !important;
}

body.asset-management-page .am-governance__message {
  font-weight: 400 !important;
}

body.asset-management-page .am-philosophy-cards {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(20px, 2.4vw, 30px) !important;
  align-items: stretch !important;
}

body.asset-management-page .am-philosophy-cards > .am-philosophy-card {
  grid-area: auto !important;
  grid-column: auto !important;
  grid-row: auto !important;
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: clamp(18px, 2vw, 26px) !important;
  align-items: start !important;
  align-content: start !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: clamp(26px, 2.7vw, 36px) !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
  pointer-events: auto !important;
  z-index: auto !important;
  overflow: hidden !important;
}

body.asset-management-page .am-philosophy-cards > .am-philosophy-card:nth-child(3) {
  grid-column: 1 / -1 !important;
  width: min(100%, 760px) !important;
  justify-self: center !important;
}

body.asset-management-page .am-philosophy-cards .cf-positioning-card__body {
  min-width: 0;
}

body.asset-management-page .am-philosophy-cards .cf-positioning-card__text {
  max-width: none !important;
}

@media (max-width: 980px) {
  body.asset-management-page .am-philosophy-cards {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.asset-management-page .am-philosophy-cards > .am-philosophy-card,
  body.asset-management-page .am-philosophy-cards > .am-philosophy-card:nth-child(3) {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
    justify-self: stretch !important;
  }
}



.site-search[hidden] {
  display: none !important;
}

.site-search {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 24px clamp(16px, 5vw, 48px);
}

.site-search__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(13, 27, 48, 0.42);
  backdrop-filter: blur(6px);
  animation: siteSearchFade 220ms ease both;
}

.site-search__panel {
  position: relative;
  width: min(760px, 100%);
  padding: clamp(10px, 1.5vw, 14px);
  border-radius: 34px;
  border: 1px solid rgba(255, 255, 255, 0.66);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.77), rgba(220, 235, 246, 0.53));
  box-shadow: 0 32px 84px rgba(4, 21, 43, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.72), inset 0 -1px 0 rgba(22, 91, 127, 0.08);
  -webkit-backdrop-filter: blur(32px) saturate(155%);
  backdrop-filter: blur(32px) saturate(155%);
}

.site-search__form {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}

.site-search__input {
  flex: 1 1 auto;
  min-width: 0;
  height: 48px;
  padding: 0 16px 0 20px;
  border: 0;
  background: transparent;
  color: var(--rm-navy);
  font: inherit;
  font-size: clamp(1.05rem, 2.2vw, 1.35rem);
  transition: color 180ms ease;
}

.site-search__input::placeholder {
  color: rgba(28, 53, 94, 0.45);
}

.site-search__input:focus {
  outline: none;
}

.site-search__input::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.site-search__close {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.34);
  color: var(--rm-navy);
  cursor: pointer;
  transition: background 180ms ease, color 180ms ease;
}

.site-search__submit {
  position: relative;
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(28, 53, 94, 0.94);
  color: #fff;
  font: inherit;
  cursor: pointer;
  transition: background-color 180ms ease, transform 180ms ease;
}

.site-search__submit svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: opacity 160ms ease, transform 160ms ease;
}

.site-search__submit::before {
  position: absolute;
  width: 19px;
  height: 19px;
  border: 3px solid rgba(255, 255, 255, 0.22);
  border-top-color: #fff;
  border-right-color: #fff;
  border-radius: 50%;
  content: "";
  opacity: 0;
  transform: rotate(0deg);
  will-change: transform;
}

.site-search__form.is-searching .site-search__submit {
  background: var(--rm-teal);
  cursor: wait;
  pointer-events: none;
  transform: none;
  animation: siteSearchButtonPulse 520ms ease-in-out infinite alternate;
}

.site-search__form.is-searching .site-search__submit svg {
  opacity: 0;
  transform: scale(0.65);
}

.site-search__form.is-searching .site-search__submit::before {
  opacity: 1;
  animation: siteSearchSpin 520ms linear infinite;
}

.site-search__form.is-searching .site-search__input {
  caret-color: transparent;
  opacity: 0.72;
}

.site-search__form.is-searching .site-search__close {
  opacity: 0.42;
  pointer-events: none;
}

.site-search__submit:hover,
.site-search__submit:focus-visible {
  background: var(--rm-teal);
  transform: translateY(-1px);
}

.site-search__submit:focus-visible {
  outline: 3px solid rgba(0, 163, 180, 0.28);
  outline-offset: 2px;
}

.site-search__close svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
}

.site-search__close:hover {
  background: var(--rm-teal);
  color: #fff;
}

.site-search__close:focus-visible {
  outline: 3px solid var(--rm-teal);
  outline-offset: 2px;
}


.site-search__status {
  margin: 0;
  color: rgba(28, 53, 94, 0.66);
  font-size: 0.92rem;
}

.site-search__status:not(:empty) {
  margin-top: 14px;
}

body.site-search-open {
  overflow: hidden;
}

@keyframes siteSearchFade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes siteSearchSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes siteSearchButtonPulse {
  from { box-shadow: 0 0 0 0 rgba(0, 163, 180, 0.32); }
  to { box-shadow: 0 0 0 7px rgba(0, 163, 180, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .site-search__backdrop {
    animation: none;
  }
}

@media (max-width: 560px) {
  .site-search__panel {
    padding: 10px;
    border-radius: 34px;
  }

  .site-search__form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px 44px;
  }

  .site-search__submit {
    grid-column: auto;
  }
}


body:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .icon-button[data-action="search-placeholder"] {
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.66);
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(16, 55, 101, 0.92), rgba(0, 163, 180, 0.84));
  box-shadow:
    0 14px 34px rgba(17, 29, 51, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.34);
  -webkit-backdrop-filter: blur(14px) saturate(1.15);
  backdrop-filter: blur(14px) saturate(1.15);
}

body:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .icon-button[data-action="search-placeholder"] svg {
  width: 20px;
  height: 20px;
  stroke-width: 2;
}

body:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .icon-button[data-action="search-placeholder"]:hover,
body:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .icon-button[data-action="search-placeholder"]:focus-visible {
  color: #ffffff;
  background: linear-gradient(135deg, #00a3b4, #103765);
  box-shadow:
    0 18px 38px rgba(17, 29, 51, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.42);
  outline: none;
}

body.static-image-version.home-mode.index2-page:not(.home-hero-white-slider):not(.home-hero-video-slider) .motors-hero__message {
  padding-left: 0;
}

body.static-image-version.home-mode.index2-page:not(.home-hero-white-slider):not(.home-hero-video-slider) .motors-hero__message::before {
  content: none;
  display: none;
}

body.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta {
  min-height: 52px;
  padding: 0 26px 0 30px;
  border: 0;
  border-radius: 999px;
  color: #ffffff;
  background:
    linear-gradient(135deg, #00a3b4 0%, #0e6f86 48%, #103765 100%);
  box-shadow:
    0 20px 44px rgba(17, 29, 51, 0.2),
    0 8px 18px rgba(0, 163, 180, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.34);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transform: translateZ(0);
}

body.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta::after {
  content: "";
  width: 8px;
  height: 8px;
  margin-left: 13px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  transition: transform 180ms ease;
}

body.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta:hover,
body.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta:focus-visible {
  color: #ffffff;
  background:
    linear-gradient(135deg, #103765 0%, #0e6f86 48%, #00a3b4 100%);
  box-shadow:
    0 24px 50px rgba(17, 29, 51, 0.26),
    0 10px 22px rgba(0, 163, 180, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.4);
  outline: none;
  transform: translateY(-2px);
}

body.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta:hover::after,
body.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta:focus-visible::after {
  transform: translateX(3px) rotate(-45deg);
}

@media (max-width: 700px) {
  body:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .icon-button[data-action="search-placeholder"] {
    width: 40px;
    height: 40px;
  }

  body.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta {
    min-height: 46px;
    padding: 0 22px 0 24px;
    font-size: 0.68rem;
    letter-spacing: 0.07em;
  }
}


body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slides {
  overflow: hidden;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide {
  opacity: 1;
  visibility: hidden;
  transform: none;
  transition: none;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-entering {
  visibility: visible;
  pointer-events: none;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-entering-from-next .motors-hero__video-shell {
  transition: none !important;
  transform: translate(50%, -50%) !important;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-entering-from-next .motors-hero__scrim {
  transition: none !important;
  transform: translateX(100%) !important;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-entering-from-previous .motors-hero__video-shell {
  transition: none !important;
  transform: translate(-150%, -50%) !important;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-entering-from-previous .motors-hero__scrim {
  transition: none !important;
  transform: translateX(-100%) !important;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide .motors-hero__video-shell {
  transform: translate(50%, -50%);
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide .motors-hero__scrim {
  transform: translateX(100%);
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction="previous"] .motors-hero__slide .motors-hero__video-shell {
  transform: translate(-150%, -50%);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction="previous"] .motors-hero__slide .motors-hero__scrim {
  transform: translateX(-100%);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-active {
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
  transition-delay: 0s;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-active .motors-hero__video-shell {
  transform: translate(-50%, -50%);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-active .motors-hero__scrim {
  transform: translateX(0);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction] .motors-hero__slide.is-active .motors-hero__video-shell {
  transform: translate(-50%, -50%);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction] .motors-hero__slide.is-active .motors-hero__scrim {
  transform: translateX(0);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel .motors-hero__slide.is-leaving {
  visibility: visible;
  pointer-events: none;
  transition-delay: 0s;
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction="next"] .motors-hero__slide.is-leaving .motors-hero__video-shell {
  transform: translate(-150%, -50%);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction="next"] .motors-hero__slide.is-leaving .motors-hero__scrim {
  transform: translateX(-100%);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction="previous"] .motors-hero__slide.is-leaving .motors-hero__video-shell {
  transform: translate(50%, -50%);
}

body.static-image-version.home-mode.index2-page:is(.home-hero-white-slider, .home-hero-blue-slider, .home-hero-video-slider) .motors-hero--carousel[data-home-hero-direction="previous"] .motors-hero__slide.is-leaving .motors-hero__scrim {
  transform: translateX(100%);
}

body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide {
  opacity: 0;
  visibility: hidden;
  transform: none;
  transition:
    opacity 720ms ease,
    visibility 0s linear 720ms;
}

body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide.is-active,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide.is-entering {
  opacity: 1;
  visibility: visible;
  transition:
    opacity 720ms ease,
    visibility 0s linear 0s;
}

body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide.is-leaving {
  opacity: 0;
  visibility: visible;
  transition:
    opacity 720ms ease,
    visibility 0s linear 720ms;
}

body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide .motors-hero__video-shell,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel[data-home-hero-direction] .motors-hero__slide .motors-hero__video-shell,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide.is-entering .motors-hero__video-shell,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide.is-leaving .motors-hero__video-shell {
  transform: translate(-50%, -50%) !important;
  transition: none !important;
}

body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide .motors-hero__scrim,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel[data-home-hero-direction] .motors-hero__slide .motors-hero__scrim,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide.is-entering .motors-hero__scrim,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide.is-leaving .motors-hero__scrim {
  transform: translateX(0) !important;
  transition: none !important;
}

body.home-hero-blue-slider.static-image-version.home-mode.index2-page.home-hero-reveal .motors-hero--staged .motors-hero__slide .motors-hero__video-shell {
  animation: none;
  opacity: 1;
}

body.home-hero-blue-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__statement {
  color: #103765;
}

body.static-image-version.home-mode.index2-page:not(.home-hero-white-slider):not(.home-hero-video-slider) .site-header .brand-link__wordmark--inverse {
  opacity: 0 !important;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .brand-link {
  width: 146px;
  min-width: 146px;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .brand-link__wordmark--default,
body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .brand-link__mark {
  opacity: 0 !important;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header .brand-link__wordmark--inverse {
  clip-path: inset(0 0 0 0);
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header:not(.is-compact) .menu-burger {
  color: #ffffff;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header:not(.is-compact) .menu-burger:hover,
body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header:not(.is-compact) .menu-burger:focus-visible {
  background: rgba(255, 255, 255, 0.14);
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page.home-hero-reveal .motors-hero--staged .motors-hero__slide .motors-hero__video-shell {
  animation: none;
  opacity: 1;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__scrim {
  background:
    linear-gradient(90deg, rgba(6, 18, 38, 0.82) 0%, rgba(8, 25, 48, 0.64) 34%, rgba(8, 25, 48, 0.26) 58%, rgba(8, 25, 48, 0.04) 82%),
    linear-gradient(180deg, rgba(5, 15, 32, 0.24) 0%, rgba(5, 15, 32, 0.1) 42%, rgba(5, 15, 32, 0.34) 100%);
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__message {
  width: min(920px, calc(100% - var(--home-header-start, 24px) - 132px));
  padding-left: 0;
  color: #ffffff;
}


body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__message {
  left: 50%;
  top: 50%;
  width: min(1200px, calc(100% - 48px));
  display: grid;
  justify-items: center;
  transform: translate(-50%, -50%);
  text-align: center;
}

body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__eyebrow,
body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__lead {
  color: #ffffff;
  font-weight: 150;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__message::before {
  content: none;
  display: none;
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__statement {
  color: #ffffff;
  text-shadow:
    0 2px 12px rgba(4, 15, 30, 0.44),
    0 18px 48px rgba(4, 15, 30, 0.42);
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta {
  min-height: 52px;
  padding: 0 26px 0 30px;
  border: 1px solid rgba(255, 255, 255, 0.32);
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.08) 48%, rgba(0, 163, 180, 0.1)),
    radial-gradient(circle at 18% 8%, rgba(255, 255, 255, 0.34), transparent 38%);
  box-shadow:
    0 18px 42px rgba(4, 15, 30, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.44),
    inset 0 -14px 28px rgba(255, 255, 255, 0.08);
  text-shadow: 0 1px 10px rgba(4, 15, 30, 0.28);
  -webkit-backdrop-filter: blur(16px) saturate(1.22);
  backdrop-filter: blur(16px) saturate(1.22);
}

body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta:hover,
body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__cta:focus-visible {
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.52);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.28), rgba(255, 255, 255, 0.12) 48%, rgba(0, 163, 180, 0.16)),
    radial-gradient(circle at 18% 8%, rgba(255, 255, 255, 0.46), transparent 40%);
  box-shadow:
    0 22px 50px rgba(4, 15, 30, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.58),
    inset 0 -14px 28px rgba(255, 255, 255, 0.12);
}

@media (prefers-reduced-motion: reduce) {
  body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide .motors-hero__video-shell,
  body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__slide .motors-hero__scrim {
    transition: visibility 0s linear 850ms;
  }
}

@media (max-width: 700px) {
  body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__scrim {
    background:
      linear-gradient(180deg, rgba(5, 15, 32, 0.72) 0%, rgba(5, 15, 32, 0.4) 38%, rgba(5, 15, 32, 0.18) 68%, rgba(5, 15, 32, 0.46) 100%),
      linear-gradient(90deg, rgba(5, 15, 32, 0.62) 0%, rgba(5, 15, 32, 0.18) 100%);
  }

  body:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__message {
    width: calc(100% - var(--home-header-start, 24px) - 24px);
  }

  body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__message {
    left: 50%;
    top: 50%;
    width: calc(100% - 40px);
    transform: translate(-50%, -50%);
  }
}


body.next-menu-version .site-header--next-menu {
  z-index: 82;
  padding: 0;
}

body.next-menu-version.page-mode .site-header--next-menu {
  padding-top: 6px;
}

body.next-menu-version {
  --next-menu-hole-left: 24px;
  --next-menu-hole-top: 0px;
  --next-menu-hole-width: calc(100vw - 48px);
  --next-menu-hole-height: 340px;
}

body.next-menu-version::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 76;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  background: rgba(6, 14, 26, 0.55);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  -webkit-mask: none;
  mask: none;
  transition:
    opacity 280ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 280ms;
}

body.next-menu-version.next-menu-open::before {
  visibility: visible;
  opacity: 1;
}

body.next-menu-version.home-mode.site-intro .site-header,
body.next-menu-version.home-mode.site-intro.site-intro-ready .site-header,
body.next-menu-version.home-mode.home-hero-reveal:not(.home-hero-ready) .site-header,
body.next-menu-version.home-mode.home-hero-ready .site-header {
  opacity: 1;
  transform: none;
  animation: none;
  pointer-events: auto;
}

body.next-menu-version .site-header--next-menu .next-menu-scrim {
  display: none;
}

body.next-menu-version.next-menu-open .site-header--next-menu .next-menu-scrim {
  display: none;
}

body.next-menu-version.has-scrolled .site-header--next-menu .next-menu-scrim,
body.next-menu-version .site-header--next-menu.is-compact .next-menu-scrim {
  top: 0;
}

body.next-menu-version .site-header--next-menu .next-menu-utility {
  position: relative;
  z-index: 12;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 22px;
  min-height: 40px;
  max-height: 40px;
  width: 100%;
  max-width: 1496px;
  margin: 0 auto;
  padding: 0 32px;
  overflow: visible;
  color: rgba(239, 248, 248, 0.92);
  transition:
    max-height 320ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 320ms cubic-bezier(0.22, 1, 0.36, 1);
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

body.next-menu-version.has-scrolled .site-header--next-menu .next-menu-utility,
body.next-menu-version .site-header--next-menu.is-compact .next-menu-utility {
  max-height: 0;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}

body.next-menu-version .next-menu-utility__link {
  color: inherit;
  font-size: 0.69rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.18em;
  text-decoration: none;
  text-transform: uppercase;
  text-shadow: none;
  transition: opacity 180ms ease;
}

body.next-menu-version .next-menu-utility__link:hover,
body.next-menu-version .next-menu-utility__link:focus-visible {
  opacity: 0.72;
  outline: none;
}

body.next-menu-version .site-header--next-menu .next-menu-utility__lang {
  position: relative;
  z-index: 24;
  min-height: 30px;
  padding: 0;
  border: 1px solid rgba(239, 248, 248, 0.35);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(239, 248, 248, 0.92);
  overflow: visible;
  -webkit-backdrop-filter: blur(12px) saturate(1.18);
  backdrop-filter: blur(12px) saturate(1.18);
}

body.next-menu-version.page-mode .site-header--next-menu .next-menu-utility {
  color: #103765;
  max-width: 1280px;
  padding: 0 24px;
}

body.next-menu-version.page-mode .site-header--next-menu .next-menu-utility__lang {
  border-color: rgba(16, 55, 101, 0.16);
  background: rgba(255, 255, 255, 0.42);
  color: #103765;
}

body.next-menu-version .redmed-language-switch--dropdown summary {
  list-style: none;
}

body.next-menu-version .redmed-language-switch--dropdown summary::-webkit-details-marker {
  display: none;
}

body.next-menu-version .redmed-language-switch__summary {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 30px;
  padding: 0 10px 0 12px;
  color: inherit;
  font-size: 0.72rem;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
}

body.next-menu-version .redmed-language-switch__globe {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.next-menu-version .redmed-language-switch__summary::after {
  content: "";
  width: 6px;
  height: 6px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 180ms ease;
}

body.next-menu-version .redmed-language-switch--dropdown[open] .redmed-language-switch__summary::after {
  transform: translateY(1px) rotate(225deg);
}

body.next-menu-version .redmed-language-switch__menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 100;
  min-width: 74px;
  padding: 6px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
  backdrop-filter: blur(18px) saturate(1.3);
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .redmed-language-switch__menu {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(8, 31, 56, 0.34);
}

body.next-menu-version .redmed-language-switch--dropdown .redmed-language-switch__link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  border-radius: 8px;
  color: #103765;
  font-size: 0.72rem;
  font-weight: 600;
  text-decoration: none;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .redmed-language-switch--dropdown .redmed-language-switch__link {
  color: #eff8f8;
}

body.next-menu-version .redmed-language-switch--dropdown .redmed-language-switch__link:hover,
body.next-menu-version .redmed-language-switch--dropdown .redmed-language-switch__link:focus-visible,
body.next-menu-version .redmed-language-switch--dropdown .redmed-language-switch__link.is-active {
  background: rgba(0, 163, 180, 0.12);
  color: #007d95;
  outline: none;
}

body.next-menu-version .site-header--next-menu .site-header__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1496px;
  margin: 0 auto;
  padding: 0 32px;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body.next-menu-version.page-mode .site-header--next-menu .site-header__inner {
  max-width: 1280px;
  padding: 0 24px;
}

body.next-menu-version .site-header--next-menu .site-header__shell {
  min-height: 58px;
  padding: 8px 0 8px 20px;
  border: 0;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.64);
  box-shadow: none;
  -webkit-backdrop-filter: saturate(150%) blur(22px);
  backdrop-filter: saturate(150%) blur(22px);
}

body.next-menu-version.page-mode .site-header--next-menu .site-header__shell {
  background: rgba(255, 255, 255, 0.58);
}

body.next-menu-version.page-mode.next-menu-open .site-header--next-menu .site-header__shell {
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.99), rgba(249, 252, 254, 0.98));
  -webkit-backdrop-filter: saturate(105%) blur(8px);
  backdrop-filter: saturate(105%) blur(8px);
}

body.next-menu-version .site-header--next-menu.is-page.is-compact .site-header__inner {
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  overflow: visible;
}

body.next-menu-version .site-header--next-menu.is-page.is-compact .site-header__shell {
  border: 0;
  border-radius: 18px;
  box-shadow: none;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .site-header__shell {
  border-color: transparent;
  background: transparent;
  padding-right: 0;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body.next-menu-version .site-header--next-menu.is-compact .site-header__shell {
  min-height: 56px;
  border-color: rgba(28, 53, 94, 0.12);
  background: rgba(255, 255, 255, 0.76);
  box-shadow: none;
  -webkit-backdrop-filter: saturate(155%) blur(24px);
  backdrop-filter: saturate(155%) blur(24px);
}

body.next-menu-version .site-header--next-menu .header-start {
  gap: 0;
}

body.next-menu-version .site-header--next-menu .menu-burger {
  display: none;
  color: #103765;
  text-shadow: none;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .menu-burger {
  color: #eff8f8 !important;
}

body.next-menu-version .site-header--next-menu .menu-burger span {
  background: currentColor !important;
}

body.next-menu-version .site-header--next-menu .menu-burger:hover,
body.next-menu-version .site-header--next-menu .menu-burger:focus-visible {
  background: rgba(255, 255, 255, 0.14);
  outline: none;
}

body.next-menu-version .site-header--next-menu .brand-link {
  width: 148px;
  min-width: 148px;
}

body.next-menu-version .site-header--next-menu .brand-link__wordmark {
  transition: none;
}

body.next-menu-version .site-header--next-menu .brand-link__wordmark--default,
body.next-menu-version .site-header--next-menu.is-compact .brand-link__wordmark--default {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body.next-menu-version .site-header--next-menu .brand-link__mark,
body.next-menu-version .site-header--next-menu .brand-link__wordmark--inverse {
  opacity: 0 !important;
}

body.next-menu-version .site-header--next-menu .brand-link__wordmark--default {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .brand-link__wordmark--default,
body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .brand-link__mark {
  opacity: 0 !important;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .brand-link__wordmark--inverse {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
  filter: none;
}

body.next-menu-version .site-header--next-menu.is-compact .brand-link {
  width: 146px;
  min-width: 146px;
}

body.next-menu-version .site-header--next-menu.is-compact .brand-link__wordmark--inverse,
body.next-menu-version .site-header--next-menu.is-compact .brand-link__mark {
  opacity: 0 !important;
}

body.next-menu-version:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header--next-menu.is-compact .brand-link__wordmark--default {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body.next-menu-version:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header--next-menu.is-compact .brand-link__wordmark--inverse,
body.next-menu-version:is(.home-hero-white-slider, .home-hero-video-slider).static-image-version.home-mode.index2-page .site-header--next-menu.is-compact .brand-link__mark {
  opacity: 0 !important;
}

body.next-menu-version .site-header--next-menu .header-context,
body.next-menu-version .site-header--next-menu .context-tabs {
  display: none;
}

body.next-menu-version .site-header--next-menu .next-menu-nav {
  display: flex;
  flex: 1 1 auto;
  justify-content: center;
  gap: 2px;
  min-width: 0;
}

body.next-menu-version .site-header--next-menu .next-menu-nav__item {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 9px;
  border-radius: 0;
  color: #103765;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0;
  text-decoration: none;
  text-shadow: none;
  transition: color 180ms ease;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item,
body.next-menu-version.static-image-version.home-mode.index2-page .site-header--next-menu:not(.is-compact) .next-menu-nav__item {
  color: #eff8f8 !important;
}

body.next-menu-version .site-header--next-menu .next-menu-nav__item::after {
  content: "";
  position: absolute;
  right: 12px;
  bottom: 7px;
  left: 12px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #00a3b4, #7db8d6);
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition:
    opacity 180ms ease,
    transform 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.next-menu-version .site-header--next-menu .next-menu-nav__item:hover,
body.next-menu-version .site-header--next-menu .next-menu-nav__item:focus-visible,
body.next-menu-version .site-header--next-menu .next-menu-nav__item.is-open {
  color: #007d95;
  background: transparent;
  box-shadow: none;
  outline: none;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item:hover,
body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item:focus-visible,
body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item.is-open,
body.next-menu-version.static-image-version.home-mode.index2-page .site-header--next-menu:not(.is-compact) .next-menu-nav__item:hover,
body.next-menu-version.static-image-version.home-mode.index2-page .site-header--next-menu:not(.is-compact) .next-menu-nav__item:focus-visible,
body.next-menu-version.static-image-version.home-mode.index2-page .site-header--next-menu:not(.is-compact) .next-menu-nav__item.is-open {
  color: #ffffff !important;
}

body.next-menu-version .site-header--next-menu.is-compact .menu-burger,
body.next-menu-version .site-header--next-menu.is-compact .next-menu-nav__item {
  color: #103765 !important;
}

body.next-menu-version .site-header--next-menu.is-compact .next-menu-nav__item:hover,
body.next-menu-version .site-header--next-menu.is-compact .next-menu-nav__item:focus-visible,
body.next-menu-version .site-header--next-menu.is-compact .next-menu-nav__item.is-open {
  color: #007d95 !important;
}

body.next-menu-version .site-header--next-menu .next-menu-nav__item:hover::after,
body.next-menu-version .site-header--next-menu .next-menu-nav__item:focus-visible::after,
body.next-menu-version .site-header--next-menu .next-menu-nav__item.is-open::after {
  opacity: 1;
  transform: scaleX(1);
}

body.next-menu-version .site-header--next-menu .next-menu-tools {
  flex: 0 0 auto;
  gap: 12px;
}

body.next-menu-version .next-menu-search {
  position: relative;
  display: flex;
  align-items: center;
}

body.next-menu-version .next-menu-search--utility {
  display: none;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-utility {
  gap: 16px;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search--utility {
  display: none;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search--shell {
  visibility: visible;
  pointer-events: auto;
}

body.next-menu-version .next-menu-search::before {
  content: none;
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 13px;
  width: 18px;
  height: 18px;
  display: block;
  background: rgba(16, 55, 101, 0.76);
  opacity: 1;
  pointer-events: none;
  transform: translateY(-50%);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%2024%2024%27%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272.3%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2711%27%20r%3D%276.5%27/%3E%3Cpath%20d%3D%27m16%2016%204.5%204.5%27/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%2024%2024%27%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272.3%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2711%27%20r%3D%276.5%27/%3E%3Cpath%20d%3D%27m16%2016%204.5%204.5%27/%3E%3C/svg%3E") center / contain no-repeat;
}

body.next-menu-version .next-menu-search__icon {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 13px;
  display: block;
  width: 18px;
  height: 18px;
  color: rgba(16, 55, 101, 0.76);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.3;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
  transform: translateY(-50%);
}

body.next-menu-version .next-menu-search__input {
  position: relative;
  z-index: 1;
  width: 164px;
  height: 38px;
  padding: 0 14px 0 36px;
  border: 1px solid rgba(16, 55, 101, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.54);
  color: #103765;
  font-size: 0.86rem;
  outline: none;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

body.next-menu-version .next-menu-search__input::placeholder {
  color: rgba(16, 55, 101, 0.58);
}

body.next-menu-version .next-menu-search__input:focus {
  border-color: rgba(125, 184, 214, 0.72);
  background: rgba(255, 255, 255, 0.82);
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search__icon {
  display: block;
  width: 22px;
  height: 22px;
  color: rgba(239, 248, 248, 0.92);
}

body.next-menu-version.home-mode .site-header--next-menu .next-menu-search__icon {
  width: 22px;
  height: 22px;
}

body.next-menu-version.home-mode .site-header--next-menu .next-menu-search__input {
  padding-left: 42px;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search::before {
  width: 22px;
  height: 22px;
  background: rgba(239, 248, 248, 0.92);
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search__input {
  padding-left: 42px;
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.12);
  color: #eff8f8;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search__input::placeholder {
  color: rgba(239, 248, 248, 0.62);
}

body.next-menu-version .site-header--next-menu.is-compact .next-menu-search__icon {
  color: rgba(16, 55, 101, 0.58);
}

body.next-menu-version .site-header--next-menu.is-compact .next-menu-search__input {
  border-color: rgba(16, 55, 101, 0.16);
  background: rgba(255, 255, 255, 0.72);
  color: #103765;
}

body.next-menu-version .site-header--next-menu.is-compact .next-menu-search__input::placeholder {
  color: rgba(16, 55, 101, 0.58);
}

body.next-menu-version .next-menu-actions {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  white-space: nowrap;
}

body.next-menu-version .next-menu-action {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  color: #103765;
  font-size: 0.66rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.14em;
  text-decoration: none;
  text-transform: uppercase;
  text-shadow: none;
  transition: color 180ms ease, opacity 180ms ease;
}

body.next-menu-version .next-menu-action:hover,
body.next-menu-version .next-menu-action:focus-visible {
  color: #007d95;
  outline: none;
}

body.next-menu-version .next-menu-lang {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(16, 55, 101, 0.14);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.42);
  color: #103765;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

body.next-menu-version .next-menu-lang .redmed-language-switch__link {
  min-width: 22px;
  min-height: 28px;
  font-size: 0.7rem;
  font-weight: 700;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-action {
  color: #eff8f8;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-action:hover,
body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-action:focus-visible {
  color: #ffffff;
}

body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-lang {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.12);
  color: #eff8f8;
}

body.next-menu-version .site-header--next-menu .next-menu-panels {
  top: calc(100% - 4px);
  right: auto;
  left: 50%;
  width: min(calc(100vw - 48px), 1280px);
  padding-top: 10px;
  transform: translate(-50%, -4px);
}

body.next-menu-version.page-mode .site-header--next-menu .next-menu-panels {
  width: min(calc(100vw - 96px), 1232px);
}

body.next-menu-version .site-header--next-menu .next-menu-panels.is-visible {
  transform: translate(-50%, 0);
}

body.next-menu-version .site-header--next-menu .next-menu-panel {
  overflow: visible;
  border: 1px solid rgba(255, 255, 255, 0.88);
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.99), rgba(249, 252, 254, 0.98));
  box-shadow: none;
  -webkit-backdrop-filter: saturate(105%) blur(8px);
  backdrop-filter: saturate(105%) blur(8px);
}

body.next-menu-version.page-mode.next-menu-open .site-header--next-menu .next-menu-panel {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(249, 252, 254, 0.99));
}

body.next-menu-version .next-menu-panel__layout {
  display: grid;
  grid-template-columns: minmax(190px, 230px) minmax(0, 1fr);
  gap: 28px;
  min-height: 156px;
  padding: 24px 32px;
}

body.next-menu-version .next-menu-panel__layout--links-only {
  grid-template-columns: minmax(0, 1fr);
}

body.next-menu-version .next-menu-panel__intro {
  align-self: stretch;
  padding-right: 32px;
  border-right: 1px solid rgba(28, 53, 94, 0.12);
}

body.next-menu-version .next-menu-panel__title {
  margin: 0;
  color: #1c355e;
  font-size: 1.12rem;
  font-weight: 700;
  line-height: 1.16;
}

body.next-menu-version .next-menu-panel__bar,
body.next-menu-version .next-menu-card__bar {
  display: block;
  width: 36px;
  height: 2px;
  margin: 12px 0;
  border-radius: 999px;
  background: #266b8e;
  transition:
    width 220ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 180ms ease;
}

body.next-menu-version .next-menu-panel__text {
  margin: 0;
  color: #5d6f89;
  font-size: 0.8rem;
  line-height: 1.55;
}

body.next-menu-version .next-menu-panel__cta,
body.next-menu-version .next-menu-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  color: #1c355e;
  font-size: 0.76rem;
  font-weight: 700;
  text-decoration: none;
}

body.next-menu-version .next-menu-panel__columns {
  display: grid;
  grid-template-columns: repeat(var(--next-menu-columns), minmax(0, 1fr));
  gap: 24px 32px;
}

body.next-menu-version .next-menu-panel__columns--2 {
  grid-template-columns: repeat(2, minmax(150px, 220px));
  justify-content: start;
  column-gap: clamp(36px, 5vw, 76px);
}

body.next-menu-version .next-menu-column__title {
  position: relative;
  display: inline-block;
  margin-bottom: 10px;
  color: #1c355e;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
}

body.next-menu-version .next-menu-column__title--nested {
  margin-top: 12px;
  margin-bottom: 0;
}

body.next-menu-version .next-menu-column__title::after,
body.next-menu-version .next-menu-column__link span::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -4px;
  left: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #00a3b4, #7db8d6);
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition:
    opacity 180ms ease,
    transform 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.next-menu-version .next-menu-column__title:hover::after,
body.next-menu-version .next-menu-column__title:focus-visible::after,
body.next-menu-version .next-menu-column__link:hover span::after,
body.next-menu-version .next-menu-column__link:focus-visible span::after {
  opacity: 1;
  transform: scaleX(1);
}

body.next-menu-version .next-menu-column__links {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}


body.next-menu-version .next-menu-column--untitled {
  padding-top: 25px;
}

body.next-menu-version .next-menu-panel__columns--1 .next-menu-column--untitled {
  padding-top: 0;
}

body.next-menu-version .next-menu-column__link {
  display: block;
  color: #5d6f89;
  font-size: 0.82rem;
  line-height: 1.35;
  text-decoration: none;
  transition: color 160ms ease;
}

body.next-menu-version .next-menu-column__link span {
  position: relative;
  display: inline-block;
}

body.next-menu-version .next-menu-column__link:hover,
body.next-menu-version .next-menu-column__link:focus-visible {
  color: #266b8e;
  outline: none;
}

body.next-menu-version .next-menu-column__link small {
  display: block;
  margin-top: 3px;
  color: rgba(93, 111, 137, 0.72);
  font-size: 0.72rem;
  line-height: 1.35;
}

body.next-menu-version .next-menu-panel__cards {
  display: grid;
  grid-template-columns: repeat(var(--next-menu-count), minmax(0, 1fr));
  gap: 10px;
  padding: 10px;
}

body.next-menu-version .next-menu-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  min-height: 128px;
  flex-direction: column;
  justify-content: flex-start;
  overflow: hidden;
  padding: 20px 22px 18px;
  border: 1px solid rgba(28, 53, 94, 0.1);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.36);
  color: #1c355e;
  text-align: left;
  text-decoration: none;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

body.next-menu-version .next-menu-card + .next-menu-card {
  border-left: 1px solid rgba(28, 53, 94, 0.1);
}

body.next-menu-version .next-menu-card:hover,
body.next-menu-version .next-menu-card:focus-visible {
  border-color: rgba(0, 163, 180, 0.28);
  background: rgba(255, 255, 255, 0.72);
  color: #007d95;
  outline: none;
  transform: translateY(-2px);
}

body.next-menu-version .next-menu-card__title {
  color: #1c355e;
  font-size: 0.94rem;
  font-weight: 700;
  line-height: 1.2;
  transition: color 180ms ease;
}

body.next-menu-version .next-menu-card__desc {
  color: #5d6f89;
  font-size: 0.78rem;
  line-height: 1.5;
  transition: color 180ms ease;
}

body.next-menu-version .next-menu-card__cta {
  margin-top: auto;
  padding-top: 16px;
  transition: color 180ms ease;
}

body.next-menu-version .next-menu-card__cta-icon {
  display: inline-grid;
  width: 18px;
  height: 18px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: 0.78rem;
  line-height: 1;
  transition: transform 180ms ease;
}

body.next-menu-version .next-menu-card:hover .next-menu-card__title,
body.next-menu-version .next-menu-card:focus-visible .next-menu-card__title,
body.next-menu-version .next-menu-card:hover .next-menu-card__cta,
body.next-menu-version .next-menu-card:focus-visible .next-menu-card__cta {
  color: #007d95;
}

body.next-menu-version .next-menu-card:hover .next-menu-card__desc,
body.next-menu-version .next-menu-card:focus-visible .next-menu-card__desc {
  color: #4f6683;
}

body.next-menu-version .next-menu-card:hover .next-menu-card__cta-icon,
body.next-menu-version .next-menu-card:focus-visible .next-menu-card__cta-icon {
  transform: translateX(4px);
}

@media (max-width: 1180px) {
  body.next-menu-version .site-header--next-menu .site-header__inner {
    padding: 0 20px;
  }

  body.next-menu-version .site-header--next-menu .next-menu-utility {
    padding: 0 24px;
  }

  body.next-menu-version .site-header--next-menu .next-menu-nav__item {
    padding: 0 7px;
    font-size: 0.9rem;
  }

  body.next-menu-version .next-menu-search__input {
    width: 138px;
  }

  body.next-menu-version .next-menu-action {
    display: none;
  }
}

@media (max-width: 1040px) {
  body.next-menu-version .site-header--next-menu .next-menu-utility,
  body.next-menu-version .site-header--next-menu .next-menu-nav,
  body.next-menu-version .site-header--next-menu .next-menu-search,
  body.next-menu-version .site-header--next-menu .next-menu-actions,
  body.next-menu-version .site-header--next-menu .next-menu-panels {
    display: none;
  }

  body.next-menu-version .site-header--next-menu {
    padding: 12px 18px 0;
  }

  body.next-menu-version .site-header--next-menu .site-header__inner {
    padding: 0;
  }

  body.next-menu-version .site-header--next-menu .site-header__shell {
    padding: 0;
    min-height: 54px;
  }
}

body.next-menu-version header.site-header--next-menu img.brand-link__wordmark--default {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body.next-menu-version header.site-header--next-menu img.brand-link__wordmark--inverse,
body.next-menu-version header.site-header--next-menu img.brand-link__mark {
  opacity: 0 !important;
}

body.next-menu-version.home-mode header.site-header--next-menu:not(.is-compact) img.brand-link__wordmark--default,
body.next-menu-version.home-mode header.site-header--next-menu:not(.is-compact) img.brand-link__mark {
  opacity: 0 !important;
}

body.next-menu-version.home-mode header.site-header--next-menu:not(.is-compact) img.brand-link__wordmark--inverse {
  clip-path: inset(0 0 0 0) !important;
  filter: none !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body.next-menu-version.static-image-version.home-mode.index2-page header.site-header--next-menu:not(.is-compact) img.brand-link__wordmark--inverse {
  clip-path: inset(0 0 0 0) !important;
  filter: none !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body.next-menu-version header.site-header--next-menu.is-compact img.brand-link__wordmark--default,
body.next-menu-version.page-mode header.site-header--next-menu img.brand-link__wordmark--default {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}

body.next-menu-version header.site-header--next-menu.is-compact img.brand-link__wordmark--inverse,
body.next-menu-version.page-mode header.site-header--next-menu img.brand-link__wordmark--inverse,
body.next-menu-version header.site-header--next-menu.is-compact img.brand-link__mark,
body.next-menu-version.page-mode header.site-header--next-menu img.brand-link__mark {
  opacity: 0 !important;
}

body.next-menu-version.page-mode header.site-header--next-menu.is-page nav.next-menu-nav,
body.next-menu-version.page-mode header.site-header--next-menu.is-page .next-menu-nav {
  display: flex !important;
}

body.next-menu-version.page-mode header.site-header--next-menu.is-page .header-context,
body.next-menu-version.page-mode header.site-header--next-menu.is-page .context-tabs {
  display: none !important;
}

body.next-menu-version header.site-header--next-menu.is-page .site-header__inner {
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

body.next-menu-version header.site-header--next-menu.is-page .site-header__shell {
  padding: 8px 0 8px 20px !important;
  border: 0 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}

@media (max-width: 1040px) {
  body.next-menu-version header.site-header--next-menu.is-page .site-header__inner {
    max-width: none !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}


body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .site-header__shell,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .site-header__shell {
  min-height: 58px;
  padding: 8px 12px 8px 20px;
  border-color: transparent;
  background: transparent !important;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-utility,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-utility {
  max-height: 40px;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  color: rgba(239, 248, 248, 0.92);
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu img.brand-link__wordmark--default,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu img.brand-link__mark,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact img.brand-link__wordmark--default,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact img.brand-link__mark {
  opacity: 0 !important;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu img.brand-link__wordmark--inverse,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact img.brand-link__wordmark--inverse {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
  transform: translateY(-50%) !important;
  filter: none;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-nav__item,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-nav__item,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-action,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-action {
  color: #eff8f8 !important;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-nav__item:hover,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-nav__item:focus-visible,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-nav__item.is-open,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-nav__item:hover,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-nav__item:focus-visible,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-nav__item.is-open {
  color: #ffffff !important;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-search__icon,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-search__icon {
  width: 22px;
  height: 22px;
  color: rgba(239, 248, 248, 0.92);
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-search__input,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-search__input {
  padding-left: 42px;
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.12);
  color: #eff8f8;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-search__input::placeholder,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-search__input::placeholder {
  color: rgba(239, 248, 248, 0.62);
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-lang,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-lang,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu .next-menu-utility__lang,
body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu.is-compact .next-menu-utility__lang {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.12);
  color: #eff8f8;
}

body.home-mode .home-news__stack > .home-news__rail {
  overflow: visible;
}

body.next-menu-version .site-header--next-menu .site-header__shell,
body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .site-header__shell,
body.next-menu-version .site-header--next-menu.is-compact .site-header__shell {
  padding-right: 12px;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .site-header__shell {
  padding-right: 0;
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-utility__lang {
  border-color: rgba(255, 255, 255, 0.78);
  background: rgba(255, 255, 255, 0.86);
  color: #103765;
  box-shadow: 0 10px 28px rgba(8, 31, 56, 0.12);
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .redmed-language-switch__menu {
  border-color: rgba(16, 55, 101, 0.12);
  background: rgba(255, 255, 255, 0.94);
}

body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .redmed-language-switch--dropdown .redmed-language-switch__link {
  color: #103765;
}

body.home-mode .home-news__stack > .home-news__rail::before,
body.home-mode .home-news__stack > .home-news__rail::after {
  content: "";
  position: absolute;
  top: 6px;
  bottom: 4px;
  z-index: 5;
  width: clamp(34px, 5vw, 78px);
  pointer-events: none;
}

body.home-mode .home-news__stack > .home-news__rail::before {
  left: 0;
  background: linear-gradient(90deg, #ffffff 0%, rgba(255, 255, 255, 0.9) 34%, rgba(255, 255, 255, 0) 100%);
}

body.home-mode .home-news__stack > .home-news__rail::after {
  right: 0;
  background: linear-gradient(270deg, #ffffff 0%, rgba(255, 255, 255, 0.9) 34%, rgba(255, 255, 255, 0) 100%);
}

body.home-mode .home-news__arrows {
  z-index: 8;
  right: -66px;
  left: -66px;
}

@media (max-width: 1320px) {
  body.home-mode .home-news__arrows {
    right: 14px;
    left: 14px;
  }
}

@media (max-width: 720px) {
  body.home-mode .home-news__stack > .home-news__rail::before,
  body.home-mode .home-news__stack > .home-news__rail::after {
    content: none;
  }
}

body.leadership-page .cf-team {
  padding: clamp(56px, 6vw, 92px) 0;
  background:
    radial-gradient(circle at 18% 14%, rgba(0, 163, 180, 0.14), transparent 34%),
    linear-gradient(180deg, #f7fbfd 0%, #eef7fa 100%);
}

body.leadership-page .cf-team-slider {
  width: min(100% - 56px, 1440px);
  margin-top: clamp(28px, 3vw, 48px);
}

body.leadership-page .cf-team-track {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 24px;
}

body.leadership-page .cf-team-col {
  min-height: clamp(520px, 48vw, 620px);
  border: 1px solid rgba(16, 55, 101, 0.12);
  border-radius: 16px;
  background: #d7e7f1;
  overflow: hidden;
  transition:
    border-color 220ms ease,
    background 220ms ease,
    transform 220ms ease;
}

body.leadership-page .cf-team-col:hover,
body.leadership-page .cf-team-col:focus-visible,
body.leadership-page .cf-team-col.is-active {
  border-color: rgba(0, 163, 180, 0.38);
  background: #00a3b4;
  transform: translateY(-4px);
}

body.leadership-page .cf-team-col__caption {
  top: 28px;
  opacity: 0;
  transform: translateY(12px);
}

body.leadership-page .cf-team-col:hover .cf-team-col__caption,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__caption,
body.leadership-page .cf-team-col.is-active .cf-team-col__caption {
  opacity: 1;
  transform: translateY(0);
}

body.leadership-page .cf-team-col__role {
  color: rgba(16, 55, 101, 0.62);
  font-weight: 600;
}

body.leadership-page .cf-team-col__name {
  color: #103765;
  font-weight: 400;
}

body.leadership-page .cf-team-col__photo {
  height: 82%;
}

body.leadership-page .cf-team-col__photo img {
  filter: none !important;
  transform: scale(1.01);
}

body.leadership-page .cf-team-col:hover .cf-team-col__photo img,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__photo img,
body.leadership-page .cf-team-col.is-active .cf-team-col__photo img {
  filter: none !important;
  transform: scale(1.05);
}

body.leadership-page .cf-team-col::after {
  content: "Voir le profil";
  position: absolute;
  left: 22px;
  bottom: 22px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 16px;
  border: 1px solid rgba(0, 163, 180, 0.24);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.68);
  color: #103765;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(8px);
  transition:
    opacity 180ms ease,
    transform 220ms ease;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}

body.leadership-page .cf-team-col:hover::after,
body.leadership-page .cf-team-col:focus-visible::after,
body.leadership-page .cf-team-col.is-active::after {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 760px) {
  body.leadership-page .cf-team-slider {
    width: min(100% - 28px, 1440px);
  }

  body.leadership-page .cf-team-track {
    grid-template-columns: 1fr;
  }

  body.leadership-page .cf-team-col {
    min-height: 500px;
  }
}

body.leadership-page,
body.leadership-page .redmed-structured-page {
  background: #ffffff;
}

body.leadership-page .cf-team {
  padding: clamp(42px, 5vw, 72px) 0;
  background:
    radial-gradient(circle at 18% 14%, rgba(28, 53, 94, 0.1), transparent 34%),
    linear-gradient(180deg, #f7fbfd 0%, #eef7fa 100%);
}

body.leadership-page .cf-team-slider {
  width: min(100% - 56px, 1460px);
  margin-top: clamp(24px, 2.5vw, 40px);
}

body.leadership-page .cf-team-track {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(24px, 2.2vw, 34px);
}

body.leadership-page .cf-team-col {
  min-height: clamp(470px, 34vw, 540px);
  border-radius: 8px;
  border: 1px solid rgba(28, 53, 94, 0.12);
  background:
    radial-gradient(circle at 18% 18%, rgba(28, 53, 94, 0.2), transparent 42%),
    linear-gradient(180deg, #ffffff, #eaf7fa);
}

body.leadership-page .cf-team-col__photo {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: 80%;
}


body.leadership-page .cf-team-col__photo::before {
  content: none;
}

body.leadership-page .cf-team-col__photo img {
  filter: none !important;
}

body.leadership-page .cf-team-col__photo img {
  width: 100%;
  height: 96%;
  object-fit: contain;
  object-position: center bottom;
  transform: none;
}

.cf-team-col__more {
  display: none;
}

body.leadership-page .cf-team-col:hover .cf-team-col__photo img,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__photo img,
body.leadership-page .cf-team-col.is-active .cf-team-col__photo img {
  transform: scale(1.035);
}

body.leadership-page .cf-team-col__caption {
  top: 12px;
  right: 16px;
  bottom: auto;
  left: 16px;
  padding: 18px 8px 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  opacity: 1;
  transform: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body.leadership-page .cf-team-col__caption {
  display: flex;
  flex-direction: column;
}

body.leadership-page .cf-team-col__role {
  margin-bottom: 6px;
  color: rgba(28, 53, 94, 0.68);
  font-size: 0.67rem;
  font-weight: 500;
}

body.leadership-page .cf-team-col__name {
  order: -1;
  margin-bottom: 6px;
  color: #1c355e;
  font-size: clamp(1.2rem, 1.45vw, 1.55rem);
  font-weight: 400;
}

body.leadership-page .cf-team-col:hover,
body.leadership-page .cf-team-col:focus-visible,
body.leadership-page .cf-team-col.is-active {
  border-color: rgba(0, 163, 180, 0.42);
  background:
    radial-gradient(circle at 18% 18%, rgba(0, 163, 180, 0.2), transparent 42%),
    linear-gradient(180deg, #ffffff, #eaf7fa);
  transform: translateY(-4px);
}

body.leadership-page .cf-team-col:hover .cf-team-col__caption,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__caption,
body.leadership-page .cf-team-col.is-active .cf-team-col__caption {
  opacity: 1;
  transform: none;
}

body.leadership-page .cf-team-col:hover .cf-team-col__role,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__role,
body.leadership-page .cf-team-col.is-active .cf-team-col__role {
  color: rgba(28, 53, 94, 0.68);
}

body.leadership-page .cf-team-col:hover .cf-team-col__name,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__name,
body.leadership-page .cf-team-col.is-active .cf-team-col__name {
  color: #1c355e;
}

body.leadership-page .cf-team-col::after {
  content: none;
}

body.leadership-page .cf-team-col__more {
  position: absolute;
  right: auto;
  bottom: 18px;
  left: 50%;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: auto;
  max-width: calc(100% - 36px);
  min-height: 32px;
  padding: 0 10px 0 14px;
  border: 1px solid rgba(0, 163, 180, 0.28);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.84);
  color: #103765;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: 0 14px 32px rgba(16, 55, 101, 0.1);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 8px);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition:
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    opacity 180ms ease,
    transform 180ms ease;
}

body.leadership-page .cf-team-col__more-icon {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.1);
  color: #1c355e;
  font-size: 0.9rem;
  line-height: 1;
  transition:
    background 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

body.leadership-page .cf-team-col:hover .cf-team-col__more,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__more,
body.leadership-page .cf-team-col.is-active .cf-team-col__more {
  border-color: #1c355e;
  background: #1c355e;
  color: #ffffff;
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

body.leadership-page .cf-team-col:hover .cf-team-col__more-icon,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__more-icon,
body.leadership-page .cf-team-col.is-active .cf-team-col__more-icon {
  background: rgba(255, 255, 255, 0.22);
  color: #ffffff;
  transform: rotate(90deg);
}

body.leadership-page .leadership-team-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 3.2vw, 48px);
  margin: 0 auto clamp(24px, 3vw, 42px);
}

body.leadership-page .leadership-team-filters__button {
  position: relative;
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #103765;
  cursor: pointer;
  font: inherit;
  font-size: clamp(0.92rem, 1vw, 1.05rem);
  font-weight: 400;
  line-height: 1.2;
  padding: 0 0 14px;
  transition: color 180ms ease;
}

body.leadership-page .leadership-team-filters__button::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: #00a3b4;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 180ms ease;
}

body.leadership-page .leadership-team-filters__button:hover,
body.leadership-page .leadership-team-filters__button:focus-visible,
body.leadership-page .leadership-team-filters__button.is-active {
  color: #00a3b4;
}

body.leadership-page .leadership-team-filters__button:hover::after,
body.leadership-page .leadership-team-filters__button:focus-visible::after,
body.leadership-page .leadership-team-filters__button.is-active::after {
  transform: scaleX(1);
}

body.leadership-page .cf-team-col[hidden] {
  display: none !important;
}


.senior-advisors-page {
  background: #fff;
  color: var(--rm-navy, #1c355e);
}


.senior-advisors-page .careers-page__hero .cf-hero__title {
  max-width: 16ch;
}


body.service-page .key-figures-band {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(72px, 8vw, 118px) clamp(24px, 3.2vw, 56px);
  background:
    repeating-radial-gradient(ellipse at 0% 100%, rgba(125, 184, 214, 0.22) 0 1px, transparent 2px 22px),
    repeating-radial-gradient(ellipse at 100% 0%, rgba(125, 184, 214, 0.12) 0 1px, transparent 2px 26px),
    radial-gradient(circle at 86% 18%, rgba(0, 163, 180, 0.18), transparent 34%),
    linear-gradient(135deg, #06162c 0%, #0b2f5b 54%, #061b35 100%);
}

body.service-page .key-figures-band .home-stats-band__head,
body.service-page .key-figures-band .home-stats-band__inner {
  position: relative;
  z-index: 1;
}

body.service-page .key-figures-band .home-stats-band__title {
  color: #fff !important;
}

body.service-page .key-figures-band .home-stats-band__subtitle,
body.service-page .key-figures-band .home-stats-band__copy {
  color: rgba(236, 242, 252, 0.82);
}

body.service-page .key-figures-band .home-stats-band__inner {
  max-width: 1500px;
  gap: 0;
  padding: clamp(34px, 3.3vw, 48px) 0 0;
  border-top: 1px solid rgba(236, 242, 252, 0.16);
  border-bottom: 0;
}

body.service-page .key-figures-band .home-figure {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 0 clamp(22px, 2.4vw, 38px);
  text-align: left;
}

body.service-page .key-figures-band .home-figure__icon {
  display: none;
}

body.service-page .key-figures-band .home-figure + .home-figure {
  border-left: 1px solid rgba(236, 242, 252, 0.16);
}

body.service-page .key-figures-band .home-figure strong {
  display: flex;
  align-items: baseline;
  color: #fff;
  font-size: clamp(2.2rem, 3.3vw, 3.7rem);
  font-weight: 400;
  letter-spacing: -0.035em;
  line-height: 1;
}

body.service-page .key-figures-band .home-figure__sign {
  color: #22b7c4;
}

body.service-page .key-figures-band .home-figure__unit,
body.service-page .key-figures-band .home-figure__label {
  color: #fff;
  font-weight: 300;
}

body.service-page .key-figures-band .home-figure__label {
  max-width: 100%;
}


body.securities-page .key-figures-band .home-figure {
  align-items: center;
  text-align: center;
}

@media (max-width: 900px) {
  body.service-page .key-figures-band .home-figure {
    padding: 22px 18px;
  }

  body.service-page .key-figures-band .home-figure + .home-figure {
    border-left: 0;
  }

  body.service-page .key-figures-band .home-figure:nth-child(even) {
    border-left: 1px solid rgba(236, 242, 252, 0.16);
  }

  body.service-page .key-figures-band .home-figure:nth-child(n + 3) {
    border-top: 1px solid rgba(236, 242, 252, 0.16);
  }
}

@media (max-width: 520px) {
  body.service-page .key-figures-band .home-stats-band__inner {
    grid-template-columns: minmax(0, 1fr);
  }

  body.service-page .key-figures-band .home-figure,
  body.service-page .key-figures-band .home-figure:first-child {
    padding: 20px 0;
  }

  body.service-page .key-figures-band .home-figure:nth-child(even) {
    border-left: 0;
  }

  body.service-page .key-figures-band .home-figure:nth-child(n + 2) {
    border-top: 1px solid rgba(236, 242, 252, 0.16);
  }
}

.senior-advisors-page__people {
  width: min(100% - 48px, 1180px);
  margin: 0 auto;
  padding: clamp(56px, 7vw, 104px) 0 clamp(72px, 9vw, 132px);
}

.senior-advisors-page__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.4vw, 34px);
}

.senior-advisor-card {
  overflow: hidden;
  border: 1px solid rgba(28, 53, 94, 0.14);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(22, 53, 91, 0.08);
}

.senior-advisor-card__image {
  aspect-ratio: 4 / 4.5;
  overflow: hidden;
  background: #eef5f7;
}

.senior-advisor-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.senior-advisor-card__content {
  padding: 22px 24px 26px;
}

.senior-advisor-card__content p {
  min-height: 1.5em;
  margin: 0 0 7px;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.senior-advisor-card__content h2 {
  margin: 0;
  color: var(--rm-navy, #1c355e);
  font-size: clamp(1.35rem, 1.7vw, 1.7rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
}

@media (min-width: 901px) {
  .senior-advisors-page:not(.experts-directory-page) .senior-advisors-page__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .senior-advisors-page:not(.experts-directory-page) .senior-advisors-page__card {
    grid-column: span 2;
  }

  .senior-advisors-page:not(.experts-directory-page) .senior-advisors-page__card:nth-last-child(2):nth-child(3n + 1) {
    grid-column: 2 / span 2;
  }
}

.senior-advisors-page__card {
  position: relative;
  cursor: pointer;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.senior-advisors-page__card:hover,
.senior-advisors-page__card:focus-visible {
  border-color: rgba(0, 163, 180, 0.56);
  box-shadow: 0 24px 46px rgba(22, 53, 91, 0.16);
  outline: none;
  transform: translateY(-4px);
}

.senior-advisors-page__more {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 12px 10px 14px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.94);
  box-shadow: 0 10px 24px rgba(14, 35, 65, 0.2);
  color: #fff;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.095em;
  line-height: 1;
  opacity: 0;
  text-transform: uppercase;
  transform: translateY(-8px);
  transition: opacity 180ms ease, transform 180ms ease;
}

.senior-advisors-page__more span {
  display: inline-grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  background: var(--rm-teal, #00a3b4);
  color: #fff;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
}

.senior-advisors-page__card:hover .senior-advisors-page__more,
.senior-advisors-page__card:focus-visible .senior-advisors-page__more {
  opacity: 1;
  transform: translateY(0);
}

.senior-advisors-page__modal .team-modal__media-shell {
  min-height: 0;
  aspect-ratio: 4 / 5;
  border-radius: 16px;
  background: #edf5f7;
}

.senior-advisors-page__modal .team-modal__media-shell::before {
  content: none;
}

.senior-advisors-page__modal .team-modal__media-shell img {
  object-fit: cover;
  object-position: center top;
}


body.leadership-page .experts-directory-page__people {
  padding-top: clamp(42px, 5vw, 70px);
}

body.leadership-page .experts-directory-page__filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto clamp(28px, 3vw, 42px);
  padding: 7px;
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 12px 30px rgba(22, 53, 91, 0.09);
}

body.leadership-page .experts-directory-page__filter {
  appearance: none;
  min-height: 38px;
  padding: 0 16px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(28, 53, 94, 0.76);
  cursor: pointer;
  font: inherit;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1;
  transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

body.leadership-page .experts-directory-page__filter:hover,
body.leadership-page .experts-directory-page__filter:focus-visible,
body.leadership-page .experts-directory-page__filter.is-active {
  background: var(--rm-teal, #00a3b4);
  color: #fff;
  box-shadow: 0 8px 18px rgba(0, 163, 180, 0.24);
  outline: none;
}

body.leadership-page .experts-directory-page__card .senior-advisor-card__content {
  display: flex;
  flex: 1;
  flex-direction: column;
}

body.leadership-page .experts-directory-page__card {
  position: relative;
  cursor: pointer;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.leadership-page .experts-directory-page__card:hover,
body.leadership-page .experts-directory-page__card:focus-visible {
  border-color: rgba(0, 163, 180, 0.56);
  box-shadow: 0 24px 46px rgba(22, 53, 91, 0.16);
  outline: none;
  transform: translateY(-4px);
}

body.leadership-page .experts-directory-page__more {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 12px 10px 14px;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.94);
  box-shadow: 0 10px 24px rgba(14, 35, 65, 0.2);
  color: #fff;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.095em;
  line-height: 1;
  opacity: 0;
  text-transform: uppercase;
  transform: translateY(-8px);
  transition: opacity 180ms ease, transform 180ms ease, background-color 180ms ease;
}

body.leadership-page .experts-directory-page__more span {
  display: inline-grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  background: var(--rm-teal, #00a3b4);
  color: #fff;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  transition: transform 180ms ease, background-color 180ms ease;
}

body.leadership-page .experts-directory-page__card:hover .experts-directory-page__more,
body.leadership-page .experts-directory-page__card:focus-visible .experts-directory-page__more {
  opacity: 1;
  transform: translateY(0);
}

body.leadership-page .experts-directory-page__card:hover .experts-directory-page__more span,
body.leadership-page .experts-directory-page__card:focus-visible .experts-directory-page__more span {
  transform: rotate(90deg);
  background: var(--rm-navy, #1c355e);
}

@media (max-width: 760px) {
  body.leadership-page .experts-directory-page__filters {
    width: 100%;
    border-radius: 18px;
  }
}


body.pe-firo-page .pe-fund-criteria__actions {
  display: flex;
  justify-content: center;
  margin-top: clamp(30px, 4vw, 48px);
}

body.pe-firo-page .pe-fund-criteria__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 22px;
  border: 1px solid transparent;
  border-radius: 4px;
  background: transparent;
  color: var(--rm-navy, #1c355e);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.pe-firo-page .pe-fund-criteria__cta svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
  transition: transform 180ms ease;
}

body.pe-fund-page.pe-firo-page .pe-fund-criteria__cta > span {
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  transition: color 180ms ease;
}

body.pe-firo-page .pe-fund-criteria__cta:hover,
body.pe-firo-page .pe-fund-criteria__cta:focus-visible {
  border-color: var(--rm-navy, #1c355e);
  background: var(--rm-navy, #1c355e);
  color: #fff;
  box-shadow: 0 12px 24px rgba(28, 53, 94, 0.2);
  outline: none;
  transform: translateY(-2px);
}

body.pe-firo-page .pe-fund-criteria__cta:hover svg,
body.pe-firo-page .pe-fund-criteria__cta:focus-visible svg {
  transform: translateX(4px);
}

body.pe-fund-page.pe-firo-page .pe-fund-criteria__cta:hover > span,
body.pe-fund-page.pe-firo-page .pe-fund-criteria__cta:focus-visible > span {
  transform: none;
}

@media (max-width: 1180px) {
  body.leadership-page .cf-team-track {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  body.leadership-page .cf-team-track {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.leadership-page .cf-team-col {
    min-height: 390px;
  }

  .senior-advisors-page__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .senior-advisors-page:not(.experts-directory-page) .senior-advisors-page__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  body.leadership-page .cf-team-slider {
    width: min(100% - 28px, 1460px);
  }

  body.leadership-page .cf-team-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  body.leadership-page .cf-team-col {
    min-height: 330px;
  }

  .senior-advisors-page__people {
    width: min(100% - 40px, 1180px);
  }

  .senior-advisors-page__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .senior-advisors-page:not(.experts-directory-page) .senior-advisors-page__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .senior-advisor-card__image {
    aspect-ratio: 4 / 3.4;
  }
}

@media (max-width: 460px) {
  body.leadership-page .cf-team-track {
    grid-template-columns: 1fr;
  }

  body.leadership-page .cf-team-col {
    min-height: 380px;
  }
}


@media (min-width: 1041px) {
  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .site-header__inner {
    width: min(calc(100% - 48px), 1280px);
    max-width: none;
    padding-right: 0;
    padding-left: 0;
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-utility {
    width: min(calc(100% - 48px), 1280px);
    max-width: none;
    padding-right: 0;
    padding-left: 0;
  }

  
  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .site-header__shell {
    border-color: rgba(28, 53, 94, 0.12);
    background: rgba(255, 255, 255, 0.76) !important;
    -webkit-backdrop-filter: saturate(155%) blur(24px);
    backdrop-filter: saturate(155%) blur(24px);
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-utility {
    max-height: 0;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .brand-link__wordmark--default {
    opacity: 1 !important;
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .brand-link__wordmark--inverse,
  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .brand-link__mark {
    opacity: 0 !important;
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item {
    color: #103765 !important;
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item:hover,
  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item:focus-visible,
  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-nav__item.is-open {
    color: #007d95 !important;
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search__icon {
    color: rgba(16, 55, 101, 0.58);
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search__input {
    border-color: rgba(16, 55, 101, 0.16);
    background: rgba(255, 255, 255, 0.72);
    color: #103765;
  }

  body.next-menu-version.home-mode .site-header--next-menu:not(.is-compact) .next-menu-search__input::placeholder {
    color: rgba(16, 55, 101, 0.58);
  }

  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .brand-link__wordmark--default {
    opacity: 1 !important;
  }

  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .brand-link__wordmark--inverse,
  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .brand-link__mark {
    opacity: 0 !important;
  }

  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-nav__item {
    color: #103765 !important;
  }

  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-nav__item:hover,
  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-nav__item:focus-visible,
  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-nav__item.is-open {
    color: #007d95 !important;
  }

  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-search__icon {
    color: rgba(16, 55, 101, 0.58);
  }

  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-search__input {
    border-color: rgba(16, 55, 101, 0.16);
    background: rgba(255, 255, 255, 0.72);
    color: #103765;
  }

  body.next-menu-version.home-mode.is-in-home-hero .site-header--next-menu:not(.is-compact) .next-menu-search__input::placeholder {
    color: rgba(16, 55, 101, 0.58);
  }
}

.our-group-values {
  
  --og-lift: clamp(30px, 5.6vw, 86px);
  position: relative;
  overflow: hidden;
  padding-bottom: clamp(44px, 4.6vw, 72px);
  background: #f6f8fa;
}


.our-group-values::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: clamp(200px, 26vw, 400px);
  height: clamp(200px, 26vw, 400px);
  background-image: radial-gradient(rgba(28, 53, 94, 0.2) 1.5px, transparent 1.6px);
  background-size: 14px 14px;
  -webkit-mask-image: linear-gradient(215deg, #000 4%, transparent 66%);
  mask-image: linear-gradient(215deg, #000 4%, transparent 66%);
  pointer-events: none;
}


.our-group-values::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: clamp(220px, 30vw, 460px);
  height: clamp(200px, 26vw, 400px);
  background-image: repeating-linear-gradient(
    -45deg,
    rgba(28, 53, 94, 0.07) 0 1px,
    transparent 1px 22px
  );
  -webkit-mask-image: linear-gradient(315deg, #000 0%, transparent 70%);
  mask-image: linear-gradient(315deg, #000 0%, transparent 70%);
  pointer-events: none;
}

.og-values {
  position: relative;
  z-index: 1;
}

.our-group-values .cf-shell {
  width: min(1720px, 90%);
}


.og-values__head {
  max-width: none;
  margin-bottom: clamp(34px, 3.4vw, 56px);
}


.og-values__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  padding-bottom: calc(var(--og-lift) * 2);
}

.og-value-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: clamp(255px, 21vw, 330px);
  padding: clamp(38px, 3.9vw, 60px) clamp(30px, 3.2vw, 50px) clamp(38px, 3.6vw, 56px);
  outline: none;
}


body.our-group-page .our-group-values .og-value-card {
  transition: translate 520ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.our-group-values .og-value-card {
  border-radius: 2px;
}


body.our-group-page .our-group-values .og-value-card--1 {
  z-index: 1;
  translate: 0 calc(var(--og-lift) * 2);
  color: var(--rm-navy);
  background: linear-gradient(180deg, #eef2f6 0%, #e9eff5 100%);
  box-shadow: 0 16px 40px rgba(20, 40, 68, 0.07);
}

body.our-group-page .our-group-values .og-value-card--2 {
  z-index: 2;
  translate: 0 var(--og-lift);
  color: #ffffff;
  background: linear-gradient(150deg, #0b2240 0%, #0e2b4f 100%);
  box-shadow: 0 26px 60px rgba(10, 26, 50, 0.3);
}

body.our-group-page .our-group-values .og-value-card--3 {
  z-index: 3;
  translate: none;
  color: #ffffff;
  background: linear-gradient(150deg, #0c5c7c 0%, #0d6a89 58%, #0b7d9c 100%);
  box-shadow: 0 30px 66px rgba(10, 58, 80, 0.32);
}


.og-value-card--2::after,
.og-value-card--3::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.42) 1.15px, transparent 1.25px);
  background-size: 7px 7px;
  pointer-events: none;
}


.og-value-card--3::after {
  background-image: radial-gradient(rgba(255, 255, 255, 0.3) 1.2px, transparent 1.3px);
  background-size: 11px 11px;
}


.og-value-card--2::after {
  left: auto;
  right: 0;
  width: 88%;
  opacity: 0.9;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20360%20180'%3E%3Cg%20fill='white'%3E%3Cpath%20d='M28%2038%20L64%2030%20L96%2031%20L120%2044%20L112%2060%20L96%2066%20L90%2082%20L76%2094%20L66%2088%20L61%2070%20L46%2062%20L32%2050%20Z'/%3E%3Cpath%20d='M86%2084%20L98%2090%20L104%2099%20L96%2098%20L86%2090%20Z'/%3E%3Cpath%20d='M100%20100%20L118%2095%20L129%20105%20L126%20121%20L116%20141%20L107%20148%20L100%20133%20L96%20113%20Z'/%3E%3Cpath%20d='M126%2014%20L146%2012%20L150%2024%20L138%2032%20L127%2026%20Z'/%3E%3Cpath%20d='M168%2042%20L182%2034%20L200%2033%20L214%2039%20L209%2051%20L190%2056%20L174%2053%20Z'/%3E%3Cpath%20d='M166%2064%20L188%2058%20L206%2060%20L220%2068%20L222%2085%20L211%20105%20L196%20124%20L185%20121%20L177%20100%20L169%2084%20Z'/%3E%3Cpath%20d='M214%2030%20L246%2020%20L286%2022%20L318%2028%20L342%2040%20L334%2055%20L316%2063%20L299%2057%20L286%2070%20L266%2066%20L248%2054%20L226%2048%20Z'/%3E%3Cpath%20d='M252%2064%20L264%2063%20L268%2078%20L259%2090%20L250%2075%20Z'/%3E%3Cpath%20d='M292%2078%20L310%2076%20L318%2084%20L306%2090%20L294%2086%20Z'/%3E%3Cpath%20d='M296%20107%20L322%20103%20L333%20112%20L327%20127%20L307%20129%20L296%20119%20Z'/%3E%3Cpath%20d='M341%20128%20L348%20126%20L350%20136%20L343%20138%20Z'/%3E%3C/g%3E%3C/svg%3E"), linear-gradient(90deg, transparent 6%, #000 42%);
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20360%20180'%3E%3Cg%20fill='white'%3E%3Cpath%20d='M28%2038%20L64%2030%20L96%2031%20L120%2044%20L112%2060%20L96%2066%20L90%2082%20L76%2094%20L66%2088%20L61%2070%20L46%2062%20L32%2050%20Z'/%3E%3Cpath%20d='M86%2084%20L98%2090%20L104%2099%20L96%2098%20L86%2090%20Z'/%3E%3Cpath%20d='M100%20100%20L118%2095%20L129%20105%20L126%20121%20L116%20141%20L107%20148%20L100%20133%20L96%20113%20Z'/%3E%3Cpath%20d='M126%2014%20L146%2012%20L150%2024%20L138%2032%20L127%2026%20Z'/%3E%3Cpath%20d='M168%2042%20L182%2034%20L200%2033%20L214%2039%20L209%2051%20L190%2056%20L174%2053%20Z'/%3E%3Cpath%20d='M166%2064%20L188%2058%20L206%2060%20L220%2068%20L222%2085%20L211%20105%20L196%20124%20L185%20121%20L177%20100%20L169%2084%20Z'/%3E%3Cpath%20d='M214%2030%20L246%2020%20L286%2022%20L318%2028%20L342%2040%20L334%2055%20L316%2063%20L299%2057%20L286%2070%20L266%2066%20L248%2054%20L226%2048%20Z'/%3E%3Cpath%20d='M252%2064%20L264%2063%20L268%2078%20L259%2090%20L250%2075%20Z'/%3E%3Cpath%20d='M292%2078%20L310%2076%20L318%2084%20L306%2090%20L294%2086%20Z'/%3E%3Cpath%20d='M296%20107%20L322%20103%20L333%20112%20L327%20127%20L307%20129%20L296%20119%20Z'/%3E%3Cpath%20d='M341%20128%20L348%20126%20L350%20136%20L343%20138%20Z'/%3E%3C/g%3E%3C/svg%3E"), linear-gradient(90deg, transparent 6%, #000 42%);
  -webkit-mask-size: 118% auto, 100% 100%;
  mask-size: 118% auto, 100% 100%;
  -webkit-mask-position: right 42%, center;
  mask-position: right 42%, center;
  -webkit-mask-repeat: no-repeat, no-repeat;
  mask-repeat: no-repeat, no-repeat;
  -webkit-mask-composite: source-in;
  mask-composite: intersect;
}

.og-value-card--3::after {
  -webkit-mask-image: linear-gradient(202deg, #000 0%, transparent 54%);
  mask-image: linear-gradient(202deg, #000 0%, transparent 54%);
}

body.our-group-page .our-group-values .og-value-card--1:hover,
body.our-group-page .our-group-values .og-value-card--1:focus-visible {
  translate: 0 calc(var(--og-lift) * 2 - 6px);
}

body.our-group-page .our-group-values .og-value-card--2:hover,
body.our-group-page .our-group-values .og-value-card--2:focus-visible {
  translate: 0 calc(var(--og-lift) - 6px);
}

body.our-group-page .our-group-values .og-value-card--3:hover,
body.our-group-page .our-group-values .og-value-card--3:focus-visible {
  translate: 0 -6px;
}


.og-value-card__top {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: clamp(20px, 2.4vw, 38px);
  margin-bottom: clamp(24px, 2.6vw, 42px);
}

.og-value-card__icon {
  display: grid;
  place-items: center;
  flex: none;
  width: clamp(66px, 5vw, 92px);
  height: clamp(66px, 5vw, 92px);
  border: 1px solid currentColor;
  border-radius: 50%;
  color: #2fb6cf;
}

.og-value-card--1 .og-value-card__icon {
  border-color: transparent;
  background: #dfe6ec;
  color: rgba(28, 53, 94, 0.62);
}

.og-value-card__icon svg {
  width: 54%;
  height: 54%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.og-value-card--1 .og-value-card__icon svg {
  stroke: rgba(28, 53, 94, 0.66);
}


.og-value-card__title {
  position: relative;
  z-index: 1;
  max-width: 15ch;
  margin: 0 0 clamp(13px, 1.3vw, 19px);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.45rem, 1.95vw, 2.05rem);
  font-weight: 400;
  line-height: 1.18;
}

.og-value-card--1 .og-value-card__title {
  color: var(--rm-navy);
}

.og-value-card--2 .og-value-card__title,
.og-value-card--3 .og-value-card__title {
  color: #ffffff;
}

.og-value-card__text {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: clamp(0.92rem, 0.98vw, 1rem);
  line-height: 1.78;
}

.og-value-card--1 .og-value-card__text {
  color: rgba(28, 53, 94, 0.74);
}

.og-value-card--2 .og-value-card__text,
.og-value-card--3 .og-value-card__text {
  color: rgba(255, 255, 255, 0.85);
}


@media (max-width: 1024px) {
  .og-values__cards {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    row-gap: clamp(16px, 3vw, 24px);
    padding-bottom: 0;
  }

  .og-value-card,
  .og-value-card--1,
  .og-value-card--2,
  .og-value-card--3 {
    margin-top: 0;
    min-height: 0;
  }

  body.our-group-page .our-group-values .og-value-card--1,
  body.our-group-page .our-group-values .og-value-card--2,
  body.our-group-page .our-group-values .og-value-card--3 {
    translate: none;
  }

  .og-value-card__title {
    max-width: none;
  }
}


.site-footer__links--navigation {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-footer__offices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 48px);
  padding: clamp(30px, 3.4vw, 48px) 0;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.site-footer__office {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.site-footer__office-title {
  margin: 0;
  color: #46d0dc;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.45;
  text-transform: uppercase;
}

.site-footer__office-address {
  margin: 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.92rem;
  font-style: normal;
  line-height: 1.58;
}

.site-footer__office-contact {
  font-size: 0.92rem;
}

.site-footer__socials {
  display: flex;
  align-items: center;
  gap: 8px;
}

.site-footer__social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  color: #ffffff;
  text-decoration: none;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.site-footer__social-link svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}

.site-footer__socials--bottom {
  margin-left: auto;
}

.site-footer__social-link:hover,
.site-footer__social-link:focus-visible {
  border-color: #46d0dc;
  background: #46d0dc;
  color: var(--rm-navy);
}

body.index2-page .site-footer__links--navigation {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.home-hero-video-slider.static-image-version.home-mode.index2-page .motors-hero--carousel .motors-hero__eyebrow {
  font-size: clamp(0.9rem, 1vw, 1.1rem);
  letter-spacing: 0.18em;
}


body.leadership-page .cf-team-col--official-portrait .cf-team-col__photo {
  display: block;
  height: 74%;
  overflow: hidden;
}

body.leadership-page .cf-team-col--official-portrait .cf-team-col__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
  transform: none;
}

body.leadership-page .cf-team-col--official-portrait:hover .cf-team-col__photo img,
body.leadership-page .cf-team-col--official-portrait:focus-visible .cf-team-col__photo img,
body.leadership-page .cf-team-col--official-portrait.is-active .cf-team-col__photo img {
  transform: scale(1.035);
}


body.leadership-page .cf-team-col {
  display: flex;
  flex-direction: column;
  min-height: 0;
  border-color: rgba(28, 53, 94, 0.14);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(16, 55, 101, 0.09);
}

body.leadership-page .cf-team-col:hover,
body.leadership-page .cf-team-col:focus-visible,
body.leadership-page .cf-team-col.is-active {
  border-color: rgba(0, 163, 180, 0.58);
  background: #ffffff;
  box-shadow: 0 24px 52px rgba(16, 55, 101, 0.14);
  transform: translateY(-4px);
}

body.leadership-page .cf-team-col__photo,
body.leadership-page .cf-team-col--official-portrait .cf-team-col__photo {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  order: 1;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #edf5f7;
}

body.leadership-page .cf-team-col__photo img,
body.leadership-page .cf-team-col--official-portrait .cf-team-col__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transform: none;
}

body.leadership-page .cf-team-col:hover .cf-team-col__photo img,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__photo img,
body.leadership-page .cf-team-col.is-active .cf-team-col__photo img {
  transform: scale(1.03);
}

body.leadership-page .cf-team-col__caption {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  order: 2;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 126px;
  padding: 22px 24px 24px;
  border: 0;
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
  opacity: 1;
  transform: none;
}

body.leadership-page .cf-team-col__role {
  order: 1;
  margin: 0 0 9px;
  color: #00a3b4;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.42;
}

body.leadership-page .cf-team-col__name {
  order: 2;
  margin: 0;
  color: #1c355e;
  font-size: clamp(1.22rem, 1.38vw, 1.55rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
}

body.leadership-page .cf-team-col:hover .cf-team-col__caption,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__caption,
body.leadership-page .cf-team-col.is-active .cf-team-col__caption {
  opacity: 1;
  transform: none;
}

body.leadership-page .cf-team-col:hover .cf-team-col__role,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__role,
body.leadership-page .cf-team-col.is-active .cf-team-col__role {
  color: #00a3b4;
}

body.leadership-page .cf-team-col:hover .cf-team-col__name,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__name,
body.leadership-page .cf-team-col.is-active .cf-team-col__name {
  color: #1c355e;
}

body.leadership-page .cf-team-col__more {
  right: auto;
  bottom: 144px;
  left: 20px;
  z-index: 5;
  display: inline-flex;
  min-height: 34px;
  padding: 0 10px 0 14px;
  border-color: #1c355e;
  background: #1c355e;
  color: #ffffff;
  box-shadow: 0 12px 26px rgba(16, 55, 101, 0.2);
  transform: translateY(8px);
}

body.leadership-page .cf-team-col__more-icon {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}

body.leadership-page .cf-team-col:hover .cf-team-col__more,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__more,
body.leadership-page .cf-team-col.is-active .cf-team-col__more {
  transform: translateY(0);
}

body.leadership-page .cf-team-col:hover .cf-team-col__more-icon,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__more-icon,
body.leadership-page .cf-team-col.is-active .cf-team-col__more-icon {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}


body.service-page [data-reveal],
body.service-page [data-reveal-group],
body.service-page .home-figure {
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
  clip-path: none !important;
  transition: none !important;
}


body:not(.leadership-page) .cf-team-col__more {
  display: initial;
}


body.service-page .cf-team-col__more {
  position: absolute;
  bottom: 18px;
  left: 50%;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  max-width: calc(100% - 32px);
  min-height: 34px;
  padding: 0 10px 0 14px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.92);
  color: #ffffff;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: 0 12px 26px rgba(16, 55, 101, 0.22);
  transform: translateX(-50%);
  transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

body.service-page .cf-team-col__more-icon {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff;
  font-size: 0.9rem;
  line-height: 1;
}

body.service-page .cf-team-col:hover .cf-team-col__more,
body.service-page .cf-team-col:focus-visible .cf-team-col__more,
body.service-page .cf-team-col.is-active .cf-team-col__more {
  border-color: var(--rm-teal, #00a3b4);
  background: var(--rm-teal, #00a3b4);
  transform: translateX(-50%) translateY(-2px);
}


@media (max-width: 1040px) {
  body.next-menu-version.page-mode header.site-header--next-menu.is-page nav.next-menu-nav,
  body.next-menu-version.page-mode header.site-header--next-menu.is-page .next-menu-nav {
    display: none !important;
  }

  body.next-menu-version .site-header--next-menu .menu-burger {
    display: inline-grid;
    place-items: center;
    flex: 0 0 36px;
  }
}


body.leadership-page .team-modal__media-shell {
  min-height: 0;
  aspect-ratio: 4 / 5;
  border-radius: 16px;
  background: #edf5f7;
}

body.leadership-page .team-modal__media-shell::before {
  content: none;
}

body.leadership-page .team-modal__media-shell img {
  object-fit: cover;
  object-position: center top;
}

@media (max-width: 1040px) {
  body.leadership-page .cf-team-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  body.leadership-page .cf-team-track {
    grid-template-columns: minmax(0, 1fr);
  }

  body.leadership-page .cf-team-col__caption {
    min-height: 112px;
    padding: 18px 20px 20px;
  }

body.leadership-page .cf-team-col__more {
  bottom: 126px;
  }
}


body.service-page .cf-team > .cf-shell > [data-team-head] {
  display: grid;
  justify-items: center;
  width: 100%;
  margin-inline: auto;
  text-align: center;
}

body.service-page .cf-team > .cf-shell > [data-team-head] .cf-title {
  margin-inline: auto;
  text-align: center;
}

body.service-page .cf-team > .cf-shell > [data-team-head] .cf-title::after {
  margin-inline: auto;
}


body.leadership-page .cf-team {
  padding: clamp(56px, 6vw, 92px) 0;
  background:
    radial-gradient(circle at 18% 14%, rgba(0, 163, 180, 0.14), transparent 34%),
    linear-gradient(180deg, #f7fbfd 0%, #eef7fa 100%);
}

body.leadership-page .cf-team-slider {
  width: min(100% - 56px, 1440px);
  margin: clamp(28px, 3vw, 48px) auto 0;
  border: 0;
  overflow: visible;
  background: transparent;
}

body.leadership-page .cf-team-track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(20px, 2.2vw, 30px);
}

body.leadership-page .cf-team-col,
body.leadership-page .cf-team-col:first-child {
  display: block;
  min-height: 0;
  height: clamp(470px, 34vw, 540px);
  border: 1px solid rgba(28, 53, 94, 0.12);
  border-radius: 10px;
  background:
    radial-gradient(circle at 18% 18%, rgba(28, 53, 94, 0.16), transparent 42%),
    linear-gradient(180deg, #ffffff, #eaf7fa);
  box-shadow: none;
  overflow: hidden;
}

body.leadership-page .cf-team-col:hover,
body.leadership-page .cf-team-col:focus-visible,
body.leadership-page .cf-team-col.is-active {
  border-color: rgba(0, 163, 180, 0.48);
  background:
    radial-gradient(circle at 18% 18%, rgba(0, 163, 180, 0.2), transparent 42%),
    linear-gradient(180deg, #ffffff, #eaf7fa);
  box-shadow: 0 18px 40px rgba(16, 55, 101, 0.1);
}

body.leadership-page .cf-team-col__photo,
body.leadership-page .cf-team-col--official-portrait .cf-team-col__photo {
  position: absolute;
  top: auto;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: auto;
  height: 80%;
  aspect-ratio: auto;
  overflow: hidden;
  background: transparent;
}

body.leadership-page .cf-team-col__photo img,
body.leadership-page .cf-team-col--official-portrait .cf-team-col__photo img {
  width: 100%;
  height: 96%;
  object-fit: contain;
  object-position: center bottom;
  filter: none !important;
  transform: none;
}

body.leadership-page .cf-team-col:hover .cf-team-col__photo img,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__photo img,
body.leadership-page .cf-team-col.is-active .cf-team-col__photo img {
  transform: scale(1.035);
}

body.leadership-page .cf-team-col__caption {
  position: absolute;
  top: 14px;
  right: 16px;
  bottom: auto;
  left: 16px;
  display: block;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  opacity: 1;
  text-align: center;
  transform: none;
}

body.leadership-page .cf-team-col__role,
body.leadership-page .cf-team-col:hover .cf-team-col__role,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__role,
body.leadership-page .cf-team-col.is-active .cf-team-col__role {
  margin: 0 0 6px;
  color: rgba(28, 53, 94, 0.68);
  font-size: 0.67rem;
  font-weight: 600;
}

body.leadership-page .cf-team-col__name,
body.leadership-page .cf-team-col:hover .cf-team-col__name,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__name,
body.leadership-page .cf-team-col.is-active .cf-team-col__name {
  margin: 0;
  color: #1c355e;
  font-size: clamp(1.2rem, 1.45vw, 1.55rem);
  font-weight: 400;
}

body.leadership-page .cf-team-col__more,
body.leadership-page .cf-team-col:hover .cf-team-col__more,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__more,
body.leadership-page .cf-team-col.is-active .cf-team-col__more {
  right: auto;
  bottom: 18px;
  left: 50%;
  display: inline-flex;
  border-color: #1c355e;
  background: #1c355e;
  color: #ffffff;
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%);
}

body.leadership-page .cf-team-col__more-icon,
body.leadership-page .cf-team-col:hover .cf-team-col__more-icon,
body.leadership-page .cf-team-col:focus-visible .cf-team-col__more-icon,
body.leadership-page .cf-team-col.is-active .cf-team-col__more-icon {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}

body.leadership-page .leadership-team-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 2.4vw, 34px);
  margin: clamp(24px, 3vw, 38px) auto 0;
}

body.leadership-page .leadership-team-filters__button {
  position: relative;
  appearance: none;
  padding: 0 0 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: rgba(28, 53, 94, 0.68);
  cursor: pointer;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 600;
}

body.leadership-page .leadership-team-filters__button::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: var(--rm-teal);
  content: "";
  transform: scaleX(0);
  transition: transform 180ms ease;
}

body.leadership-page .leadership-team-filters__button:hover,
body.leadership-page .leadership-team-filters__button:focus-visible,
body.leadership-page .leadership-team-filters__button.is-active {
  color: var(--rm-teal);
}

body.leadership-page .leadership-team-filters__button:hover::after,
body.leadership-page .leadership-team-filters__button:focus-visible::after,
body.leadership-page .leadership-team-filters__button.is-active::after {
  transform: scaleX(1);
}

body.leadership-page .cf-team-col[hidden] {
  display: none !important;
}

@media (max-width: 1040px) {
  body.leadership-page .cf-team-track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  body.leadership-page .cf-team-slider { width: min(100% - 28px, 1440px); }
  body.leadership-page .cf-team-track { grid-template-columns: 1fr; }
  body.leadership-page .cf-team-col { height: 460px; }
}

@media (max-width: 1040px) {
  .site-footer__offices {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .site-footer__links--navigation,
  body.index2-page .site-footer__links--navigation,
  .site-footer__offices {
    grid-template-columns: minmax(0, 1fr);
  }

  .site-footer__offices {
    gap: 26px;
  }
}


body.service-page .cf-team--static-grid .cf-team-slider {
  width: min(100% - 48px, 1180px);
  margin: clamp(28px, 3vw, 44px) auto 0;
  border: 0;
  overflow: visible;
  cursor: default;
  background: transparent;
}

body.service-page .cf-team--static-grid .cf-team-track {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 2.4vw, 34px);
}

body.service-page .cf-team--static-grid .cf-team-col,
body.service-page .cf-team--static-grid .cf-team-col:first-child {
  display: flex;
  flex: none;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  height: auto;
  border: 1px solid rgba(28, 53, 94, 0.14);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(22, 53, 91, 0.08);
  cursor: pointer;
  opacity: 1 !important;
  overflow: hidden;
  transform: none !important;
  transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

body.service-page .cf-team--static-grid .cf-team-col:hover,
body.service-page .cf-team--static-grid .cf-team-col:focus-visible,
body.service-page .cf-team--static-grid .cf-team-col.is-active {
  border-color: rgba(0, 163, 180, 0.54);
  background: #ffffff;
  box-shadow: 0 24px 46px rgba(22, 53, 91, 0.14);
  outline: none;
  transform: translateY(-4px) !important;
}

body.service-page .cf-team--static-grid .cf-team-col__photo {
  position: relative;
  inset: auto;
  order: 1;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 4.5;
  overflow: hidden;
  background: #eef5f7;
}

body.service-page .cf-team--static-grid .cf-team-col__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  filter: none;
  transform: none;
  transition: transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.service-page .cf-team--static-grid .cf-team-col:hover .cf-team-col__photo img,
body.service-page .cf-team--static-grid .cf-team-col:focus-visible .cf-team-col__photo img,
body.service-page .cf-team--static-grid .cf-team-col.is-active .cf-team-col__photo img {
  filter: none;
  transform: scale(1.035);
}

body.service-page .cf-team--static-grid .cf-team-col__caption {
  position: relative;
  inset: auto;
  order: 2;
  min-height: 112px;
  padding: 22px 24px 26px;
  text-align: left;
  opacity: 1 !important;
  pointer-events: none;
  transform: none !important;
}

body.service-page .cf-team--static-grid .cf-team-col__role {
  min-height: 1.5em;
  margin: 0 0 7px;
  color: var(--rm-teal, #00a3b4);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.4;
}

body.service-page .cf-team--static-grid .cf-team-col__name {
  margin: 0;
  color: var(--rm-navy, #1c355e);
  font-size: clamp(1.35rem, 1.7vw, 1.7rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
}

body.service-page .cf-team--static-grid .cf-team-col__dot,
body.service-page .cf-team--static-grid .cf-team-col__more,
body.service-page .cf-team--static-grid .cf-team-nav,
body.service-page .cf-team--static-grid .cf-team-cursor {
  display: none !important;
}


body.service-page .cf-team--static-grid .cf-team-col__photo {
  display: block !important;
  flex: 0 0 auto !important;
  height: auto !important;
  padding: 0 !important;
  aspect-ratio: 4 / 4.5 !important;
}

body.service-page .cf-team--static-grid .cf-team-col {
  height: auto !important;
  min-height: 0 !important;
  justify-content: flex-start !important;
}

body.service-page .cf-team--static-grid .cf-team-col__caption {
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  margin: 0 !important;
}

body.service-page .cf-team--static-grid .cf-team-col__photo img {
  width: 100% !important;
  height: 100% !important;
  border-radius: 0 !important;
  filter: none !important;
  object-fit: cover !important;
  object-position: center top !important;
}


@media (max-width: 1040px) {
  body.next-menu-version .mobile-menu {
    overflow: hidden;
  }

  body.next-menu-version .mobile-menu__panel {
    display: flex;
    flex-direction: column;
    height: 100dvh;
    max-height: 100dvh;
    min-height: 0;
    padding: max(14px, env(safe-area-inset-top)) clamp(16px, 5vw, 28px) max(18px, env(safe-area-inset-bottom));
    overflow: hidden;
  }

  body.next-menu-version .mobile-menu__topbar {
    flex: 0 0 auto;
    min-height: 48px;
  }

  body.next-menu-version .mobile-menu__content,
  body.next-menu-version .mobile-menu--two-level .mobile-menu__content {
    display: block;
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
    margin-top: 26px;
    padding: 0 2px 28px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  body.next-menu-version .mobile-menu__primary-list,
  body.next-menu-version .mobile-menu__secondary-list,
  body.next-menu-version .mobile-menu__tertiary-list {
    width: 100%;
    gap: 0;
  }

  body.next-menu-version .mobile-menu__secondary-list,
  body.next-menu-version .mobile-menu--two-level .mobile-menu__secondary-list {
    padding-left: 0;
  }

  body.next-menu-version .mobile-menu--two-level .mobile-menu__secondary-list::before {
    content: none;
  }

  body.next-menu-version .mobile-menu.has-section .mobile-menu__primary-list,
  body.next-menu-version .mobile-menu.has-subsection .mobile-menu__secondary-list {
    display: none !important;
  }

  body.next-menu-version .mobile-menu__back {
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 38px;
    margin: 0 0 14px;
    padding: 0;
    border: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
    cursor: pointer;
  }

  body.next-menu-version .mobile-menu__back[hidden] {
    display: none !important;
  }

  body.next-menu-version .mobile-menu__back svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
    transition: transform 180ms ease;
  }

  body.next-menu-version .mobile-menu__back:hover svg,
  body.next-menu-version .mobile-menu__back:focus-visible svg {
    transform: translateX(-3px);
  }

  body.next-menu-version .mobile-menu__back:focus-visible {
    outline: 2px solid var(--rm-teal, #00a3b4);
    outline-offset: 4px;
  }

  body.next-menu-version .mobile-menu__primary-button,
  body.next-menu-version .mobile-menu__secondary-button,
  body.next-menu-version .mobile-menu__tertiary-button {
    min-height: 54px;
    padding: 13px 2px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
    font-size: 1.06rem;
    font-weight: 500;
    line-height: 1.25;
  }

  body.next-menu-version .mobile-menu__primary-button,
  body.next-menu-version .mobile-menu__secondary-button {
    align-items: center;
  }

  body.next-menu-version .mobile-menu__primary-button.has-children::after,
  body.next-menu-version .mobile-menu__secondary-button.has-children::after {
    flex: 0 0 auto;
    color: var(--rm-teal, #00a3b4);
    font-size: 1.5rem;
  }

  body.next-menu-version .mobile-menu__primary-text {
    padding-bottom: 0;
    border-bottom: 0;
  }

  body.next-menu-version .mobile-menu__secondary-group,
  body.next-menu-version .mobile-menu__tertiary-group {
    gap: 0;
  }

  body.next-menu-version .mobile-menu__tertiary-list {
    padding-top: 0;
  }

  body.next-menu-version .mobile-menu__tertiary-eyebrow {
    margin: 0 0 12px;
    color: var(--rm-teal, #00a3b4);
    font-size: 0.78rem;
  }

  body.next-menu-version .mobile-menu__tertiary-links {
    gap: 0;
  }

  body.next-menu-version .mobile-menu__primary-list.is-switching-in,
  body.next-menu-version .mobile-menu__secondary-list.is-switching-in,
  body.next-menu-version .mobile-menu__tertiary-list.is-switching-in {
    animation: mobile-menu-level-in 260ms cubic-bezier(0.22, 1, 0.36, 1) both;
  }
}

@keyframes mobile-menu-level-in {
  from {
    opacity: 0;
    transform: translateX(20px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@media (max-width: 900px) {
  body.service-page .cf-team--static-grid .cf-team-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  body.service-page .cf-team--static-grid .cf-team-slider {
    width: min(100% - 40px, 1180px);
  }

  body.service-page .cf-team--static-grid .cf-team-track {
    grid-template-columns: minmax(0, 1fr);
  }
}


body.contact-page .contact-career-links {
  display: grid;
  gap: 10px;
  margin-top: 8px;
  padding-top: 18px;
  border-top: 1px solid var(--rm-line);
}

body.contact-page .contact-career-links a {
  width: fit-content;
  color: var(--rm-navy);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
}

body.contact-page .contact-career-links a::after {
  content: ' →';
  color: var(--rm-teal);
}

body.contact-page .contact-career-links a:hover,
body.contact-page .contact-career-links a:focus-visible {
  color: var(--rm-teal);
}


body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards {
  --cfp-lift: clamp(30px, 5.6vw, 86px);
  position: relative;
  overflow: hidden;
  padding-bottom: clamp(44px, 4.6vw, 72px);
  background: #f6f8fa;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-shell {
  position: relative;
  z-index: 1;
  width: min(1720px, 90%);
  max-width: min(1720px, 90%);
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-section__head {
  margin-bottom: clamp(34px, 3.4vw, 56px);
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 0;
  max-width: none;
  margin: 0;
  padding: 0 0 calc(var(--cfp-lift) * 2);
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  min-height: clamp(255px, 21vw, 330px);
  padding: clamp(38px, 3.9vw, 60px) clamp(30px, 3.2vw, 50px) clamp(38px, 3.6vw, 56px);
  border: 0;
  border-radius: 2px;
  overflow: hidden;
  text-align: left;
  
  transition: translate 520ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(1) {
  z-index: 1;
  translate: 0 calc(var(--cfp-lift) * 2);
  background: linear-gradient(180deg, #eef2f6 0%, #e9eff5 100%);
  box-shadow: 0 16px 40px rgba(20, 40, 68, 0.07);
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(2) {
  z-index: 2;
  translate: 0 var(--cfp-lift);
  background: #0e2b4f;
  box-shadow: 0 26px 60px rgba(10, 26, 50, 0.3);
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(3) {
  z-index: 3;
  translate: none;
  background: #0d6a89;
  box-shadow: 0 30px 66px rgba(10, 58, 80, 0.32);
}


body:is(.private-equity-page, .securities-page) .cf-positioning-section--cards .cf-positioning-card,
body:is(.private-equity-page, .securities-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(n) {
  translate: none;
}

body:is(.private-equity-page, .securities-page) .cf-positioning-section--cards .cf-positioning-cards {
  padding-bottom: 0;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card__icon {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  flex: none;
  width: clamp(66px, 5vw, 92px);
  height: clamp(66px, 5vw, 92px);
  margin: 0 0 clamp(24px, 2.6vw, 42px);
  border: 1px solid currentColor;
  border-radius: 50%;
  color: #2fb6cf;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(1) .cf-positioning-card__icon {
  border-color: transparent;
  background: #dfe6ec;
  color: rgba(28, 53, 94, 0.62);
}

body.real-estate-page .cf-positioning-section--cards .cf-positioning-card__icon svg {
  width: 52%;
  height: 52%;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card__body {
  position: relative;
  z-index: 1;
  display: block;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card__title {
  max-width: none;
  margin: 0 0 clamp(13px, 1.3vw, 19px);
  color: var(--rm-navy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.2rem, 1.5vw, 1.68rem);
  font-weight: 400;
  line-height: 1.18;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card__text {
  margin: 0;
  color: rgba(28, 53, 94, 0.74);
  font-size: clamp(0.92rem, 0.98vw, 1rem);
  line-height: 1.78;
  text-align: justify;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(n + 2) .cf-positioning-card__title {
  color: #ffffff;
}

body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(n + 2) .cf-positioning-card__text {
  color: rgba(255, 255, 255, 0.85);
}

@media (max-width: 1024px) {
  body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-cards {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
    padding-bottom: 0;
  }

  body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card,
  body:is(.corporate-finance-page, .asset-management-page, .private-equity-page, .securities-page, .real-estate-page) .cf-positioning-section--cards .cf-positioning-card:nth-child(n) {
    transform: none;
    translate: none;
    min-height: 0;
  }
}


.founder-note__copy p,
.impact-section__copy,
.impact-label__summary,
.securities-bel__text,
.pe-fund-rich-copy p,
body.contact-page .contact-intro p {
  text-align: justify;
  text-align-last: left;
  hyphens: none;
  word-break: normal;
  overflow-wrap: break-word;
}


.site-main p:not(.motors-hero__eyebrow, .motors-hero__lead, .home-expertise__eyebrow, .home-expertise__subtitle, .trusted__eyebrow, .cf-hero__eyebrow, .cf-hero__super, .cf-hero__stat-label, .home-figure__label, .careers-page__eyebrow, .careers-job__location, .impact-eyebrow, .impact-label__title) {
  text-align: justify;
  text-align-last: left;
  hyphens: none;
  word-break: normal;
  overflow-wrap: break-word;
}

@media (max-width: 760px) {
  .site-main p:not(.motors-hero__eyebrow, .motors-hero__lead, .home-expertise__eyebrow, .home-expertise__subtitle, .trusted__eyebrow, .cf-hero__eyebrow, .cf-hero__super, .cf-hero__stat-label, .home-figure__label, .careers-page__eyebrow, .careers-job__location, .impact-eyebrow, .impact-label__title) {
    text-align: left;
  }
}


body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-slider {
  
  width: min(calc(100% - 48px), 1180px);
  margin: 0 auto;
  border: 0;
  background: transparent;
  cursor: grab;
  scroll-snap-type: x proximity;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-slider.is-dragging {
  cursor: grabbing;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-track {
  display: flex;
  gap: clamp(20px, 2.4vw, 34px);
  padding: 0 0 12px;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:first-child {
  display: flex;
  
  flex: 0 0 calc((100% - 68px) / 3);
  flex-direction: column;
  height: auto !important;
  min-height: 0;
  border: 1px solid rgba(28, 53, 94, 0.14);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(22, 53, 91, 0.08);
  cursor: pointer;
  opacity: 1 !important;
  overflow: hidden;
  scroll-snap-align: start;
  transform: none !important;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:hover,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:focus-visible,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col.is-active {
  border-color: rgba(0, 163, 180, 0.58);
  background: #ffffff;
  box-shadow: 0 24px 46px rgba(22, 53, 91, 0.16);
  transform: translateY(-4px) !important;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__photo,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col--official-portrait .cf-team-col__photo {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  order: 1;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  aspect-ratio: 4 / 4.5;
  overflow: hidden;
  background: #edf5f7;
  isolation: auto;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__photo::before,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__photo::after {
  content: none !important;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__photo img,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col--official-portrait .cf-team-col__photo img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none !important;
  filter: none !important;
  object-fit: cover;
  object-position: center top;
  transform: none;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:hover .cf-team-col__photo img,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:focus-visible .cf-team-col__photo img,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col.is-active .cf-team-col__photo img {
  filter: none !important;
  transform: none;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__caption {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  order: 2;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 0;
  padding: 22px 24px 26px;
  border: 0;
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
  opacity: 1 !important;
  pointer-events: none;
  text-align: left;
  transform: none !important;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__role,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:hover .cf-team-col__role,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:focus-visible .cf-team-col__role,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col.is-active .cf-team-col__role {
  order: 1;
  margin: 0 0 9px;
  color: #00a3b4;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.42;
  text-transform: uppercase;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__name,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:hover .cf-team-col__name,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:focus-visible .cf-team-col__name,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col.is-active .cf-team-col__name {
  order: 2;
  margin: 0;
  color: #1c355e;
  font-size: clamp(1.35rem, 1.7vw, 1.7rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__dot {
  display: none !important;
}


body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__more {
  position: absolute;
  top: 16px;
  right: 16px;
  bottom: auto;
  left: auto;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 0;
  max-width: calc(100% - 32px);
  padding: 10px 12px 10px 14px;
  border: 0;
  border-radius: 999px;
  background: rgba(28, 53, 94, 0.94);
  box-shadow: 0 10px 24px rgba(14, 35, 65, 0.2);
  color: #ffffff;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.095em;
  line-height: 1;
  opacity: 0;
  text-transform: uppercase;
  transform: translateY(-8px);
  transition: opacity 180ms ease, transform 180ms ease, background-color 180ms ease;
  visibility: visible;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__more-icon {
  display: inline-grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  background: var(--rm-teal, #00a3b4);
  color: #ffffff;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  transition: transform 180ms ease, background-color 180ms ease;
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:hover .cf-team-col__more,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:focus-visible .cf-team-col__more,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col.is-active .cf-team-col__more {
  border-color: transparent;
  background: rgba(28, 53, 94, 0.94);
  color: #ffffff;
  opacity: 1;
  transform: translateY(0);
}

body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:hover .cf-team-col__more-icon,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:focus-visible .cf-team-col__more-icon,
body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col.is-active .cf-team-col__more-icon {
  background: var(--rm-navy, #1c355e);
  transform: rotate(90deg);
}

@media (max-width: 640px) {
  body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-slider {
    width: min(calc(100% - 32px), 1440px);
  }

  body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col,
  body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:first-child {
    flex-basis: min(78vw, 310px);
  }

  body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col__caption {
    min-height: 112px;
    padding: 18px 20px 20px;
  }
}

@media (max-width: 900px) and (min-width: 641px) {
  body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col,
  body.service-page .cf-team:not(.cf-team--static-grid) .cf-team-col:first-child {
    flex-basis: calc((100% - 20px) / 2);
  }
}
