:root {
  --container: 1320px;
  --header-h: 82px;
  --surface-frost: rgba(255,255,255,.78);
  --surface-glass: rgba(255,255,255,.88);
  --line-strong: rgba(164,196,207,.58);
  --shadow-card: 0 16px 46px rgba(11,35,76,.09), 0 2px 8px rgba(11,35,76,.035);
  --shadow-card-hover: 0 26px 70px rgba(11,35,76,.16), 0 7px 20px rgba(20,140,150,.10);
  --shadow-photo: 0 30px 80px rgba(11,35,76,.18), 0 8px 24px rgba(11,35,76,.08);
  --radius-editorial: 2.4rem;
  --ambient-grid: linear-gradient(rgba(20,140,150,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(20,140,150,.045) 1px, transparent 1px);
}

html { scrollbar-color: var(--teal-600) #eaf4f6; }
body {
  background:
    radial-gradient(circle at 94% 7%, rgba(32,166,174,.10), transparent 27rem),
    radial-gradient(circle at 4% 46%, rgba(18,50,102,.06), transparent 34rem),
    #f7fafb;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -3;
  pointer-events: none;
  opacity: .42;
  background-image: var(--ambient-grid);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, transparent, #000 10%, #000 85%, transparent);
}

/* ---------- Global type and rhythm ---------- */
h1, h2, h3 { text-wrap: balance; }
p { text-wrap: pretty; }
main > .section,
main > .section-polish:not(.page-hero):not(.brand-quote):not(.social-band) {
  padding-block: clamp(4.5rem, 7vw, 7.5rem);
}
.inner-page main > .section { padding-block: clamp(4.2rem, 6.6vw, 7rem); }
.section-heading,
.section-intro,
.inner-copy { position: relative; }
.section-heading > .eyebrow,
.section-intro > .eyebrow,
.inner-copy > .eyebrow,
.snapshot-heading > .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
}
.section-heading > .eyebrow::before,
.section-intro > .eyebrow::before,
.inner-copy > .eyebrow::before,
.snapshot-heading > .eyebrow::before {
  content: "";
  width: 1.85rem;
  height: 2px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--teal-600), var(--teal-300));
}
.section-intro h2,
.inner-copy h2,
.section-heading h2 { max-width: 18ch; }
.section-heading--center h2 { margin-inline: auto; }
.section-heading--center > .eyebrow::before { display: none; }
.section-heading--center > .eyebrow::after {
  content: "";
  width: 1.85rem;
  height: 2px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--teal-300), var(--teal-600));
}

.section-polish::before {
  width: clamp(22rem, 36vw, 38rem);
  right: -16%;
  opacity: .95;
}
.section-polish::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 0 0;
  height: 7rem;
  pointer-events: none;
  background: linear-gradient(to bottom, transparent, rgba(233,247,247,.28));
  mask-image: linear-gradient(to bottom, transparent, #000);
}
.section--white {
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.89)),
    radial-gradient(circle at 10% 20%, rgba(32,166,174,.08), transparent 28rem);
}

/* ---------- Header ---------- */
.site-header {
  height: var(--header-h);
  background: rgba(255,255,255,.80);
  border-bottom-color: rgba(184,211,219,.55);
  backdrop-filter: blur(22px) saturate(1.35);
}
.site-header.is-scrolled {
  background: rgba(255,255,255,.96);
  box-shadow: 0 13px 44px rgba(11,35,76,.09);
}
.header-shell { gap: 1rem; }
.brand img { width: 184px; }
.desktop-nav {
  padding: .28rem;
  border: 1px solid rgba(220,232,237,.78);
  border-radius: var(--radius-pill);
  background: rgba(247,250,251,.72);
  gap: .08rem;
}
.nav-link {
  border-radius: var(--radius-pill);
  padding: .68rem .72rem;
  font-size: .76rem;
  letter-spacing: -.01em;
  transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}
.nav-link::after { display: none; }
.nav-link:hover { background: rgba(233,247,247,.88); transform: translateY(-1px); }
.nav-link.is-active {
  color: #fff;
  background: linear-gradient(135deg, var(--teal-600), var(--teal-700));
  box-shadow: 0 8px 22px rgba(20,140,150,.20);
}
.header-actions { gap: .45rem; }
.language-switcher, .icon-button, .menu-toggle { box-shadow: 0 5px 18px rgba(11,35,76,.045); }

/* ---------- Buttons ---------- */
.button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 48px;
  letter-spacing: -.01em;
  box-shadow: 0 10px 26px rgba(11,35,76,.10);
  transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease, background 190ms ease;
}
.button::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0;
  background: linear-gradient(110deg, transparent 20%, rgba(255,255,255,.28), transparent 70%);
  transform: translateX(-120%);
  transition: transform 520ms var(--ease), opacity 160ms ease;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(11,35,76,.17); }
.button:hover::before { opacity: 1; transform: translateX(120%); }
.button svg { transition: transform 180ms ease; }
.button:hover svg { transform: translateX(3px); }
.button--primary { background: linear-gradient(135deg, var(--teal-500), var(--teal-700)); }
.button--primary:hover { background: linear-gradient(135deg, #23b4bc, #0b707a); }
.button--secondary { background: rgba(255,255,255,.83); backdrop-filter: blur(10px); }

/* ---------- Cards and image quality ---------- */
.feature-card,
.story-card,
.person-card,
.inner-icon-card,
.module-card,
.learning-card,
.role-placeholder,
.contact-option,
.purpose-card,
.difference-list article,
.category-row span,
.highlight-row article {
  border-color: rgba(190,216,224,.68);
  box-shadow: var(--shadow-card);
  transition: transform 230ms var(--ease), box-shadow 230ms var(--ease), border-color 230ms ease;
}
.feature-card:hover,
.story-card:hover,
.person-card:hover,
.inner-icon-card:hover,
.module-card:hover,
.learning-card:hover,
.role-placeholder:hover,
.contact-option:hover,
.purpose-card:hover,
.difference-list article:hover,
.category-row span:hover,
.highlight-row article:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-card-hover);
  border-color: rgba(32,166,174,.42);
}
picture.responsive-picture > img,
.media-card img,
.media-tile img,
.gallery-item img,
.highlight-row img {
  image-rendering: auto;
  filter: saturate(1.035) contrast(1.035);
}
img[data-asset-origin="generated-illustrative-asset"] {
  filter: saturate(1.04) contrast(1.045) brightness(1.005);
}
.media-card,
.inner-media,
.culture-visual,
.page-hero__visual,
.final-cta__image,
.featured-media,
.gallery-item,
.media-tile {
  box-shadow: var(--shadow-photo);
}

/* ---------- Homepage hero ---------- */
.hero {
  min-height: min(820px, calc(100svh - var(--header-h) + 2rem));
  padding-top: clamp(2.5rem, 5vw, 4.8rem);
  background:
    linear-gradient(112deg, rgba(255,255,255,.99) 0 39%, rgba(238,250,251,.91) 63%, rgba(20,140,150,.13) 100%);
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(118deg, transparent 0 15%, rgba(32,166,174,.055) 15% 20%, transparent 20% 71%, rgba(18,50,102,.045) 71%),
    radial-gradient(circle at 65% 18%, rgba(255,255,255,.95), transparent 21rem);
}
.hero__grid { grid-template-columns: minmax(0,.88fr) minmax(520px,1.12fr); gap: clamp(2rem,4vw,4.25rem); }
.hero__copy { position: relative; z-index: 4; padding-block: 1rem 5.2rem; }
.hero__copy::before {
  content: "";
  position: absolute;
  left: -1.25rem;
  top: 3.5rem;
  width: 4px;
  height: 7.5rem;
  border-radius: 99px;
  background: linear-gradient(to bottom, var(--teal-500), rgba(20,140,150,0));
}
.hero h1 {
  max-width: 12.5ch;
  font-size: clamp(3.25rem, 4.8vw, 5.55rem);
  line-height: .96;
  letter-spacing: -.062em;
}
.hero__typed-wrap { text-shadow: 0 10px 35px rgba(32,166,174,.13); }
.hero__lead { max-width: 52ch; line-height: 1.58; }
.hero__microcopy { margin-top: 1.55rem; }
.hero__microcopy span {
  padding: .4rem .62rem;
  border: 1px solid rgba(190,216,224,.72);
  border-radius: var(--radius-pill);
  background: rgba(255,255,255,.72);
}
.hero__visual { min-height: 600px; }
.hero__image-frame {
  height: clamp(560px, 47vw, 690px);
  border-radius: 4rem 1.4rem 4rem 1.4rem;
  border: 1px solid rgba(255,255,255,.78);
  box-shadow: 0 36px 96px rgba(11,35,76,.22), 0 10px 32px rgba(20,140,150,.13);
}
.hero__image-frame::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255,255,255,.18), transparent 28%, transparent 72%, rgba(7,26,56,.14));
}
.hero__image-frame img { object-position: 53% 38%; transform: scale(1.012); }
.hero__shape { opacity: .88; }
.hero__shape--two { opacity: .26; }
.hero__floating-card {
  left: -3.15rem;
  bottom: 4rem;
  padding: 1rem 1.1rem;
  border-color: rgba(255,255,255,.88);
  box-shadow: 0 18px 50px rgba(11,35,76,.17);
}
.hero__floating-card::after {
  content: "";
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: -.42rem;
  height: .42rem;
  border-radius: 0 0 1rem 1rem;
  background: linear-gradient(90deg, var(--teal-500), var(--navy-800));
}
.value-strip {
  margin-top: 0;
  transform: translateY(46%);
  border-color: rgba(184,211,219,.74);
  box-shadow: 0 20px 60px rgba(11,35,76,.13);
}
.value-item { min-height: 112px; }
.value-item svg { padding: .48rem; width: 2.55rem; height: 2.55rem; border-radius: .85rem; background: var(--teal-050); }

/* ---------- Homepage editorial compositions ---------- */
.about-preview { padding-top: calc(var(--space-9) + 3.2rem); }
.split-editorial { grid-template-columns: 1.13fr .87fr; }
.media-card { border-radius: 2.2rem .9rem 2.2rem .9rem; }
.media-card::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 1rem auto auto 1rem;
  width: 4.75rem;
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg, #fff, rgba(255,255,255,.08));
}
.principle-list { grid-template-columns: 1fr; }
.principle-list span { border-left: 3px solid var(--teal-500); }

.pillars-section {
  background:
    linear-gradient(135deg, rgba(233,247,247,.93), rgba(247,250,251,.72)),
    var(--ambient-grid);
  background-size: auto, 58px 58px;
}
.pillars-layout { grid-template-columns: .72fr 2.28fr; gap: clamp(2rem,5vw,5rem); }
.pillar-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.feature-card {
  min-height: auto;
  display: grid;
  grid-template-columns: 58px 1fr 38px;
  grid-template-rows: auto 1fr;
  column-gap: 1rem;
  padding: 1.2rem;
  border-radius: 1.45rem;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(243,251,251,.86)),
    var(--ambient-grid);
  background-size: auto, 34px 34px;
}
.feature-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(to bottom, var(--teal-300), var(--teal-700));
  opacity: .9;
}
.feature-card::after { width: 10rem; height: 10rem; right: -5rem; bottom: -6rem; }
.feature-card > svg {
  grid-row: 1/3;
  width: 2.9rem;
  height: 2.9rem;
  padding: .7rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--teal-100), #fff);
  margin: 0;
}
.feature-card h3 { margin: 0 0 .35rem; align-self: end; }
.feature-card p { margin: 0; font-size: .9rem; }
.feature-card > a { position: static; grid-column: 3; grid-row: 1/3; align-self: center; justify-self: end; }

.culture-section { background: linear-gradient(180deg,#fff,#f6fbfc 70%,#fff); }
.culture-layout {
  grid-template-columns: .72fr 1.35fr .93fr;
  gap: 1.15rem;
  align-items: center;
}
.culture-copy {
  z-index: 3;
  margin-right: -3rem;
  padding: 2rem;
  border: 1px solid rgba(190,216,224,.72);
  border-radius: 1.7rem;
  background: rgba(255,255,255,.93);
  box-shadow: var(--shadow-card-hover);
  backdrop-filter: blur(12px);
}
.culture-visual { min-height: 470px; border-radius: 2.4rem 1rem 2.4rem 1rem; }
.culture-visual picture, .culture-visual img { height: 100%; }
.culture-points { grid-template-columns: 1fr; }
.culture-points article {
  position: relative;
  padding: 1rem 1.05rem;
  background: rgba(255,255,255,.91);
}
.culture-points article::after {
  content: "";
  position: absolute;
  right: .8rem;
  top: .8rem;
  width: .45rem;
  height: .45rem;
  border-radius: 50%;
  background: var(--teal-500);
  box-shadow: 0 0 0 6px rgba(32,166,174,.08);
}

.growth-section {
  background:
    linear-gradient(180deg, rgba(238,248,251,.96), #fff),
    var(--ambient-grid);
  background-size: auto, 54px 54px;
}
.growth-path::before { height: 3px; background: rgba(20,140,150,.16); }
.growth-path::after {
  content: "";
  position: absolute;
  left: 9%;
  top: 29px;
  width: var(--journey-progress, 0%);
  max-width: 82%;
  height: 3px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--teal-500), var(--navy-700));
  transition: width 1.3s var(--ease);
}
.growth-path.is-progressed { --journey-progress: 82%; }
.growth-path__number {
  border: 5px solid rgba(255,255,255,.94);
  outline: 1px solid rgba(20,140,150,.16);
}
.growth-path li { padding-inline: .45rem; }

.recognition-layout { grid-template-columns: .68fr 2.32fr; }
.card-scroller { grid-template-columns: 1.16fr 1fr 1fr; }
.story-card { position: relative; min-height: 100%; }
.story-card img { aspect-ratio: 16/10; }
.story-card > div { position: relative; }
.story-card:first-child { transform: translateY(-.65rem); }
.story-card:first-child:hover { transform: translateY(-1rem); }

.people-section {
  background:
    linear-gradient(150deg, #f7fafb, #eaf7f8 55%, #fff),
    var(--ambient-grid);
  background-size: auto, 48px 48px;
}
.people-layout { grid-template-columns: .68fr 2.32fr; }
.people-cards { gap: .85rem; }
.person-card { background: linear-gradient(155deg,#fff,#f6fbfc); }
.person-card__placeholder { min-height: 255px; }
.person-card__placeholder::after {
  content: "";
  width: 56%;
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg, transparent, rgba(32,166,174,.45), transparent);
}

.media-section { background: #fff; }
.media-layout { grid-template-columns: .65fr 2.35fr; }
.media-gallery {
  grid-template-columns: 1.45fr .78fr .78fr;
  grid-template-rows: 215px 215px;
}
.media-tile { min-height: 0; }
.media-tile--wide { grid-column: 1; grid-row: 1/3; }
.media-tile img { min-height: 0; }
.media-tile:nth-child(2) { grid-column: 2/4; }
.media-tile:nth-child(3) { grid-column: 2; }
.media-tile:nth-child(4) { grid-column: 3; }
.media-tile figcaption {
  left: .85rem;
  bottom: .85rem;
  padding: .46rem .72rem;
  background: rgba(7,26,56,.78);
}

.brand-quote { min-height: 230px; display: grid; align-items: center; }
.brand-quote::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(7,26,56,.96), rgba(7,26,56,.72) 48%, rgba(20,140,150,.65));
  opacity: .98;
}
.brand-quote__inner { position: relative; z-index: 2; }
.brand-quote blockquote { font-size: clamp(1.6rem,2.8vw,2.5rem); }

.final-cta { background: linear-gradient(135deg,#fff,#eef9fa 72%,#fff); }
.final-cta__grid {
  overflow: hidden;
  border: 1px solid rgba(190,216,224,.78);
  border-radius: 2.5rem 1rem 2.5rem 1rem;
  background: rgba(255,255,255,.86);
  box-shadow: var(--shadow-card-hover);
}
.final-cta__copy { padding: clamp(2rem,4vw,4rem); }
.final-cta__image { margin: 0; }

/* ---------- Shared inner page hero ---------- */
.page-hero {
  min-height: 570px;
  background:
    linear-gradient(118deg, #fff 0 39%, rgba(237,248,250,.92) 67%, rgba(20,140,150,.14) 100%);
}
.page-hero__grid { grid-template-columns: .82fr 1.18fr; gap: clamp(2rem,4vw,4.2rem); }
.page-hero__copy { position: relative; z-index: 3; }
.page-hero__copy::before {
  content: "";
  position: absolute;
  left: -1.2rem;
  top: 4.4rem;
  width: 4px;
  height: 6.2rem;
  border-radius: 99px;
  background: linear-gradient(to bottom,var(--teal-500),transparent);
}
.page-hero h1 { font-size: clamp(3rem,4.8vw,5.15rem); line-height: .98; letter-spacing: -.06em; }
.page-hero__visual { min-height: 570px; border-radius: 0 0 0 4rem; box-shadow: -20px 28px 75px rgba(11,35,76,.15); }
.page-hero__visual img { object-position: center 38%; }
.page-hero__visual::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255,255,255,.25), transparent 24%, transparent 72%, rgba(7,26,56,.13));
}
.page-hero--compact, .page-hero--compact .page-hero__visual { min-height: 500px; }

/* ---------- About ---------- */
.about-snapshot { position: relative; overflow: hidden; }
.about-snapshot::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .18;
  background: var(--ambient-grid);
  background-size: 42px 42px;
}
.snapshot-grid { box-shadow: inset 0 1px 0 rgba(255,255,255,.14); backdrop-filter: blur(10px); }
.snapshot-grid article { position: relative; }
.snapshot-grid article::after {
  content: "";
  position: absolute;
  bottom: 1.2rem;
  width: 2.4rem;
  height: 2px;
  background: var(--teal-300);
}
.purpose-card { min-height: 360px; display: flex; flex-direction: column; justify-content: center; }
.purpose-card:nth-child(2) { background: linear-gradient(145deg,var(--navy-950),var(--navy-800)); }
.purpose-card:nth-child(2) h2,
.purpose-card:nth-child(2) p,
.purpose-card:nth-child(2) .eyebrow { color: #fff; }
.purpose-card:nth-child(2) > svg { fill: var(--teal-300); }
.purpose-card:nth-child(2) .country-chips span { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.18); color:#fff; }
.values-story .inner-icon-grid--five { grid-template-columns: repeat(5,1fr); }
.values-story .inner-icon-card { min-height: 220px; text-align: center; }
.values-story .inner-icon-card > svg { margin-inline: auto; }

/* ---------- Career ---------- */
.career-reasons-layout { grid-template-columns: .68fr 1.32fr; }
.career-path-section { background: linear-gradient(145deg,#eaf7fa,#fff 54%,#eef9f9); }
.inner-timeline::before { height: 3px; background: rgba(20,140,150,.15); }
.inner-timeline::after {
  content: "";
  position: absolute;
  left: 8%;
  top: 27px;
  width: var(--journey-progress,0%);
  max-width: 84%;
  height: 3px;
  background: linear-gradient(90deg,var(--teal-500),var(--navy-700));
  transition: width 1.25s var(--ease);
}
.inner-timeline.is-progressed { --journey-progress: 84%; }
.career-feature { border-radius: 2.2rem 1rem 2.2rem 1rem; }
.career-feature > div { position: relative; }
.career-feature > div::before {
  content: "";
  display: block;
  width: 3.5rem;
  height: 3px;
  margin-bottom: 1rem;
  border-radius: 99px;
  background: linear-gradient(90deg,var(--teal-500),var(--teal-300));
}
.program-bridge { background: linear-gradient(120deg,#e9f7f7,#fff 52%,#eef8fb); }

/* ---------- Career programme ---------- */
.module-grid { grid-template-columns: repeat(12,1fr); }
.module-card { grid-column: span 4; min-height: 210px; }
.module-card:nth-child(1), .module-card:nth-child(6) { grid-column: span 5; }
.module-card:nth-child(2), .module-card:nth-child(5) { grid-column: span 3; }
.module-card:nth-child(3), .module-card:nth-child(4) { grid-column: span 4; }
.module-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg,var(--teal-500),var(--navy-700));
  opacity: .75;
}
.learning-grid { grid-template-columns: 1.15fr .85fr .85fr 1.15fr; }
.learning-card:nth-child(1), .learning-card:nth-child(4) { transform: translateY(-.5rem); }
.learning-card:nth-child(1):hover, .learning-card:nth-child(4):hover { transform: translateY(-.85rem); }

/* ---------- Opportunity ---------- */
.opportunity-page .page-hero__visual img { object-position: center 32%; }
.opportunity-intro { border-radius: 2.2rem; }
.application-stepper::before { height: 3px; background: rgba(20,140,150,.14); }
.application-stepper::after {
  content: "";
  position: absolute;
  left: 11%;
  top: 27px;
  width: var(--journey-progress,0%);
  max-width: 78%;
  height: 3px;
  border-radius: 99px;
  background: linear-gradient(90deg,var(--teal-500),var(--navy-700));
  transition: width 1.15s var(--ease);
}
.application-stepper.is-progressed { --journey-progress: 78%; }
.faq-list details {
  border: 1px solid rgba(190,216,224,.72);
  border-radius: 1rem;
  background: rgba(255,255,255,.91);
  box-shadow: 0 8px 24px rgba(11,35,76,.045);
  overflow: hidden;
}
.faq-list details + details { margin-top: .6rem; }
.faq-list summary { padding: 1rem 1.1rem; cursor: pointer; color: var(--navy-900); font-weight: 800; }
.faq-list details p { padding: 0 1.1rem 1.1rem; margin: 0; }
.faq-list details[open] { border-color: rgba(32,166,174,.44); box-shadow: 0 14px 38px rgba(11,35,76,.08); }

/* ---------- Our People ---------- */
.people-page .role-placeholder {
  position: relative;
  min-height: 270px;
  border-style: solid;
  background:
    linear-gradient(145deg,rgba(233,247,247,.94),rgba(255,255,255,.98)),
    var(--ambient-grid);
  background-size: auto, 34px 34px;
}
.people-page .role-placeholder::before {
  content: "";
  position: absolute;
  inset: 1rem 1rem auto;
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg,var(--teal-500),transparent);
}
.role-placeholder-grid { scroll-behavior: smooth; }
.profile-carousel-shell { position: relative; }
.profile-carousel-controls {
  display: flex;
  justify-content: flex-end;
  gap: .5rem;
  margin: 0 0 .8rem;
}
.profile-carousel-controls button {
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: #fff;
  color: var(--navy-900);
  box-shadow: var(--shadow-sm);
  cursor: pointer;
}
.profile-carousel-controls button:hover { border-color: var(--teal-500); color: var(--teal-700); transform: translateY(-2px); }
.profile-carousel-controls button svg { width: 1rem; height: 1rem; fill: currentColor; margin: auto; }

/* ---------- Media ---------- */
.media-page .page-hero__visual img { object-position: center 40%; }
.media-filter-row { scroll-snap-type: x proximity; }
.filter-chip { scroll-snap-align: start; }
.featured-media { padding: 0; overflow: hidden; grid-template-columns: 1.2fr .8fr; }
.featured-media > div { padding: clamp(1.5rem,3vw,2.8rem); }
.editorial-gallery {
  grid-template-columns: repeat(12,1fr);
  grid-auto-rows: 150px;
  gap: .75rem;
}
.gallery-item { grid-column: span 4; grid-row: span 2; }
.gallery-item--wide { grid-column: span 8; grid-row: span 3; }
.gallery-item:nth-of-type(3n) { grid-column: span 4; grid-row: span 3; }
.gallery-item:nth-of-type(5n) { grid-column: span 8; grid-row: span 2; }
.gallery-item::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 45%;
  background: linear-gradient(transparent,rgba(7,26,56,.60));
  pointer-events: none;
}
.gallery-item span { z-index: 2; }
.highlight-row { grid-template-columns: 1.25fr 1fr 1fr; }
.highlight-row article:first-child { transform: translateY(-.5rem); }

/* ---------- Contact ---------- */
.contact-option-grid { gap: .85rem; }
.contact-option { min-height: 132px; }
.contact-option > svg:first-child {
  padding: .5rem;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: .85rem;
  background: var(--teal-050);
}
.contact-map-layout { grid-template-columns: .48fr 1.52fr; }
.map-preview { min-height: 390px; }
.contact-form-layout { grid-template-columns: .75fr 1.25fr; }
.contact-form { padding: clamp(1.2rem,3vw,2rem); box-shadow: var(--shadow-card-hover); }
.field input,.field select,.field textarea { background: #fff; border-color: rgba(190,216,224,.82); }
.field input:hover,.field select:hover,.field textarea:hover { border-color: rgba(32,166,174,.45); }

/* ---------- Footer ---------- */
.site-footer { background: linear-gradient(135deg,#06162f,#0b2a58 58%,#0b6671); }
.site-footer::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .16;
  background: var(--ambient-grid);
  background-size: 42px 42px;
  mask-image: linear-gradient(to right,#000,transparent 72%);
}
.footer-grid,
.footer-bottom { position: relative; z-index: 1; }
.footer-grid { padding-block: clamp(2.8rem,5vw,4.6rem); }
.footer-brand img { width: 205px; }
.footer-links a { transition: color 160ms ease, transform 160ms ease; }
.footer-links a:hover { transform: translateX(3px); }
.footer-legal__button:hover { color: #fff; }

/* ---------- Micro interactions ---------- */
.media-card,
.inner-media,
.culture-visual,
.page-hero__visual,
.gallery-item,
.media-tile { position: relative; isolation: isolate; }
.media-card::after,
.inner-media::after,
.culture-visual::after,
.page-hero__visual::after,
.gallery-item::before,
.media-tile::before {
  transition: opacity 350ms ease;
}
.media-card:hover img,
.inner-media:hover img,
.culture-visual:hover img,
.page-hero__visual:hover img { transform: scale(1.02); }
.media-card img,
.inner-media img,
.culture-visual img,
.page-hero__visual img { transition: transform 650ms var(--ease), filter 300ms ease; }
.social-link { transition: transform 180ms ease, box-shadow 180ms ease; }
.social-link:hover { transform: translateY(-3px) scale(1.04); box-shadow: 0 12px 30px rgba(0,0,0,.22); }

/* ---------- Responsive polish ---------- */
@media (max-width: 1260px) {
  :root { --container: 1160px; }
  .nav-link { padding-inline: .58rem; font-size: .72rem; }
  .hero__grid { grid-template-columns: .9fr 1.1fr; }
  .hero__copy::before, .page-hero__copy::before { display: none; }
}

@media (max-width: 1180px) {
  :root { --header-h: 74px; }
  .desktop-nav { display: none; }
  .hero__grid { grid-template-columns: .9fr 1.1fr; }
  .hero__copy { padding-bottom: 3rem; }
  .culture-layout { grid-template-columns: 1fr 1.2fr; }
  .culture-copy { margin-right: -2rem; }
  .culture-points { grid-column: 1/-1; grid-template-columns: repeat(4,1fr); }
  .media-gallery { grid-template-columns: 1.25fr .75fr .75fr; }
  .values-story .inner-icon-grid--five { grid-template-columns: repeat(3,1fr); }
}

@media (max-width: 980px) {
  .split-editorial,
  .career-reasons-layout,
  .featured-media { grid-template-columns: 1fr; }
  main > .section,
  main > .section-polish:not(.page-hero):not(.brand-quote):not(.social-band) { padding-block: clamp(3.8rem,7vw,5.8rem); }
  .hero { min-height: auto; }
  .hero__grid { grid-template-columns: 1fr; }
  .hero__copy { padding-bottom: .5rem; }
  .hero__visual { min-height: 500px; }
  .hero__image-frame { height: 500px; border-radius: 2.6rem 1rem 2.6rem 1rem; }
  .hero__floating-card { left: 1.2rem; bottom: 1.2rem; }
  .value-strip { transform: none; margin-top: 1.25rem; }
  .about-preview { padding-top: 5rem; }
  .pillars-layout,
  .recognition-layout,
  .people-layout,
  .media-layout { grid-template-columns: 1fr; }
  .culture-layout { grid-template-columns: 1fr; }
  .culture-copy { margin: 0; }
  .culture-visual { min-height: 420px; }
  .culture-points { grid-template-columns: repeat(2,1fr); }
  .media-gallery { grid-template-columns: 1.2fr .8fr; grid-template-rows: 220px 220px 190px; }
  .media-tile--wide { grid-column: 1; grid-row: 1/3; }
  .media-tile:nth-child(2) { grid-column: 2; grid-row: 1; }
  .media-tile:nth-child(3) { grid-column: 2; grid-row: 2; }
  .media-tile:nth-child(4) { grid-column: 1/3; grid-row: 3; }
  .page-hero__grid { grid-template-columns: 1fr; }
  .page-hero__copy { padding-bottom: 2rem; }
  .page-hero__visual { margin: 0; border-radius: 2.4rem 1rem 0 0; min-height: 430px; }
  .module-grid { grid-template-columns: repeat(2,1fr); }
  .module-card, .module-card:nth-child(n) { grid-column: auto; }
  .learning-grid { grid-template-columns: none; }
  .editorial-gallery { grid-auto-rows: 130px; }
  .gallery-item, .gallery-item:nth-of-type(n) { grid-column: span 6; grid-row: span 2; }
  .gallery-item--wide, .gallery-item:nth-of-type(5n) { grid-column: span 12; grid-row: span 3; }
  .contact-map-layout,
  .contact-form-layout,
  .faq-layout { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  :root { --header-h: 68px; --radius-editorial: 1.65rem; }
  body { font-size: 1rem; }
  .container { width: min(calc(100% - 1.15rem), var(--container)); }
  .section-intro h2,
  .inner-copy h2,
  .section-heading h2 { max-width: none; }
  .hero { padding-top: 1.15rem; }
  .hero h1 { font-size: clamp(2.65rem,11.6vw,3.65rem); line-height: .98; max-width: 11.5ch; }
  .hero__lead { line-height: 1.54; }
  .hero__microcopy { grid-template-columns: 1fr 1fr; display: grid; }
  .hero__mobile-visual { height: 265px; border-radius: 1.55rem .7rem 1.55rem .7rem; }
  .value-strip { grid-template-columns: 1fr 1fr; }
  .value-item { min-height: 96px; padding: .85rem; }
  .about-preview { padding-top: 4.2rem; }
  .split-editorial { gap: 1.6rem; }
  .media-card { border-radius: 1.55rem .65rem 1.55rem .65rem; }
  .pillar-grid { grid-template-columns: 1fr; }
  .feature-card { grid-template-columns: 52px 1fr 36px; }
  .culture-visual { min-height: 315px; }
  .culture-points { grid-template-columns: 1fr; }
  .culture-points p { display: block; }
  .growth-path::after,
  .inner-timeline::after,
  .application-stepper::after {
    left: 28px;
    top: 28px;
    width: 3px !important;
    max-width: none;
    height: var(--journey-progress-y,0%);
    transition: height 1.15s var(--ease);
  }
  .growth-path.is-progressed,
  .inner-timeline.is-progressed,
  .application-stepper.is-progressed { --journey-progress-y: calc(100% - 56px); }
  .growth-path::before,
  .inner-timeline::before,
  .application-stepper::before { width: 3px; }
  .card-scroller { grid-auto-columns: 88%; }
  .story-card:first-child { transform: none; }
  .people-cards { grid-auto-columns: 86%; }
  .media-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: 235px 160px 160px; }
  .media-tile--wide { grid-column: 1/3; grid-row: 1; }
  .media-tile:nth-child(2) { grid-column: 1; grid-row: 2; }
  .media-tile:nth-child(3) { grid-column: 2; grid-row: 2; }
  .media-tile:nth-child(4) { grid-column: 1/3; grid-row: 3; }
  .brand-quote { min-height: 260px; }
  .final-cta__grid { border-radius: 1.8rem .7rem 1.8rem .7rem; }
  .page-hero { min-height: auto; }
  .page-hero h1 { font-size: clamp(2.55rem,11vw,3.55rem); }
  .page-hero__visual { min-height: 310px; border-radius: 1.65rem .65rem 0 0; }
  .purpose-grid { gap: .8rem; }
  .purpose-card { min-height: auto; }
  .values-story .inner-icon-grid--five { grid-template-columns: 1fr 1fr; }
  .values-story .inner-icon-card { min-height: 178px; }
  .career-feature { border-radius: 1.6rem .7rem 1.6rem .7rem; }
  .module-grid { grid-template-columns: 1fr; }
  .learning-card:nth-child(n) { transform: none; }
  .role-placeholder-grid,
  .role-placeholder-grid--three {
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(82%, 330px);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    padding: .25rem .1rem .85rem;
  }
  .role-placeholder-grid .role-placeholder { scroll-snap-align: center; }
  .people-page .role-placeholder { min-height: 300px; }
  .editorial-gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 165px; }
  .gallery-item, .gallery-item:nth-of-type(n) { grid-column: auto; grid-row: span 1; }
  .gallery-item--wide, .gallery-item:nth-of-type(5n) { grid-column: 1/-1; grid-row: span 2; }
  .highlight-row { grid-auto-columns: 86%; }
  .contact-option { min-height: 100px; }
  .contact-form { padding: 1rem; }
  .footer-grid { padding-block: 2.7rem; gap: 1.55rem; }
  .footer-brand img { width: 170px; }
  .footer-links nav { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 430px) {
  .hero__microcopy { grid-template-columns: 1fr; }
  .hero__mobile-visual { height: 235px; }
  .value-item span { display: block; font-size: .7rem; }
  .value-item strong { font-size: .78rem; }
  .values-story .inner-icon-grid--five { grid-template-columns: 1fr; }
  .values-story .inner-icon-card { min-height: auto; text-align: left; display: grid; grid-template-columns: 52px 1fr; column-gap: .9rem; }
  .values-story .inner-icon-card > svg { grid-row: 1/3; margin: 0; }
  .editorial-gallery { grid-template-columns: 1fr; grid-auto-rows: 220px; }
  .gallery-item, .gallery-item:nth-of-type(n), .gallery-item--wide { grid-column: 1; grid-row: span 1; }
  .gallery-item:nth-child(even) { min-height: 250px; }
  .media-gallery { grid-template-columns: 1fr; grid-template-rows: 230px 155px 155px 155px; }
  .media-tile--wide, .media-tile:nth-child(n) { grid-column: 1; grid-row: auto; }
  .inner-cta__actions .button, .final-cta__actions .button { width: 100%; }
}

@media (max-width: 360px) {
  .brand img { width: 128px; }
  .hero h1, .page-hero h1 { font-size: 2.45rem; }
  .value-strip { grid-template-columns: 1fr; }
  .value-item:nth-child(n) { border-left: 0; border-top: 1px solid var(--line); }
  .value-item:first-child { border-top: 0; }
  .footer-links nav { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .button:hover,
  .feature-card:hover,
  .story-card:hover,
  .person-card:hover,
  .inner-icon-card:hover,
  .module-card:hover,
  .learning-card:hover,
  .role-placeholder:hover,
  .contact-option:hover,
  .purpose-card:hover,
  .difference-list article:hover,
  .category-row span:hover,
  .highlight-row article:hover,
  .media-card:hover img,
  .inner-media:hover img,
  .culture-visual:hover img,
  .page-hero__visual:hover img { transform: none !important; }
}

/* Image mask reveal is progressive enhancement. */
.image-reveal { --image-mask: 100%; }
.js .image-reveal {
  clip-path: inset(0 var(--image-mask) 0 0 round 1.8rem);
  transition: clip-path 920ms cubic-bezier(.2,.8,.2,1);
}
.js .image-reveal.is-unmasked { --image-mask: 0%; }
html[data-motion="off"] .image-reveal { clip-path: none !important; }
@media (prefers-reduced-motion: reduce) { .image-reveal { clip-path: none !important; } }
.hero__visual,
.page-hero__visual { transform: translate3d(var(--hero-depth-x,0),var(--hero-depth-y,0),0); transition: transform 260ms ease-out; }

:root {
  --photo-border: rgba(255,255,255,.78);
  --photo-shadow: 0 24px 60px rgba(7,26,56,.16);
}

/* Make documentary / client-derived imagery feel intentional instead of stretched. */
picture.responsive-picture > img,
.media-card img,
.story-card img,
.gallery-item img,
.featured-media img,
.career-feature img,
.learning-card img,
.culture-story__gallery img,
.highlight-row img {
  filter: saturate(1.025) contrast(1.025);
  backface-visibility: hidden;
}

.hero__image-frame,
.page-hero__visual,
.media-card,
.inner-media,
.career-feature > picture.responsive-picture,
.featured-media button,
.gallery-item {
  box-shadow: var(--photo-shadow);
}

.hero__image-frame img,
.page-hero__visual img {
  transform: scale(1.002);
}

/* Branded photographic preloader with cyber network layer. */
.preloader {
  background: #071a38;
  color: #fff;
}
.preloader__backdrop {
  background: linear-gradient(115deg, rgba(7,26,56,.90) 0%, rgba(11,35,76,.70) 42%, rgba(20,140,150,.54) 100%);
  transform: scale(1.025);
}

.preloader__photo {
  position:absolute; inset:0; z-index:-1; display:block; overflow:hidden;
}
.preloader__photo img {
  width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.92) contrast(1.03);
}

.preloader__backdrop::before {
  inset: 0;
  opacity: .62;
  background:
    radial-gradient(circle at 25% 22%, rgba(72,226,232,.22), transparent 24%),
    radial-gradient(circle at 76% 74%, rgba(32,166,174,.24), transparent 27%),
    linear-gradient(180deg, rgba(5,20,45,.06), rgba(5,20,45,.42));
  transform: none;
  mask-image: none;
}
.preloader__backdrop::after {
  inset: -12%;
  opacity: .24;
  background-image:
    linear-gradient(rgba(126,235,239,.22) 1px, transparent 1px),
    linear-gradient(90deg, rgba(126,235,239,.22) 1px, transparent 1px);
  background-size: 74px 74px;
  transform: perspective(760px) rotateX(64deg) translateY(42%);
  transform-origin: center bottom;
  mask-image: linear-gradient(to bottom, transparent 8%, #000 52%, transparent 94%);
}
.preloader__network {
  opacity: .98;
  mix-blend-mode: screen;
  filter: drop-shadow(0 0 4px rgba(74,231,237,.38));
}
.preloader__content {
  gap: 1rem;
  padding: clamp(2rem,4vw,3rem);
  min-width: min(620px,88vw);
  border: 1px solid rgba(255,255,255,.26);
  background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(241,252,253,.75));
  box-shadow: 0 30px 90px rgba(2,13,31,.34), inset 0 1px rgba(255,255,255,.8);
  backdrop-filter: blur(18px) saturate(1.15);
}
.preloader__content::before,
.preloader__content::after { border-color: rgba(32,166,174,.34); }
.preloader__ring {
  border-color: rgba(32,166,174,.18);
  border-top-color: rgba(32,166,174,.9);
  border-right-color: rgba(18,50,102,.42);
  box-shadow: 0 0 72px rgba(32,166,174,.16), inset 0 0 52px rgba(32,166,174,.08);
}
.preloader__tagline { color: var(--navy-900); }
.preloader__skip {
  background: rgba(255,255,255,.9);
  border-color: rgba(255,255,255,.65);
  color: var(--navy-900);
  box-shadow: 0 12px 34px rgba(2,13,31,.24);
}

/* Real-photo framing keeps source-resolution limitations unobtrusive. */
.story-card img,
.media-card img,
.gallery-item img,
.highlight-row img {
  background: #eaf6f8;
}

/* Slightly richer section transitions without changing page structure. */
.section-polish::before { opacity: .75; }
.section-polish:nth-of-type(even)::before {
  background: radial-gradient(circle at 94% 20%, rgba(32,166,174,.07), transparent 32%);
}
.section-polish:nth-of-type(odd)::before {
  background: radial-gradient(circle at 5% 70%, rgba(18,50,102,.05), transparent 30%);
}

/* Mobile: protect image sharpness by reducing over-tall crops and avoiding unnecessary zoom. */
@media (max-width: 767px) {
  .hero__image-frame img,
  .page-hero__visual img { transform: none; }
  .preloader__content { min-width: min(92vw,460px); padding: 1.55rem 1.2rem; }
  .preloader__backdrop { background-position: 42% center; }
  .preloader__backdrop::after { background-size: 52px 52px; opacity: .20; }
  .story-card img, .media-card img { object-position: center; }
}

@media (prefers-reduced-motion: reduce) {
  .preloader__backdrop { transform: none; }
  .preloader__backdrop::after { transform: none; opacity: .12; }
}

/* NXDimension Frontend Experience Polish V9 — shared presentation and ambient motion layer. */

:root {
  --cyber-line: rgba(32, 166, 174, .18);
  --cyber-line-soft: rgba(18, 50, 102, .08);
  --cyber-node: rgba(32, 166, 174, .34);
  --ambient-shift: 0px;
}

/* Selected sections receive a restrained moving network layer. */
.section-ambient {
  position: relative;
  isolation: isolate;
  overflow: clip;
}
.section-ambient > *:not(.section-ambient__mesh):not(.section-ambient__nodes) {
  position: relative;
  z-index: 2;
}
.section-ambient__mesh,
.section-ambient__nodes {
  position: absolute;
  inset: -14%;
  z-index: 0;
  pointer-events: none;
  opacity: 0;
  transform: translate3d(0, var(--ambient-shift), 0);
  transition: opacity 700ms ease;
  will-change: transform, background-position, opacity;
}
.section-ambient__mesh {
  background-image:
    linear-gradient(118deg, transparent 0 14%, var(--cyber-line) 14.15% 14.32%, transparent 14.47% 44%, var(--cyber-line-soft) 44.15% 44.34%, transparent 44.5% 76%, var(--cyber-line) 76.15% 76.32%, transparent 76.48%),
    linear-gradient(26deg, transparent 0 21%, rgba(32,166,174,.09) 21.12% 21.26%, transparent 21.42% 61%, rgba(18,50,102,.07) 61.14% 61.28%, transparent 61.44%),
    repeating-linear-gradient(90deg, transparent 0 106px, rgba(32,166,174,.045) 107px, transparent 108px),
    repeating-linear-gradient(0deg, transparent 0 106px, rgba(18,50,102,.035) 107px, transparent 108px);
  background-size: 150% 150%, 170% 170%, 108px 108px, 108px 108px;
  background-position: 0 50%, 100% 50%, 0 0, 0 0;
  mask-image: radial-gradient(ellipse at center, #000 8%, rgba(0,0,0,.85) 48%, transparent 82%);
  animation: nx-cyber-drift 24s linear infinite;
}
.section-ambient__nodes {
  inset: -7%;
  background-image:
    radial-gradient(circle at 12% 22%, var(--cyber-node) 0 2px, transparent 2.8px),
    radial-gradient(circle at 72% 18%, rgba(18,50,102,.20) 0 2px, transparent 2.8px),
    radial-gradient(circle at 86% 68%, rgba(32,166,174,.26) 0 2.3px, transparent 3px),
    radial-gradient(circle at 28% 78%, rgba(18,50,102,.17) 0 1.8px, transparent 2.6px),
    radial-gradient(circle at 51% 48%, rgba(32,166,174,.22) 0 2px, transparent 2.8px);
  background-size: 430px 360px, 520px 420px, 470px 390px, 560px 430px, 620px 480px;
  animation: nx-node-float 18s ease-in-out infinite alternate;
  filter: drop-shadow(0 0 7px rgba(32,166,174,.16));
}
.section-ambient { --ambient-mesh-opacity: .72; --ambient-node-opacity: .62; }
.section-ambient.is-ambient-active .section-ambient__mesh { opacity: var(--ambient-mesh-opacity); }
.section-ambient.is-ambient-active .section-ambient__nodes { opacity: var(--ambient-node-opacity); }
.section-ambient--navy { --ambient-mesh-opacity: .52; --ambient-node-opacity: .48; }
.section-ambient--navy .section-ambient__mesh { mix-blend-mode: multiply; }
.section-ambient--teal { --ambient-mesh-opacity: .68; --ambient-node-opacity: .58; }
.section-ambient--soft { --ambient-mesh-opacity: .45; --ambient-node-opacity: .42; }

@keyframes nx-cyber-drift {
  0% { background-position: 0 45%, 100% 55%, 0 0, 0 0; }
  50% { background-position: 54% 58%, 42% 42%, 54px 28px, -38px 54px; }
  100% { background-position: 108% 45%, -16% 55%, 108px 56px, -76px 108px; }
}
@keyframes nx-node-float {
  0% { transform: translate3d(-1.2%, calc(var(--ambient-shift) - 5px), 0) scale(.99); }
  100% { transform: translate3d(1.3%, calc(var(--ambient-shift) + 5px), 0) scale(1.01); }
}

/* Section entry polish: background ambience wakes up with the content. */
.section-enter {
  --section-enter-y: 22px;
}
.js .section-enter:not(.is-section-visible) .section-heading,
.js .section-enter:not(.is-section-visible) .section-intro,
.js .section-enter:not(.is-section-visible) .inner-copy {
  opacity: 0;
  transform: translate3d(0, var(--section-enter-y), 0);
}
.section-enter .section-heading,
.section-enter .section-intro,
.section-enter .inner-copy {
  transition: opacity 620ms ease, transform 720ms var(--ease);
}
.section-enter.is-section-visible .section-heading,
.section-enter.is-section-visible .section-intro,
.section-enter.is-section-visible .inner-copy {
  opacity: 1;
  transform: none;
}

/* More refined transitions between light surfaces. */
main > section:not(.hero):not(.page-hero):not(.brand-quote):not(.social-band) {
  scroll-margin-top: calc(var(--header-h) + 18px);
}
.section-ambient::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: auto 0 0;
  height: clamp(3rem, 7vw, 7rem);
  pointer-events: none;
  background: linear-gradient(to bottom, transparent, rgba(255,255,255,.28));
}

/* Keep continuous motion safe and inexpensive. */
html[data-motion="off"] .section-ambient__mesh,
html[data-motion="off"] .section-ambient__nodes,
html.page-hidden .section-ambient__mesh,
html.page-hidden .section-ambient__nodes {
  animation-play-state: paused !important;
}
html[data-motion="off"] .section-enter .section-heading,
html[data-motion="off"] .section-enter .section-intro,
html[data-motion="off"] .section-enter .inner-copy {
  opacity: 1 !important;
  transform: none !important;
}

@media (max-width: 767px) {
  .section-ambient__mesh { inset: -9%; background-size: 190% 190%, 210% 210%, 82px 82px, 82px 82px; }
  .section-ambient__nodes { inset: -4%; background-size: 330px 290px, 390px 340px, 370px 310px, 420px 350px, 450px 380px; }
  .section-ambient { --ambient-mesh-opacity: .48; --ambient-node-opacity: .42; }
}

@media (prefers-reduced-motion: reduce) {
  .section-ambient__mesh,
  .section-ambient__nodes { animation: none !important; transform: none !important; }
  .section-enter .section-heading,
  .section-enter .section-intro,
  .section-enter .inner-copy { opacity: 1 !important; transform: none !important; transition: none !important; }
}
