@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800;900&family=Manrope:wght@400;500;600;700&display=swap');

:root {
  --blue: #0f408f;
  --lime: #dffc8e;
  --coral: #ef7148;
  --periwinkle: #89aeff;
  --sky: #bce4fe;
  --paper: #f8f3ed;
  --paper-strong: #eee7df;
  --ink: #101512;
  --muted: #5d625e;
  --line: rgba(16, 21, 18, .18);
  --sans: 'Manrope', system-ui, sans-serif;
  --serif: 'Archivo', 'Manrope', sans-serif;
  --pad: clamp(1.25rem, 4vw, 4rem);
  --max: 1440px;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

* { box-sizing: border-box; }
html { max-width: 100%; scroll-behavior: smooth; background: var(--paper); overflow-x: hidden; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.6;
  max-width: 100%;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}
body.is-locked { overflow: hidden; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
::selection { color: var(--ink); background: var(--lime); }

.skip-link {
  position: fixed;
  left: 1rem;
  top: -6rem;
  z-index: 1000;
  padding: .8rem 1rem;
  color: var(--ink);
  background: var(--lime);
  transition: top .2s;
}
.skip-link:focus { top: 1rem; }

.container { width: min(100%, var(--max)); margin-inline: auto; padding-inline: var(--pad); }
.section { position: relative; padding-block: clamp(5rem, 10vw, 10rem); }
.section--tight { padding-block: clamp(3rem, 6vw, 6rem); }
.section--blue { color: #fff; background: var(--blue); }
.section--ink { color: #fff; background: var(--ink); }
.section--lime { color: var(--ink); background: var(--lime); }
.section--sky { background: var(--sky); }
.section--coral { color: var(--ink); background: var(--coral); }
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  margin: 0 0 1.25rem;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .14em;
  line-height: 1.3;
  text-transform: uppercase;
}
.eyebrow::before { content: ''; width: 2rem; height: 1px; background: currentColor; opacity: .65; }
.display {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(3.35rem, 7.2vw, 8.8rem);
  font-weight: 800;
  letter-spacing: -.072em;
  line-height: .9;
}
.display em { color: var(--lime); font-weight: 700; font-style: normal; }
.title {
  margin: 0;
  max-width: 11ch;
  font-family: var(--serif);
  font-size: clamp(2.9rem, 6vw, 7rem);
  font-weight: 800;
  letter-spacing: -.055em;
  line-height: .92;
}
.title--wide { max-width: 15ch; }
.title em { font-weight: 700; font-style: normal; color: var(--blue); }
.section--blue .title em, .section--ink .title em { color: var(--lime); }
.lead {
  max-width: 48rem;
  margin: 1.5rem 0 0;
  font-family: var(--serif);
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  line-height: 1.35;
}
.copy { max-width: 42rem; color: var(--muted); font-size: clamp(1rem, 1.25vw, 1.15rem); }
.section--blue .copy, .section--ink .copy { color: rgba(255,255,255,.72); }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 110;
  height: 94px;
  color: #fff;
  transition: height .35s var(--ease), background .35s, color .35s, backdrop-filter .35s;
}
.site-header::after {
  content: '';
  position: absolute;
  left: var(--pad);
  right: var(--pad);
  bottom: 0;
  height: 1px;
  background: currentColor;
  opacity: .25;
}
.site-header.is-scrolled {
  height: 74px;
  color: var(--ink);
  background: rgba(248, 243, 237, .88);
  backdrop-filter: blur(18px);
}
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { position: relative; z-index: 2; display: block; width: clamp(132px, 12vw, 190px); }
.brand img { width: 100%; height: auto; max-height: 76px; object-fit: contain; object-position: left center; filter: none; transition: filter .3s, max-height .3s var(--ease); }
.site-header.is-scrolled .brand { width: clamp(118px, 10vw, 150px); }
.site-header.is-scrolled .brand img { max-height: 58px; }
.site-header.is-scrolled .brand img, .menu-panel .brand img { filter: invert(1); }
.footer-brand img { filter: none; }
body.is-locked .site-header { color: var(--ink); background: transparent; backdrop-filter: none; }
body.is-locked .site-header .brand img { filter: invert(1); }
body.is-locked .mobile-dock { opacity: 0; pointer-events: none; }
.desktop-nav { display: flex; align-items: center; gap: clamp(1rem, 2vw, 2rem); }
.desktop-nav a {
  position: relative;
  font-size: .73rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.desktop-nav a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -.5rem; height: 1px; background: currentColor; transition: right .3s var(--ease); }
.desktop-nav a:hover::after, .desktop-nav a:focus-visible::after, .desktop-nav a[aria-current='page']::after { right: 0; }
.header-cta { display: inline-flex; align-items: center; gap: .8rem; padding: .72rem 1rem; border: 1px solid currentColor; }
.menu-toggle { display: none; position: relative; z-index: 105; width: 46px; height: 46px; padding: 0; border: 0; background: transparent; }
.menu-toggle span, .menu-toggle::before { content: ''; position: absolute; left: 9px; width: 28px; height: 1px; background: currentColor; transition: transform .3s var(--ease), top .3s var(--ease); }
.menu-toggle::before { top: 18px; }
.menu-toggle span { top: 27px; }
.menu-toggle[aria-expanded='true']::before { top: 23px; transform: rotate(45deg); }
.menu-toggle[aria-expanded='true'] span { top: 23px; transform: rotate(-45deg); }

.menu-panel {
  position: fixed;
  inset: 0 0 -120px;
  width: 100%;
  min-height: calc(100dvh + 120px);
  z-index: 102;
  display: grid;
  align-content: center;
  padding: 6rem var(--pad) 7rem;
  color: var(--ink);
  background: var(--lime);
  transform: translateY(-105%);
  transition: transform .65s var(--ease);
}
.menu-panel.is-open { transform: translateY(0); }
.menu-links { display: grid; gap: .15rem; counter-reset: menu; }
.menu-links a { position: relative; padding-left: clamp(2.4rem,8vw,4rem); font-family: var(--serif); font-size: clamp(2.7rem, 12vw, 5.5rem); font-weight: 800; letter-spacing: -.065em; line-height: 1; counter-increment: menu; }
.menu-links a::before { content: '0' counter(menu); position: absolute; left: 0; top: .2em; color: var(--blue); font: 700 .62rem/1 var(--sans); letter-spacing: .12em; }
.menu-links a:hover, .menu-links a:focus-visible { color: var(--blue); transform: translateX(.35rem); }
.menu-meta { display: flex; gap: 1.2rem; margin-top: 3rem; font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }

.hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  color: #fff;
  background: #111;
}
.hero-media, .hero-media img { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-media { overflow: hidden; }
.hero-media::after { content: ''; position: absolute; z-index: 2; width: 70vw; height: 18vw; left: -16vw; bottom: -9vw; border: clamp(26px,4vw,66px) solid var(--lime); border-color: var(--lime) transparent transparent; border-radius: 50%; opacity: .9; transform: rotate(-4deg); }
.hero-media img { top: -18%; bottom: auto; height: 118%; object-fit: cover; object-position: 50% 100%; animation: kenburns 18s ease-in-out infinite alternate; }
.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(3,18,47,.94) 0%, rgba(8,38,86,.7) 38%, rgba(15,64,143,.2) 72%, rgba(2,12,28,.25) 100%),
    linear-gradient(0deg, rgba(2,10,28,.94) 0%, rgba(4,20,48,.42) 44%, rgba(2,12,30,.26) 100%);
}
.hero::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: .62;
  background: linear-gradient(135deg, rgba(15,64,143,.62), rgba(15,64,143,.08) 70%);
  mix-blend-mode: multiply;
}
@keyframes kenburns { to { transform: scale(1.075) translate3d(-1.1%, -1%, 0); } }
.hero-content { position: relative; z-index: 2; width: 100%; padding-top: 9rem; padding-bottom: clamp(3rem, 7vw, 6rem); }
.hero .display { max-width: 9.5ch; }
.hero-title span { display: block; will-change: transform, opacity; transition: transform .08s linear, opacity .08s linear; }
.hero-title span:nth-child(1) { transform: translate3d(var(--hero-x1, 0px), var(--hero-y1, 0px), 0); }
.hero-title span:nth-child(2) { transform: translate3d(var(--hero-x2, 0px), 0, 0); }
.hero-title span:nth-child(3) { transform: translate3d(var(--hero-x3, 0px), var(--hero-y3, 0px), 0); }
.hero-title-accent { color: var(--lime); }
.hero-content { opacity: calc(1 - var(--hero-progress, 0) * .45); }
.hero-support { max-width: 42rem; margin: 1.6rem 0 0; color: rgba(255,255,255,.78); font-family: var(--serif); font-size: clamp(1.18rem, 1.8vw, 1.6rem); line-height: 1.45; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.8rem; margin-top: 2.2rem; }
.hero-meta { position: absolute; z-index: 2; right: var(--pad); bottom: clamp(3rem, 7vw, 6rem); display: grid; gap: .25rem; text-align: right; }
.hero-meta strong { font-family: var(--serif); font-size: clamp(1.3rem, 2vw, 1.8rem); font-weight: 700; }
.hero-meta span { font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.hero-content > .eyebrow { animation: heroTextIn .65s .08s var(--ease) both; }
.hero-title span { animation: heroLineIn .9s var(--ease) both; }
.hero-title span:nth-child(1) { animation-delay: .14s; }
.hero-title span:nth-child(2) { animation-delay: .22s; }
.hero-title span:nth-child(3) { animation-delay: .3s; }
.hero-support { animation: heroTextIn .7s .43s var(--ease) both; }
.hero-actions { animation: heroTextIn .7s .51s var(--ease) both; }
.hero-slide-status { animation: heroTextIn .7s .6s var(--ease) both; }
@keyframes heroLineIn { from { opacity: 0; clip-path: inset(0 0 100% 0); } to { opacity: 1; clip-path: inset(0); } }
@keyframes heroTextIn { from { opacity: 0; translate: 0 18px; } to { opacity: 1; translate: 0 0; } }
.scroll-cue { position: absolute; z-index: 2; right: 1.2rem; top: 50%; display: flex; align-items: center; gap: .8rem; transform: rotate(90deg) translateX(50%); transform-origin: right center; font-size: .62rem; letter-spacing: .17em; text-transform: uppercase; }
.scroll-cue::after { content: ''; width: 4.5rem; height: 1px; background: currentColor; }

.btn {
  position: relative;
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  min-width: 13rem;
  gap: 1.5rem;
  padding: .9rem 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  background: transparent;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.2;
  text-transform: uppercase;
  cursor: pointer;
}
.btn::after { content: '↗︎'; font-size: 1.05rem; transition: transform .3s var(--ease); }
.btn:hover::after, .btn:focus-visible::after { transform: translate(4px,-4px); }
.btn--fill { min-width: 12rem; padding: 1rem 1.15rem; color: var(--ink); border: 1px solid var(--lime); background: var(--lime); }
.btn--fill { isolation: isolate; overflow: hidden; transition: color .35s var(--ease), border-color .35s var(--ease); }
.btn--fill::before { content: ''; position: absolute; inset: 0; z-index: -1; background: var(--blue); transform: scaleX(0); transform-origin: right; transition: transform .55s var(--ease); }
.btn--fill:hover, .btn--fill:focus-visible { color: #fff; border-color: var(--blue); }
.btn--fill:hover::before, .btn--fill:focus-visible::before { transform: scaleX(1); transform-origin: left; }
.btn--light { color: #fff; }
.btn--dark { color: var(--ink); }

.ministry-rail { position: relative; z-index: 4; width: 100%; overflow: hidden; contain: layout paint; background: var(--paper); border-bottom: 0; }
.rail-label { padding: 1rem var(--pad) .2rem; color: var(--muted); font-size: .62rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.rail-viewport { width: 100%; overflow-x: auto; overflow-y: hidden; overscroll-behavior-inline: contain; scrollbar-width: none; cursor: grab; touch-action: pan-x pan-y; }
.rail-viewport::-webkit-scrollbar { display: none; }
.rail-viewport:focus-visible { outline: 1px solid var(--blue); outline-offset: -1px; }
.rail-viewport.is-dragging { cursor: grabbing; user-select: none; }
.rail-track { display: flex; width: max-content; align-items: stretch; transform: none; }
.rail-set { flex: 0 0 auto; display: flex; align-items: stretch; }
.ministry-trigger {
  --accent: var(--blue);
  flex: 0 0 clamp(180px, 18vw, 270px);
  width: clamp(180px, 18vw, 270px);
  min-height: 145px;
  display: grid;
  place-items: center;
  padding: 2rem;
  color: var(--ink);
  background: transparent;
  border: 0;
  border-right: 1px solid var(--line);
  scroll-snap-align: start;
  cursor: pointer;
  transition: color .35s, background .35s;
}
.ministry-trigger:hover, .ministry-trigger:focus-visible { color: var(--ink); background: var(--accent); }
.ministry-rail .ministry-trigger { border-right: 0; }
.ministry-trigger .wordmark { font-family: var(--serif); font-size: 1.35rem; line-height: 1; }
.ministry-mark { width: 110px; height: 55px; background: currentColor; mask: var(--logo) center / contain no-repeat; -webkit-mask: var(--logo) center / contain no-repeat; transition: transform .35s var(--ease); }
.ministry-trigger:hover .ministry-mark, .ministry-trigger:focus-visible .ministry-mark { transform: scale(1.08); }
.ministry-logo { display: block; width: 132px; height: 66px; background: currentColor; mask: var(--logo) center / contain no-repeat; -webkit-mask: var(--logo) center / contain no-repeat; transition: transform .35s var(--ease); }
.ministry-trigger:hover .ministry-logo, .ministry-trigger:focus-visible .ministry-logo { transform: scale(1.06); }
.ministry-directory { display: grid; grid-template-columns: repeat(5, 1fr); margin-top: 4rem; border: 1px solid var(--line); }
.ministry-directory .ministry-trigger { width: 100%; min-width: 0; min-height: 190px; border-bottom: 1px solid var(--line); }

.intro-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .65fr); gap: clamp(3rem, 8vw, 10rem); align-items: end; }
.intro-note { padding-top: 2rem; border-top: 1px solid currentColor; }
.intro-note strong { display: block; margin-bottom: .75rem; font-family: var(--serif); font-size: 1.8rem; font-weight: 700; }

.gathering { position: relative; min-height: 100svh; display: grid; grid-template-columns: 1.12fr .88fr; overflow: hidden; color: var(--ink); background: var(--lime); }
.gathering-photo { position: relative; min-height: 100svh; overflow: hidden; clip-path: polygon(0 0,100% 0,91% 100%,0 100%); }
.gathering-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(15,64,143,.66),transparent 62%), linear-gradient(90deg,rgba(15,64,143,.18),transparent); mix-blend-mode: multiply; }
.gathering-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.06); animation: kenburns 18s ease-in-out infinite alternate; }
.gathering-orbit { position: absolute; z-index: 2; inset: auto 2rem 2rem auto; width: 13rem; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; animation: orbit 14s linear infinite; }
.gathering-orbit span { position: absolute; color: #fff; font-size: .63rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.gathering-orbit span:nth-child(1) { top: .8rem; }.gathering-orbit span:nth-child(2) { right: .55rem; transform: rotate(90deg); }.gathering-orbit span:nth-child(3) { bottom: .8rem; transform: rotate(180deg); }
@keyframes orbit { to { transform: rotate(360deg); } }
.gathering-board { position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(4rem,7vw,8rem) var(--pad); }
.gathering-board::before { content: ''; position: absolute; width: 42vw; height: 42vw; right: -22vw; top: -18vw; border: clamp(34px,5vw,76px) solid var(--periwinkle); border-radius: 50%; opacity: .72; }
.next-service { position: relative; margin-bottom: 1.3rem; color: var(--blue); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
.gathering-board h2 { position: relative; max-width: 11ch; margin: 0 0 clamp(2rem,5vw,4rem); font: 800 clamp(3.1rem,5.6vw,7rem)/.88 var(--serif); letter-spacing: -.065em; }
.gathering-board h2 span { color: var(--blue); }
.service-line { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: end; padding: .65rem 0; border-top: 1px solid rgba(16,21,18,.45); }
.service-line b { font: 800 clamp(3.5rem,6.5vw,7.5rem)/.8 var(--serif); letter-spacing: -.07em; }
.service-line span { padding-bottom: .3rem; font-size: .68rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.gathering-practical { display: flex; flex-wrap: wrap; gap: .45rem 1.2rem; margin: 1.4rem 0; font-size: .64rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.feature-list { display: grid; margin: 0; padding: 0; list-style: none; }
.feature-list li { display: flex; justify-content: space-between; gap: 2rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.22); font-family: var(--serif); font-size: clamp(1.2rem, 2vw, 1.7rem); }
.feature-list li span { color: var(--lime); font-family: var(--sans); font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }

.story-layout { display: grid; grid-template-columns: .95fr 1.05fr; gap: clamp(2rem, 7vw, 8rem); align-items: start; }
.story-visual { position: sticky; top: 96px; min-height: min(76svh, 820px); overflow: hidden; background: var(--blue); }
.story-image { position: absolute; inset: 0; opacity: 0; clip-path: inset(100% 0 0); transition: opacity .15s .55s, clip-path .85s var(--ease); }
.story-image.is-active { z-index: 1; opacity: 1; clip-path: inset(0); transition: opacity 0s, clip-path .85s var(--ease); }
.story-image img { width: 100%; height: 100%; object-fit: cover; }
.story-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(4,18,44,.42), transparent 55%); }
.story-stamp { position: absolute; left: 0; bottom: 0; padding: 1.2rem 1.4rem; background: var(--lime); font-family: var(--serif); font-size: clamp(2.8rem, 6vw, 6rem); line-height: .8; }
.story-stamp { z-index: 3; }
.story-waterline { position: absolute; z-index: 2; left: -10%; right: -10%; top: 52%; height: 2px; background: var(--lime); transform: rotate(-5deg) translateX(-100%); transition: transform 1s var(--ease); }
.story-visual:has(.story-image.is-active) .story-waterline { transform: rotate(-5deg) translateX(0); }
.story-copy { padding-bottom: 8rem; }
.story-chapters { margin-top: 2rem; counter-reset: story; }
.story-chapter { position: relative; min-height: 48svh; display: flex; flex-direction: column; justify-content: center; padding: 3rem 0 3rem 4rem; border-top: 1px solid var(--line); counter-increment: story; opacity: .38; transition: opacity .5s, transform .7s var(--ease); transform: translateX(1.5rem); }
.story-chapter.is-active { opacity: 1; transform: none; }
.story-chapter > span { position: absolute; left: 0; top: 3.5rem; color: var(--blue); font-size: .68rem; font-weight: 700; letter-spacing: .12em; }
.story-chapter h3 { margin: 0 0 .35rem; font-family: var(--serif); font-size: clamp(1.4rem, 2.2vw, 2rem); font-weight: 700; }
.story-chapter p { margin: 0; color: var(--muted); }

.leaders-layout { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 840px; }
.leaders-photo { position: relative; min-height: 720px; overflow: hidden; }
.leaders-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.leaders-copy { display: flex; flex-direction: column; justify-content: center; padding: var(--pad); }
.leaders-signature { margin-top: 3rem; display: flex; justify-content: space-between; gap: 1rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.28); font-size: .7rem; letter-spacing: .11em; text-transform: uppercase; }
.leaders-live { position: relative; min-height: 100svh; display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; overflow: hidden; background: var(--coral); }
.leaders-live .leaders-photo { z-index: 2; align-self: end; min-height: 92svh; margin-left: var(--pad); clip-path: polygon(0 9%,84% 0,100% 86%,14% 100%); }
.leaders-live .leaders-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(140deg,rgba(137,174,255,.2),transparent 50%); mix-blend-mode: color; }
.leaders-live .leaders-copy { position: relative; z-index: 3; color: var(--ink); padding: clamp(5rem,8vw,9rem) var(--pad); }
.leaders-live .title em { color: var(--blue); }
.leaders-live .leaders-signature { border-color: rgba(16,21,18,.35); }
.leaders-word { position: absolute; z-index: 1; left: 39%; top: 3%; color: transparent; -webkit-text-stroke: 1px rgba(16,21,18,.35); font: 900 clamp(8rem,22vw,24rem)/.8 var(--serif); letter-spacing: -.09em; transform: rotate(90deg); transform-origin: left top; }
.leaders-shape { position: absolute; z-index: 1; width: 36vw; height: 36vw; right: -11vw; bottom: -11vw; border-radius: 50%; background: var(--periwinkle); }

.values-list { margin-top: 4rem; border-top: 1px solid var(--line); }
.value-row { display: grid; grid-template-columns: 4rem 1fr minmax(200px, .55fr); gap: 2rem; align-items: baseline; padding: 1.5rem 0; border-bottom: 1px solid var(--line); }
.value-row span { color: var(--blue); font-size: .68rem; font-weight: 700; letter-spacing: .12em; }
.value-row h3 { margin: 0; font-family: var(--serif); font-size: clamp(2.4rem, 5vw, 5.8rem); font-weight: 700; letter-spacing: -.05em; line-height: .9; }
.value-row p { margin: 0; color: var(--muted); }
.value-row:nth-child(odd) h3 { transform: translateX(clamp(0rem,3vw,3rem)); }
.value-row:nth-child(even) h3 { color: var(--blue); transform: translateX(clamp(1rem,7vw,7rem)); }
.value-row.is-visible h3 { animation: currentDrift 1.15s var(--ease) both; }
@keyframes currentDrift { from { opacity: 0; translate: 12vw 0; } to { opacity: 1; translate: 0 0; } }

.steps-track { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 4rem; border-top: 1px solid rgba(255,255,255,.3); }
.step { min-height: 370px; display: flex; flex-direction: column; justify-content: space-between; padding: 1.5rem; border-right: 1px solid rgba(255,255,255,.3); }
.step:last-child { border-right: 0; }
.step-number { font-size: .7rem; font-weight: 700; letter-spacing: .12em; }
.step h3 { margin: auto 0 1rem; font-family: var(--serif); font-size: clamp(2rem, 3.5vw, 4rem); font-weight: 700; letter-spacing: -.04em; }
.step p { margin: 0; color: rgba(255,255,255,.7); }

.pathway { padding-block: 0; }
.pathway-shell { display: grid; grid-template-columns: minmax(320px,.72fr) minmax(0,1.28fr); gap: clamp(3rem,7vw,8rem); align-items: start; }
.pathway-sticky { position: sticky; top: 110px; min-height: calc(100svh - 110px); display: flex; flex-direction: column; justify-content: center; padding-block: 5rem; }
.pathway-sticky .copy { margin: 1.5rem 0 2.5rem; color: rgba(255,255,255,.72); }
.pathway-progress { position: relative; width: 1px; height: 110px; margin-top: 3rem; overflow: hidden; background: rgba(255,255,255,.25); }
.pathway-progress span { position: absolute; inset: 0; background: var(--lime); transform: translateY(-70%); animation: waterProgress 3s ease-in-out infinite alternate; }
@keyframes waterProgress { to { transform: translateY(0); } }
.pathway-flow { border-inline: 1px solid rgba(255,255,255,.18); }
.pathway-chapter { position: relative; min-height: 92svh; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.22); }
.pathway-photo { position: absolute; inset: 0; overflow: hidden; }
.pathway-photo img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.03); transition: transform 1.4s var(--ease); }
.pathway-chapter.is-visible .pathway-photo img { transform: scale(1); }
.pathway-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(2,10,28,.96) 0%, rgba(15,64,143,.24) 62%, rgba(0,0,0,.08) 100%); }
.pathway-caption { position: absolute; z-index: 1; left: clamp(1.5rem,4vw,4rem); right: clamp(1.5rem,4vw,4rem); bottom: clamp(2rem,6vw,5rem); }
.pathway-caption > span { color: var(--lime); font-size: .68rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.pathway-caption h3 { max-width: 12ch; margin: 1rem 0; font-family: var(--serif); font-size: clamp(2.8rem,5vw,6.2rem); font-weight: 700; letter-spacing: -.06em; line-height: .9; }
.pathway-caption p { max-width: 32rem; margin: 0; color: rgba(255,255,255,.75); }

.message-layout { display: grid; grid-template-columns: 1.15fr .85fr; align-items: stretch; min-height: 760px; }
.message-photo { position: relative; overflow: hidden; }
.message-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.message-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.5), transparent 55%); }
.message-badge { position: absolute; z-index: 1; left: 1.5rem; bottom: 1.5rem; padding: .7rem 1rem; color: var(--ink); background: var(--lime); font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.message-copy { display: flex; flex-direction: column; justify-content: center; padding: var(--pad); background: var(--paper); }
.message-copy blockquote { margin: 2rem 0; font-family: var(--serif); font-size: clamp(2rem, 3.7vw, 4.2rem); letter-spacing: -.045em; line-height: .98; }

.donation-layout { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: clamp(3rem, 8vw, 10rem); }
.pix-panel { padding: clamp(2rem, 5vw, 4.5rem); color: #fff; background: var(--blue); }
.pix-label { color: var(--lime); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.pix-key { display: block; margin: 1rem 0 2rem; font-family: var(--serif); font-size: clamp(1.9rem, 4vw, 4rem); line-height: 1; word-break: break-word; }
.copy-feedback { min-height: 1.4em; margin: .7rem 0 0; color: var(--lime); font-size: .78rem; }

.visit-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 1px; background: var(--line); border: 1px solid var(--line); }
.visit-info, .map-frame { background: var(--paper); }
.visit-info { padding: clamp(2rem, 5vw, 5rem); }
.visit-address { margin: 2rem 0; font-family: var(--serif); font-size: clamp(1.8rem, 3.4vw, 3.5rem); line-height: 1.08; }
.map-frame { position: relative; min-height: 640px; overflow: hidden; background: var(--blue); }
.map-art { position: absolute; inset: 0; display: grid; place-items: center; overflow: hidden; color: #fff; background: var(--blue); }
.map-art::before, .map-art::after { content: ''; position: absolute; inset: -20%; opacity: .28; background: repeating-linear-gradient(32deg, transparent 0 78px, rgba(255,255,255,.5) 79px 81px, transparent 82px 160px); transform: rotate(-8deg) scale(1.2); }
.map-art::after { opacity: .2; background: repeating-linear-gradient(118deg, transparent 0 112px, var(--sky) 113px 116px, transparent 117px 210px); transform: rotate(6deg) scale(1.2); }
.map-waterline { position: absolute; z-index: 1; left: -8%; top: 57%; width: 116%; height: 9px; background: var(--lime); transform: rotate(-7deg); }
.map-pin { position: relative; z-index: 2; width: 92px; height: 92px; display: grid; place-items: center; color: var(--blue); border-radius: 50% 50% 50% 0; background: var(--lime); transform: rotate(-45deg); box-shadow: 0 24px 60px rgba(0,0,0,.25); }
.map-pin::after { content: ''; width: 24px; height: 24px; border: 3px solid var(--blue); border-radius: 50%; }
.map-caption { position: absolute; z-index: 2; left: clamp(1.5rem, 4vw, 4rem); right: clamp(1.5rem, 4vw, 4rem); bottom: clamp(1.5rem, 4vw, 3rem); display: flex; justify-content: space-between; align-items: end; gap: 2rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.5); }
.map-caption strong { max-width: 15ch; font-family: var(--serif); font-size: clamp(1.6rem, 3vw, 3rem); font-weight: 700; line-height: 1; }
.map-caption span { color: var(--lime); font-size: .68rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }

.site-footer { color: #fff; background: var(--ink); padding: clamp(4rem, 8vw, 7rem) 0 2rem; }
.footer-top { display: grid; grid-template-columns: 1.2fr repeat(3, .6fr); gap: clamp(2rem, 6vw, 7rem); }
.footer-brand { display: block; width: 210px; margin-bottom: 2rem; }
.footer-statement { max-width: 12ch; margin: 0; font-family: var(--serif); font-size: clamp(2.5rem, 4vw, 4.5rem); letter-spacing: -.05em; line-height: .92; }
.footer-group h3 { margin: 0 0 1.2rem; color: var(--lime); font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
.footer-links { display: grid; gap: .6rem; color: rgba(255,255,255,.72); }
.footer-links a:hover { color: #fff; }
.footer-bottom { display: flex; justify-content: space-between; gap: 2rem; margin-top: 5rem; padding-top: 1.4rem; border-top: 1px solid rgba(255,255,255,.18); color: rgba(255,255,255,.5); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }

.ministry-modal { position: fixed; inset: 0; z-index: 300; display: none; color: #fff; background: var(--ink); }
.ministry-modal.is-open { display: block; animation: modalIn .6s var(--ease) both; }
@keyframes modalIn { from { clip-path: inset(100% 0 0); } to { clip-path: inset(0); } }
.modal-scroll { height: 100%; overflow-y: auto; }
.modal-close { position: fixed; z-index: 9; right: 1.35rem; top: 1.35rem; width: 50px; height: 50px; border: 1px solid rgba(7,21,45,.35); border-radius: 50%; color: var(--ink); background: rgba(255,255,255,.48); box-shadow: 0 12px 34px rgba(7,21,45,.14), inset 0 1px rgba(255,255,255,.72); backdrop-filter: blur(14px) saturate(1.25); -webkit-backdrop-filter: blur(14px) saturate(1.25); cursor: pointer; }
.modal-close::before, .modal-close::after { content: ''; position: absolute; left: 12px; top: 24px; width: 26px; height: 1px; background: #fff; transform: rotate(45deg); }
.modal-close::after { transform: rotate(-45deg); }
.modal-close::before, .modal-close::after { background: currentColor; }
.modal-stage { position: relative; min-height: 100svh; display: grid; grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr); gap: clamp(1rem,2.5vw,3rem); align-items: center; overflow: hidden; color: var(--ink); background: linear-gradient(135deg,color-mix(in srgb,var(--modal-accent,var(--lime)) 92%,#fff),var(--modal-accent,var(--lime))); }
.modal-stage-meta { position: absolute; z-index: 6; top: 1.7rem; left: var(--pad); right: 5.8rem; display: flex; justify-content: space-between; gap: 2rem; padding-bottom: .8rem; border-bottom: 1px solid rgba(7,21,45,.22); font-size: .6rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.modal-stage-meta b { color: var(--blue); font: inherit; }
.modal-image-wrap { position: relative; z-index: 2; grid-column: 2; width: 91%; height: 80svh; overflow: hidden; clip-path: polygon(7% 0,100% 6%,94% 100%,0 93%); box-shadow: 0 28px 70px rgba(7,21,45,.16); }
.modal-image-wrap::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(7,21,45,.42),transparent 58%), linear-gradient(120deg,rgba(15,64,143,.12),transparent 45%); mix-blend-mode: multiply; }
.modal-image-wrap img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.06); animation: kenburns 16s ease-in-out infinite alternate; }
.modal-heading { position: relative; z-index: 4; grid-column: 1; grid-row: 1; padding: 7.5rem var(--pad) 4rem; }
.modal-ministry-logo { display: block; width: clamp(170px,17vw,260px); height: clamp(82px,8vw,120px); margin: 0 0 1.5rem; color: var(--ink); background: currentColor; mask: var(--modal-logo) left center / contain no-repeat; -webkit-mask: var(--modal-logo) left center / contain no-repeat; }
.modal-heading .eyebrow { display: inline-flex; align-items: center; gap: .7rem; margin-bottom: 1.1rem; }
.modal-heading .eyebrow::before { content: ''; width: 1.8rem; height: 1px; background: currentColor; opacity: .5; }
.modal-title { max-width: 10ch; margin: 0; font: 900 clamp(4rem,7.8vw,9rem)/.82 var(--serif); letter-spacing: -.075em; overflow-wrap: normal; word-break: normal; hyphens: none; }
.modal-call { max-width: 27rem; margin: 1.6rem 0 0; padding-top: 1.25rem; border-top: 1px solid rgba(7,21,45,.28); font-size: clamp(1rem,1.45vw,1.3rem); font-weight: 700; }
.modal-index { position: absolute; z-index: 1; left: -1vw; bottom: -8vw; color: transparent; -webkit-text-stroke: 1px rgba(16,21,18,.25); font: 900 clamp(15rem,34vw,38rem)/.7 var(--serif); letter-spacing: -.12em; }
.modal-vector { position: absolute; z-index: 3; inset: 0; pointer-events: none; }
.modal-vector { opacity: .72; }
.modal-vector span { position: absolute; width: 54vw; height: 10vw; left: -8vw; top: 15%; border: clamp(12px,2vw,32px) solid var(--blue); border-color: var(--blue) transparent transparent; border-radius: 50%; transform: rotate(-8deg); }
.modal-vector span:nth-child(2) { top: 27%; left: -2vw; border-color: var(--coral) transparent transparent; transform: rotate(8deg); }
.modal-vector span:nth-child(3) { top: auto; bottom: 3%; left: 42%; border-color: var(--periwinkle) transparent transparent; }
.modal-scroll-cue { position: absolute; z-index: 5; right: var(--pad); bottom: 1.2rem; color: #fff; font-size: .6rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.modal-content { color: var(--ink); background: var(--paper); border-top: 7px solid var(--modal-accent,var(--lime)); overflow: hidden; }
.modal-body { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(2rem,8vw,10rem); padding-block: clamp(5rem,10vw,11rem); }
.modal-kicker { margin: 0 0 1.4rem; color: var(--blue); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.modal-body h3 { max-width: 10ch; margin: 0; font: 800 clamp(2.8rem,5.5vw,6.5rem)/.9 var(--serif); letter-spacing: -.06em; }
.modal-body > div:last-child > p { max-width: 40rem; margin: 0; font-size: clamp(1.15rem,2vw,1.75rem); line-height: 1.5; }
.modal-participate { margin-top: 4rem; padding: 1.5rem 0; border-block: 1px solid var(--line); }
.modal-participate span { color: var(--blue); font-size: .66rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.modal-participate p { max-width: 37rem; margin: .65rem 0 0; }
.modal-marquee { display: flex; width: max-content; color: transparent; -webkit-text-stroke: 1px color-mix(in srgb,var(--modal-accent,var(--lime)) 74%,#fff); background: var(--ink); font: 900 clamp(5rem,12vw,13rem)/.8 var(--serif); letter-spacing: -.07em; text-transform: uppercase; animation: marquee 20s linear infinite; }
.modal-marquee span { white-space: nowrap; padding-right: .25em; }

.page-hero { position: relative; min-height: 78svh; display: flex; align-items: flex-end; overflow: hidden; color: #fff; background: var(--ink); }
.page-hero img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; animation: kenburns 18s ease-in-out infinite alternate; }
.page-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2,10,19,.88), rgba(3,12,23,.22) 70%), linear-gradient(0deg, rgba(0,0,0,.8), transparent 55%); }
.page-hero-content { position: relative; z-index: 1; width: 100%; padding-top: 10rem; padding-bottom: clamp(3rem, 7vw, 6rem); }
.page-hero .display { max-width: 11ch; }
.page-intro { display: grid; grid-template-columns: .65fr 1.35fr; gap: clamp(2rem, 7vw, 8rem); }
.page-intro p { margin: 0; font-family: var(--serif); font-size: clamp(1.4rem, 2.4vw, 2.35rem); line-height: 1.35; }
.prose { max-width: 780px; }
.prose h2 { margin: 3rem 0 1rem; font-family: var(--serif); font-size: clamp(2.1rem, 4vw, 4.5rem); font-weight: 700; letter-spacing: -.045em; line-height: 1; }
.prose p { color: var(--muted); font-size: 1.05rem; }
.photo-break { min-height: 68svh; position: relative; overflow: hidden; }
.photo-break img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.belief-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 4rem; background: var(--line); border: 1px solid var(--line); }
.belief { padding: clamp(2rem, 4vw, 4rem); background: var(--paper); }
.belief h3 { margin: 0 0 1rem; font-family: var(--serif); font-size: 2rem; font-weight: 700; }
.leader-profile { display: grid; grid-template-columns: 1fr 1fr; min-height: 740px; }
.leader-profile:nth-child(even) .profile-photo { order: 2; }
.profile-photo { position: relative; min-height: 640px; overflow: hidden; }
.profile-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.profile-copy { display: flex; flex-direction: column; justify-content: center; padding: var(--pad); }
.profile-copy h2 { margin: 0 0 1.5rem; font-family: var(--serif); font-size: clamp(3rem, 6vw, 6.5rem); font-weight: 700; letter-spacing: -.055em; line-height: .9; }
.content-list { display: grid; gap: 1px; margin-top: 3rem; background: var(--line); border: 1px solid var(--line); }
.content-item { display: grid; grid-template-columns: 1fr 2fr auto; align-items: center; gap: 2rem; padding: 1.5rem; background: var(--paper); }
.content-item span { color: var(--blue); font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.content-item h3 { margin: 0; font-family: var(--serif); font-size: clamp(1.5rem, 2.5vw, 2.5rem); font-weight: 700; }

.journey-heading { display: grid; grid-template-columns: 1.2fr .8fr; gap: 3rem; align-items: end; }
.journey-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1rem, 2vw, 2rem); margin-top: 5rem; }
.journey-panel { position: relative; min-height: 480px; display: flex; flex-direction: column; justify-content: flex-end; padding: clamp(1.7rem, 3vw, 3rem); border-radius: 0 3.5rem 3.5rem 3.5rem; }
.journey-panel::before { content: ''; position: absolute; left: 0; top: 0; width: 28%; height: 23%; border-radius: 0 0 3rem 0; background: var(--paper); }
.journey-panel--blue { color: #fff; background: var(--blue); }
.journey-panel--lime { background: var(--lime); }
.journey-panel--coral { background: var(--coral); }
.journey-arrow { position: absolute; z-index: 1; left: 1rem; top: 1rem; width: 52px; height: 52px; display: grid; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: 1.5rem; }
.journey-number { margin: 0 0 auto; padding-left: 30%; font-size: .68rem; font-weight: 700; letter-spacing: .13em; }
.journey-panel h3 { margin: 0 0 1.25rem; font-size: clamp(1.6rem, 2.5vw, 2.8rem); letter-spacing: -.05em; line-height: 1; }
.journey-panel p:last-child { margin: 0; max-width: 28rem; line-height: 1.45; }
.path-list { margin: 4rem 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.3); }
.path-list li { display: grid; grid-template-columns: 5rem 1fr; gap: 2rem; padding: 2rem 0; border-bottom: 1px solid rgba(255,255,255,.3); }
.path-list li > span { color: var(--lime); font-size: .7rem; font-weight: 700; letter-spacing: .12em; }
.path-list h3 { margin: 0 0 .5rem; font-family: var(--serif); font-size: clamp(1.8rem, 3vw, 3rem); font-weight: 700; }
.path-list p { max-width: 48rem; margin: 0; color: rgba(255,255,255,.72); }

.contact-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(3rem, 8vw, 10rem); }
.contact-form { display: grid; gap: 1.5rem; }
.contact-form label { display: grid; gap: .5rem; font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.contact-form input, .contact-form textarea { width: 100%; padding: 1rem 0; color: var(--ink); border: 0; border-bottom: 1px solid var(--ink); border-radius: 0; outline: 0; background: transparent; font-family: var(--serif); font-size: 1.2rem; resize: vertical; }
.contact-form input:focus, .contact-form textarea:focus { border-bottom-color: var(--blue); box-shadow: 0 2px 0 var(--blue); }
.form-status { min-height: 1.5rem; margin: 0; }
.bank-data { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 2rem 0; padding: 1.5rem 0; border-block: 1px solid rgba(255,255,255,.25); }
.bank-data p { margin: 0; font-family: var(--serif); font-size: 1.35rem; }
.bank-data small { display: block; color: var(--lime); font-family: var(--sans); font-size: .6rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.modal-actions { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-top: 3rem; }

.reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.is-visible { opacity: 1; transform: none; }
.mobile-dock { display: none; }

@media (max-width: 980px) {
  body { padding-bottom: 68px; }
  .site-header { height: 76px; }
  .site-header::after { left: 1rem; right: 1rem; }
  .desktop-nav { display: none; }
  .menu-toggle { display: block; }
  .hero { min-height: 100svh; }
  .hero-media img { top: -30%; height: 130%; object-position: 55% 100%; }
  .hero::before { background: linear-gradient(0deg, rgba(2,10,28,.96) 0%, rgba(8,38,86,.5) 62%, rgba(3,18,47,.36) 100%); }
  .hero-content { padding-top: 8rem; padding-bottom: 7rem; }
  .hero .display { font-size: clamp(3.5rem, 15vw, 6rem); max-width: 8ch; }
  .hero-support { max-width: 27rem; }
  .hero-meta { left: var(--pad); right: auto; bottom: 2rem; display: flex; gap: .5rem 1rem; align-items: baseline; text-align: left; }
  .hero-actions { margin-bottom: 4rem; }
  .scroll-cue { display: none; }
  .intro-grid, .story-layout, .donation-layout, .visit-layout, .page-intro { grid-template-columns: 1fr; }
  .story-visual { position: relative; top: auto; min-height: 72svh; }
  .story-chapter { min-height: 38svh; }
  .gathering { min-height: auto; grid-template-columns: 1fr; }
  .gathering-photo { min-height: 72svh; clip-path: polygon(0 0,100% 0,100% 90%,0 100%); }
  .gathering-board { min-height: 78svh; margin-top: -8svh; padding-top: 11svh; }
  .gathering-board::before { width: 78vw; height: 78vw; right: -42vw; top: -30vw; }
  .gathering-orbit { width: 9rem; right: 1rem; bottom: 5rem; }
  .leaders-layout, .message-layout { grid-template-columns: 1fr; }
  .leaders-live { min-height: auto; grid-template-columns: 1fr; padding-top: 6rem; }
  .leaders-live .leaders-photo { min-height: 76svh; width: calc(100% - 2 * var(--pad)); margin-inline: var(--pad); clip-path: polygon(0 7%,88% 0,100% 91%,10% 100%); }
  .leaders-live .leaders-copy { padding-block: 5rem 7rem; }
  .leaders-word { left: 0; top: 2rem; transform: none; font-size: 35vw; }
  .leaders-shape { width: 85vw; height: 85vw; right: -46vw; bottom: -20vw; }
  .leaders-photo, .message-photo { min-height: 72svh; }
  .leaders-layout { min-height: auto; }
  .value-row { grid-template-columns: 3rem 1fr; }
  .value-row p { grid-column: 2; }
  .steps-track { grid-template-columns: 1fr 1fr; }
  .step:nth-child(2) { border-right: 0; }
  .step { min-height: 300px; border-bottom: 1px solid rgba(255,255,255,.3); }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-brand-wrap { grid-column: 1 / -1; }
  .modal-stage { grid-template-columns: 1fr; align-content: end; }
  .modal-stage-meta { left: var(--pad); right: 5rem; }
  .modal-image-wrap { position: absolute; grid-column: 1; inset: 0 auto auto 0; width: 100%; height: 57svh; clip-path: polygon(0 0,100% 0,100% 90%,0 100%); box-shadow: none; }
  .modal-image-wrap::after { background: linear-gradient(0deg,var(--modal-accent,var(--lime)) 0%,rgba(15,64,143,.12) 45%,transparent 75%); mix-blend-mode: normal; }
  .modal-heading { align-self: end; padding-top: 55svh; padding-bottom: 5rem; }
  .modal-title { font-size: clamp(3.6rem,15vw,6.6rem); max-width: 8ch; }
  .modal-call { margin-top: 1.2rem; }
  .modal-index { bottom: 0; left: auto; right: -2rem; font-size: 62vw; }
  .modal-vector span { width: 92vw; height: 20vw; top: 59%; }
  .modal-vector span:nth-child(2) { top: 67%; }
  .modal-vector span:nth-child(3) { display: none; }
  .modal-scroll-cue { display: none; }
  .modal-body { grid-template-columns: 1fr; }
  .modal-body h3 { max-width: 12ch; }
  .belief-grid { grid-template-columns: 1fr; }
  .ministry-directory { grid-template-columns: repeat(2, 1fr); }
  .journey-heading, .contact-layout { grid-template-columns: 1fr; }
  .journey-grid { grid-template-columns: 1fr; }
  .journey-panel { min-height: 420px; }
  .leader-profile { grid-template-columns: 1fr; }
  .leader-profile:nth-child(even) .profile-photo { order: 0; }
  .mobile-dock {
    position: fixed;
    z-index: 90;
    inset: auto .65rem .65rem;
    min-height: 72px;
    display: grid;
    grid-template-columns: .9fr .9fr 1.2fr 1fr;
    color: #fff;
    background: var(--blue);
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 1.15rem 1.15rem .35rem 1.15rem;
    box-shadow: 0 18px 48px rgba(2,12,28,.3);
    overflow: hidden;
  }
  .mobile-dock a { position: relative; min-width: 0; display: flex; flex-direction: column; justify-content: center; gap: .12rem; padding: .65rem .45rem calc(.65rem + env(safe-area-inset-bottom)); border-right: 1px solid var(--line); }
  .mobile-dock a::before { content: ''; position: absolute; left: .45rem; right: 100%; top: 0; height: 3px; background: var(--blue); transition: right .35s var(--ease); }
  .mobile-dock a:active::before, .mobile-dock a.is-active::before { right: .45rem; }
  .mobile-dock span { color: var(--lime); font-size: .5rem; font-weight: 700; letter-spacing: .13em; }
  .mobile-dock strong { overflow: hidden; font-size: .58rem; font-weight: 700; letter-spacing: .05em; text-overflow: ellipsis; text-transform: uppercase; }
  .mobile-dock .dock-primary { color: var(--ink); background: var(--lime); border-right: 0; }
  .mobile-dock .dock-primary::before { background: var(--ink); }
  .pathway-shell { grid-template-columns: 1fr; gap: 0; padding-inline: 0; }
  .pathway-sticky { position: relative; top: auto; min-height: auto; padding: 6rem var(--pad) 4rem; }
  .pathway-progress { display: none; }
  .pathway-flow { border-inline: 0; }
  .pathway-chapter { min-height: 86svh; }
}

@media (max-width: 640px) {
  :root { --pad: 1.15rem; }
  .section { padding-block: 5.5rem; }
  .brand { width: 140px; }
  .site-header.is-scrolled .brand { width: 122px; }
  .hero-content { padding-bottom: 5.5rem; }
  .hero-support { font-size: 1.18rem; max-width: 25rem; }
  .hero-actions { display: grid; gap: .3rem; }
  .hero-meta { display: none; }
  .ministry-trigger { flex-basis: 160px; min-height: 126px; padding: 1.5rem 1rem; }
  .rail-label { padding-left: 1rem; }
  .story-visual { min-height: 118vw; }
  .leaders-photo, .message-photo { min-height: 125vw; }
  .leaders-photo img { object-position: 50% 28%; }
  .leaders-copy { padding-block: 4rem; }
  .steps-track { grid-template-columns: 1fr; }
  .step, .step:nth-child(2) { min-height: 260px; border-right: 0; }
  .value-row { gap: 1rem; }
  .value-row h3 { font-size: 3rem; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-brand-wrap { grid-column: auto; }
  .footer-bottom { flex-direction: column; }
  .modal-stage-meta span:first-child { display: none; }
  .modal-stage-meta { justify-content: flex-start; }
  .modal-title { padding-bottom: 0; font-size: clamp(3.4rem,15vw,4rem); }
  .modal-hero { min-height: 62svh; }
  .page-hero { min-height: 72svh; }
  .page-hero .display { font-size: 4rem; }
  .content-item { grid-template-columns: 1fr auto; gap: .5rem 1rem; }
  .content-item h3 { grid-column: 1 / -1; grid-row: 2; }
  .ministry-directory { grid-template-columns: 1fr 1fr; }
  .ministry-directory .ministry-trigger { min-height: 150px; }
  .journey-panel { min-height: 390px; }
  .pathway-caption h3 { font-size: clamp(2.8rem,13vw,4.6rem); }
  .path-list li { grid-template-columns: 2.5rem 1fr; gap: 1rem; }
  .bank-data { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Home art direction v3 — purposeful type, image and motion */
html, body { overflow-x: clip; }
.hero-slider { isolation: isolate; }
.hero-slides, .hero-slide, .hero-slide img { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-slides { z-index: 0; }
.hero-slide { margin: 0; z-index: 0; opacity: 1; overflow: hidden; pointer-events: none; clip-path: inset(0 0 0 100%); transition: clip-path 1.15s var(--ease); }
.hero-slide::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(1,13,36,.93) 0%, rgba(4,34,81,.68) 40%, rgba(15,64,143,.13) 77%), linear-gradient(0deg,rgba(1,12,31,.92),transparent 62%); }
.hero-slide.is-active { z-index: 1; pointer-events: auto; clip-path: inset(0); }
.hero-slide img { object-fit: cover; object-position: center 58%; transform: scale(1.08); }
.hero-slide:nth-child(1) img { top: -12%; height: 112%; object-position: center 100%; }
.hero-slide:nth-child(3) img { object-position: center 48%; }
.hero-slide.is-active img { animation: homeKenBurns 6s linear both; }
@keyframes homeKenBurns { from { transform: scale(1.08) translate3d(0,0,0); } to { transform: scale(1.15) translate3d(-1.2%,-1%,0); } }
.hero-slider::before { z-index: 1; background: linear-gradient(90deg,rgba(3,18,47,.28),transparent 70%); }
.hero-slider::after { display: none; }
.hero-grain { position: absolute; inset: 0; z-index: 1; opacity: .13; pointer-events: none; mix-blend-mode: soft-light; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }
.hero-slider { align-items: center; }
.hero-slider .hero-content { padding-top: clamp(7rem,12vh,9rem); padding-bottom: clamp(5.5rem,10vh,7rem); }
.hero-slide-status { position: absolute; z-index: 3; right: var(--pad); bottom: clamp(2.6rem,5vw,4.25rem); width: min(30rem,42vw); display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: .7rem 1.5rem; color: rgba(255,255,255,.72); }
.hero-slide-status > span { overflow: hidden; font-size: .58rem; font-weight: 700; letter-spacing: .14em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.hero-dots { display: flex; gap: 1rem; }
.hero-dots button, .hero-pause { padding: 0; color: rgba(255,255,255,.45); border: 0; background: transparent; font-size: .62rem; font-weight: 700; letter-spacing: .12em; cursor: pointer; }
.hero-dots button.is-active { color: var(--lime); }
.hero-progress { grid-column: 1 / -1; height: 1px; overflow: hidden; background: rgba(255,255,255,.25); }
.hero-progress span { display: block; width: 100%; height: 100%; background: var(--lime); transform: scaleX(0); transform-origin: left; }
.hero-slider.is-playing .hero-progress span { animation: heroTimer 6s linear both; }
@keyframes heroTimer { to { transform: scaleX(1); } }
.hero-pause { position: absolute; z-index: 3; right: var(--pad); top: 50%; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; color: #fff; }

.gathering { min-height: 92svh; grid-template-columns: .88fr 1.12fr; color: #fff; background: var(--blue); }
.gathering-board { isolation: isolate; min-height: 92svh; order: 0; padding: clamp(5rem,8vw,9rem) var(--pad); background: var(--paper); color: var(--ink); }
.gathering-board::before { content: ''; z-index: -1; width: 56vw; height: 56vw; right: auto; left: -34vw; top: -34vw; border: clamp(28px,4vw,62px) solid var(--sky); opacity: .65; }
.gathering-number { position: absolute; z-index: -1; right: -4vw; top: 8%; color: transparent; -webkit-text-stroke: 1px rgba(15,64,143,.17); font: 900 clamp(14rem,30vw,34rem)/.72 var(--serif); letter-spacing: -.13em; }
.gathering-content { position: relative; z-index: 2; max-width: 42rem; }
.next-service { display: inline-flex; margin-bottom: 1.75rem; padding: .55rem .8rem; color: var(--paper); background: var(--blue); }
.gathering-board h2 { max-width: 9ch; font-size: clamp(3rem,5.4vw,6.7rem); }
.service-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.service-line { grid-template-columns: 1fr; gap: .5rem; border: 0; padding: 1.3rem 0; }
.service-line + .service-line { padding-left: 1.5rem; border-left: 1px solid var(--line); }
.service-line b { font-size: clamp(3rem,5.6vw,6rem); }
.gathering-photo { order: 1; min-height: 92svh; clip-path: none; }
.gathering-photo::after { background: linear-gradient(0deg,rgba(3,21,52,.88),rgba(15,64,143,.06) 68%); mix-blend-mode: normal; }
.gathering-photo img { object-position: 58% center; animation: homeKenBurns 18s ease-in-out infinite alternate; }
.gathering-photo { --photo-reveal: 100%; }
.gathering-photo img, .gathering-photo::after { clip-path: inset(var(--photo-reveal) 0 0); transition: clip-path 1.15s var(--ease); }
.gathering-photo.is-visible { --photo-reveal: 0%; }
.gathering-photo figcaption { position: absolute; z-index: 2; left: clamp(1.5rem,4vw,4rem); right: clamp(1.5rem,4vw,4rem); bottom: clamp(2rem,5vw,4rem); display: grid; gap: .7rem; padding-top: 1.2rem; border-top: 1px solid rgba(255,255,255,.65); }
.gathering-photo figcaption span { color: var(--lime); font-size: .62rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.gathering-photo figcaption strong { max-width: 22ch; font-size: clamp(1.5rem,2.7vw,3.2rem); line-height: 1.05; }

.story-scroll { position: relative; height: 300svh; background: var(--paper); }
.story-stage { position: sticky; top: 0; height: 100svh; overflow: hidden; }
.story-heading { position: absolute; z-index: 5; left: var(--pad); right: var(--pad); top: clamp(6.5rem,10vh,9rem); pointer-events: none; }
.story-heading h2 { max-width: 11ch; margin: 0; font: 800 clamp(3.2rem,6vw,7rem)/.88 var(--serif); letter-spacing: -.065em; }
.story-heading h2 span { color: var(--blue); }
.story-heading > p:last-of-type { margin: 1rem 0 0; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.story-progress { width: min(24rem,44vw); height: 2px; margin-top: 1.25rem; overflow: hidden; background: var(--line); }
.story-progress span { display: block; width: 100%; height: 100%; background: var(--blue); transform: scaleX(var(--story-progress,0)); transform-origin: left; }
.story-track { height: 100%; display: flex; will-change: transform; transform: translate3d(var(--story-shift,0px),0,0); }
.story-panel { position: relative; flex: 0 0 100vw; height: 100svh; display: grid; grid-template-columns: 52% 48%; align-items: end; padding: clamp(18rem,34vh,23rem) var(--pad) clamp(2rem,5vw,5rem); overflow: hidden; }
.story-panel:nth-child(2) { background: var(--sky); }
.story-panel:nth-child(3) { background: var(--lime); }
.story-panel-media { position: relative; height: min(49svh,520px); overflow: hidden; }
.story-panel-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(3,20,46,.4),transparent 55%); }
.story-panel-media img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.04); }
.story-panel-copy { position: relative; align-self: stretch; display: flex; flex-direction: column; justify-content: flex-end; padding: clamp(2rem,5vw,6rem); border-top: 1px solid var(--line); }
.story-panel-copy::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 1px; background: var(--line); }
.story-panel-copy > span { color: var(--blue); font-size: .68rem; font-weight: 800; letter-spacing: .13em; }
.story-panel-copy h3 { margin: auto 0 .8rem; font: 800 clamp(2.7rem,5vw,6rem)/.9 var(--serif); letter-spacing: -.06em; }
.story-panel-copy p { max-width: 34rem; margin: 0 0 2rem; font-size: clamp(1rem,1.35vw,1.25rem); }

.leaders-live { min-height: 100svh; grid-template-columns: 1.12fr .88fr; background: var(--paper); }
.leaders-art { position: relative; isolation: isolate; align-self: stretch; min-height: 100svh; overflow: hidden; background: var(--paper); }
.leaders-art::after { content: ''; position: absolute; inset: 0; opacity: .09; mix-blend-mode: multiply; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.leaders-frame { display: none; }
.leaders-word { z-index: 1; left: 2%; top: 8%; transform: none; color: var(--blue); -webkit-text-stroke: 0; font-size: clamp(7rem,14vw,16rem); line-height: .75; letter-spacing: -.1em; }
.leaders-art-note { position: absolute; z-index: 4; left: 1.4rem; bottom: 1.2rem; color: var(--blue); font-size: .62rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; writing-mode: vertical-rl; transform: rotate(180deg); }
.leaders-cutout { position: absolute; z-index: 3; left: 50%; bottom: -20%; width: min(120%,980px); max-width: none; transform: translateX(-50%); }
.leaders-cutout--main { z-index: 3; filter: none; }
.leaders-word { opacity: 0; clip-path: inset(0 100% 0 0); transition: opacity .35s, clip-path 1.1s var(--ease); }
.leaders-cutout--main { opacity: 0; transform: translate(-50%,12%); transition: opacity .5s .22s, transform 1.15s .12s var(--ease); }
.leaders-live.is-visible .leaders-word { opacity: 1; clip-path: inset(0); }
.leaders-live.is-visible .leaders-cutout--main { opacity: 1; transform: translate(-50%,0); }
.leaders-copy { border-left: 1px solid var(--line); }
.leaders-live .leaders-copy { padding: clamp(5rem,8vw,9rem) clamp(2rem,5vw,6rem); }
.leaders-actions { display: flex; flex-wrap: wrap; gap: 1.5rem 2rem; align-items: center; margin-top: 3rem; }
.leader-socials { display: flex; gap: .55rem; }
.leader-socials a { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--ink); border-radius: 50%; font-weight: 800; transition: color .25s, background .25s, transform .25s var(--ease); }
.leader-socials a:hover { color: var(--blue); background: var(--lime); transform: translateY(-4px); }

.values-section { overflow: hidden; }
.values-list { margin-top: 4rem; }
.value-row { position: relative; isolation: isolate; min-height: 130px; grid-template-columns: 4rem minmax(260px,1fr) minmax(260px,.55fr); align-items: center; padding: 1.7rem 0; overflow: hidden; }
.value-row::before { content: ''; position: absolute; inset: 0; z-index: -1; background: var(--blue); transform: scaleX(0); transform-origin: right; transition: transform .65s var(--ease); }
.value-row h3, .value-row:nth-child(odd) h3, .value-row:nth-child(even) h3 { color: var(--ink); transform: none; transition: color .3s, transform .65s var(--ease); }
.value-row p, .value-row span { transition: color .3s; }
.value-row:hover::before, .value-row:focus-within::before { transform: scaleX(1); transform-origin: left; }
.value-row:hover h3, .value-row:hover p { color: #fff; }
.value-row:hover span { color: var(--lime); }
.value-row.is-visible h3 { animation: valueReveal .85s var(--ease) both; }
@keyframes valueReveal { from { opacity: 0; clip-path: inset(0 100% 0 0); } to { opacity: 1; clip-path: inset(0); } }

.pathway-shell { grid-template-columns: minmax(320px,.78fr) minmax(0,1.22fr); }
.pathway-status { display: grid; grid-template-columns: auto 1fr auto; gap: 1rem; align-items: center; width: min(20rem,100%); margin-top: 3.5rem; }
.pathway-status strong { color: var(--lime); font-size: 2.5rem; line-height: 1; }
.pathway-status small { color: rgba(255,255,255,.5); }
.pathway-progress { width: auto; height: 2px; margin: 0; background: rgba(255,255,255,.2); }
.pathway-progress span { transform: scaleX(var(--path-progress,.25)); transform-origin: left; animation: none; transition: transform .7s var(--ease); }
.pathway-chapter { min-height: 78svh; opacity: .62; transition: opacity .6s, transform .6s var(--ease); transform: scale(.97); transform-origin: center; }
.pathway-chapter.is-active { opacity: 1; transform: scale(1); }
.pathway-chapter.is-active .pathway-photo img { transform: scale(1); }

.pix-key { font-size: clamp(1.55rem,3.25vw,3.55rem); white-space: nowrap; word-break: normal; overflow-wrap: normal; letter-spacing: -.045em; }
.pix-panel { position: relative; isolation: isolate; overflow: hidden; }
.pix-panel::before { content: 'PIX'; position: absolute; z-index: -1; right: -1rem; bottom: -2.5rem; color: rgba(255,255,255,.07); font: 900 clamp(7rem,14vw,15rem)/.7 var(--serif); letter-spacing: -.1em; }
.pix-panel.is-copied { animation: pixPulse .55s var(--ease); }
@keyframes pixPulse { 45% { background: #1a55ac; } }
.map-frame { min-height: 520px; }
.map-art::before { background: repeating-linear-gradient(32deg, transparent 0 52px, rgba(255,255,255,.44) 53px 55px, transparent 56px 118px); transform: rotate(-8deg) scale(.9); }
.map-art::after { background: repeating-linear-gradient(118deg, transparent 0 72px, var(--sky) 73px 76px, transparent 77px 152px); transform: rotate(6deg) scale(.9); }
.map-pin { width: 62px; height: 62px; }
.map-pin::after { width: 17px; height: 17px; border-width: 2px; }
.map-waterline { height: 5px; }
.map-frame .map-pin { opacity: 0; transform: translateY(-70px) rotate(-45deg); transition: opacity .25s .45s, transform .9s .35s cubic-bezier(.2,1.5,.5,1); }
.map-frame .map-waterline { transform: rotate(-7deg) scaleX(0); transform-origin: left; transition: transform 1.1s var(--ease); }
.map-frame.is-visible .map-pin { opacity: 1; transform: translateY(0) rotate(-45deg); }
.map-frame.is-visible .map-waterline { transform: rotate(-7deg) scaleX(1); }

.site-footer:not(.site-footer--inner) { position: relative; isolation: isolate; overflow: hidden; padding: clamp(6rem,10vw,10rem) 0 2rem; color: #fff; background: var(--blue); }
.site-footer:not(.site-footer--inner)::before { display: none; }
.footer-word { position: absolute; z-index: -1; left: -1vw; right: -1vw; bottom: 11rem; overflow: hidden; color: rgba(255,255,255,.07); -webkit-text-stroke: 0; font: 900 clamp(7rem,15vw,16rem)/.74 var(--serif); letter-spacing: -.09em; white-space: nowrap; }
.footer-invite { display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: end; padding-bottom: clamp(4rem,8vw,8rem); border-bottom: 1px solid rgba(255,255,255,.3); }
.footer-invite .eyebrow { grid-column: 1 / -1; margin-bottom: 0; }
.footer-invite h2 { max-width: 10ch; margin: 0; font: 800 clamp(3.5rem,7vw,8rem)/.86 var(--serif); letter-spacing: -.07em; }
.footer-invite h2 span { color: var(--lime); }
.footer-invite h2 { clip-path: inset(0 100% 0 0); transition: clip-path 1.15s var(--ease); }
.footer-invite.is-visible h2 { clip-path: inset(0); }
.footer-invite-actions { display: grid; gap: 1rem; min-width: 15rem; }
.footer-whatsapp { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.45); font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.footer-navigation { display: grid; grid-template-columns: 1fr .7fr .7fr 1.1fr; gap: clamp(2rem,5vw,6rem); padding-top: clamp(3rem,6vw,6rem); }
.footer-navigation .footer-brand { width: min(220px,100%); }
.footer-social { display: flex; gap: 1.5rem; }

.site-footer--inner .footer-top { display: grid; }
.site-footer--inner .footer-brand { width: 210px; margin-bottom: 2rem; }
.site-footer--inner .footer-statement { max-width: 12ch; }

@media (max-width: 980px) {
  .hero-slide:nth-child(1) img { top: -18%; height: 118%; object-position: 60% 100%; }
  .hero-slide:nth-child(2) img { object-position: 54% center; }
  .hero-slider .hero-content { padding-top: 7rem; padding-bottom: 7rem; }
  .hero-slider .hero-actions { margin-bottom: 0; }
  .hero-slide-status { right: var(--pad); bottom: 5.35rem; width: min(25rem,calc(100% - 2 * var(--pad))); }
  .hero-pause { top: auto; right: 1.1rem; bottom: 1rem; }
  .gathering { grid-template-columns: 1fr; }
  .gathering-board { min-height: auto; margin: 0; padding: 7rem var(--pad); order: 1; }
  .gathering-photo { min-height: 72svh; order: 0; clip-path: none; }
  .story-scroll { height: auto; padding: 6rem 0; }
  .story-stage { position: relative; height: auto; overflow: visible; }
  .story-heading { position: relative; inset: auto; padding-inline: var(--pad); margin-bottom: 3rem; }
  .story-track { gap: 1rem; overflow-x: auto; padding-inline: var(--pad); transform: none !important; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .story-panel { flex-basis: min(88vw,680px); height: 72svh; grid-template-columns: 1fr; grid-template-rows: 1.1fr .9fr; padding: 0; scroll-snap-align: center; }
  .story-panel-media { height: 100%; }
  .story-panel-copy { padding: 2rem; }
  .story-panel-copy h3 { margin-top: auto; }
  .leaders-live { grid-template-columns: 1fr; padding-top: 0; }
  .leaders-art { min-height: 82svh; }
  .leaders-cutout { width: min(118%,850px); bottom: -17%; }
  .leaders-word { top: 13%; font-size: 23vw; }
  .leaders-copy { border-left: 0; border-top: 1px solid var(--line); }
  .footer-invite { grid-template-columns: 1fr; }
  .footer-navigation { grid-template-columns: 1fr 1fr; }
  .footer-navigation .footer-brand { grid-column: 1 / -1; }
  .mobile-dock {
    inset: auto .8rem calc(.7rem + env(safe-area-inset-bottom));
    min-height: 68px;
    grid-template-columns: repeat(4,1fr);
    padding: .35rem;
    background: rgba(6,31,76,.96);
    border: 0;
    border-radius: 1.35rem;
    box-shadow: 0 18px 44px rgba(2,12,32,.28);
    backdrop-filter: blur(18px);
  }
  .mobile-dock a { min-height: 60px; align-items: center; gap: .1rem; padding: .8rem .2rem .55rem; border: 0; text-align: center; }
  .mobile-dock a::before { left: 50%; right: auto; top: .5rem; width: 4px; height: 4px; border-radius: 50%; background: var(--lime); opacity: 0; transform: translateX(-50%); transition: opacity .25s; }
  .mobile-dock a:active::before, .mobile-dock a.is-active::before { right: auto; opacity: 1; }
  .mobile-dock span { color: rgba(255,255,255,.42); font-size: .45rem; }
  .mobile-dock strong { color: rgba(255,255,255,.8); font-size: .54rem; }
  .mobile-dock a.is-active strong { color: var(--lime); }
  .mobile-dock .dock-primary { color: inherit; background: transparent; border: 0; }
  .mobile-dock .dock-primary::before { background: var(--lime); }
  .mobile-dock .dock-primary strong { color: var(--lime); }
}

@media (max-width: 640px) {
  .hero-slide:nth-child(1) img { top: -23%; height: 123%; }
  .hero-slider .hero-content { padding-top: 6.7rem; padding-bottom: 6.7rem; }
  .hero-slide-status { bottom: 5.1rem; gap: .55rem 1rem; }
  .hero-slide-status > span { font-size: .5rem; }
  .hero-dots { gap: .7rem; }
  .gathering-photo { min-height: 62svh; }
  .gathering-board h2 { font-size: 3.35rem; }
  .service-grid { grid-template-columns: 1fr 1fr; }
  .service-line b { font-size: 3.2rem; }
  .story-heading h2 { font-size: 3.5rem; }
  .story-panel { flex-basis: 88vw; height: 70svh; }
  .story-panel-copy h3 { font-size: 2.65rem; }
  .leaders-art { min-height: 70svh; }
  .leaders-frame { width: 78%; height: 52%; left: 11%; top: 23%; }
  .leaders-cutout { width: 128%; bottom: -16%; }
  .leaders-word { top: 11%; font-size: 25vw; }
  .leaders-live .leaders-copy { padding: 5rem var(--pad) 6rem; }
  .leaders-actions { display: grid; }
  .value-row { grid-template-columns: 2.3rem 1fr; min-height: 0; padding: 1.4rem 0; }
  .value-row p { grid-column: 2; }
  .value-row h3 { font-size: 2.8rem; }
  .pathway-chapter { min-height: 76svh; opacity: 1; transform: none; }
  .pix-key { font-size: clamp(1.35rem,7.1vw,2.1rem); }
  .map-frame { min-height: 450px; }
  .map-caption strong { font-size: 1.5rem; }
  .footer-invite h2 { font-size: 4rem; }
  .footer-navigation { grid-template-columns: 1fr; }
  .footer-navigation .footer-brand { grid-column: auto; }
  .footer-social { flex-wrap: wrap; gap: .8rem 1.2rem; }
  .footer-word { bottom: 17rem; }
  .gathering-board { padding: 5rem var(--pad) 4.5rem; }
}

@media (hover: none) {
  .value-row:hover::before { transform: scaleX(0); }
  .value-row:hover h3 { color: var(--ink); }
  .value-row:hover p { color: var(--muted); }
  .value-row:hover span { color: var(--blue); }
}

/* Home precision pass v10 */
.eyebrow { gap: 0; }
.eyebrow::before { display: none; }
.hero-title span { padding-bottom: .1em; margin-bottom: -.1em; }

.story-progress { display: none; }
.story-panel { align-items: stretch; padding: clamp(15rem,29vh,19rem) var(--pad) clamp(2rem,4vw,4rem); }
.story-panel-media { height: auto; min-height: 0; }
.story-panel-copy { align-self: stretch; justify-content: center; gap: 0; padding: clamp(2rem,4vw,5rem); border-top: 0; }
.story-panel-copy::before { display: none; }
.story-year { display: flex; align-items: flex-start; gap: 1rem; color: var(--blue); }
.story-year small { padding-top: .7rem; font: 800 .65rem/1 var(--sans); letter-spacing: .14em; }
.story-year strong { font: 900 clamp(4.5rem,8vw,9rem)/.78 var(--serif); letter-spacing: -.075em; }
.story-panel-copy h3 { margin: clamp(2rem,5vh,4rem) 0 1rem; font-size: clamp(3rem,5vw,6rem); }
.story-panel-copy p { max-width: 37rem; margin: 0 0 2rem; font-size: clamp(1.15rem,1.55vw,1.4rem); line-height: 1.55; }

.leaders-copy { border: 0; }
.leaders-cutout--seated { width: min(92%,760px); max-height: 96%; bottom: -4%; object-fit: contain; }
.leaders-principles { max-width: 36rem; margin: 2rem 0 0; color: var(--blue); font-size: .68rem; font-weight: 800; letter-spacing: .16em; line-height: 1.8; text-transform: uppercase; }
.leaders-poster { position: relative; isolation: isolate; min-height: 100svh; justify-content: flex-end !important; overflow: hidden; background: var(--paper); color: var(--ink) !important; }
.leaders-poster::before { content: ''; position: absolute; z-index: -2; inset: 0; opacity: .09; mix-blend-mode: multiply; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.leaders-poster-label { position: absolute; z-index: 4; top: clamp(2rem,4vw,4.2rem); left: clamp(2rem,5vw,5rem); right: clamp(2rem,5vw,5rem); display: flex; justify-content: space-between; gap: 2rem; color: var(--blue); font-size: .62rem; font-weight: 800; letter-spacing: .25em; line-height: 1.35; text-transform: uppercase; }
.leaders-poster-label span:last-child { max-width: 12rem; text-align: right; }
.leaders-poster-words { position: absolute; z-index: -1; inset: clamp(6rem,9vw,8rem) 0 auto clamp(1rem,2vw,2rem); display: grid; color: var(--blue); font: 900 clamp(6.4rem,9.5vw,11rem)/.76 var(--sans); letter-spacing: -.09em; text-transform: uppercase; }
.leaders-poster-copy { position: absolute; z-index: 3; top: 34%; right: clamp(2rem,4vw,4rem); width: min(23rem,72%); padding: 1rem 0 1.1rem 1.4rem; background: rgba(246,241,234,.94); }
.leaders-poster-copy h2 { margin: 0; font: 900 clamp(2.8rem,3.65vw,4.4rem)/.84 var(--sans); letter-spacing: -.075em; }
.leaders-poster-copy h2 em { color: var(--blue); font-style: normal; }
.leaders-poster-accent { display: block; width: 2.2rem; height: .42rem; margin: 1.5rem 0; background: var(--coral); }
.leaders-poster-copy p { max-width: 23ch; margin: 0; color: #30384a; font-size: clamp(.94rem,1.05vw,1.08rem); line-height: 1.45; }
.leaders-poster-shape { position: absolute; z-index: -1; pointer-events: none; }
.leaders-poster-shape--lime { top: 6%; right: -9%; width: 30%; aspect-ratio: 1; border-radius: 50%; background: var(--lime); }
.leaders-poster-shape--orange { right: 0; bottom: 0; width: 26%; height: 15%; background: var(--coral); }
.leaders-poster-shape--sky { left: -8%; bottom: -10%; width: 36%; aspect-ratio: 1; border-radius: 50%; background: var(--sky); }
.leaders-poster-meta { position: absolute; z-index: 3; left: clamp(2rem,5vw,5rem); right: clamp(2rem,5vw,5rem); bottom: clamp(1.2rem,2vw,2rem); display: flex; align-items: end; justify-content: space-between; gap: 2rem; font-size: .58rem; font-weight: 800; letter-spacing: .22em; line-height: 1.6; text-transform: uppercase; }
.leaders-poster-meta p { margin: 0; }
.leaders-poster-meta p:last-child { text-align: right; }
.leaders-poster-meta p:last-child span { display: block; margin-bottom: .4rem; color: var(--blue); font-size: 1.8rem; line-height: 1; }
.leaders-poster .leaders-actions { position: absolute; z-index: 4; left: clamp(2rem,5vw,5rem); bottom: clamp(6rem,7vw,7rem); margin: 0; }

.value-row { column-gap: 3rem; }
.value-row::before { left: 5rem; }
.value-row:hover span, .value-row:focus-within span { color: var(--blue); }

.pathway-flow { border: 0; }
.pathway-chapter { border: 0; }
.pathway-caption > span { color: rgba(255,255,255,.62); }
.pathway-caption h3 { margin: .35rem 0 .55rem; color: var(--lime); font-size: clamp(4.5rem,8vw,9rem); line-height: .82; text-transform: uppercase; }
.pathway-caption h4 { max-width: 20ch; margin: 0 0 .75rem; color: #fff; font: 700 clamp(1.45rem,2.4vw,2.5rem)/1.05 var(--serif); letter-spacing: -.035em; }
.pathway-caption p { font-size: clamp(1rem,1.25vw,1.15rem); line-height: 1.55; }
.pathway-chapter:nth-child(1) .pathway-photo img { object-position: center 76%; }
.pathway-chapter:nth-child(2) .pathway-photo img { object-position: center 100%; }
.pathway-chapter:nth-child(3) .pathway-photo img { object-position: center 100%; }
.pathway-chapter:nth-child(4) .pathway-photo img { object-position: center 48%; }

.visit-layout { grid-template-columns: .72fr 1.28fr; gap: clamp(2rem,5vw,5rem); background: transparent; border: 0; align-items: stretch; }
.map-frame { min-height: 720px; }
.map-art::before, .map-art::after { display: none; }
.map-network { position: absolute; inset: -7%; width: 114%; height: 114%; color: rgba(188,228,254,.47); opacity: .82; transform: rotate(-3deg) scale(.94); }
.map-network path { stroke-width: 12; }
.map-network path:nth-child(n+7) { stroke-width: 5; opacity: .56; }
.map-network circle { stroke-width: 9; }
.map-frame .map-waterline { left: -18%; top: 61%; width: 74%; height: 7px; border-radius: 999px; transform: rotate(-16deg) scaleX(0); transform-origin: left center; }
.map-frame.is-visible .map-waterline { transform: rotate(-16deg) scaleX(1); }
.map-frame .map-pin { position: absolute; left: 58%; top: 53%; }
.map-caption { border: 0; }
.map-caption > span:first-child { display: grid; gap: .45rem; color: #fff; }
.map-caption small { color: #fff; font-size: .62rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.map-caption > span:last-child { color: var(--lime); }

.footer-word { bottom: 1.15rem; color: rgba(255,255,255,.035); }
.footer-legal { display: grid; gap: .42rem; }
.footer-legal small { max-width: 34rem; color: rgba(255,255,255,.38); font-size: .56rem; letter-spacing: .04em; line-height: 1.45; text-transform: none; }
.footer-legal small a { color: rgba(255,255,255,.68); }

@media (max-width: 980px) {
  .story-panel { height: auto; min-height: 72svh; grid-template-rows: minmax(280px,1.1fr) auto; padding: 0; }
  .story-panel-copy { padding: 2rem; }
  .story-year strong { font-size: clamp(4rem,16vw,7rem); }
  .leaders-copy { border: 0; }
  .leaders-cutout--seated { width: min(96%,720px); bottom: -3%; }
  .leaders-poster { min-height: 92svh; }
  .leaders-poster-copy { top: 34%; }
  .pathway-shell { grid-template-columns: minmax(0,1fr); gap: 0; padding-inline: 0; }
  .pathway-sticky { position: relative; top: auto; width: 100%; min-height: auto; padding: 6rem var(--pad) 4rem; }
  .pathway-flow { width: 100%; min-width: 0; }
  .pathway-chapter { width: 100%; min-height: 78svh; }
  .visit-layout { gap: 2rem; }
  .map-frame { min-height: 620px; }
}

@media (max-width: 640px) {
  .story-panel { height: auto; min-height: 68svh; }
  .story-panel-copy h3 { font-size: 2.8rem; }
  .story-panel-copy p { font-size: 1rem; }
  .leaders-art { min-height: 78svh; }
  .leaders-cutout--seated { width: 112%; bottom: -2%; }
  .leaders-poster { min-height: 800px; padding: 0 !important; }
  .leaders-poster-label { top: 2rem; left: 1.5rem; right: 1.5rem; }
  .leaders-poster-label span:last-child { max-width: 8rem; }
  .leaders-poster-words { inset: 6rem auto auto 1rem; font-size: clamp(6rem,30vw,8rem); }
  .leaders-poster-copy { top: 32%; right: 1.5rem; width: min(20rem,76%); padding-left: 1rem; }
  .leaders-poster-copy h2 { font-size: clamp(3rem,15vw,4.6rem); }
  .leaders-poster .leaders-actions { left: 1.5rem; bottom: 7rem; }
  .leaders-poster .leader-socials { display: none; }
  .leaders-poster-meta { left: 1.5rem; right: 1.5rem; bottom: 1.6rem; }
  .leaders-poster-meta p:last-child { display: none; }
  .value-row { column-gap: 1.2rem; }
  .value-row::before { left: 3.1rem; }
  .pathway-caption h3 { font-size: clamp(4rem,19vw,6rem); }
  .pathway-caption h4 { font-size: 1.45rem; }
  .map-frame { min-height: 660px; }
  .map-caption { align-items: end; }
  .map-caption strong { font-size: 1.75rem; }
  .footer-word { bottom: 7.5rem; color: rgba(255,255,255,.032); }
}

/* Leadership editorial artboard v13 — faithful landscape composition */
.leadership-editorial { position: relative; width: 100%; overflow: hidden; background: var(--paper); }
.leadership-editorial-artboard { position: relative; isolation: isolate; width: 100%; aspect-ratio: 1792 / 877; min-height: 690px; overflow: hidden; background: var(--paper); }
.leadership-editorial-artboard::before { content: ''; position: absolute; z-index: 20; inset: 0; opacity: .085; mix-blend-mode: multiply; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E"); }
.leadership-label { position: absolute; z-index: 11; top: 5.7%; display: flex; align-items: center; gap: 1.15rem; color: #13213a; font-size: clamp(.58rem,.72vw,.86rem); font-weight: 800; letter-spacing: .32em; line-height: 1.2; text-transform: uppercase; white-space: nowrap; }
.leadership-label i { display: block; width: clamp(2.5rem,3vw,3.4rem); height: 2px; background: var(--blue); }
.leadership-label--left { left: 3%; }
.leadership-label--right { left: 60.2%; }
.leadership-giant-word { position: absolute; z-index: 1; left: 2%; top: 9.6%; color: var(--blue); font: 900 clamp(13rem,19.5vw,22rem)/.78 var(--sans); letter-spacing: -.095em; text-transform: uppercase; white-space: nowrap; transform: scaleX(.9); transform-origin: left top; }
.leadership-giant-word::after, .leadership-right-words::after { content: ''; position: absolute; inset: 0; opacity: .2; mix-blend-mode: screen; pointer-events: none; background-image: repeating-linear-gradient(168deg,transparent 0 17px,rgba(255,255,255,.26) 18px,transparent 20px 37px); }
.leadership-portrait { position: absolute; z-index: 7; left: 14.2%; bottom: -8.5%; width: 34.5%; max-width: none; filter: drop-shadow(0 18px 22px rgba(9,31,65,.08)); transform: translateY(4%); transition: transform 1.15s var(--ease); }
.leadership-editorial.is-visible .leadership-portrait { transform: translateY(0); }
.leadership-shape { position: absolute; z-index: 2; pointer-events: none; }
.leadership-shape--orange-top { left: 35.2%; top: 11.8%; width: 7.2%; height: 6.4%; background: var(--coral); }
.leadership-shape--lime-mid { left: 9.6%; top: 58%; width: 8.3%; height: 5.4%; background: var(--lime); }
.leadership-shape--sky-mid { left: 41%; top: 58%; width: 16%; height: 20%; border-radius: 0 16rem 0 0; background: var(--sky); }
.leadership-shape--sky-corner { left: -6.2%; bottom: -22%; width: 22%; aspect-ratio: 1; border-radius: 50%; background: var(--sky); }
.leadership-shape--orange-bottom { left: 41.4%; bottom: -13%; width: 13.7%; height: 30%; background: var(--coral); }
.leadership-shape--lime-corner { right: -5.2%; top: -13%; width: 15.8%; aspect-ratio: 1; border-radius: 50%; background: var(--lime); }
.leadership-scribble { position: absolute; z-index: 5; overflow: visible; fill: none; stroke: #1261c5; stroke-width: 2.2; vector-effect: non-scaling-stroke; pointer-events: none; }
.leadership-scribble path { stroke-dasharray: 1100; stroke-dashoffset: 1100; transition: stroke-dashoffset 1.8s .25s var(--ease); }
.leadership-editorial.is-visible .leadership-scribble path { stroke-dashoffset: 0; }
.leadership-scribble--main { left: 27%; top: 18%; width: 33%; height: 42%; }
.leadership-scribble--left { left: -1%; top: 52%; width: 18%; height: 24%; }
.leadership-left-meta { position: absolute; z-index: 9; left: 3.3%; bottom: 18%; color: #14223c; font-size: clamp(.52rem,.65vw,.74rem); font-weight: 800; letter-spacing: .3em; line-height: 1.65; text-transform: uppercase; }
.leadership-left-meta i { display: block; width: 2.7rem; height: 2px; margin-bottom: 1rem; background: var(--blue); }
.leadership-left-meta p { margin: 0; }
.leadership-right-words { position: absolute; z-index: 3; left: 60.1%; top: 16%; display: grid; color: var(--blue); font: 900 clamp(6rem,8.55vw,9.6rem)/.75 var(--sans); letter-spacing: -.085em; text-transform: uppercase; transform: scaleX(.84); transform-origin: left top; }
.leadership-copy { position: absolute; z-index: 10; left: 79.5%; top: 32%; width: 17.2%; color: #0b1220; }
.leadership-copy h2 { margin: 0; font: 900 clamp(2.35rem,3.15vw,3.6rem)/.86 var(--sans); letter-spacing: -.075em; }
.leadership-copy h2 em { color: var(--blue); font-style: normal; }
.leadership-copy > i { display: block; width: 2.2rem; height: .42rem; margin: 1.3rem 0 1.45rem; background: var(--coral); }
.leadership-copy p { max-width: 24ch; margin: 0; color: #30384a; font-size: clamp(.86rem,1.05vw,1.18rem); line-height: 1.4; }
.leadership-actions { position: absolute; z-index: 12; left: 60.2%; bottom: 16.4%; display: flex; align-items: center; gap: clamp(1rem,1.5vw,1.75rem); }
.leadership-actions > a { min-width: clamp(12rem,14.8vw,16.5rem); display: flex; justify-content: space-between; gap: 2rem; padding: 0 0 1rem; border-bottom: 1px solid #24354f; color: #0b1220; font-size: clamp(.58rem,.68vw,.76rem); font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.leadership-actions .leader-socials { display: flex; gap: .55rem; }
.leadership-actions .leader-socials a { width: clamp(2.4rem,2.75vw,3rem); height: clamp(2.4rem,2.75vw,3rem); display: grid; place-items: center; border: 1px solid #172641; border-radius: 50%; color: #0b1220; font-size: .92rem; }
.leadership-corner-note { position: absolute; z-index: 8; right: 0; bottom: 0; width: 10.8%; height: 20.5%; padding: 2rem 1.8rem; color: #10203a; background: var(--coral); text-transform: uppercase; }
.leadership-corner-note > span { display: block; margin-bottom: .8rem; color: var(--blue); font-size: clamp(1.7rem,2vw,2.25rem); line-height: 1; }
.leadership-corner-note p { margin: 0; font-size: clamp(.52rem,.66vw,.75rem); font-weight: 800; letter-spacing: .25em; line-height: 1.55; }

/* Desktop: the approved artboard is the source of truth, without reinterpretation. */
@media (min-width: 981px) {
  .leadership-editorial-artboard {
    min-height: 0;
    background: var(--paper) url('/assets/images/leadership-reference-exact.png') center / 100% 100% no-repeat;
  }
  .leadership-editorial-artboard::before { display: none; }
  .leadership-editorial-artboard > * { visibility: hidden; }
  .leadership-editorial-artboard > .leadership-actions {
    visibility: visible;
    left: 60.1%;
    top: 77.3%;
    right: auto;
    bottom: auto;
    width: 27.2%;
    height: 7.6%;
    gap: 1.35%;
  }
  .leadership-actions > a {
    width: 51%;
    min-width: 0;
    height: 100%;
    padding: 0;
    border: 0;
    color: transparent;
    font-size: 0;
  }
  .leadership-actions > a span { display: none; }
  .leadership-actions .leader-socials {
    width: 47.65%;
    height: 100%;
    gap: 3.5%;
  }
  .leadership-actions .leader-socials a {
    width: 22.4%;
    height: 100%;
    border: 0;
    color: transparent;
    font-size: 0;
  }
  .leadership-actions a:focus-visible {
    outline: 3px solid #0f408f;
    outline-offset: 3px;
  }
}

@media (max-width: 1100px) {
  .leadership-editorial-artboard { min-height: 620px; }
  .leadership-label--right { left: 58%; }
  .leadership-right-words { left: 58%; }
  .leadership-copy { left: 78%; width: 19%; }
  .leadership-actions { left: 58%; }
}

@media (max-width: 980px) {
  .leadership-editorial-artboard { aspect-ratio: auto; min-height: 1030px; }
  .leadership-label { top: 2rem; font-size: .55rem; gap: .7rem; letter-spacing: .22em; }
  .leadership-label i { width: 1.8rem; }
  .leadership-label--left { left: 1.2rem; }
  .leadership-label--right { left: auto; right: 1.2rem; }
  .leadership-giant-word { left: .7rem; top: 6.5rem; font-size: 29vw; transform: none; }
  .leadership-shape--orange-top { left: 51%; top: 10.5rem; width: 18%; height: 2rem; }
  .leadership-shape--lime-mid { left: 5%; top: 37%; width: 23%; height: 2.4rem; }
  .leadership-shape--sky-mid { left: 58%; top: 39%; width: 42%; height: 17%; }
  .leadership-shape--sky-corner { left: -24%; bottom: 1%; width: 58%; }
  .leadership-shape--orange-bottom { left: auto; right: 0; bottom: 0; width: 32%; height: 15%; }
  .leadership-shape--lime-corner { right: -18%; top: -3%; width: 42%; }
  .leadership-portrait { left: 7%; top: 8.5rem; bottom: auto; width: 86%; }
  .leadership-scribble--main { left: 35%; top: 22%; width: 65%; height: 28%; }
  .leadership-scribble--left { left: -8%; top: 41%; width: 45%; height: 16%; }
  .leadership-right-words { left: 1.1rem; top: 53%; font-size: 23vw; line-height: .76; transform: scaleX(.92); }
  .leadership-copy { left: auto; right: 1.2rem; top: 62%; width: 58%; padding: .7rem 0 .7rem 1rem; background: rgba(246,241,234,.93); }
  .leadership-copy h2 { font-size: 10.5vw; }
  .leadership-copy p { font-size: .88rem; }
  .leadership-left-meta { left: 1.2rem; bottom: 8.5rem; font-size: .5rem; }
  .leadership-actions { left: 1.2rem; right: 1.2rem; bottom: 2.2rem; gap: .8rem; }
  .leadership-actions > a { min-width: 0; flex: 1; }
  .leadership-actions .leader-socials a { width: 2.35rem; height: 2.35rem; }
  .leadership-actions .leader-socials a:nth-child(n+3) { display: none; }
  .leadership-corner-note { display: none; }
}

/* Home precision pass v15 — responsive spacing, scale and approved artwork */
@media (min-width: 981px) {
  .story-heading { top: clamp(6rem,9vh,8rem); }
  .story-heading h2 { max-width: 12ch; font-size: clamp(3.25rem,5.15vw,6rem); text-wrap: balance; }
  .story-heading > p:last-of-type { max-width: 42ch; margin-top: 1.8rem; line-height: 1.55; }
  .story-panel { padding-top: clamp(27rem,54vh,31rem); }
  .story-year strong { font-size: clamp(4rem,6.4vw,7rem); }
  .story-panel-copy h3 { margin: 1.25rem 0 .8rem; font-size: clamp(2.4rem,3.8vw,4.4rem); }
  .story-panel-copy p { font-size: clamp(1rem,1.15vw,1.22rem); }

  .pathway-shell { grid-template-columns: minmax(390px,.92fr) minmax(0,1.08fr); gap: clamp(2.5rem,4vw,5rem); }
  .pathway-sticky .title { max-width: 8.6ch; font-size: clamp(3.7rem,5.25vw,6.2rem); }
  .pathway-caption { left: clamp(1.5rem,3vw,3rem); right: clamp(1.5rem,3vw,3rem); }
  .pathway-caption h3 { max-width: 100%; font-size: clamp(3.5rem,5.5vw,6.4rem); overflow-wrap: normal; word-break: normal; }

  .donation-layout { grid-template-columns: minmax(0,1.06fr) minmax(350px,.94fr); gap: clamp(3rem,6vw,7rem); }
  .pix-panel { min-width: 0; }
  .pix-key { max-width: 100%; font-size: clamp(1.65rem,2.55vw,3rem); letter-spacing: -.055em; }

  .visit-layout { grid-template-columns: minmax(0,1fr) minmax(340px,.62fr); gap: clamp(2.5rem,5vw,5rem); align-items: center; }
  .visit-info { min-width: 0; padding: 0; }
  .visit-address { max-width: 26ch; font-size: clamp(1.8rem,2.55vw,2.85rem); line-height: 1.08; }
  .map-frame { width: 100%; min-height: 0; aspect-ratio: 941 / 1672; }
}

.display,
.title,
.story-heading h2,
.gathering-board h2,
.pathway-caption h3,
.pathway-caption h4,
.footer-invite h2 { text-wrap: balance; }

/* Preserve the approved leadership poster down through tablet widths. */
@media (min-width: 721px) {
  .leadership-editorial-artboard {
    aspect-ratio: 1792 / 877;
    min-height: 0;
    background: var(--paper) url('/assets/images/leadership-reference-exact.png') center / 100% 100% no-repeat;
  }
  .leadership-editorial-artboard::before { display: none; }
  .leadership-editorial-artboard > * { visibility: hidden; }
  .leadership-editorial-artboard > .leadership-actions {
    visibility: visible;
    left: 60.1%;
    top: 77.3%;
    right: auto;
    bottom: auto;
    width: 27.2%;
    height: 7.6%;
    gap: 1.35%;
  }
  .leadership-editorial-artboard > .leadership-actions > a,
  .leadership-editorial-artboard > .leadership-actions .leader-socials { opacity: 0; }
}

.map-art {
  background: var(--blue) url('/assets/images/map-reference-exact.png') center / 100% 100% no-repeat;
}
.map-art > * { visibility: hidden; }

.footer-word {
  left: var(--pad);
  right: var(--pad);
  width: auto;
  overflow: visible;
  font-size: min(18vw,18rem);
  letter-spacing: -.085em;
  line-height: .78;
  text-align: center;
}

@media (max-width: 980px) {
  .donation-layout { gap: 3.5rem; }
  .pix-panel { width: 100%; min-width: 0; }
  .pix-key { max-width: 100%; font-size: clamp(1.4rem,5.8vw,2.6rem); }
  .visit-layout { grid-template-columns: minmax(0,1fr); }
  .visit-info { width: 100%; padding: 0; }
  .visit-address { max-width: 24ch; font-size: clamp(1.75rem,6.1vw,2.8rem); }
  .map-frame { width: 100%; max-width: 540px; min-height: 0; aspect-ratio: 941 / 1672; margin-inline: auto; }
  .footer-word { font-size: min(24vw,11rem); }
}

@media (max-width: 720px) {
  .leadership-editorial-artboard { min-height: 940px; }
  .leadership-right-words { display: none; }
  .leadership-copy { top: 59%; width: 59%; }
  .leadership-copy h2 { font-size: 10vw; }
  .leadership-left-meta { bottom: 8.8rem; }
}

@media (max-width: 420px) {
  .leadership-editorial-artboard { min-height: 900px; }
  .leadership-label { letter-spacing: .17em; }
  .leadership-label--right { max-width: 9.5rem; white-space: normal; text-align: right; }
  .leadership-portrait { top: 8.7rem; width: 88%; }
  .leadership-right-words { top: 51.5%; font-size: 17.5vw; }
  .leadership-copy { top: 58.5%; right: 1rem; width: 61%; }
  .leadership-copy p { font-size: .82rem; line-height: 1.45; }
  .footer-word { bottom: 8rem; font-size: 28vw; }
}

/* Footer signature: begins at the legal divider and spans the full viewport. */
.site-footer:not(.site-footer--inner) > .footer-word { display: none; }
.site-footer:not(.site-footer--inner) .footer-bottom {
  position: relative;
  isolation: isolate;
  min-height: clamp(10rem,18vw,15rem);
  align-items: flex-start;
  overflow: visible;
}
.site-footer:not(.site-footer--inner) .footer-legal { align-content: start; }
.site-footer:not(.site-footer--inner) .footer-bottom::before {
  content: 'SAAC';
  position: absolute;
  z-index: -1;
  left: 50%;
  top: 0;
  width: 100vw;
  color: rgba(255,255,255,.035);
  font: 900 clamp(13rem,38vw,34rem)/.72 var(--serif);
  letter-spacing: -.1em;
  text-align: center;
  transform: translateX(-50%);
  pointer-events: none;
}
.site-footer:not(.site-footer--inner) .footer-bottom > * { position: relative; z-index: 1; }

.visit-info > .btn:first-of-type { width: 42%; min-width: 0; margin-right: 1.1rem; }
.visit-info > .btn:nth-of-type(2) { width: 50%; min-width: 0; }

@media (max-width: 640px) {
  .site-footer:not(.site-footer--inner) .footer-bottom { min-height: 9rem; }
  .site-footer:not(.site-footer--inner) .footer-bottom::before { font-size: 42vw; }
  .visit-info > .btn:first-of-type,
  .visit-info > .btn:nth-of-type(2) { width: 100%; margin-right: 0; }
}

/* Home v23 — editable leadership poster, section rhythm and precise interactions */
.site-header::after {
  left: calc(max(var(--pad), (100vw - var(--max)) / 2 + var(--pad)) + clamp(132px,12vw,190px) + 1.5rem);
}
.site-header.is-scrolled::after {
  left: calc(max(var(--pad), (100vw - var(--max)) / 2 + var(--pad)) + clamp(118px,10vw,150px) + 1.5rem);
}

.leadership-editorial {
  isolation: isolate;
  padding-top: clamp(5.5rem,7.2vw,8rem);
  overflow: hidden;
}
.leadership-editorial::before {
  content: '';
  position: absolute;
  z-index: 0;
  top: clamp(-7rem,-5vw,-4rem);
  right: clamp(-8rem,-5vw,-3rem);
  width: clamp(18rem,23vw,29rem);
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--lime);
  pointer-events: none;
}
.leadership-editorial-artboard {
  z-index: 1;
  background: transparent;
}
.leadership-label--right { display: none; }
.leadership-label--left { gap: 0; }
.leadership-label--left i { display: none; }
.leadership-shape--lime-corner { display: none; }

.leadership-actions > a,
.leadership-actions .leader-socials a {
  transition: transform .36s var(--ease), color .25s ease, background-color .25s ease, border-color .25s ease;
}
.leadership-actions > a:hover {
  color: var(--blue);
  transform: translateY(-3px) scale(1.035);
}
.leadership-actions .leader-socials a:hover {
  color: var(--paper);
  border-color: var(--blue);
  background: var(--blue);
  transform: translateY(-4px) scale(1.12);
}
.leader-social::before {
  content: '';
  width: 46%;
  height: 46%;
  background: currentColor;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
}
.leader-social--website::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3.5 3 14 0 18M12 3c-3 3.5-3 14 0 18'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3.5 3 14 0 18M12 3c-3 3.5-3 14 0 18'/%3E%3C/svg%3E");
}
.leader-social--instagram::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4.2'/%3E%3Ccircle cx='17.4' cy='6.7' r='1' fill='black' stroke='none'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4.2'/%3E%3Ccircle cx='17.4' cy='6.7' r='1' fill='black' stroke='none'/%3E%3C/svg%3E");
}
.leader-social--youtube::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M22 12c0-2.2-.25-4.5-.85-5.5-.55-.95-1.45-1.25-2.45-1.4C17.1 4.85 14.4 4.7 12 4.7s-5.1.15-6.7.4c-1 .15-1.9.45-2.45 1.4C2.25 7.5 2 9.8 2 12s.25 4.5.85 5.5c.55.95 1.45 1.25 2.45 1.4 1.6.25 4.3.4 6.7.4s5.1-.15 6.7-.4c1-.15 1.9-.45 2.45-1.4.6-1 .85-3.3.85-5.5ZM10 15.8V8.2l6 3.8-6 3.8Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M22 12c0-2.2-.25-4.5-.85-5.5-.55-.95-1.45-1.25-2.45-1.4C17.1 4.85 14.4 4.7 12 4.7s-5.1.15-6.7.4c-1 .15-1.9.45-2.45 1.4C2.25 7.5 2 9.8 2 12s.25 4.5.85 5.5c.55.95 1.45 1.25 2.45 1.4 1.6.25 4.3.4 6.7.4s5.1-.15 6.7-.4c1-.15 1.9-.45 2.45-1.4.6-1 .85-3.3.85-5.5ZM10 15.8V8.2l6 3.8-6 3.8Z'/%3E%3C/svg%3E");
}

@media (min-width: 981px) {
  .leadership-editorial-artboard {
    aspect-ratio: 1792 / 877;
    min-height: 0;
    background: transparent;
  }
  .leadership-editorial-artboard::before { display: block; }
  .leadership-editorial-artboard > * { visibility: visible; }
  .leadership-giant-word {
    left: 2.4%;
    top: 10.5%;
    font-size: clamp(12.5rem,18.6vw,21rem);
    letter-spacing: -.085em;
    transform: scaleX(.9);
  }
  .leadership-portrait { left: 14.8%; width: 34%; }
  .leadership-right-words {
    left: 59.8%;
    top: 16.5%;
    font-size: clamp(5.6rem,7.7vw,8.7rem);
    line-height: .77;
    transform: scaleX(.86);
  }
  .leadership-copy {
    left: 79.2%;
    top: 31.5%;
    width: 17.8%;
  }
  .leadership-copy p { max-width: 28ch; font-size: clamp(.78rem,.9vw,1.02rem); line-height: 1.38; }
  .leadership-actions {
    left: 59.9%;
    top: auto;
    right: auto;
    bottom: 15.8%;
    width: auto;
    height: auto;
    gap: clamp(1rem,1.5vw,1.75rem);
  }
  .leadership-editorial-artboard > .leadership-actions > a,
  .leadership-editorial-artboard > .leadership-actions .leader-socials { opacity: 1; }
  .leadership-actions > a {
    width: auto;
    min-width: clamp(12rem,14.8vw,16.5rem);
    height: auto;
    padding: 0 0 1rem;
    border-bottom: 1px solid #24354f;
    color: #0b1220;
    font-size: clamp(.58rem,.68vw,.76rem);
  }
  .leadership-actions > a span { display: inline; }
  .leadership-actions .leader-socials { width: auto; height: auto; gap: .55rem; opacity: 1; }
  .leadership-actions .leader-socials a {
    width: clamp(2.4rem,2.75vw,3rem);
    height: clamp(2.4rem,2.75vw,3rem);
    border: 1px solid #172641;
    color: #0b1220;
  }
}

@media (max-width: 980px) {
  .site-header::after,
  .site-header.is-scrolled::after { left: calc(1rem + 140px + 1rem); }
  .leadership-editorial { padding-top: clamp(4.75rem,10vw,6rem); }
  .leadership-editorial::before { top: -4rem; right: -7rem; width: clamp(17rem,42vw,24rem); }
  .leadership-editorial-artboard { min-height: 1030px; background: transparent; }
  .leadership-editorial-artboard::before { display: block; }
  .leadership-editorial-artboard > * { visibility: visible; }
  .leadership-actions {
    left: 1.2rem;
    right: 1.2rem;
    top: auto;
    bottom: 2.2rem;
    width: auto;
    height: auto;
    gap: .8rem;
    opacity: 1;
  }
  .leadership-actions > a,
  .leadership-actions .leader-socials { opacity: 1; }
  .leadership-actions .leader-socials a:nth-child(n) { display: grid; }
}

@media (max-width: 720px) {
  .site-header::after,
  .site-header.is-scrolled::after { left: calc(1rem + 122px + .8rem); }
  .leadership-editorial { padding-top: 5.25rem; }
  .leadership-editorial::before { top: -3.5rem; right: -8rem; width: 18rem; }
  .leadership-giant-word { font-size: 28vw; letter-spacing: -.08em; }
  .leadership-right-words {
    display: grid;
    left: 1rem;
    top: 50.5%;
    font-size: 16.5vw;
  }
  .leadership-copy { top: 60%; width: 62%; }
  .leadership-copy p { font-size: .78rem; line-height: 1.38; }
  .leadership-actions { align-items: flex-end; }
  .leadership-actions > a { font-size: .55rem; letter-spacing: .1em; }
  .leadership-actions .leader-socials { gap: .35rem; }
  .leadership-actions .leader-socials a { width: 2.15rem; height: 2.15rem; }
}

@media (min-width: 721px) and (max-width: 980px) {
  .leadership-editorial-artboard { min-height: 1120px; }
}

/* Mobile-only liquid glass dock */
@media (max-width: 980px) {
  .mobile-dock {
    isolation: isolate;
    padding: .36rem;
    overflow: hidden;
    background:
      linear-gradient(135deg, rgba(31,83,157,.58), rgba(5,24,58,.72) 58%, rgba(12,42,88,.66));
    border: 0;
    box-shadow:
      0 20px 52px rgba(2,12,32,.34),
      0 3px 14px rgba(2,12,32,.2),
      inset 0 1px 0 rgba(255,255,255,.4),
      inset 0 -1px 0 rgba(255,255,255,.08);
    -webkit-backdrop-filter: blur(26px) saturate(175%) contrast(104%);
    backdrop-filter: blur(26px) saturate(175%) contrast(104%);
  }
  .mobile-dock::before {
    content: '';
    position: absolute;
    z-index: 0;
    inset: 0;
    border-radius: inherit;
    background:
      radial-gradient(120% 95% at 8% -18%, rgba(255,255,255,.3), transparent 42%),
      radial-gradient(75% 85% at 88% 128%, rgba(115,178,255,.2), transparent 58%),
      linear-gradient(105deg, transparent 18%, rgba(255,255,255,.075) 48%, transparent 72%);
    pointer-events: none;
  }
  .mobile-dock::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: 1px;
    left: 8%;
    width: 55%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent);
    opacity: .68;
    pointer-events: none;
  }
  .mobile-dock a {
    z-index: 1;
    border-radius: 1rem;
    transition: transform .22s var(--ease), background-color .22s ease;
  }
  .mobile-dock a:active {
    background: rgba(255,255,255,.1);
    transform: scale(.96);
  }
  .mobile-dock span { color: rgba(255,255,255,.5); }
  .mobile-dock strong { color: rgba(255,255,255,.9); text-shadow: 0 1px 8px rgba(0,0,0,.2); }
}

/* Leadership typography and SAAC letter construction */
.leadership-giant-word,
.leadership-right-words,
.leadership-copy h2 {
  font-family: var(--serif);
}
.leadership-right-words { letter-spacing: -.065em; }
.leadership-copy h2 { letter-spacing: -.055em; }
.leadership-right-words::after { display: none; }
.leadership-scribble { display: none; }
.leadership-shape--orange-top { display: none; }
.leadership-giant-word::before,
.leadership-giant-word::after {
  content: 'SAAC';
  position: absolute;
  inset: 0;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  transform: none;
  pointer-events: none;
}
.leadership-giant-word::before {
  z-index: 2;
  color: var(--coral);
  clip-path: polygon(50% 0,73% 0,73% 19%,50% 19%);
}
.leadership-giant-word::after {
  z-index: 3;
  color: transparent;
  opacity: .2;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='.9'/%3E%3C/svg%3E");
  background-size: 155px 155px;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media (min-width: 981px) {
  .leadership-giant-word {
    left: 1.8%;
    top: 10.2%;
    font-size: clamp(15rem,21.2vw,24rem);
    letter-spacing: -.115em;
    transform: scaleX(1);
  }
  .leadership-shape--lime-mid {
    left: 29.2%;
    top: 44.2%;
    width: 8.4%;
    height: 5.4%;
  }
  .leadership-right-words {
    font-size: clamp(5.4rem,7.3vw,8.2rem);
  }
  .leadership-copy { left: 79.5%; }
}

@media (min-width: 981px) and (max-width: 1150px) {
  .leadership-editorial-artboard {
    aspect-ratio: auto;
    min-height: 640px;
  }
  .leadership-right-words {
    left: 58%;
    font-size: 7.2vw;
  }
  .leadership-copy {
    left: 80.5%;
    width: 16.8%;
  }
  .leadership-editorial-artboard > .leadership-actions {
    left: 58%;
    top: auto;
    bottom: 4.5rem;
  }
}

@media (min-width: 721px) and (max-width: 980px) {
  .leadership-editorial-artboard { min-height: 1280px; }
  .leadership-giant-word {
    left: 1rem;
    top: 6.4rem;
    font-size: 28vw;
    letter-spacing: -.105em;
    transform: none;
  }
  .leadership-portrait {
    left: 6%;
    top: 8.5rem;
    width: 65%;
  }
  .leadership-shape--lime-mid {
    left: 43%;
    top: 23%;
    width: 18%;
    height: 2.2rem;
  }
  .leadership-right-words {
    left: 56%;
    top: 34%;
    font-size: 14vw;
    line-height: .77;
    transform: scaleX(.9);
  }
  .leadership-copy {
    left: auto;
    right: 3%;
    top: 60%;
    width: 42%;
    padding: 1rem 0 1rem 1.1rem;
  }
  .leadership-copy h2 { font-size: 6.8vw; }
  .leadership-copy p { font-size: .88rem; line-height: 1.45; }
  .leadership-left-meta { left: 1.2rem; bottom: 7.5rem; }
  .leadership-editorial-artboard > .leadership-actions {
    left: 1.2rem;
    right: 1.2rem;
    top: auto;
    bottom: 2.4rem;
    width: auto;
    height: auto;
  }
}

@media (max-width: 720px) {
  .leadership-editorial-artboard { min-height: 1240px; }
  .leadership-shape--lime-mid {
    left: 42%;
    top: 17%;
    width: 22%;
    height: 2rem;
  }
  .leadership-right-words { top: 54%; }
  .leadership-copy {
    top: 67%;
    width: 62%;
  }
  .leadership-left-meta { bottom: 9.25rem; }
}

/* Expressive stacked SAAC: a compact typographic mass behind the portrait */
.leadership-giant-word {
  width: 58%;
  height: 74%;
  overflow: visible;
  color: transparent;
  font-size: 0;
  line-height: 0;
  letter-spacing: 0;
  transform: none;
}
.leadership-giant-word::before,
.leadership-giant-word::after {
  content: 'SA\A AC';
  inset: 0 auto auto 0;
  width: 100%;
  white-space: pre;
  font-family: var(--serif);
  font-size: clamp(17rem,29vw,31rem);
  font-weight: 900;
  line-height: .58;
  letter-spacing: -.2em;
  transform: scaleX(1.18);
  transform-origin: left top;
}
.leadership-giant-word::before {
  z-index: 1;
  color: var(--periwinkle);
  clip-path: none;
}
.leadership-giant-word::after {
  z-index: 2;
  opacity: .68;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='1'/%3E%3C/svg%3E");
  background-size: 58px 58px;
  filter: contrast(1.8);
}

@media (min-width: 981px) {
  .leadership-giant-word {
    left: 5.8%;
    top: 7.5%;
    width: 52%;
    height: 80%;
  }
  .leadership-giant-word::before,
  .leadership-giant-word::after {
    font-size: clamp(16rem,25vw,27rem);
    letter-spacing: -.22em;
    transform: scaleX(1.08);
  }
}

@media (min-width: 721px) and (max-width: 980px) {
  .leadership-portrait { width: min(65%,32rem); }
  .leadership-giant-word {
    left: 1rem;
    top: 5.5rem;
    width: 72%;
    height: 52%;
  }
  .leadership-giant-word::before,
  .leadership-giant-word::after {
    font-size: clamp(14rem,36vw,21rem);
    letter-spacing: -.22em;
    transform: scaleX(1.08);
  }
  .leadership-editorial-artboard { min-height: 1480px; }
  .leadership-right-words {
    left: 5%;
    top: 53%;
    font-size: 13vw;
    transform: none;
  }
  .leadership-copy {
    right: 4%;
    top: 65%;
    width: 44%;
  }
}

@media (max-width: 720px) {
  .leadership-giant-word {
    left: .7rem;
    top: 5.75rem;
    width: 78%;
    height: 34%;
  }
  .leadership-giant-word::before,
  .leadership-giant-word::after {
    font-size: clamp(9.5rem,48vw,13rem);
    line-height: .59;
    letter-spacing: -.21em;
    transform: scaleX(1.12);
  }
}

/* Leadership responsive composition: tablet poster and true mobile flow */
.leadership-shape--lime-mid { display: none; }
.leadership-giant-word::before { color: var(--sky); }
.leadership-giant-word::after {
  opacity: .76;
  background-size: 48px 48px;
  filter: contrast(1.95);
}

@media (min-width: 721px) and (max-width: 980px) {
  .leadership-editorial-artboard { min-height: clamp(1330px,150vw,1500px); }
  .leadership-giant-word {
    left: 50%;
    top: 3.25rem;
    width: 78%;
    height: 43%;
    transform: translateX(-50%);
  }
  .leadership-giant-word::before,
  .leadership-giant-word::after {
    font-size: clamp(12.5rem,30vw,17.5rem);
    line-height: .55;
    letter-spacing: -.225em;
    transform: scaleX(1.06);
    transform-origin: center top;
  }
  .leadership-portrait {
    left: 50%;
    top: 4rem;
    width: min(48%,28rem);
    transform: translateX(-50%);
  }
  .leadership-editorial.is-visible .leadership-portrait { transform: translateX(-50%); }
  .leadership-right-words {
    left: 24%;
    top: calc(clamp(36rem,calc(72vw + 1.8rem),43.5rem) + 4rem);
    font-size: 11.5vw;
    line-height: .75;
    transform: none;
  }
  .leadership-copy {
    left: 14%;
    right: 14%;
    top: calc(clamp(36rem,calc(72vw + 1.8rem),43.5rem) + clamp(12.5rem,26vw,16rem) + 6rem);
    width: auto;
    padding: 0;
    background: transparent;
  }
  .leadership-copy h2 { font-size: clamp(3.5rem,7.4vw,4.65rem); }
  .leadership-copy p { max-width: 38ch; font-size: .95rem; }
  .leadership-left-meta { display: none; }
  .leadership-editorial-artboard > .leadership-actions {
    top: calc(clamp(36rem,calc(72vw + 1.8rem),43.5rem) + clamp(31.5rem,62vw,38rem) + 6rem);
    bottom: auto;
  }
}

@media (max-width: 720px) {
  .leadership-editorial { padding-top: 4.5rem; }
  .leadership-editorial-artboard { min-height: 1200px; }
  .leadership-giant-word {
    left: 50%;
    top: 2.75rem;
    width: 92%;
    height: 42%;
    transform: translateX(-50%);
  }
  .leadership-giant-word::before,
  .leadership-giant-word::after {
    font-size: clamp(10.5rem,52vw,14rem);
    line-height: .54;
    letter-spacing: -.225em;
    transform: scaleX(1.05);
    transform-origin: center top;
  }
  .leadership-portrait {
    left: 50%;
    top: 3.75rem;
    width: min(86%,23rem);
    transform: translateX(-50%);
  }
  .leadership-editorial.is-visible .leadership-portrait { transform: translateX(-50%); }
  .leadership-right-words {
    left: 1.25rem;
    top: calc(clamp(28rem,140vw,37rem) + 3rem);
    font-size: 17vw;
    line-height: .74;
    transform: none;
  }
  .leadership-copy {
    left: 1.25rem;
    right: 1.25rem;
    top: calc(clamp(28rem,140vw,37rem) + clamp(9.5rem,38vw,11rem) + 3rem);
    width: auto;
    padding: 0;
    background: transparent;
  }
  .leadership-copy h2 { font-size: clamp(2.7rem,12vw,3.55rem); line-height: .9; }
  .leadership-copy > i { margin: 1rem 0 1.2rem; }
  .leadership-copy p { max-width: 36ch; font-size: .88rem; line-height: 1.48; }
  .leadership-left-meta { display: none; }
  .leadership-actions {
    top: calc(clamp(28rem,140vw,37rem) + clamp(28.5rem,114vw,31rem) + 3rem);
    bottom: auto;
  }
}

/* Final SAAC lockup: the portrait axis sits precisely between SA and AC */
.leadership-giant-word::before,
.leadership-giant-word::after {
  top: 0;
  width: 50%;
  color: #9fc9f7;
  background: none;
  opacity: 1;
  filter: none;
  mix-blend-mode: normal;
  -webkit-background-clip: initial;
  background-clip: initial;
  -webkit-text-fill-color: currentColor;
  white-space: nowrap;
  line-height: .78;
  letter-spacing: -.17em;
  transform: none;
}
.leadership-giant-word::before {
  content: 'SA';
  left: 0;
  right: auto;
  padding-right: .18em;
  text-align: right;
}
.leadership-giant-word::after {
  content: 'AC';
  left: 50%;
  right: auto;
  padding-left: .03em;
  text-align: left;
}
@media (min-width: 981px) {
  .leadership-giant-word::before,
  .leadership-giant-word::after { font-size: clamp(11.5rem,14vw,15.75rem); }
}
@media (min-width: 721px) and (max-width: 980px) {
  .leadership-giant-word::before,
  .leadership-giant-word::after { font-size: clamp(10rem,22vw,13.5rem); }
}
@media (max-width: 720px) {
  .leadership-giant-word::before,
  .leadership-giant-word::after { font-size: clamp(6.2rem,27vw,8.2rem); }
}

/* Project-specific liquid tab bar */
@media (max-width: 980px) {
  .mobile-dock a {
    min-height: 64px;
    gap: .28rem;
    padding: .45rem .25rem .42rem;
    transform-origin: center bottom;
    transition: transform .3s cubic-bezier(.2,.9,.25,1.35), background .3s ease, box-shadow .3s ease;
  }
  .mobile-dock a span { display: none; }
  .mobile-dock a::after {
    content: '';
    order: -1;
    width: 1.15rem;
    height: 1.15rem;
    background: currentColor;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    opacity: .82;
    transition: transform .3s cubic-bezier(.2,.9,.25,1.35), opacity .25s ease;
  }
  .mobile-dock a[data-dock='home']::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 11.2 12 4l8.5 7.2'/%3E%3Cpath d='M6.2 9.7v9.1h11.6V9.7M9.5 18.8v-5.5h5v5.5'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 11.2 12 4l8.5 7.2'/%3E%3Cpath d='M6.2 9.7v9.1h11.6V9.7M9.5 18.8v-5.5h5v5.5'/%3E%3C/svg%3E");
  }
  .mobile-dock a[data-dock='cultos']::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round'%3E%3Cpath d='M4 16c2.2-1.8 4.3-1.8 6.5 0s4.3 1.8 6.5 0 3.5-1.8 3.5-1.8'/%3E%3Cpath d='M5.5 11.5c1.8-1.5 3.6-1.5 5.4 0s3.6 1.5 5.4 0 2.7-1.5 2.7-1.5'/%3E%3Ccircle cx='12' cy='6' r='1.7'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65' stroke-linecap='round'%3E%3Cpath d='M4 16c2.2-1.8 4.3-1.8 6.5 0s4.3 1.8 6.5 0 3.5-1.8 3.5-1.8'/%3E%3Cpath d='M5.5 11.5c1.8-1.5 3.6-1.5 5.4 0s3.6 1.5 5.4 0 2.7-1.5 2.7-1.5'/%3E%3Ccircle cx='12' cy='6' r='1.7'/%3E%3C/svg%3E");
  }
  .mobile-dock a[data-dock='ministerios']::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65'%3E%3Ccircle cx='12' cy='6.2' r='2.4'/%3E%3Ccircle cx='6.3' cy='16.5' r='2.4'/%3E%3Ccircle cx='17.7' cy='16.5' r='2.4'/%3E%3Cpath d='m10.7 8.3-3.1 5.9m5.7-5.9 3.1 5.9M8.7 16.5h6.6'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65'%3E%3Ccircle cx='12' cy='6.2' r='2.4'/%3E%3Ccircle cx='6.3' cy='16.5' r='2.4'/%3E%3Ccircle cx='17.7' cy='16.5' r='2.4'/%3E%3Cpath d='m10.7 8.3-3.1 5.9m5.7-5.9 3.1 5.9M8.7 16.5h6.6'/%3E%3C/svg%3E");
  }
  .mobile-dock a[data-dock='visite']::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65'%3E%3Cpath d='M19 10.2c0 5-7 10-7 10s-7-5-7-10a7 7 0 1 1 14 0Z'/%3E%3Ccircle cx='12' cy='10.2' r='2.3'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.65'%3E%3Cpath d='M19 10.2c0 5-7 10-7 10s-7-5-7-10a7 7 0 1 1 14 0Z'/%3E%3Ccircle cx='12' cy='10.2' r='2.3'/%3E%3C/svg%3E");
  }
  .mobile-dock a:active {
    background:
      radial-gradient(circle at 50% 10%,rgba(255,255,255,.3),transparent 58%),
      rgba(255,255,255,.13);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.42),
      inset 0 -8px 18px rgba(2,15,39,.18),
      0 8px 20px rgba(1,10,28,.18);
    transform: translateY(2px) scale(.93);
  }
  .mobile-dock a:active::after { opacity: 1; transform: translateY(1px) scale(.82); }
  .mobile-dock a.is-active::after { opacity: 1; transform: scale(1.08); }
}

/* SAAC remains stacked, split into two columns around Angela's axis */
.leadership-portrait { content: url('/assets/images/leaders-seated-cutout-v2.png'); }
.leadership-giant-word::before,
.leadership-giant-word::after {
  top: 0;
  width: 50%;
  color: #9fc9f7;
  white-space: pre;
  line-height: .56;
  letter-spacing: -.12em;
  transform: scaleX(1.06);
  transform-origin: center top;
}
.leadership-giant-word::before {
  content: 'S\A A';
  left: 0;
  padding: 0 .16em 0 0;
  text-align: right;
}
.leadership-giant-word::after {
  content: 'A\A C';
  display: block;
  left: 50%;
  padding: 0 0 0 .16em;
  text-align: left;
}
@media (min-width: 981px) {
  .leadership-giant-word::before { font-size: clamp(16rem,25vw,27rem); }
}
@media (min-width: 721px) and (max-width: 980px) {
  .leadership-giant-word::before { font-size: clamp(12rem,29vw,17rem); }
}
@media (max-width: 720px) {
  .leadership-giant-word::before { font-size: clamp(10.25rem,50vw,13.5rem); }
}

/* Simplified home leadership: finished artwork + editorial copy */
.leadership-simple {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: clamp(44rem, 53vw, 57rem);
  padding: clamp(5.5rem, 8vw, 8.5rem) var(--pad);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(22rem, .92fr);
  align-items: center;
  gap: clamp(3rem, 7vw, 8rem);
  overflow: hidden;
  background: var(--paper);
}
.leadership-simple__media {
  min-width: 0;
  align-self: stretch;
  display: grid;
  place-items: end center;
}
.leadership-simple__media img {
  display: block;
  width: min(100%, 49rem);
  height: 100%;
  max-height: 48rem;
  object-fit: contain;
  object-position: center bottom;
}
.leadership-simple__content {
  width: 100%;
  max-width: 40rem;
}
.leadership-simple__content .eyebrow {
  margin: 0 0 clamp(1.5rem, 2.5vw, 2.3rem);
}
.leadership-simple__content h2 {
  max-width: 9ch;
  margin: 0;
  font: 900 clamp(4.7rem, 6.6vw, 7.5rem)/.84 var(--serif);
  letter-spacing: -.075em;
}
.leadership-simple__content h2 em {
  color: var(--blue);
  font-style: normal;
}
.leadership-simple__subtitle {
  max-width: 27ch;
  margin: clamp(2rem, 3vw, 2.8rem) 0 .8rem;
  font-family: var(--serif);
  font-size: clamp(1.25rem, 1.75vw, 1.75rem);
  font-weight: 750;
  letter-spacing: -.025em;
  line-height: 1.18;
}
.leadership-simple__body {
  max-width: 46ch;
  margin: 0;
  color: #30384a;
  font-size: clamp(.98rem, 1.12vw, 1.14rem);
  line-height: 1.62;
}
.leadership-simple__actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: clamp(2rem, 3.4vw, 3rem);
}
.leadership-simple__actions .btn {
  min-width: min(100%, 15rem);
}
.leadership-simple__actions .leader-socials {
  flex: 0 0 auto;
}
.leadership-simple__actions .leader-social {
  color: var(--ink);
  background: transparent;
}
.leadership-simple__actions .leader-social:hover,
.leadership-simple__actions .leader-social:focus-visible {
  color: var(--blue);
  background: var(--lime);
  transform: translateY(-4px) scale(1.06);
}

@media (min-width: 981px) and (max-width: 1220px) {
  .leadership-simple {
    min-height: 43rem;
    grid-template-columns: minmax(0, 1fr) minmax(20rem, .9fr);
    gap: clamp(2.5rem, 5vw, 4rem);
  }
  .leadership-simple__media img { max-height: 40rem; }
  .leadership-simple__content h2 { font-size: clamp(4rem, 6.6vw, 5.2rem); }
}

@media (min-width: 721px) and (max-width: 980px) {
  .leadership-simple {
    min-height: 0;
    padding-block: 5.5rem;
    grid-template-columns: minmax(0, 1fr) minmax(19rem, .92fr);
    gap: 2.5rem;
  }
  .leadership-simple__media img {
    width: 100%;
    height: auto;
    max-height: 37rem;
  }
  .leadership-simple__content h2 {
    font-size: clamp(3.7rem, 7.6vw, 4.7rem);
  }
  .leadership-simple__subtitle { font-size: 1.2rem; }
  .leadership-simple__body { font-size: .92rem; }
  .leadership-simple__actions { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 720px) {
  .hero-slide:nth-child(3) img {
    object-position: 34% 48%;
  }
  .leadership-simple {
    min-height: 0;
    padding: 4.5rem 1.25rem 5.5rem;
    grid-template-columns: 1fr;
    gap: 3rem;
  }
  .leadership-simple__media {
    align-self: auto;
    place-items: center;
  }
  .leadership-simple__media img {
    width: min(100%, 34rem);
    height: auto;
    max-height: none;
  }
  .leadership-simple__content {
    max-width: none;
  }
  .leadership-simple__content h2 {
    max-width: 8ch;
    font-size: clamp(3.55rem, 15.2vw, 5rem);
  }
  .leadership-simple__subtitle {
    max-width: 25ch;
    margin-top: 1.75rem;
    font-size: 1.2rem;
  }
  .leadership-simple__body {
    max-width: 40ch;
    font-size: .96rem;
  }
  .leadership-simple__actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 1.2rem;
  }
  .leadership-simple__actions .btn {
    width: 100%;
  }
  .leadership-simple__actions .leader-socials a {
    width: 2.75rem;
    height: 2.75rem;
  }
}

/* Final rhythm and compact actions */
.leadership-simple {
  min-height: 0;
  padding-bottom: 0;
}
.visit-info > .btn {
  width: auto;
  min-width: 0;
  justify-content: flex-start;
  gap: .45rem;
  margin-right: clamp(1.4rem, 3vw, 2.5rem);
}
.visit-info > .btn:last-of-type { margin-right: 0; }

@media (min-width: 721px) and (max-width: 980px) {
  .leadership-simple { padding-bottom: 0; }
}

@media (max-width: 720px) {
  .leadership-simple {
    margin-top: -7rem;
    padding-top: 2.5rem;
    padding-bottom: 0;
    gap: 1.5rem;
  }
  .story-scroll {
    padding-bottom: 0;
  }
  .story-panel {
    min-height: 0;
    grid-template-rows: minmax(240px, 38svh) auto;
  }
  .story-panel-copy {
    padding-bottom: 2.75rem;
  }
  .leadership-simple__content .eyebrow {
    margin-bottom: 1.15rem;
  }
  .visit-info > .btn {
    width: auto;
    margin-right: 1.5rem;
  }
  .visit-info > .btn:first-of-type,
  .visit-info > .btn:nth-of-type(2) {
    width: max-content;
  }
  .visit-info > .btn:first-of-type { margin-right: 1.5rem; }
  .visit-info > .btn:nth-of-type(2) { margin-right: 0; }
}

/* Reference-led Liquid Glass dock for phone and tablet */
@media (max-width: 980px) {
  .mobile-dock {
    left: 50%;
    right: auto;
    bottom: calc(.72rem + env(safe-area-inset-bottom));
    width: min(calc(100% - 1.6rem), 44rem);
    min-height: 72px;
    padding: .34rem;
    overflow: hidden;
    border: 1px solid rgba(226,244,255,.24);
    border-radius: 1.75rem;
    background:
      linear-gradient(118deg, rgba(214,239,255,.14), rgba(26,76,137,.11) 42%, rgba(132,193,255,.08) 72%, rgba(4,23,50,.16)),
      rgba(4,25,58,.2);
    box-shadow:
      0 20px 48px rgba(1,12,33,.28),
      0 5px 16px rgba(1,12,33,.18),
      inset 0 1px 0 rgba(255,255,255,.46),
      inset 0 -1px 0 rgba(158,205,255,.14),
      inset 8px 0 22px rgba(183,225,255,.06),
      inset -10px 0 24px rgba(4,21,48,.1);
    -webkit-backdrop-filter: blur(30px) saturate(185%) brightness(1.08);
    backdrop-filter: blur(30px) saturate(185%) brightness(1.08);
    transform: translateX(-50%);
  }
  .mobile-dock::before {
    inset: 1px;
    z-index: 0;
    border-radius: calc(1.75rem - 1px);
    background:
      radial-gradient(80% 65% at 17% -10%, rgba(255,255,255,.3), transparent 58%),
      radial-gradient(52% 80% at 96% 115%, rgba(120,192,255,.18), transparent 70%),
      linear-gradient(102deg, transparent 8%, rgba(255,255,255,.055) 45%, transparent 72%);
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.045),
      inset 0 10px 26px rgba(255,255,255,.025);
  }
  .mobile-dock::after {
    z-index: 3;
    top: 1px;
    left: 9%;
    width: 44%;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.86) 48%, transparent);
    filter: blur(.25px);
    opacity: .6;
  }
  .mobile-dock a {
    z-index: 1;
    min-height: 62px;
    padding: .42rem .2rem .38rem;
    gap: .26rem;
    border-radius: 1.38rem;
    color: rgba(244,249,255,.76);
    background: transparent;
    box-shadow: none;
    transform: none;
    transition:
      transform .28s cubic-bezier(.2,.9,.25,1.35),
      color .25s ease,
      filter .25s ease;
  }
  .mobile-dock a::before {
    content: '';
    position: absolute;
    z-index: -1;
    inset: .14rem;
    width: auto;
    height: auto;
    border-radius: 1.22rem;
    background:
      radial-gradient(80% 90% at 25% 0%, rgba(255,255,255,.23), transparent 55%),
      linear-gradient(155deg, rgba(190,226,255,.16), rgba(8,39,78,.18) 56%, rgba(255,255,255,.08));
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.42),
      inset 0 -1px 0 rgba(129,187,241,.13),
      inset 0 -10px 20px rgba(2,18,42,.1),
      0 8px 20px rgba(1,14,34,.14);
    opacity: 0;
    transform: scale(.86);
    transition: opacity .3s ease, transform .38s cubic-bezier(.2,.9,.25,1.25);
    pointer-events: none;
  }
  .mobile-dock a.is-active::before {
    right: .14rem;
    opacity: 1;
    transform: scale(1);
  }
  .mobile-dock a::after {
    position: relative;
    z-index: 1;
    width: 1.18rem;
    height: 1.18rem;
    color: inherit;
    opacity: .78;
    filter: drop-shadow(0 1px 4px rgba(0,0,0,.2));
  }
  .mobile-dock a strong {
    position: relative;
    z-index: 1;
    color: rgba(247,251,255,.72);
    font-size: .52rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-shadow: 0 1px 8px rgba(0,0,0,.18);
  }
  .mobile-dock .dock-primary strong {
    color: rgba(247,251,255,.72);
  }
  .mobile-dock a.is-active {
    color: #fff;
    filter: brightness(1.08);
  }
  .mobile-dock a.is-active strong {
    color: #fff;
  }
  .mobile-dock .dock-primary.is-active strong {
    color: #fff;
  }
  .mobile-dock a.is-active::after {
    opacity: 1;
    transform: scale(1.08);
  }
  .mobile-dock a:active {
    background: transparent;
    box-shadow: none;
    transform: translateY(1px) scale(.94);
  }
  .mobile-dock a:active::before {
    right: .14rem;
    opacity: 1;
    transform: scale(.94);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.52),
      inset 0 -12px 22px rgba(1,14,34,.16),
      0 5px 14px rgba(1,12,30,.12);
  }
}

@media (min-width: 721px) and (max-width: 980px) {
  .mobile-dock {
    width: min(calc(100% - 3rem), 44rem);
    bottom: calc(1rem + env(safe-area-inset-bottom));
  }
}

/* Slim, fully rounded glass capsule */
@media (max-width: 980px) {
  .mobile-dock {
    width: min(calc(100% - 3rem), 38rem);
    min-height: 62px;
    padding: .25rem;
    border-color: rgba(226,244,255,.18);
    border-radius: 999px;
    background:
      linear-gradient(112deg, rgba(222,242,255,.08), rgba(40,91,148,.055) 46%, rgba(135,194,245,.045) 75%, rgba(5,24,49,.08)),
      rgba(5,27,56,.12);
    box-shadow:
      0 13px 30px rgba(1,12,31,.18),
      0 3px 10px rgba(1,12,31,.1),
      inset 0 1px 0 rgba(255,255,255,.34),
      inset 0 -1px 0 rgba(157,205,249,.09),
      inset 7px 0 18px rgba(195,229,255,.035),
      inset -8px 0 20px rgba(3,20,43,.055);
    -webkit-backdrop-filter: blur(16px) saturate(150%) brightness(1.035);
    backdrop-filter: blur(16px) saturate(150%) brightness(1.035);
  }
  .mobile-dock::before {
    border-radius: 999px;
    background:
      radial-gradient(74% 62% at 16% -12%, rgba(255,255,255,.2), transparent 60%),
      radial-gradient(48% 74% at 96% 112%, rgba(127,190,244,.1), transparent 72%),
      linear-gradient(102deg, transparent 10%, rgba(255,255,255,.035) 48%, transparent 74%);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
  }
  .mobile-dock::after {
    left: 11%;
    width: 36%;
    height: 1px;
    opacity: .48;
  }
  .mobile-dock a {
    min-height: 52px;
    padding: .32rem .16rem .3rem;
    gap: .2rem;
    border-radius: 999px;
  }
  .mobile-dock a::before {
    inset: .08rem;
    border-radius: 999px;
    background:
      radial-gradient(78% 86% at 24% 0%, rgba(255,255,255,.16), transparent 58%),
      linear-gradient(158deg, rgba(200,230,253,.1), rgba(8,39,76,.12) 58%, rgba(255,255,255,.045));
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.3),
      inset 0 -1px 0 rgba(130,184,232,.08),
      inset 0 -7px 15px rgba(2,18,40,.065),
      0 5px 13px rgba(1,14,32,.08);
  }
  .mobile-dock a.is-active::before,
  .mobile-dock a:active::before {
    right: .08rem;
  }
  .mobile-dock a::after {
    width: 1.08rem;
    height: 1.08rem;
  }
  .mobile-dock a strong {
    font-size: .49rem;
  }
}

@media (max-width: 720px) {
  .mobile-dock {
    width: min(calc(100% - 3.1rem), 34rem);
  }
}

@media (min-width: 721px) and (max-width: 980px) {
  .mobile-dock {
    width: min(calc(100% - 7rem), 38rem);
  }
}

/* Compact floating capsule: navigation remains a detail, not a panel */
@media (max-width: 980px) {
  .mobile-dock {
    min-height: 46px;
    padding: .18rem;
    bottom: calc(1rem + env(safe-area-inset-bottom));
    border-color: rgba(232,247,255,.24);
    background:
      linear-gradient(112deg, rgba(230,246,255,.095), rgba(38,86,139,.05) 48%, rgba(6,27,54,.075)),
      rgba(7,30,59,.105);
    box-shadow:
      0 22px 32px -12px rgba(1,10,27,.46),
      0 9px 18px -8px rgba(1,10,27,.34),
      0 1px 2px rgba(255,255,255,.12),
      inset 0 1px 0 rgba(255,255,255,.44),
      inset 0 -1px 0 rgba(145,199,247,.12),
      inset 7px 0 16px rgba(202,232,255,.035),
      inset -8px 0 18px rgba(3,19,40,.05);
    -webkit-backdrop-filter: blur(13px) saturate(145%) brightness(1.035);
    backdrop-filter: blur(13px) saturate(145%) brightness(1.035);
  }
  .mobile-dock::before {
    background:
      radial-gradient(72% 72% at 18% -18%, rgba(255,255,255,.25), transparent 58%),
      radial-gradient(44% 78% at 96% 116%, rgba(127,190,244,.09), transparent 72%),
      linear-gradient(102deg, transparent 10%, rgba(255,255,255,.045) 48%, transparent 74%);
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.035),
      inset 0 -8px 14px rgba(4,20,42,.035);
  }
  .mobile-dock::after {
    top: 1px;
    height: 1px;
    opacity: .68;
  }
  .mobile-dock a {
    min-height: 38px;
    padding: .18rem .12rem .16rem;
    gap: .08rem;
  }
  .mobile-dock a::before {
    inset: .05rem;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.34),
      inset 0 -1px 0 rgba(130,184,232,.08),
      inset 0 -6px 12px rgba(2,18,40,.06),
      0 7px 14px -6px rgba(1,12,30,.28);
  }
  .mobile-dock a.is-active::before,
  .mobile-dock a:active::before {
    right: .05rem;
  }
  .mobile-dock a::after {
    width: .92rem;
    height: .92rem;
  }
  .mobile-dock a strong {
    font-size: .43rem;
    line-height: 1;
  }
}

@media (max-width: 720px) {
  .mobile-dock {
    width: min(calc(100% - 4.25rem), 30.5rem);
  }
}

@media (min-width: 721px) and (max-width: 980px) {
  .mobile-dock {
    width: min(calc(100% - 11rem), 34rem);
  }
}

/* Inner pages: editorial system aligned with the Home direction */
.page-hero--editorial {
  min-height: 92svh;
  align-items: stretch;
  isolation: isolate;
  background: #07152d;
}
.page-hero--editorial::after { display: none; }
.page-hero-media { position: absolute; inset: 0; z-index: -3; margin: 0; overflow: hidden; }
.page-hero--editorial .page-hero-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.035); animation: innerHeroDrift 14s ease-out both; }
@keyframes innerHeroDrift { to { transform: scale(1.1) translate3d(-1%, -.5%, 0); } }
.page-hero-shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(2,13,34,.94) 0%, rgba(4,25,59,.72) 44%, rgba(4,24,56,.15) 78%), linear-gradient(0deg, rgba(2,12,31,.76), transparent 62%); }
.page-hero--editorial::before { display: none; }
.page-hero-layout { position: relative; z-index: 2; width: 100%; min-height: 92svh; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 3rem; padding-top: 10rem; padding-bottom: clamp(6.5rem, 9vw, 9rem); }
.page-hero-copy { max-width: 62rem; }
.page-hero--editorial .display { max-width: 10ch; font-size: clamp(4.2rem, 8.5vw, 10rem); }
.page-hero--editorial .display--visit { max-width: 13ch; font-size: clamp(4.2rem, 7vw, 8rem); }
.page-hero--editorial .display--give { max-width: 14ch; font-size: clamp(4.2rem, 6.8vw, 8.3rem); }
.display--visit > span, .display--give > span { display: block; white-space: nowrap; }
.keep-together { white-space: nowrap; }
.page-hero-media img[src$="contribute-volunteers.jpg"] { object-position: center top !important; }
.page-hero--editorial .hero-support { max-width: 38rem; margin-top: 1.8rem; color: rgba(255,255,255,.82); font-size: clamp(1rem,1.45vw,1.3rem); }
.page-hero-index { align-self: end; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.28); font: 900 clamp(10rem, 22vw, 26rem)/.64 var(--serif); letter-spacing: -.12em; transform: translateY(.06em); }
.page-hero-foot { position: absolute; z-index: 3; left: var(--pad); right: var(--pad); bottom: 1.35rem; display: flex; justify-content: space-between; padding-top: .9rem; border-top: 1px solid rgba(255,255,255,.24); color: rgba(255,255,255,.58); font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }

.editorial-opening { padding-block: clamp(6rem, 11vw, 11rem); background: var(--paper); }
.editorial-opening__grid { display: grid; grid-template-columns: .38fr 1.12fr .75fr; gap: clamp(2rem, 5vw, 6rem); align-items: start; }
.editorial-opening__grid h2 { margin: 0; font: 800 clamp(3rem, 6.3vw, 7.2rem)/.9 var(--serif); letter-spacing: -.068em; }
.editorial-opening__grid h2 em { color: var(--blue); font-style: normal; }
.editorial-opening__copy { max-width: 31rem; margin: .3rem 0 0; color: var(--muted); font-size: clamp(1rem,1.25vw,1.18rem); }

.chapter-sequence { color: #fff; background: var(--ink); }
.history-chapter { min-height: 82svh; display: grid; grid-template-columns: 1.08fr .92fr; border-bottom: 1px solid rgba(255,255,255,.16); }
.history-chapter--reverse .history-chapter__media { order: 2; }
.history-chapter__media { position: relative; min-height: 650px; overflow: hidden; }
.history-chapter__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(3,14,36,.34), transparent 55%); }
.history-chapter__media img { width: 100%; height: 100%; object-fit: cover; }
.history-chapter__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem,7vw,8rem); }
.history-chapter__copy > span,
.content-channel__copy > span { color: var(--lime); font-size: .68rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.history-chapter__copy h3 { max-width: 9ch; margin: 1.4rem 0 2rem; font: 800 clamp(3rem,5.5vw,6.5rem)/.9 var(--serif); letter-spacing: -.065em; }
.history-chapter__copy p { max-width: 34rem; margin: 0; color: rgba(255,255,255,.72); font-size: clamp(1rem,1.25vw,1.15rem); }

.belief-manifesto { padding-block: clamp(7rem, 12vw, 12rem); background: var(--sky); }
.belief-manifesto__heading { display: grid; grid-template-columns: .45fr 1.55fr; gap: 3rem; margin-bottom: clamp(4rem,8vw,8rem); }
.belief-manifesto__heading h2 { max-width: 13ch; margin: 0; font: 800 clamp(3rem,6vw,7rem)/.9 var(--serif); letter-spacing: -.065em; }
.belief-manifesto__heading h2 em { color: var(--blue); font-style: normal; }
.belief-statement { display: grid; grid-template-columns: minmax(90px,.3fr) .65fr 1.35fr; gap: clamp(1.5rem,4vw,5rem); align-items: start; width: min(100%, var(--max)); margin-inline: auto; padding: clamp(2.5rem,4vw,4.5rem) var(--pad); border-top: 1px solid rgba(16,21,18,.3); }
.belief-statement > span { color: var(--blue); font-size: .7rem; font-weight: 800; letter-spacing: .15em; }
.belief-statement h3 { margin: -.15em 0 0; font: 800 clamp(2.5rem,4.5vw,5.2rem)/.9 var(--serif); letter-spacing: -.06em; }
.belief-statement p { max-width: 47rem; margin: 0; font-size: clamp(1rem,1.35vw,1.22rem); }
.value-stream { width: min(100%, var(--max)); margin: clamp(5rem,9vw,9rem) auto 0; padding-inline: var(--pad); }
.value-stream > .eyebrow { margin-bottom: 2rem; }
.value-stream__line { display: grid; grid-template-columns: .22fr .7fr 1.08fr; gap: 2rem; align-items: baseline; padding: 1.65rem 0; border-top: 1px solid rgba(16,21,18,.26); }
.value-stream__line > span { color: var(--blue); font-size: .68rem; font-weight: 800; }
.value-stream__line strong { font: 800 clamp(2rem,4vw,4.4rem)/1 var(--serif); letter-spacing: -.05em; }
.value-stream__line p { margin: 0; color: rgba(16,21,18,.72); }

.page-closer { min-height: 78svh; display: grid; grid-template-columns: 1.15fr .85fr; color: #fff; background: var(--blue); }
.page-closer figure { min-height: 620px; margin: 0; overflow: hidden; }
.page-closer figure img { width: 100%; height: 100%; object-fit: cover; }
.page-closer__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem,7vw,8rem); }
.page-closer__copy h2 { max-width: 9ch; margin: 0; font: 800 clamp(3rem,5.5vw,6.5rem)/.9 var(--serif); letter-spacing: -.065em; }
.page-closer__copy h2 em { color: var(--lime); font-style: normal; }
.page-closer__copy > p:not(.eyebrow) { max-width: 30rem; margin: 2rem 0; color: rgba(255,255,255,.76); }
.page-closer__copy .btn { align-self: flex-start; }

.leader-feature { min-height: 88svh; display: grid; grid-template-columns: 1fr 1fr; }
.leader-feature--reverse .leader-feature__photo { order: 2; }
.leader-feature__photo { min-height: 720px; margin: 0; overflow: hidden; background: var(--paper-strong); }
.leader-feature__photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; }
.leader-feature__copy { position: relative; display: flex; flex-direction: column; justify-content: center; overflow: hidden; padding: clamp(4rem,8vw,9rem); background: var(--lime); }
.leader-feature__copy--blue { color: #fff; background: var(--blue); }
.leader-feature__number { position: absolute; right: -.04em; bottom: -.12em; color: transparent; -webkit-text-stroke: 1px rgba(16,21,18,.16); font: 900 clamp(13rem,25vw,29rem)/.65 var(--serif); letter-spacing: -.1em; }
.leader-feature__copy--blue .leader-feature__number { -webkit-text-stroke-color: rgba(255,255,255,.18); }
.leader-feature__copy > *:not(.leader-feature__number) { position: relative; z-index: 1; }
.leader-feature__copy h2 { margin: 0 0 2rem; font: 900 clamp(4rem,8vw,9rem)/.78 var(--serif); letter-spacing: -.08em; }
.leader-feature__copy > p:not(.eyebrow) { max-width: 34rem; margin: 0; font-size: clamp(1.05rem,1.35vw,1.25rem); }
.leader-feature__copy--blue > p:not(.eyebrow) { color: rgba(255,255,255,.76); }
.leader-feature__links { display: flex; flex-wrap: wrap; gap: 1.2rem 2.5rem; margin-top: 3rem; }
.leader-feature__links a { padding-bottom: .35rem; border-bottom: 1px solid currentColor; font-size: .68rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.leadership-principle { padding-block: clamp(7rem,12vw,12rem); color: #fff; background: var(--ink); }
.leadership-principle blockquote { max-width: 13ch; margin: 1.5rem 0 2.5rem; font: 800 clamp(3.5rem,7vw,8.4rem)/.86 var(--serif); letter-spacing: -.07em; }
.leadership-principle > .container > p:not(.eyebrow) { max-width: 39rem; color: rgba(255,255,255,.7); font-size: clamp(1.05rem,1.4vw,1.3rem); }
.leadership-principle .btn { margin-top: 2rem; }

.ministry-directory-editorial { padding-block: clamp(4rem,8vw,8rem); background: var(--paper); }
.ministry-directory-editorial__heading { display: flex; justify-content: space-between; gap: 2rem; align-items: baseline; padding-bottom: 1.2rem; border-bottom: 1px solid var(--line); }
.ministry-directory-editorial__heading > span { color: var(--muted); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.ministry-entry { position: relative; width: 100%; min-height: 150px; display: grid; grid-template-columns: .22fr .5fr .85fr 1fr auto; gap: clamp(1rem,3vw,4rem); align-items: center; padding: 1.5rem 0; border: 0; border-bottom: 1px solid var(--line); color: var(--ink); background: transparent; text-align: left; cursor: pointer; transition: padding .4s var(--ease), background .35s; }
.ministry-entry::before { content: ''; position: absolute; inset: 0 calc(var(--pad) * -1); z-index: -1; background: var(--accent); transform: scaleY(0); transform-origin: bottom; transition: transform .45s var(--ease); }
.ministry-entry:hover::before, .ministry-entry:focus-visible::before { transform: scaleY(1); }
.ministry-entry:hover, .ministry-entry:focus-visible { padding-inline: 1rem; outline: none; }
.ministry-entry__index, .ministry-entry__type { font-size: .65rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.ministry-entry__index { color: var(--blue); }
.ministry-entry__copy { max-width: 24rem; color: var(--muted); }
.ministry-entry__arrow { font-size: 1.6rem; transition: transform .35s var(--ease); }
.ministry-entry:hover .ministry-entry__arrow, .ministry-entry:focus-visible .ministry-entry__arrow { transform: translate(4px,-4px); }
.ministry-entry .ministry-mark { width: 132px; height: 66px; }
.ministry-next-step { min-height: 82svh; display: grid; grid-template-columns: 1.1fr .9fr; background: var(--sky); }
.ministry-next-step figure { min-height: 640px; margin: 0; overflow: hidden; }
.ministry-next-step figure img { width: 100%; height: 100%; object-fit: cover; }
.ministry-next-step > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem,7vw,8rem); }
.ministry-next-step h2 { max-width: 10ch; margin: 0; font: 800 clamp(3rem,5.5vw,6.5rem)/.9 var(--serif); letter-spacing: -.065em; }
.ministry-next-step h2 em { color: var(--blue); font-style: normal; }
.ministry-next-step > div > p:not(.eyebrow) { max-width: 34rem; margin: 2rem 0; }
.ministry-next-step .btn { align-self: flex-start; }

.steps-path { padding-block: clamp(7rem,12vw,12rem); color: #fff; background: var(--blue); }
.steps-path__heading { display: grid; grid-template-columns: .45fr 1.55fr; gap: 3rem; margin-bottom: clamp(4rem,7vw,7rem); }
.steps-path__heading h2 { max-width: 11ch; margin: 0; font: 800 clamp(3.5rem,7vw,8rem)/.86 var(--serif); letter-spacing: -.07em; }
.steps-path__heading h2 em { color: var(--lime); font-style: normal; }
.steps-path ol { margin: 0; padding: 0; list-style: none; }
.steps-path li { display: grid; grid-template-columns: .3fr 1.7fr; gap: 3rem; padding: clamp(2rem,4vw,4rem) 0; border-top: 1px solid rgba(255,255,255,.22); }
.steps-path li > span { color: var(--lime); font-size: .72rem; font-weight: 800; letter-spacing: .14em; }
.steps-path li > div { display: grid; grid-template-columns: .55fr .95fr 1fr; gap: clamp(1.5rem,4vw,5rem); align-items: start; }
.steps-path li .eyebrow { margin: .25rem 0 0; }
.steps-path li h3 { margin: 0; font: 800 clamp(2.2rem,4vw,4.6rem)/.92 var(--serif); letter-spacing: -.055em; }
.steps-path li > div > p:last-child { max-width: 35rem; margin: .25rem 0 0; color: rgba(255,255,255,.72); }
.steps-companion { min-height: 80svh; display: grid; grid-template-columns: 1fr 1fr; color: var(--ink); background: var(--coral); }
.steps-companion figure { min-height: 640px; margin: 0; overflow: hidden; }
.steps-companion figure img { width: 100%; height: 100%; object-fit: cover; }
.steps-companion > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem,7vw,8rem); }
.steps-companion h2 { max-width: 11ch; margin: 0; font: 800 clamp(3rem,5.5vw,6.4rem)/.9 var(--serif); letter-spacing: -.065em; }
.steps-companion h2 em { color: var(--blue); font-style: normal; }
.steps-companion > div > p:not(.eyebrow) { max-width: 34rem; margin: 2rem 0; }
.steps-companion .btn { align-self: flex-start; }

.content-channel { min-height: 86svh; display: grid; grid-template-columns: 1.1fr .9fr; background: var(--paper); border-top: 1px solid var(--line); }
.content-channel--reverse figure { order: 2; }
.content-channel figure { min-height: 680px; margin: 0; overflow: hidden; }
.content-channel figure img { width: 100%; height: 100%; object-fit: cover; }
.content-channel__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem,7vw,8rem); }
.content-channel__copy > span { color: var(--blue); }
.content-channel__copy h2 { max-width: 10ch; margin: 1.5rem 0 2rem; font: 800 clamp(3.2rem,5.8vw,6.8rem)/.88 var(--serif); letter-spacing: -.068em; }
.content-channel__copy h2 em { color: var(--blue); font-style: normal; }
.content-channel__copy > p { max-width: 34rem; margin: 0 0 2rem; color: var(--muted); }
.text-link { display: inline-flex; width: max-content; align-items: center; gap: 2rem; padding: .75rem 0; border-bottom: 1px solid currentColor; font-size: .68rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.text-link span { font-size: 1.1rem; }
.content-rhythm { padding-block: clamp(7rem,12vw,12rem); color: #fff; background: var(--ink); }
.content-rhythm .container { display: grid; grid-template-columns: .4fr 1fr .7fr; gap: clamp(2rem,6vw,8rem); align-items: start; }
.content-rhythm blockquote { margin: 0; font: 800 clamp(3.4rem,6.5vw,7.6rem)/.87 var(--serif); letter-spacing: -.07em; }
.content-rhythm .container > div p { margin: .25rem 0 2rem; color: rgba(255,255,255,.7); }

.giving-editorial { min-height: 82svh; display: grid; grid-template-columns: .92fr 1.08fr; background: var(--lime); }
.giving-editorial__intro, .giving-editorial__data { min-width: 0; display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem,7vw,8rem); }
.giving-editorial__intro { border-right: 1px solid rgba(16,21,18,.24); }
.giving-editorial__intro h2 { margin: 0; font: 800 clamp(3.5rem,7vw,8rem)/.84 var(--serif); letter-spacing: -.075em; }
.giving-editorial__intro > p:not(.eyebrow) { max-width: 28rem; margin: 2rem 0 0; }
.giving-editorial__data .pix-label { font-size: .7rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.giving-editorial__data .pix-key { max-width: 100%; margin: 1rem 0 2rem; font: 800 clamp(2rem,3vw,3.8rem)/1 var(--serif); letter-spacing: -.045em; white-space: nowrap; }
.giving-editorial__data .btn { align-self: flex-start; }
.giving-bank-row { display: grid; grid-template-columns: 1fr auto; gap: 2rem; padding: 1.2rem 0; border-top: 1px solid rgba(16,21,18,.28); }
.giving-bank-row:first-of-type { margin-top: 3rem; }
.giving-bank-row span { color: rgba(16,21,18,.64); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.giving-bank-row strong { font-size: 1.15rem; }
.giving-principles { padding-block: clamp(7rem,11vw,11rem); background: var(--paper); }
.giving-principles__line { display: grid; grid-template-columns: .25fr .75fr 1fr; gap: 3rem; align-items: baseline; padding: 2.25rem 0; border-top: 1px solid var(--line); }
.giving-principles__line > span { color: var(--blue); font-size: .68rem; font-weight: 800; }
.giving-principles__line h3 { margin: 0; font: 800 clamp(2.2rem,4vw,4.4rem)/1 var(--serif); letter-spacing: -.055em; }
.giving-principles__line p { max-width: 34rem; margin: 0; color: var(--muted); }
.giving-principles .text-link { margin-top: 3rem; }

.visit-arrival { min-height: 90svh; display: grid; grid-template-columns: .86fr 1.14fr; background: var(--sky); }
.visit-arrival__info { display: flex; flex-direction: column; justify-content: center; padding: clamp(4rem,7vw,8rem); }
.visit-arrival__info h2 { margin: 0; font: 900 clamp(4.5rem,8vw,9rem)/.78 var(--serif); letter-spacing: -.08em; }
.visit-arrival__address { margin: 2.5rem 0; font-size: clamp(1.2rem,1.8vw,1.65rem); line-height: 1.35; }
.visit-schedule { margin-bottom: 2.5rem; border-top: 1px solid rgba(16,21,18,.28); }
.visit-schedule span { display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: baseline; padding: 1rem 0; border-bottom: 1px solid rgba(16,21,18,.28); }
.visit-schedule small { font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.visit-schedule strong { font: 800 clamp(1.3rem,2.2vw,2.2rem)/1 var(--serif); }
.visit-arrival__info .btn { align-self: flex-start; }
.visit-arrival__map { position: relative; min-height: 760px; overflow: hidden; padding: clamp(1rem,2vw,2rem); background: var(--blue); }
.visit-arrival__map .map-art { height: 100%; min-height: 700px; }
.arrival-expect { padding-block: clamp(7rem,11vw,11rem); background: var(--paper); }
.arrival-expect__heading { display: grid; grid-template-columns: .4fr 1.6fr; gap: 3rem; margin-bottom: 5rem; }
.arrival-expect__heading h2 { max-width: 17ch; margin: 0; font: 800 clamp(3rem,6vw,7rem)/.9 var(--serif); letter-spacing: -.065em; }
.arrival-expect__heading h2 em { color: var(--blue); font-style: normal; }
.arrival-expect__heading h2 > span, .arrival-expect__heading h2 > em { display: block; }
.arrival-expect__line { display: grid; grid-template-columns: .24fr .76fr 1fr; gap: 3rem; align-items: baseline; padding: 2.2rem 0; border-top: 1px solid var(--line); }
.arrival-expect__line > span { color: var(--blue); font-size: .68rem; font-weight: 800; }
.arrival-expect__line h3 { margin: 0; font: 800 clamp(2.2rem,4vw,4.4rem)/1 var(--serif); letter-spacing: -.055em; }
.arrival-expect__line p { max-width: 36rem; margin: 0; color: var(--muted); }
.contact-editorial { display: grid; grid-template-columns: 1fr 1fr; color: #fff; background: var(--blue); }
.contact-editorial__intro, .contact-form--editorial { padding: clamp(4rem,8vw,9rem); }
.contact-editorial__intro { display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(255,255,255,.2); }
.contact-editorial__intro h2 { max-width: 10ch; margin: 0; font: 800 clamp(3.2rem,5.7vw,6.8rem)/.89 var(--serif); letter-spacing: -.068em; }
.contact-editorial__intro h2 em { color: var(--lime); font-style: normal; }
.contact-editorial__intro > p:not(.eyebrow) { max-width: 32rem; margin: 2rem 0; color: rgba(255,255,255,.74); }
.contact-editorial__intro .btn { align-self: flex-start; }
.contact-form--editorial { align-content: center; background: var(--sky); color: var(--ink); }

@media (max-width: 980px) {
  .page-hero--editorial, .page-hero-layout { min-height: 82svh; }
  .page-hero-layout { grid-template-columns: 1fr auto; padding-top: 8rem; padding-bottom: 6.5rem; }
  .page-hero--editorial .display { font-size: clamp(3.7rem,10vw,7rem); }
  .page-hero-index { font-size: clamp(8rem,22vw,13rem); }
  .editorial-opening__grid { grid-template-columns: .35fr 1.1fr; }
  .editorial-opening__copy { grid-column: 2; }
  .history-chapter, .leader-feature, .ministry-next-step, .steps-companion, .content-channel, .giving-editorial, .visit-arrival, .contact-editorial { grid-template-columns: 1fr 1fr; }
  .history-chapter__media, .leader-feature__photo, .ministry-next-step figure, .steps-companion figure, .content-channel figure { min-height: 560px; }
  .history-chapter__copy, .leader-feature__copy, .ministry-next-step > div, .steps-companion > div, .content-channel__copy { padding: 3.25rem; }
  .belief-statement { grid-template-columns: .2fr .6fr 1.2fr; }
  .ministry-entry { grid-template-columns: .18fr .4fr .72fr 1fr auto; }
  .steps-path li > div { grid-template-columns: .45fr .8fr 1fr; }
  .content-rhythm .container { grid-template-columns: .35fr 1fr; }
  .content-rhythm .container > div { grid-column: 2; }
  .visit-arrival__map { min-height: 650px; }
  .visit-arrival__map .map-art { min-height: 590px; }
}

@media (max-width: 720px) {
  .page-hero--editorial, .page-hero-layout { min-height: 78svh; }
  .page-hero-shade { background: linear-gradient(90deg, rgba(2,13,34,.92), rgba(4,25,59,.46)), linear-gradient(0deg, rgba(2,12,31,.9), transparent 70%); }
  .page-hero-layout { display: block; padding-top: 9rem; padding-bottom: 6rem; }
  .page-hero-copy { position: absolute; left: var(--pad); right: var(--pad); bottom: 5rem; }
  .page-hero--editorial .display { max-width: 9ch; font-size: clamp(3.45rem,15.5vw,5rem); }
  .page-hero--editorial .display--visit { max-width: none; font-size: clamp(2.75rem,11.8vw,3.55rem); }
  .page-hero--editorial .display--give { max-width: none; font-size: clamp(2.15rem,8.8vw,3.1rem); }
  .display--give > span:last-child { white-space: normal; }
  .page-hero--editorial .hero-support { max-width: 31ch; margin-top: 1.25rem; font-size: .98rem; }
  .page-hero-index { position: absolute; right: -.05em; bottom: .2em; z-index: -1; font-size: 9.5rem; opacity: .7; }
  .page-hero-foot { bottom: 1rem; }
  .page-hero-foot span:first-child { display: none; }
  .page-hero-foot { justify-content: flex-end; }
  .editorial-opening { padding-block: 5.5rem; }
  .editorial-opening__grid { display: block; }
  .editorial-opening__grid h2 { font-size: clamp(2.8rem,13vw,4.4rem); }
  .editorial-opening__copy { margin-top: 2rem; }
  .history-chapter, .history-chapter--reverse, .leader-feature, .leader-feature--reverse, .ministry-next-step, .steps-companion, .content-channel, .content-channel--reverse, .giving-editorial, .visit-arrival, .contact-editorial, .page-closer { min-height: 0; grid-template-columns: 1fr; }
  .history-chapter--reverse .history-chapter__media, .leader-feature--reverse .leader-feature__photo, .content-channel--reverse figure { order: 0; }
  .history-chapter__media, .leader-feature__photo, .ministry-next-step figure, .steps-companion figure, .content-channel figure, .page-closer figure { min-height: 68svh; }
  .history-chapter__copy, .leader-feature__copy, .ministry-next-step > div, .steps-companion > div, .content-channel__copy, .page-closer__copy { padding: 4.5rem var(--pad); }
  .history-chapter__copy h3, .leader-feature__copy h2, .ministry-next-step h2, .steps-companion h2, .content-channel__copy h2, .page-closer__copy h2 { font-size: clamp(3rem,13vw,4.7rem); }
  .belief-manifesto__heading, .steps-path__heading, .arrival-expect__heading { display: block; }
  .belief-manifesto__heading h2, .steps-path__heading h2, .arrival-expect__heading h2 { margin-top: 1rem; font-size: clamp(3rem,13vw,4.7rem); }
  .belief-statement { grid-template-columns: .18fr 1fr; gap: 1.2rem; }
  .belief-statement h3 { font-size: 2.7rem; }
  .belief-statement p { grid-column: 2; }
  .value-stream__line, .giving-principles__line, .arrival-expect__line { grid-template-columns: .18fr 1fr; gap: 1rem; }
  .value-stream__line p, .giving-principles__line p, .arrival-expect__line p { grid-column: 2; }
  .value-stream__line strong, .giving-principles__line h3, .arrival-expect__line h3 { font-size: 2.6rem; }
  .page-closer figure { min-height: 56svh; }
  .leader-feature__number { font-size: 14rem; }
  .leadership-principle blockquote { font-size: clamp(3rem,13vw,5rem); }
  .ministry-directory-editorial { padding-block: 3rem 5rem; }
  .ministry-directory-editorial__heading { display: block; }
  .ministry-entry { min-height: 128px; grid-template-columns: .18fr 1fr auto; grid-template-areas: 'index logo arrow' 'type copy arrow'; gap: .45rem 1rem; }
  .ministry-entry__index { grid-area: index; }
  .ministry-entry__type { grid-area: type; }
  .ministry-entry .ministry-logo, .ministry-entry .ministry-mark { grid-area: logo; width: 105px; height: 52px; }
  .ministry-entry__copy { grid-area: copy; font-size: .82rem; }
  .ministry-entry__arrow { grid-area: arrow; }
  .steps-path { padding-block: 5.5rem; }
  .steps-path li { grid-template-columns: .18fr 1fr; gap: 1rem; padding: 2.5rem 0; }
  .steps-path li > div { display: block; }
  .steps-path li h3 { margin: .5rem 0 1rem; font-size: 2.8rem; }
  .content-rhythm .container { display: block; }
  .content-rhythm blockquote { margin: 1rem 0 2rem; font-size: clamp(3rem,13vw,4.8rem); }
  .giving-editorial__intro, .giving-editorial__data, .visit-arrival__info, .contact-editorial__intro, .contact-form--editorial { padding: 4.5rem var(--pad); }
  .giving-editorial__intro { border-right: 0; border-bottom: 1px solid rgba(16,21,18,.24); }
  .giving-editorial__intro h2, .visit-arrival__info h2, .contact-editorial__intro h2 { font-size: clamp(3.3rem,14vw,5rem); }
  .giving-editorial__data .pix-key { font-size: clamp(2rem,9vw,3rem); }
  .visit-arrival__map { min-height: 70svh; padding: 1rem; }
  .visit-arrival__map .map-art { min-height: calc(70svh - 2rem); }
  .contact-editorial__intro { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.2); }
}

@media (prefers-reduced-motion: reduce) {
  .page-hero--editorial .page-hero-media img { animation: none; }
}

/* Final mobile/tablet dock refinement: smaller, lighter and visibly floating */
@media (max-width: 980px) {
  .mobile-dock {
    width: min(calc(75% - 3.1875rem), 22.875rem);
    min-width: 15rem;
    min-height: 43px;
    padding: .16rem;
    bottom: calc(1.2rem + env(safe-area-inset-bottom));
    overflow: visible;
    border-color: rgba(235,248,255,.3);
    background:
      linear-gradient(112deg, rgba(237,248,255,.085), rgba(46,93,145,.035) 46%, rgba(5,25,51,.055)),
      rgba(7,29,57,.075);
    box-shadow:
      0 30px 38px -17px rgba(1,8,24,.66),
      0 15px 24px -14px rgba(1,9,26,.62),
      0 3px 7px -4px rgba(0,0,0,.72),
      0 -1px 1px rgba(255,255,255,.12),
      inset 0 1px 0 rgba(255,255,255,.52),
      inset 0 -1px 0 rgba(142,198,247,.13);
    -webkit-backdrop-filter: blur(9px) saturate(138%) brightness(1.025);
    backdrop-filter: blur(9px) saturate(138%) brightness(1.025);
    transform: translate3d(-50%,-3px,0);
  }
  .mobile-dock::before {
    inset: 1px;
    background:
      radial-gradient(74% 82% at 16% -24%, rgba(255,255,255,.27), transparent 56%),
      radial-gradient(48% 96% at 102% 125%, rgba(117,184,244,.08), transparent 70%),
      linear-gradient(104deg, transparent 8%, rgba(255,255,255,.035) 48%, transparent 76%);
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.04),
      inset 0 -7px 13px rgba(3,18,39,.03);
  }
  .mobile-dock::after {
    left: 12%;
    width: 31%;
    opacity: .72;
  }
  .mobile-dock a {
    min-height: 35px;
    padding: .15rem .06rem .13rem;
    gap: .06rem;
    transition:
      transform .34s cubic-bezier(.2,.9,.25,1.3),
      color .24s ease,
      filter .24s ease;
  }
  .mobile-dock a::before {
    inset: .04rem;
    background:
      radial-gradient(82% 96% at 24% -4%, rgba(255,255,255,.18), transparent 56%),
      linear-gradient(158deg, rgba(204,232,253,.105), rgba(8,37,73,.105) 58%, rgba(255,255,255,.04));
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.34),
      inset 0 -1px 0 rgba(129,183,232,.07),
      0 7px 14px -8px rgba(0,8,24,.38);
    transform: scale(.84);
    transition:
      opacity .24s ease,
      transform .34s cubic-bezier(.2,.9,.25,1.25),
      box-shadow .24s ease;
  }
  .mobile-dock a::after {
    width: .82rem;
    height: .82rem;
    transition: transform .34s cubic-bezier(.2,.9,.25,1.35), opacity .24s ease;
  }
  .mobile-dock a strong {
    font-size: .39rem;
    letter-spacing: .045em;
    transition: color .24s ease, opacity .24s ease, transform .34s cubic-bezier(.2,.9,.25,1.3);
  }
  .mobile-dock a.is-active {
    filter: brightness(1.12);
    transform: translateY(-1px) scale(1.015);
  }
  .mobile-dock a.is-active::before {
    right: .04rem;
    opacity: .92;
    transform: scale(1);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.48),
      inset 0 -1px 0 rgba(129,183,232,.11),
      0 9px 17px -9px rgba(0,7,22,.55);
  }
  .mobile-dock a.is-active::after { transform: scale(1.06); }
  .mobile-dock a:active { transform: translateY(1px) scale(.94); }
}

@media (hover: hover) and (pointer: fine) and (max-width: 980px) {
  .mobile-dock a:hover:not(.is-active) {
    z-index: 2;
    color: #fff;
    filter: brightness(1.08);
    transform: translateY(-2px) scale(1.055);
  }
  .mobile-dock a:hover:not(.is-active)::before {
    right: .04rem;
    opacity: .54;
    transform: scale(.92);
  }
  .mobile-dock a:hover:not(.is-active)::after { opacity: .94; transform: scale(1.1); }
  .mobile-dock a:hover:not(.is-active) strong { color: rgba(255,255,255,.94); transform: translateY(-.5px); }
  .mobile-dock:has(a:hover) a:not(:hover):not(.is-active) { opacity: .76; transform: scale(.96); }
}

@media (max-width: 360px) {
  .mobile-dock { min-width: 14.25rem; }
}
