@font-face {
  font-family: "Basic Commercial";
  src: url("/assets/basic-commercial-roman.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Basic Commercial";
  src: url("/assets/basic-commercial-bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 800;
  font-display: swap;
}
@font-face {
  font-family: "Freizeit";
  src: url("/assets/freizeit-regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Maison Mono";
  src: url("/assets/maison-mono-medium.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

:root {
  --fd-paper: #efe9df;
  --fd-paper-light: #f3eee6;
  --fd-rule: #c0bbb3;
  --fd-ink: #2b2727;
  --fd-ink-strong: #191919;
  --fd-cobalt: #364bca;
  --fd-cobalt-dark: #2c3ca2;
  --fd-coral: #e88762;
  --fd-yellow: #ffd800;
  --fd-white: #fff;
  --fd-gutter: clamp(1.25rem, 4vw, 4rem);
  --fd-frame: 87.5rem;
  --fd-section: clamp(3rem, 6vw, 5.5rem);
  --fd-section-gap: clamp(1.75rem, 4vw, 3.5rem);
  --fd-grid-gap: clamp(1.75rem, 4vw, 4rem);
  --fd-heading-1: clamp(2.6rem, 6vw, 6rem);
  --fd-heading-2: clamp(2rem, 4vw, 3.75rem);
  --fd-focus: 0 0 0 3px var(--fd-yellow), 0 0 0 6px var(--fd-ink-strong);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 6rem; }
#give-online { scroll-margin-top: 2rem; }
body {
  margin: 0;
  color: var(--fd-ink);
  background: var(--fd-paper);
  font-family: Inter, "Segoe UI", system-ui, sans-serif;
  font-size: clamp(1.0625rem, 0.35vw + 1rem, 1.125rem);
  line-height: 1.6;
  overflow-wrap: break-word;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-underline-offset: 0.25em; }
button, a { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 3px solid var(--fd-yellow);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px var(--fd-ink-strong);
}
img { display: block; max-width: 100%; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--fd-ink-strong); font-family: "Freizeit", "Trebuchet MS", Arial, sans-serif; line-height: 1.04; text-wrap: balance; overflow-wrap: normal; word-break: normal; }
h1 { font-size: var(--fd-heading-1); letter-spacing: -0.055em; text-transform: uppercase; }
h2 { font-size: var(--fd-heading-2); letter-spacing: -0.045em; }
p { max-width: 68ch; }
.frame { width: min(100% - (var(--fd-gutter) * 2), var(--fd-frame)); margin-inline: auto; }
.frame .frame, .frame .provider-handoff { width: 100%; margin-inline: 0; }
.frame > *, [class$="__grid"] > * { min-width: 0; }
a[href^="mailto:"], p a[href^="http"] { overflow-wrap: anywhere; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; left: 1rem; top: 1rem; padding: .8rem 1rem; background: var(--fd-yellow); color: var(--fd-ink-strong); transform: translateY(-180%); }
.skip-link:focus { transform: translateY(0); }
.eyebrow { margin-bottom: 1rem; font: 500 .76rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow--light { color: var(--fd-yellow); }
.site-header { position: absolute; z-index: 100; width: 100%; top: 0; color: var(--fd-white); border-bottom: 1px solid rgba(255,255,255,.26); }
.site-header.is-scrolled { position: fixed; color: var(--fd-ink-strong); background: rgba(239,233,223,.96); border-bottom-color: var(--fd-rule); backdrop-filter: blur(12px); }
.site-header__inner { position: relative; z-index: 102; min-height: 6rem; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { min-height: 3rem; display: inline-flex; align-items: center; text-decoration: none; }
.brand img { width: clamp(8.6rem, 14vw, 12rem); height: auto; }
.site-header.is-scrolled .brand img { filter: invert(1); }
.desktop-nav { display: grid; grid-template-columns: auto auto; align-items: center; column-gap: 1.5rem; padding-block: .35rem; }
.desktop-nav__utilities { grid-column: 1 / -1; display: flex; justify-content: flex-end; gap: 1.5rem; font-size: .875rem; }
.desktop-nav__utilities a { min-height: 2.75rem; display: inline-flex; align-items: center; text-decoration: none; }
.desktop-nav__links { display: flex; align-items: center; gap: clamp(1rem, 1.5vw, 1.75rem); font-size: .9375rem; }
.desktop-nav__links a, .nav-group summary { min-height: 3rem; display: inline-flex; align-items: center; gap: .45rem; font-weight: 650; text-decoration: none; white-space: nowrap; }
.desktop-nav a:hover, .desktop-nav a[aria-current="page"], .nav-group.is-current > summary { text-decoration: underline; text-decoration-thickness: 2px; }
.nav-group { position: relative; }
.nav-group summary { cursor: pointer; list-style: none; -webkit-tap-highlight-color: transparent; }
.nav-group summary::-webkit-details-marker { display: none; }
.nav-group summary::after { content: ""; width: .45rem; height: .45rem; margin-left: .2rem; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-.15rem) rotate(45deg); }
.nav-group[open] > summary::after { transform: translateY(.1rem) rotate(225deg); }
.nav-group__links { position: absolute; top: 100%; left: 0; z-index: 103; min-width: 14rem; width: max-content; padding: .5rem; color: var(--fd-ink-strong); background: var(--fd-paper-light); border: 1px solid var(--fd-rule); box-shadow: 0 .5rem 1.5rem rgba(0,0,0,.2); }
.desktop-nav__links .nav-group__links a { display: flex; padding: .5rem .75rem; font-size: 1rem; }
.desktop-nav__links .nav-group__links a:hover { background: var(--fd-paper); }
.button { min-height: 3rem; display: inline-flex; align-items: center; justify-content: space-between; gap: 1.1rem; padding: .78rem 1.1rem; border: 1px solid transparent; font-weight: 750; text-decoration: none; transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease; }
.button--primary { color: var(--fd-white); background: var(--fd-cobalt); }
.button--primary:hover { background: var(--fd-cobalt-dark); }
.button--inverse { color: var(--fd-ink-strong); background: var(--fd-white); }
.button--inverse:hover { background: var(--fd-yellow); }
.button--ghost-light { color: var(--fd-white); border-color: rgba(255,255,255,.75); }
.button--ghost-light:hover { color: var(--fd-ink-strong); background: var(--fd-white); }
.button--secondary { color: var(--fd-ink-strong); border-color: var(--fd-ink-strong); }
.button--secondary:hover { color: var(--fd-white); background: var(--fd-ink-strong); }
.button--secondary-dark { color: var(--fd-ink-strong); border-color: var(--fd-ink-strong); background: transparent; }
.button--secondary-dark:hover { background: var(--fd-paper); }
.button-row { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
.text-link { min-width: 3rem; min-height: 3rem; width: fit-content; display: inline-flex; align-items: center; gap: .55rem; font-weight: 750; text-decoration-thickness: 1px; }
.lead { font-size: clamp(1.24rem, 1.3vw, 1.55rem); line-height: 1.45; }
.menu-button, .menu-close { display: none; min-width: 3rem; min-height: 3rem; color: inherit; background: transparent; border: 1px solid currentColor; font: inherit; font-weight: 750; white-space: nowrap; }
.hero { position: relative; min-height: min(58rem, 100svh); display: grid; align-items: end; color: var(--fd-white); background: var(--fd-ink-strong); overflow: hidden; }
.hero__art { position: absolute; inset: 0; }
.hero__art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,16,16,.94) 0%, rgba(16,16,16,.72) 48%, rgba(16,16,16,.24) 100%); }
.media-fallback { position: absolute; inset: 0; overflow: hidden; background: linear-gradient(135deg, var(--fd-ink-strong) 0 47%, var(--fd-cobalt) 47% 73%, var(--fd-coral) 73% 100%); }
.media-fallback::after { content: ""; position: absolute; inset: 0; opacity: .16; background-image: radial-gradient(circle at center, white 0 1px, transparent 1.5px); background-size: 7px 7px; }
.media-fallback__word { position: absolute; right: -3vw; top: 14%; color: rgba(255,255,255,.12); font: 900 clamp(5rem, 15vw, 15rem)/.75 Arial Black, Arial, sans-serif; letter-spacing: -.08em; writing-mode: vertical-rl; }
.media-fallback__line { position: absolute; right: 25%; top: 0; width: 1px; height: 100%; background: rgba(255,255,255,.34); }
.hero__content { position: relative; z-index: 1; padding-top: 10rem; padding-bottom: clamp(4rem, 9vw, 7.5rem); }
.hero__copy { max-width: 68rem; }
.hero h1 { max-width: 11ch; margin-bottom: 1.4rem; color: var(--fd-white); font-family: "Basic Commercial", Arial Black, Arial, sans-serif; font-weight: 800; }
.hero__lead { margin-bottom: .5rem; color: var(--fd-yellow); font: 600 clamp(1.4rem, 2.5vw, 2rem)/1.25 "Trebuchet MS", Arial, sans-serif; }
.hero__copy > p:not(.eyebrow):not(.hero__lead) { max-width: 42rem; }
.hero__image, .story-split__image, .kids-grid__image, .leadership-row__image img, .visit-experience-media img { width: 100%; height: 100%; object-fit: cover; }
.hero__image { position: absolute; inset: 0; object-position: 54% 42%; }
.fact-band { padding-block: clamp(2.5rem, 5vw, 4.5rem); border-bottom: 1px solid var(--fd-rule); background: var(--fd-paper-light); }
.fact-band__grid { display: grid; grid-template-columns: minmax(12rem, .8fr) minmax(18rem, 1.4fr) minmax(13rem, .8fr); gap: clamp(2rem, 4vw, 5rem); align-items: end; }
.fact-band h2 { margin-bottom: 0; font-size: clamp(2.25rem, 4vw, 4.2rem); }
.fact-list { margin: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.fact-list div { padding-top: 1rem; border-top: 1px solid var(--fd-ink); }
.fact-list dt { margin-bottom: .5rem; font: 700 .75rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.fact-list dd { margin: 0; font-weight: 650; }
.fact-band__action p { margin-bottom: 1rem; }
.fact-band__action .text-link { margin-top: .5rem; }
.section { padding-block: var(--fd-section); }
.section-intro { margin-bottom: var(--fd-section-gap); }
.section-intro h2 { max-width: 13ch; margin-bottom: 0; }
.section-intro--split { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(18rem, .75fr); gap: var(--fd-grid-gap); align-items: end; }
.section-intro--split > :last-child { padding-bottom: .25rem; }
.expectation-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--fd-rule); border-bottom: 1px solid var(--fd-rule); }
.expectation-card { min-height: 0; padding: 1.5rem clamp(1rem, 2.5vw, 2.5rem) 2rem 0; display: flex; flex-direction: column; border-right: 1px solid var(--fd-rule); }
.expectation-card + .expectation-card { padding-left: clamp(1rem, 2.5vw, 2.5rem); }
.expectation-card:last-child { border-right: 0; }
.expectation-card__number { margin-bottom: 1.75rem; color: var(--fd-cobalt); font: 700 .78rem/1.2 ui-monospace, Consolas, monospace; }
.expectation-card h3 { margin-bottom: .8rem; font-size: clamp(1.8rem, 3vw, 2.7rem); }
.expectation-card p:last-child { margin-bottom: 0; }
.story-split { min-height: 47rem; display: grid; grid-template-columns: 1.08fr .92fr; }
.story-split__media { min-height: 38rem; position: relative; overflow: hidden; }
.story-split__image { position: absolute; inset: 0; object-position: center center; }
.story-split__copy { padding: var(--fd-section) var(--fd-gutter); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; color: var(--fd-white); background: var(--fd-cobalt); }
.story-split__copy h2 { max-width: 8ch; color: var(--fd-white); }
.story-split__copy p { max-width: 35rem; }
.story-split__copy .button { margin-top: 1rem; }
.kids-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(23rem, .8fr); gap: var(--fd-grid-gap); align-items: center; }
.kids-grid__copy h2 { max-width: 11ch; }
.kids-grid__media { min-height: clamp(29rem, 48vw, 43rem); position: relative; overflow: hidden; }
.kids-grid__image { position: absolute; inset: 0; object-position: center center; }
.kids-grid__media .media-fallback { background: linear-gradient(150deg, var(--fd-yellow) 0 52%, var(--fd-coral) 52% 78%, var(--fd-cobalt) 78% 100%); }
.kids-grid__media .media-fallback__word { color: rgba(25,25,25,.12); }
.belief-section { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.belief-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: var(--fd-grid-gap); align-items: start; }
.belief-grid h2 { max-width: 8ch; color: var(--fd-white); }
.leadership-row { display: grid; grid-template-columns: 1.1fr .9fr; gap: var(--fd-grid-gap); align-items: end; }
.leadership-row h2 { max-width: 10ch; margin-bottom: 0; }
.leadership-row--approved { grid-template-columns: minmax(22rem, .78fr) minmax(0, 1.22fr); align-items: center; }
.leadership-row__image { min-height: clamp(30rem, 55vw, 48rem); overflow: hidden; background: var(--fd-coral); }
.leadership-row__image img { object-position: center 28%; }
.leadership-row__copy h2 { margin-bottom: 1.5rem; }
.closing-cta { padding-block: clamp(4rem, 7vw, 6.5rem); color: var(--fd-ink-strong); background: var(--fd-yellow); }
.closing-cta__inner { display: grid; grid-template-columns: 1fr auto; gap: 3rem; align-items: end; }
.closing-cta h2 { max-width: 13ch; margin-bottom: 1rem; }
.closing-cta__actions { display: flex; gap: .75rem; }

/* Plan Your Visit */
.visit-hero { min-height: min(42rem, 72svh); padding-top: 6rem; display: grid; align-items: stretch; overflow: hidden; color: var(--fd-white); background: var(--fd-cobalt); }
.visit-hero__grid { min-height: 100%; display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; }
.visit-hero__copy { z-index: 1; padding-block: clamp(3.5rem, 6vw, 5.5rem); }
.visit-hero__copy h1 { max-width: 14ch; color: var(--fd-white); font-size: var(--fd-heading-1); }
.visit-hero__copy .lead { max-width: 42rem; }
.visit-hero__essentials { margin-top: 1.75rem; padding-top: 1.25rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.25rem 2rem; align-items: end; border-top: 1px solid rgba(255,255,255,.35); }
.visit-hero__essentials .fact-list { margin: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.5rem; }
.visit-hero__essentials .fact-list div { padding-top: 0; border-top: 0; }
.visit-hero__essentials .fact-list dt { color: var(--fd-yellow); }
.visit-hero__essentials .fact-list dd { color: var(--fd-white); font-size: clamp(.95rem, 1.2vw, 1.1rem); }
.visit-hero__essentials .button { align-self: end; }
.visit-hero__marker { position: relative; align-self: stretch; margin-right: calc(var(--fd-gutter) * -1); display: grid; align-content: center; border-left: 1px solid rgba(255,255,255,.3); color: rgba(255,255,255,.18); font: 900 clamp(4.5rem, 10vw, 10rem)/.72 Arial Black, Arial, sans-serif; letter-spacing: -.08em; text-align: right; }
.visit-hero__marker::before { content: ""; position: absolute; inset: 0; opacity: .18; background-image: radial-gradient(circle at center, #fff 0 1px, transparent 1.5px); background-size: 7px 7px; }
.visit-hero__marker span { position: relative; display: block; }
.visit-facts { padding-block: clamp(3rem, 6vw, 5.5rem); background: var(--fd-paper-light); border-bottom: 1px solid var(--fd-rule); }
.visit-facts__heading { display: grid; grid-template-columns: .5fr 1.5fr; gap: 2rem; align-items: end; margin-bottom: 3rem; }
.visit-facts__heading h2 { margin-bottom: 0; font-size: clamp(2.3rem, 4.3vw, 4.2rem); }
.fact-list--visit { grid-template-columns: repeat(3, 1fr); }
.fact-list--visit div { min-height: 8rem; padding-right: 2rem; }
.visit-facts__actions { margin-top: 2rem; padding-top: 1.5rem; display: flex; align-items: center; gap: 1rem; border-top: 1px solid var(--fd-rule); }
.rhythm-note { margin-top: 3rem; display: grid; grid-template-columns: .35fr 1.65fr; gap: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--fd-rule); }
.rhythm-note__label { font: 700 .75rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.rhythm-note p { margin: 0; }
.visit-experience-media { height: clamp(20rem, 52vw, 42rem); margin-top: 4rem; overflow: hidden; }
.visit-experience-media img { object-position: center center; }
.arrival-section { color: var(--fd-white); background: var(--fd-ink-strong); }
.arrival-grid { display: grid; grid-template-columns: 1fr 1fr; min-height: 46rem; }
.arrival-grid__art { position: relative; margin-left: calc(var(--fd-gutter) * -1); overflow: hidden; }
.arrival-grid__art .media-fallback { background: linear-gradient(155deg, var(--fd-coral) 0 34%, var(--fd-cobalt) 34% 70%, #111 70% 100%); }
.arrival-grid__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 62% center; }
.arrival-grid__copy { padding: var(--fd-section) 0 var(--fd-section) clamp(3rem, 7vw, 8rem); display: flex; flex-direction: column; justify-content: center; }
.arrival-grid__copy h2 { max-width: 9ch; color: var(--fd-white); }
.arrival-rule { width: 4rem; height: .45rem; margin: 1.5rem 0 2rem; background: var(--fd-yellow); }
.arrival-steps { margin: 2rem 0 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.28); }
.arrival-steps li { display: grid; grid-template-columns: 2.5rem 1fr; gap: 1rem; padding-block: 1rem; border-bottom: 1px solid rgba(255,255,255,.28); }
.arrival-steps span { color: var(--fd-yellow); font: 500 .72rem/1.5 "Maison Mono", ui-monospace, Consolas, monospace; }
.arrival-steps p { margin: 0; }
.confidence-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--fd-ink); }
.confidence-block { min-height: 0; padding: 2rem 2.25rem 2rem 0; border-right: 1px solid var(--fd-rule); }
.confidence-block + .confidence-block { padding-left: 2.25rem; }
.confidence-block:last-child { border-right: 0; }
.confidence-block h3 { font-size: clamp(1.8rem, 2.7vw, 2.65rem); }
.kids-visit { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-cobalt); }
.kids-visit__grid { display: grid; grid-template-columns: 1fr .75fr; gap: var(--fd-grid-gap); align-items: center; }
.kids-visit h2 { max-width: 10ch; color: var(--fd-white); }
.kids-visit__facts { padding: 2rem; color: var(--fd-ink-strong); background: var(--fd-yellow); }
.kids-visit__facts p:last-child { margin-bottom: 0; }
.kids-visit__label { padding-bottom: 1rem; border-bottom: 1px solid var(--fd-ink-strong); font: 700 .76rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.faq-wrap { max-width: var(--fd-frame); }
.faq { border-top: 1px solid var(--fd-ink); }
.faq details { border-bottom: 1px solid var(--fd-rule); }
.faq summary { min-height: 4.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: 1rem; cursor: pointer; font-size: clamp(1.1rem, 1.3vw, 1.28rem); font-weight: 750; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary span { font-size: 1.7rem; font-weight: 400; transition: transform 180ms ease; }
.faq details[open] summary span { transform: rotate(45deg); }
.faq__answer { padding: 0 3.5rem 1.5rem 0; }
.handoff-section { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.handoff-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: var(--fd-grid-gap); align-items: start; }
.handoff-main h2 { max-width: 9ch; color: var(--fd-white); }
.handoff-status { margin-top: 2rem; padding: 1.2rem 0; border-top: 1px solid rgba(255,255,255,.35); border-bottom: 1px solid rgba(255,255,255,.35); font-weight: 700; }
.handoff-status p { margin-bottom: .5rem; }
.handoff-status a { min-height: 3rem; display: inline-flex; align-items: center; }
.handoff-paths { display: grid; gap: 1rem; }
.handoff-path { padding: 1.5rem; border: 1px solid rgba(255,255,255,.32); }
.handoff-path--primary { color: var(--fd-ink-strong); background: var(--fd-yellow); border-color: var(--fd-yellow); }
.handoff-path p:last-child { margin-bottom: 0; }
.handoff-path__label { padding-bottom: .8rem; border-bottom: 1px solid currentColor; font: 700 .76rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.handoff-note { margin: .5rem auto 0; font-size: .9rem; }
.related-section { padding-block: var(--fd-section); }
.related-section h2 { max-width: 11ch; }
.related-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 1.5rem; margin-top: var(--fd-section-gap); border-top: 1px solid var(--fd-ink); }
.related-links:has(> a:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.related-links:has(> a:nth-child(4)) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.related-links a { min-height: 4.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--fd-rule); font-weight: 750; text-decoration: none; }
.related-links a span[aria-hidden] { flex-shrink: 0; }
.related-links a:hover { color: var(--fd-cobalt); text-decoration: underline; }
.site-footer { color: var(--fd-white); background: var(--fd-ink-strong); padding-top: var(--fd-section); }
.footer-grid { display: grid; grid-template-columns: minmax(19rem, 1.4fr) .8fr .8fr 1fr; gap: clamp(2.5rem, 4vw, 5rem); }
.footer-intro h2 { color: var(--fd-white); max-width: 8ch; }
.footer-links { display: grid; align-content: start; gap: .7rem; }
.footer-links a { width: fit-content; min-width: 3rem; min-height: 3rem; display: inline-flex; align-items: center; }
.footer-label { padding-bottom: .8rem; border-bottom: 1px solid rgba(255,255,255,.35); font: 700 .75rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .15em; text-transform: uppercase; }
.footer-facts address { font-style: normal; }
.footer-facts a { min-height: 3rem; display: inline-flex; align-items: center; }
.footer-base { margin-top: 5rem; padding-block: 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid rgba(255,255,255,.25); font-size: .9rem; }
.footer-base p { margin: 0; }
.footer-base a { min-width: 3rem; min-height: 3rem; display: inline-flex; align-items: center; }

/* Community / support / participation vertical */
.community-page { overflow: hidden; }
.connection-hero { min-height: min(48rem, 84svh); padding-top: 6rem; display: grid; align-items: stretch; color: var(--fd-white); background: var(--fd-cobalt); }
.connection-hero--ink { background: var(--fd-ink-strong); }
.connection-hero[data-hero-layout="text"] { min-height: auto; }
.connection-hero[data-hero-layout="text"] .connection-hero__grid { grid-template-columns: minmax(0, 1fr); }
.connection-hero[data-hero-layout="text"] .connection-hero__copy { max-width: 55rem; }
.connection-hero--coral { color: var(--fd-ink-strong); background: var(--fd-coral); }
.connection-hero--coral .eyebrow--light { color: var(--fd-ink-strong); }
.connection-hero__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr); gap: clamp(2rem, 6vw, 6rem); align-items: stretch; }
.connection-hero__copy { align-self: center; padding-block: clamp(3rem, 7vw, 6rem); }
.connection-hero__copy h1 { max-width: 16ch; margin-bottom: 1.4rem; color: var(--fd-white); overflow-wrap: normal; word-break: normal; }
.connection-hero--coral .connection-hero__copy h1 { color: var(--fd-ink-strong); }
.connection-hero__copy .lead { max-width: 38rem; margin-bottom: .65rem; color: var(--fd-yellow); }
.connection-hero--coral .connection-hero__copy .lead { color: var(--fd-ink-strong); }
.connection-hero__copy > p:not(.eyebrow):not(.lead) { max-width: 40rem; }
.connection-hero__media { position: relative; min-height: 32rem; margin-block: 2rem; overflow: hidden; background: var(--fd-ink-strong); }
.connection-hero__image { width: 100%; height: 100%; min-height: 32rem; object-fit: cover; object-position: center; }
.community-page--table-groups .connection-hero__media { height: 32rem; }
.community-page--table-groups .connection-hero__image { min-height: 0; object-position: center 78%; }
.connection-hero__media::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(25,25,25,.25), transparent 45%); }
.connection-choices-section { background: var(--fd-paper); }
.connection-choices { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--fd-ink); border-bottom: 1px solid var(--fd-ink); }
.connection-choice { min-height: 25rem; padding: 1.5rem clamp(1rem, 2.25vw, 2rem) 2rem; display: flex; flex-direction: column; border-right: 1px solid var(--fd-ink); }
.connection-choice:last-child { border-right: 0; }
.connection-choice__number { margin-bottom: 2.75rem; color: var(--fd-cobalt); font: 700 .78rem/1.2 ui-monospace, Consolas, monospace; }
.connection-choice__label { margin-bottom: .8rem; font: 700 .75rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.connection-choice h3 { margin-bottom: .8rem; font-size: clamp(1.9rem, 2.8vw, 2.7rem); }
.connection-choice p:not(.connection-choice__number):not(.connection-choice__label) { margin-bottom: 1.5rem; }
.connection-choice .text-link { margin-top: auto; }
.connection-choice--yellow { background: var(--fd-yellow); }
.connection-choice--paper { background: var(--fd-paper-light); }
.connection-choice--coral { background: var(--fd-coral); }
.connection-choice--cobalt { color: var(--fd-white); background: var(--fd-cobalt); }
.connection-choice--cobalt h3 { color: var(--fd-white); }
.connection-choice--cobalt .connection-choice__number { color: var(--fd-yellow); }
.connection-choice--cobalt .text-link { color: var(--fd-white); }
.community-band { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.community-band__inner { display: grid; grid-template-columns: 1fr 1fr; gap: var(--fd-grid-gap); align-items: end; }
.community-band h2 { max-width: 9ch; color: var(--fd-white); }
.community-band .lead { max-width: 36rem; }
.community-band .text-link { color: var(--fd-white); }
.community-rhythm { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--fd-rule); border-bottom: 1px solid var(--fd-rule); }
.community-rhythm--four { grid-template-columns: repeat(4, 1fr); }
.community-rhythm__card { min-height: 0; padding: 1.5rem clamp(1rem, 2.25vw, 2rem) 2rem 0; display: flex; flex-direction: column; border-right: 1px solid var(--fd-rule); }
.community-rhythm__card + .community-rhythm__card { padding-left: clamp(1rem, 2.25vw, 2rem); }
.community-rhythm__card:last-child { border-right: 0; }
.community-rhythm__number { margin-bottom: 1.75rem; color: var(--fd-cobalt); font: 700 .78rem/1.2 ui-monospace, Consolas, monospace; }
.community-rhythm__card h3 { margin-bottom: .75rem; font-size: clamp(1.75rem, 2.7vw, 2.5rem); }
.community-rhythm__card p:last-child { margin-bottom: 0; }
.community-note { padding-block: clamp(3rem, 6vw, 5rem); color: var(--fd-ink-strong); background: var(--fd-yellow); }
.community-note__inner { display: grid; grid-template-columns: minmax(15rem, .8fr) minmax(0, 1.2fr); gap: var(--fd-grid-gap); align-items: end; }
.community-note h2 { max-width: 10ch; margin-bottom: 0; }
.community-note__inner > p { margin-bottom: 0; max-width: 42rem; }
.remaining-page--give .community-note__inner { align-items: start; }
.legal-policy { color: var(--fd-ink-strong); padding-top: clamp(8.5rem, 12vw, 11rem); }
.site-header--paper { color: var(--fd-ink-strong); background: var(--fd-paper); border-bottom-color: var(--fd-rule); }
.site-header--paper .brand img { filter: invert(1); }
.legal-policy > .frame { max-width: 55rem; }
.legal-policy h1 { margin-bottom: clamp(2rem, 4vw, 3.5rem); font-size: clamp(2.75rem, 5.2vw, 5rem); line-height: 1; letter-spacing: -.04em; text-transform: none; }
.legal-policy__content { max-width: 68ch; margin-inline: 0; }
.legal-policy__content h2 { max-width: none; margin: 2.2em 0 .7em; font-size: clamp(1.65rem, 2.4vw, 2.35rem); line-height: 1.12; letter-spacing: -.025em; text-transform: none; }
.legal-policy__content h2:first-child { margin-top: 0; }
.legal-policy__content h3 { max-width: none; margin: 1.8em 0 .55em; font-size: clamp(1.2rem, 1.8vw, 1.5rem); line-height: 1.25; letter-spacing: -.015em; text-transform: none; }
.legal-policy__content p { max-width: none; margin-bottom: 1.15em; font-size: clamp(1rem, .25vw + .98rem, 1.125rem); line-height: 1.72; }
.legal-policy__content a { overflow-wrap: anywhere; text-decoration-thickness: .08em; }
.give-embed { width: 100%; min-width: 0; }
.give-embed__label { margin-bottom: .8rem; font-size: clamp(1.5rem, 3vw, 2rem); }
.give-embed__mount { width: 100%; min-width: 0; min-height: clamp(18rem, 55svh, 38rem); border: 1px solid var(--fd-ink-strong); background: var(--fd-white); }
.give-embed__status, .give-embed__noscript { margin: 1rem 0 0; }
.remaining-page--give .community-close .eyebrow--light { color: var(--fd-ink-strong); }
.media-archive + .media-bridge .button--secondary { color: var(--fd-white); border-color: var(--fd-white); }
.community-handoff-wrap { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.provider-handoff { width: min(100% - (var(--fd-gutter) * 2), var(--fd-frame)); margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(15rem, .9fr); gap: var(--fd-grid-gap); color: var(--fd-white); background: var(--fd-ink-strong); }
/* Embedded tasks need the frame's width; help follows instead of taking half. */
.provider-handoff:has(.provider-embed__frame) { grid-template-columns: minmax(0, 1fr); }
.provider-handoff + .provider-handoff, .handoff-grid + .provider-handoff { margin-top: var(--fd-section-gap); }
.provider-handoff:has(.provider-embed__frame) .provider-handoff__recovery { max-width: 48rem; }
.provider-handoff__main h2 { max-width: 12ch; color: var(--fd-white); }
.provider-handoff__main > p { max-width: 42rem; }
.provider-handoff__action { margin-top: 2rem; }
.provider-handoff__status { margin: 0; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.35); color: var(--fd-white); }
.provider-handoff__recovery { align-self: start; padding: 1.5rem; color: var(--fd-ink-strong); background: var(--fd-yellow); }
.provider-handoff__recovery p:last-of-type { margin-bottom: 1rem; }
.provider-handoff__label { padding-bottom: .8rem; border-bottom: 1px solid currentColor; font: 700 .75rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.provider-handoff__recovery .text-link { min-height: 3rem; }
.provider-embed__frame { width: 100%; min-width: 0; height: clamp(30rem, 75svh, 48rem); margin-top: 2rem; overflow: hidden; border: 1px solid rgba(255,255,255,.35); background: var(--fd-white); }
.provider-embed__frame iframe { display: block; width: 100%; min-width: 0; height: 100%; border: 0; background: var(--fd-white); }
.provider-embed__hint { margin: 1rem 0 0; font-size: .95rem; }
.provider-embed__fallback { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; margin: 1rem 0 0; }
.provider-embed__fallback .button { flex: 0 0 auto; }
.provider-handoff--plan-your-visit .provider-embed__frame { width: 100%; max-width: 100%; min-width: 0; height: 490px; min-height: 490px; box-sizing: border-box; aspect-ratio: auto; overflow: visible; }
.provider-handoff--plan-your-visit .provider-embed__frame iframe { display: block; width: 100%; max-width: 100%; min-width: 0; height: 490px; min-height: 490px; box-sizing: border-box; border: 0; }
.provider-handoff--plan-your-visit .provider-embed__frame iframe:focus-visible { outline: 3px solid var(--fd-yellow); outline-offset: 3px; }
.provider-embed__status { margin: 1.5rem 0 0; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.35); color: var(--fd-white); }
.care-story { background: var(--fd-paper-light); }
.care-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--fd-ink); border-bottom: 1px solid var(--fd-ink); }
.care-card { min-height: 18rem; padding: 1.5rem clamp(1rem, 2.5vw, 2.25rem) 2rem 0; border-right: 1px solid var(--fd-rule); }
.care-card + .care-card { padding-left: clamp(1rem, 2.5vw, 2.25rem); }
.care-card:last-child { border-right: 0; }
.care-card--accent { background: var(--fd-coral); }
.care-card__label { padding-bottom: .8rem; border-bottom: 1px solid currentColor; font: 700 .75rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.care-card h3 { font-size: clamp(1.8rem, 2.7vw, 2.6rem); }
.community-boundary { padding-block: clamp(3rem, 6vw, 5rem); background: var(--fd-paper); }
.community-boundary__inner > * { max-width: 68ch; }
.community-boundary h2 { max-width: 15ch; }
.community-status { padding-block: var(--fd-section); color: var(--fd-ink-strong); background: var(--fd-yellow); }
.community-status__inner > * { max-width: 68ch; }
.community-status h2 { max-width: 13ch; }
.community-status__state { max-width: 42rem; padding-top: 1rem; border-top: 1px solid var(--fd-ink-strong); font-weight: 700; }
.community-status .button { margin-top: 1rem; }
.serve-areas { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.serve-areas .eyebrow { color: var(--fd-yellow); }
.serve-areas h2 { max-width: 10ch; color: var(--fd-white); }
.serve-areas__inner { display: grid; grid-template-columns: minmax(15rem, .8fr) minmax(0, 1.2fr); gap: var(--fd-grid-gap); align-items: start; }
.serve-areas__list { margin: 2rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .6rem; list-style: none; }
.serve-areas__list li { min-height: 3rem; display: inline-flex; align-items: center; padding: .6rem 1rem; border: 1px solid rgba(255,255,255,.45); }
.community-close { padding-block: var(--fd-section); background: var(--fd-paper); }
.community-close__inner { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: var(--fd-grid-gap); align-items: start; }
.community-close h2 { max-width: 15ch; margin-bottom: 1rem; }
.community-close p:last-child { margin-bottom: 0; }
.community-related { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 1.5rem; border-top: 1px solid var(--fd-ink); }
.community-related--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.community-related a { min-height: 4.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--fd-rule); font-weight: 750; text-decoration: none; }
.community-related a span[aria-hidden] { flex-shrink: 0; }
.community-related a:hover { color: var(--fd-cobalt); text-decoration: underline; }

/* Groups keeps the live provider across the shared frame, with help below it.
   CCB chooses columns from its own viewport (two start at 768px). */
.community-page--table-groups .connection-hero { min-height: auto; }
.community-page--table-groups .connection-hero__copy { padding-block: clamp(2.5rem, 4vw, 4rem); }
.community-page--table-groups .connection-hero__copy h1 { font-size: clamp(2.25rem, 4.2vw, 4rem); }
.community-page--table-groups .connection-hero__media { min-height: 0; height: clamp(18rem, 36vw, 32rem); margin-block: 0; }
.community-page--table-groups .community-handoff-wrap { color: var(--fd-ink); background: var(--fd-paper-light); }
.provider-handoff--table-groups { gap: 1.5rem; color: var(--fd-ink); background: transparent; }
.provider-handoff--table-groups .provider-handoff__main h2 { max-width: none; margin-bottom: 1rem; color: var(--fd-ink); }
.table-groups-directory__intro { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.25rem 2rem; }
.table-groups-directory__intro p:last-child { margin-bottom: 0; }
.table-groups-directory__intro > .button { flex-shrink: 0; }
.provider-handoff--table-groups .provider-embed__hint { max-width: none; margin-top: 1.5rem; }
.provider-handoff--table-groups .provider-embed__frame { margin-top: 1rem; border-color: var(--fd-rule); }
.provider-handoff--table-groups iframe:focus-visible { outline: 3px solid var(--fd-cobalt); outline-offset: -3px; }
.provider-handoff--table-groups:has(.provider-embed__frame) .provider-handoff__recovery { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .375rem 1.5rem; max-width: none; padding: 1rem 1.25rem; background: var(--fd-paper); border: 1px solid var(--fd-rule); }
.provider-handoff--table-groups .provider-handoff__recovery p { margin: 0; }
.community-page--table-groups .community-intro h2 { max-width: none; }
.community-page--table-groups .community-rhythm__card { min-height: auto; }
.community-page--table-groups .community-rhythm__number { margin-bottom: 1rem; }
.community-page--table-groups .community-close { border-top: 1px solid var(--fd-rule); }

@media (min-width: 1200px) {
  .compact-menu { display: none; }
}

@media (max-width: 1199px) {
  .desktop-nav { display: none; }
  .menu-button, .menu-close { display: inline-flex; align-items: center; justify-content: center; gap: .7rem; }
  .menu-button__glyph { width: 1.2rem; display: grid; gap: .3rem; }
  .menu-button__glyph i { height: 1px; display: block; background: currentColor; }
  .compact-menu { position: fixed; z-index: 99; inset: 0; padding-top: 6rem; color: var(--fd-white); background: var(--fd-cobalt); }
  .compact-menu[hidden] { display: none; }
  .compact-menu__inner { height: calc(100dvh - 6rem); padding-block: 1rem; display: grid; grid-template-rows: minmax(0, 1fr) auto; overflow: hidden; }
  .compact-menu nav { display: grid; align-content: start; }
  .compact-menu nav[aria-label="Compact navigation"] { overflow-y: auto; padding-right: .5rem; }
  .compact-menu nav a, .compact-menu summary { min-height: 3.4rem; display: flex; align-items: center; justify-content: space-between; padding-block: .45rem; border-bottom: 1px solid rgba(255,255,255,.35); color: var(--fd-white); font-size: clamp(1.4rem, 5vw, 2.35rem); text-decoration: none; white-space: normal; }
  .compact-menu .nav-group__links { position: static; width: auto; min-width: 0; padding: .25rem 0 .5rem 1rem; color: inherit; background: transparent; border: 0; box-shadow: none; }
  .compact-menu .nav-group__links a { min-height: 3rem; font-size: 1.125rem; }
  .compact-menu nav .compact-menu__primary { margin-bottom: 1rem; padding-inline: 1rem; border: 1px solid var(--fd-white); background: var(--fd-white); color: var(--fd-ink-strong); }
  .compact-menu__footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: .75rem; border-top: 1px solid rgba(255,255,255,.35); }
  .compact-menu .compact-menu__utilities { display: flex; gap: 1.25rem; }
  .compact-menu .compact-menu__utilities a { font-size: 1rem; border: 0; }
  .menu-close { justify-self: start; margin: 0; padding-inline: 1rem; font-size: .9375rem; }
  .fact-band__grid { grid-template-columns: 1fr 1.4fr; }
  .fact-band__action { grid-column: 2; }
  .section-intro--split { grid-template-columns: 1fr 1fr; gap: 3rem; }
  .visit-hero__grid { grid-template-columns: 1.3fr .7fr; }
  .confidence-block { padding-right: 1.5rem; }
  .confidence-block + .confidence-block { padding-left: 1.5rem; }
  .related-links:has(> a:nth-child(4)) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .connection-choices { grid-template-columns: repeat(2, 1fr); }
  .connection-choice:nth-child(2) { border-right: 0; }
  .connection-choice:nth-child(n+3) { border-top: 1px solid var(--fd-ink); }
  .footer-grid { grid-template-columns: 1.3fr 1fr 1fr; }
  .footer-facts { grid-column: 2 / 4; }
}

@media (max-width: 1199px) {
  html.no-js .site-header { position: relative; color: var(--fd-ink-strong); background: var(--fd-paper); border-bottom-color: var(--fd-rule); }
  html.no-js .site-header .brand img { filter: invert(1); }
  html.no-js .menu-button { display: none; }
  html.no-js .compact-menu { position: static; display: block; padding-top: 0; color: var(--fd-ink-strong); background: var(--fd-paper); }
  html.no-js .compact-menu__inner { height: auto; padding-block: 0; display: block; overflow: visible; }
  html.no-js .compact-menu nav a, html.no-js .compact-menu summary { color: var(--fd-ink-strong); font-size: 1rem; }
  html.no-js .compact-menu nav .compact-menu__primary { color: var(--fd-ink-strong); background: var(--fd-yellow); border-color: var(--fd-ink-strong); }
  html.no-js .menu-close { display: none; }
}

/* Home composition and navigation stay scoped to Lane B. */
.hero.hero--home { min-height: auto; }
.hero--home .hero__content { padding-top: 9rem; padding-bottom: 3rem; }
.hero--home .hero__copy { max-width: 50rem; }
.hero--home h1 { max-width: 16ch; font-size: clamp(3rem, 5.4vw, 5.2rem); overflow-wrap: normal; }
.home-arrival { margin-top: 2rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.5rem; align-items: end; }
.home-arrival .home-arrival__facts { grid-template-columns: .8fr 1.2fr; }
.home-arrival__facts div { border-color: rgba(255,255,255,.6); }
.home-arrival__facts dd { font-size: 1rem; }
.home-arrival > .text-link { white-space: nowrap; font-size: 1rem; }
.home-current-life { padding-block: 3rem; background: var(--fd-yellow); }
.home-current-life__inner, .home-connections__inner { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 4vw, 4rem); align-items: center; }
.home-current-life h2, .home-connections h2 { max-width: 16ch; margin-bottom: 0; font-size: clamp(2.3rem, 4vw, 4rem); overflow-wrap: normal; }
.home-current-life p:last-child { margin-bottom: 0; }
.home-connections { padding-block: 4rem; background: var(--fd-paper-light); }
.home-connections h2 { margin-bottom: 1rem; }
.home-connections__links { display: grid; }
.home-connections__links a { min-height: 3.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--fd-rule); font-weight: 750; text-decoration: none; }
.home-connections__links a:last-child { border-bottom: 1px solid var(--fd-rule); }
.home-connections__watch { margin-top: 1.5rem; display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; }
@media (max-width: 767px) {
  .hero--home .hero__content { padding-top: 7rem; padding-bottom: 2rem; }
  .hero--home h1 { font-size: clamp(2.75rem, 11vw, 3.4rem); }
  .hero--home .button-row { margin-top: 1.25rem; }
  .home-arrival { grid-template-columns: 1fr; gap: .5rem; margin-top: 1.5rem; }
  .home-arrival .home-arrival__facts { grid-template-columns: .8fr 1.2fr; }
  .home-current-life__inner, .home-connections__inner { grid-template-columns: 1fr; gap: 1.5rem; }
  .home-current-life, .home-connections { padding-block: 2.5rem; }
  .home-connections__watch { gap: .75rem; }
}

@media (min-width: 768px) and (max-height: 800px) {
  .hero__content { padding-top: 7.25rem; padding-bottom: 2rem; }
  .hero h1 { margin-bottom: .8rem; font-size: clamp(3.6rem, 6.5vw, 5.45rem); }
  .hero__lead { font-size: 1.45rem; }
  .hero__copy > p:not(.eyebrow):not(.hero__lead) { margin-bottom: .6rem; }
  .hero .button-row { margin-top: 1.1rem; }
  .visit-hero__copy { padding-block: 2.75rem; }
  .visit-hero__copy h1 { margin-bottom: 1rem; font-size: clamp(3.5rem, 6.4vw, 5.5rem); }
  .visit-hero__copy .button-row { margin-top: 1.2rem; }
}

@media (max-width: 767px) {
  :root { --fd-heading-1: clamp(2.25rem, 10.65vw, 2.6rem); }
  .site-header__inner { min-height: 5.25rem; gap: 1rem; }
  .brand img { width: 9.2rem; }
  .hero { min-height: 47rem; }
  .hero__content { padding-top: 8rem; }
  .hero__art::after { background: linear-gradient(180deg, rgba(16,16,16,.25), rgba(16,16,16,.9) 62%); }
  .media-fallback { background: linear-gradient(155deg, var(--fd-ink-strong) 0 47%, var(--fd-cobalt) 47% 78%, var(--fd-coral) 78% 100%); }
  .media-fallback__word { top: 12%; right: -10vw; font-size: clamp(5rem, 28vw, 8rem); }
  .button-row { display: grid; }
  .button { width: 100%; }
  .fact-band__grid, .fact-list, .footer-grid, .section-intro--split, .expectation-grid, .story-split, .kids-grid, .belief-grid, .leadership-row, .closing-cta__inner, .visit-hero__grid, .visit-facts__heading, .arrival-grid, .confidence-grid, .kids-visit__grid, .handoff-grid, .related-links, .connection-hero__grid, .connection-choices, .community-band__inner, .community-rhythm, .community-rhythm--four, .community-note__inner, .provider-handoff, .care-grid, .serve-areas__inner, .community-close__inner, .community-related { grid-template-columns: 1fr; }
  .fact-band__action { grid-column: auto; }
  .footer-intro h2 { max-width: 10ch; }
  .expectation-grid { border-bottom: 0; }
  .expectation-card, .expectation-card + .expectation-card { min-height: auto; padding: 1.5rem 0 2rem; border-right: 0; border-bottom: 1px solid var(--fd-rule); }
  .expectation-card__number { margin-bottom: 3rem; }
  .story-split__media { min-height: 24rem; }
  .story-split__copy { padding-inline: var(--fd-gutter); }
  .kids-grid__media { min-height: 25rem; }
  .closing-cta__actions { display: grid; }
  .leadership-row__image { min-height: 30rem; }
  .visit-facts__actions { display: grid; }
  .visit-hero { min-height: auto; padding-top: 5.25rem; }
  .visit-hero__marker { min-height: 17rem; margin: 0 calc(var(--fd-gutter) * -1); padding-right: var(--fd-gutter); border-left: 0; border-top: 1px solid rgba(255,255,255,.3); align-content: center; font-size: clamp(4.2rem, 21vw, 6.5rem); }
  .visit-facts__heading { gap: .5rem; }
  .fact-list--visit div { min-height: auto; padding-right: 0; }
  .rhythm-note { grid-template-columns: 1fr; gap: .8rem; }
  .arrival-grid__art { min-height: 23rem; margin: 0 calc(var(--fd-gutter) * -1); }
  .arrival-grid__copy { padding-left: 0; }
  .confidence-block, .confidence-block + .confidence-block { min-height: auto; padding: 2rem 0; border-right: 0; border-bottom: 1px solid var(--fd-rule); }
  .confidence-block h3 { min-height: auto; }
  .related-links a, .related-links a + a, .related-links a:nth-child(n+3) { min-height: 4.5rem; padding: 1rem 0; border-right: 0; border-top: 0; border-bottom: 1px solid var(--fd-rule); }
  .footer-facts { grid-column: auto; }
  .visit-hero__copy { padding-block: 2rem; }
  .visit-hero__essentials { grid-template-columns: 1fr; gap: 1rem; margin-top: 1.5rem; }
  .visit-hero__marker { min-height: 9rem; }
  .connection-hero { min-height: auto; padding-top: 5.25rem; }
  .connection-hero__copy { padding-block: 2.5rem 3rem; }
  .connection-hero__media { min-height: 22rem; margin: 0 calc(var(--fd-gutter) * -1); }
  .connection-hero__image { min-height: 22rem; }
  .community-page--table-groups .connection-hero__media { height: 18rem; }
  .community-page--table-groups .connection-hero__image { min-height: 0; }
  .provider-handoff--table-groups .provider-embed__frame { width: calc(100% + (var(--fd-gutter) * 2)); margin-inline: calc(var(--fd-gutter) * -1); }
  .connection-choice, .connection-choice + .connection-choice { min-height: auto; padding: 1.5rem 1.25rem 2rem; border-right: 0; border-top: 0; border-bottom: 1px solid var(--fd-ink); }
  .connection-choice:last-child { border-bottom: 0; }
  .community-rhythm__card, .community-rhythm__card + .community-rhythm__card { min-height: auto; padding: 1.5rem 0 2rem; border-right: 0; border-top: 0; border-bottom: 1px solid var(--fd-rule); }
  .community-rhythm__card:last-child { border-bottom: 0; }
  .community-note__inner, .serve-areas__inner, .community-close__inner { gap: 1.5rem; }
  .provider-handoff__recovery { padding: 1.25rem; }
  .provider-embed__frame { aspect-ratio: auto; }
  .provider-embed__frame iframe { width: 100%; min-width: 0; height: 100%; }
  .community-related a, .community-related a + a, .community-related a:nth-child(n+3) { min-height: 4.5rem; padding: 1rem 0; border-right: 0; border-top: 0; border-bottom: 1px solid var(--fd-rule); }
  .community-related--four, .related-links:has(> a:nth-child(4)), .related-links:has(> a:nth-child(2):last-child) { grid-template-columns: 1fr; }
}

body.menu-open .site-header { position: fixed; color: var(--fd-white); border-bottom-color: rgba(255,255,255,.28); }
body.menu-open .site-header.is-scrolled { background: transparent; backdrop-filter: none; }
body.menu-open .site-header .brand img { filter: none; }

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

@media (forced-colors: active) {
  a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid Highlight; outline-offset: 2px; box-shadow: none; }
  .button, .menu-button, .menu-close { border: 2px solid ButtonText; }
}

/* About / beliefs / leadership */
.about-hero { position: relative; min-height: min(52rem, 92svh); display: grid; align-items: end; overflow: hidden; color: var(--fd-white); background: var(--fd-ink-strong); }
.about-hero__art { position: absolute; inset: 0; }
.about-hero__art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,16,16,.95) 0%, rgba(16,16,16,.7) 52%, rgba(16,16,16,.22) 100%); }
.about-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; }
.about-hero__content { position: relative; z-index: 1; padding-top: 10rem; padding-bottom: clamp(4rem, 9vw, 7rem); }
.about-hero__copy { max-width: 53rem; }
.about-hero h1 { max-width: 9ch; margin-bottom: 1.25rem; color: var(--fd-white); font-family: "Basic Commercial", Arial Black, Arial, sans-serif; font-weight: 800; }
.about-hero__lead { margin-bottom: .7rem; color: var(--fd-yellow); font: 600 clamp(1.4rem, 2.4vw, 2rem)/1.25 "Trebuchet MS", Arial, sans-serif; }
.about-hero__copy > p:not(.eyebrow):not(.about-hero__lead) { max-width: 43rem; }
.about-hero__anchors { display: flex; flex-wrap: wrap; gap: 1.5rem; margin-top: 3rem; }
.about-hero__anchors a { min-height: 3rem; display: inline-flex; align-items: center; gap: .6rem; color: var(--fd-white); font-weight: 700; text-decoration-thickness: 2px; text-underline-offset: .35em; }
.about-story__grid { display: grid; grid-template-columns: minmax(16rem, .8fr) minmax(0, 1.2fr); gap: var(--fd-grid-gap); }
.about-story__heading h2 { max-width: 10ch; margin-bottom: 0; }
.about-story__copy { max-width: 46rem; }
.about-story__copy .lead { max-width: 39rem; }
.about-story__copy p:last-child { margin-bottom: 0; }
.about-mission { color: var(--fd-white); background: var(--fd-cobalt); }
.about-mission__grid { min-height: 35rem; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(17rem, .9fr); gap: var(--fd-grid-gap); align-items: center; }
.about-mission__copy h2 { max-width: 9ch; color: var(--fd-white); }
.about-mission__copy p { max-width: 39rem; }
.about-mission__statement { min-height: 25rem; display: grid; align-content: center; justify-items: end; padding-right: clamp(1rem, 5vw, 5rem); border-left: 1px solid rgba(255,255,255,.32); color: rgba(255,255,255,.22); font: 900 clamp(4rem, 10vw, 9rem)/.77 Arial Black, Arial, sans-serif; letter-spacing: -.09em; text-align: right; }
.about-mission__statement span { display: block; }
.belief-deep { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.belief-deep h2, .belief-deep h3 { color: var(--fd-white); }
.belief-deep__intro { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(18rem, .9fr); gap: var(--fd-grid-gap); align-items: end; margin-bottom: clamp(3rem, 6vw, 5rem); }
.belief-deep__intro h2 { max-width: 10ch; margin-bottom: 0; }
.belief-deep__intro > :last-child { padding-bottom: .25rem; }
.belief-grid--full { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.3); }
.belief-card { min-height: 19rem; padding: 1.6rem clamp(1rem, 2.7vw, 2.5rem) 2rem 0; border-right: 1px solid rgba(255,255,255,.3); border-bottom: 1px solid rgba(255,255,255,.3); }
.belief-card:nth-child(3n + 2) { padding-left: clamp(1rem, 2.7vw, 2.5rem); }
.belief-card:nth-child(3n) { padding-left: clamp(1rem, 2.7vw, 2.5rem); border-right: 0; }
.belief-card__number { margin-bottom: 3.2rem; color: var(--fd-yellow); font: 700 .78rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .1em; }
.belief-card h3 { margin-bottom: .9rem; font-size: clamp(1.55rem, 2.3vw, 2.25rem); }
.belief-card p:last-child { margin-bottom: 0; color: rgba(255,255,255,.86); }
.about-leadership { background: var(--fd-paper); }
.leadership-intro { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(18rem, .9fr); gap: var(--fd-grid-gap); align-items: end; margin-bottom: clamp(3rem, 6vw, 5rem); }
.leadership-intro h2 { max-width: 10ch; margin-bottom: 0; }
.leadership-intro > :last-child { padding-bottom: .25rem; }
.leader-feature { display: grid; grid-template-columns: minmax(20rem, .72fr) minmax(0, 1.28fr); min-height: 30rem; margin-bottom: 1px; background: var(--fd-paper-light); }
.leader-feature__media { min-height: 30rem; overflow: hidden; background: var(--fd-coral); }
.leader-feature__image { width: 100%; height: 100%; object-fit: cover; object-position: center 28%; }
.leader-feature__copy { padding: clamp(2rem, 5vw, 5rem); align-self: center; }
.leader-feature__copy h3 { margin-bottom: 1.25rem; font-size: clamp(2.3rem, 4vw, 4.2rem); }
.leader-card__role { margin-bottom: .8rem; color: var(--fd-cobalt-dark); font: 700 .75rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.leader-card { min-height: 0; padding: 2rem clamp(1rem, 2.7vw, 2.5rem) 2.5rem 0; border-top: 1px solid var(--fd-rule); border-right: 1px solid var(--fd-rule); }
.leader-card__media { aspect-ratio: 4 / 3; margin-bottom: 1.5rem; overflow: hidden; }
.leader-card__image { width: 100%; height: 100%; object-fit: cover; object-position: center 30%; }
.leader-card:nth-child(3n) { border-right: 0; }
.leadership-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.leadership-grid .leader-card:nth-child(2), .leadership-grid .leader-card:nth-child(3) { padding-left: clamp(1rem, 2.7vw, 2.5rem); }
.leader-card h3 { margin-bottom: 1rem; font-size: clamp(1.8rem, 2.8vw, 2.7rem); }
.leader-card p:not(.leader-card__role) { max-width: 34rem; }
.leader-card .text-link { margin-top: .6rem; }
.governance-band { display: grid; grid-template-columns: minmax(15rem, .8fr) minmax(0, 1.2fr); gap: var(--fd-grid-gap); margin-top: clamp(4rem, 8vw, 7rem); padding-top: 2rem; border-top: 1px solid var(--fd-ink); }
.governance-band h3 { max-width: 11ch; margin-bottom: 0; font-size: clamp(2rem, 3.5vw, 3.35rem); }
.governance-band p:last-child { margin-bottom: 0; }
.about-close { padding-block: clamp(4rem, 7vw, 6.5rem); color: var(--fd-ink-strong); background: var(--fd-yellow); }
.about-close__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 3rem; align-items: end; }
.about-close h2 { max-width: 10ch; margin-bottom: 1rem; }
.about-close__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }

/* Contributor profiles */
.profile-hero { padding-top: 6rem; color: var(--fd-white); background: var(--fd-ink-strong); }
.profile-hero__grid { min-height: 39rem; display: grid; grid-template-columns: minmax(20rem, .78fr) minmax(0, 1.22fr); grid-template-areas: "portrait identity"; gap: var(--fd-grid-gap); align-items: stretch; }
.profile-hero__visual { grid-area: portrait; min-height: 32rem; position: relative; overflow: hidden; background: linear-gradient(145deg, var(--fd-coral), var(--fd-cobalt)); }
.profile-hero__visual::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 40%, rgba(25,25,25,.42)); }
.profile-hero__image { width: 100%; height: 100%; object-fit: cover; object-position: center 35%; }
.profile-hero__copy { grid-area: identity; align-self: center; padding-block: var(--fd-section); }
.profile-hero__role { margin-bottom: .9rem; color: var(--fd-yellow); font: 700 .76rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.profile-hero h1 { max-width: 9ch; margin-bottom: 1.3rem; color: var(--fd-white); font-family: "Basic Commercial", Arial Black, Arial, sans-serif; font-weight: 800; }
.profile-hero .lead { max-width: 42rem; }
.profile-main__grid { display: grid; grid-template-columns: minmax(15rem, .72fr) minmax(0, 1.28fr); gap: var(--fd-grid-gap); }
.profile-sidebar { align-self: start; padding-top: 1.5rem; border-top: 1px solid var(--fd-ink); }
.profile-sidebar p { max-width: 28rem; }
.profile-sidebar__links { display: grid; margin-top: 2rem; border-top: 1px solid var(--fd-rule); }
.profile-sidebar__links a { min-height: 3.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--fd-rule); font-weight: 750; text-decoration: none; }
.profile-sidebar__links a:hover { color: var(--fd-cobalt); text-decoration: underline; }
.profile-copy { max-width: 53rem; }
.profile-copy h2 { max-width: 11ch; margin-bottom: 2rem; }
.profile-copy p { max-width: 69ch; }
.profile-focus { margin-top: 3rem; padding: 1.5rem 1.75rem; border-left: .45rem solid var(--fd-cobalt); background: var(--fd-paper-light); }
.profile-focus p:last-child { margin-bottom: 0; }
.profile-focus__label { margin-bottom: .65rem; color: var(--fd-cobalt-dark); font: 700 .76rem/1.2 ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.profile-next { padding-block: clamp(4rem, 7vw, 6.5rem); color: var(--fd-white); background: var(--fd-cobalt); }
.profile-next__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 3rem; align-items: end; }
.profile-next h2 { max-width: 11ch; color: var(--fd-white); }
.profile-next__actions { display: flex; flex-wrap: wrap; gap: .75rem; }

@media (min-width: 768px) and (max-width: 1199px) {
  .belief-grid--full { grid-template-columns: repeat(2, 1fr); }
  .belief-grid--full .belief-card:nth-child(2n+1) { padding-left: 0; border-right: 1px solid rgba(255,255,255,.3); }
  .belief-grid--full .belief-card:nth-child(2n) { padding-left: clamp(1rem, 2.7vw, 2.5rem); border-right: 0; }
}

@media (max-width: 767px) {
  .about-hero { min-height: 47rem; }
  .about-hero__content { padding-top: 8rem; }
  .about-hero__art::after { background: linear-gradient(180deg, rgba(16,16,16,.28), rgba(16,16,16,.92) 65%); }
  .about-hero__anchors { margin-top: 2rem; }
  .about-story__grid, .about-mission__grid, .belief-deep__intro, .leadership-intro, .governance-band, .about-close__inner, .profile-hero__grid, .profile-main__grid, .profile-next__inner { grid-template-columns: 1fr; }
  .about-story__heading h2, .about-mission__copy h2, .belief-deep__intro h2, .leadership-intro h2, .governance-band h3, .about-close h2, .profile-copy h2, .profile-next h2 { max-width: 12ch; }
  .about-mission__grid { min-height: auto; padding-block: var(--fd-section); }
  .about-mission__statement { min-height: 15rem; padding: 2rem 0 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.32); justify-items: start; text-align: left; font-size: clamp(3.5rem, 17vw, 6rem); }
  .belief-grid--full, .leadership-grid { grid-template-columns: 1fr; }
  .belief-card, .belief-card:nth-child(3n), .belief-card:nth-child(2n) { min-height: auto; padding: 1.5rem 0 2rem; border-right: 0; }
  .belief-card__number { margin-bottom: 2rem; }
  .leader-feature { grid-template-columns: 1fr; }
  .leader-feature__media { min-height: 26rem; }
  .leader-feature__copy { padding: 2rem var(--fd-gutter) 2.5rem; }
  .leadership-grid .leader-card, .leadership-grid .leader-card:nth-child(2), .leadership-grid .leader-card:nth-child(3), .leadership-grid .leader-card:nth-child(2n), .leadership-grid .leader-card:nth-child(3n) { min-height: auto; padding: 2rem 0 2.5rem; border-right: 0; }
  .governance-band { gap: 1.5rem; }
  .about-close__actions, .profile-next__actions { display: grid; }
  .profile-hero__grid { min-height: auto; gap: 0; }
  .profile-hero__visual { min-height: 24rem; margin-inline: calc(var(--fd-gutter) * -1); }
  .profile-hero__copy { padding-block: 3rem 4.5rem; }
  .profile-main__grid { gap: 3.5rem; }
  .profile-sidebar { padding-top: 1.25rem; }
}
/* Ministries / Kids / Youth / Rise vertical */
.ministry-hero {
  min-height: min(44rem, 76svh);
  padding-top: 6rem;
  display: grid;
  align-items: stretch;
  color: var(--fd-white);
  background: var(--fd-ink-strong);
  overflow: hidden;
}
.ministry-hero__grid { display: grid; grid-template-columns: 1.08fr .92fr; align-items: stretch; }
.ministry-hero__copy { max-width: 55rem; padding-block: var(--fd-section); }
.ministry-hero h1 { max-width: 14ch; margin-bottom: 1.5rem; color: var(--fd-white); }
.ministry-hero__copy .lead { max-width: 34rem; color: var(--fd-yellow); font-weight: 700; }
.ministry-hero__copy > p:not(.eyebrow):not(.lead) { max-width: 40rem; }
.ministry-hero__marker {
  position: relative;
  align-self: stretch;
  margin-right: calc(var(--fd-gutter) * -1);
  padding-right: var(--fd-gutter);
  display: grid;
  align-content: center;
  justify-items: end;
  border-left: 1px solid rgba(255,255,255,.3);
  color: rgba(255,255,255,.16);
  font: 900 clamp(3.7rem, 8.6vw, 9rem)/.75 Arial Black, Arial, sans-serif;
  letter-spacing: -.08em;
  text-align: right;
}
.ministry-hero__marker::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .17;
  background-image: radial-gradient(circle at center, #fff 0 1px, transparent 1.5px);
  background-size: 7px 7px;
}
.ministry-hero__marker span { position: relative; display: block; }
.ministry-choices { background: var(--fd-paper); }
.ministry-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.5rem, 3vw, 3rem); }
.ministry-card { min-width: 0; display: flex; flex-direction: column; border-top: 1px solid var(--fd-ink); }
.ministry-card > .eyebrow { min-height: 3rem; display: flex; align-items: center; margin: 0; padding-block: .85rem; color: var(--fd-cobalt-dark); }
.ministry-card__media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--fd-cobalt); }
.ministry-card__image { width: 100%; height: 100%; object-fit: cover; }
.ministry-card__body { flex: 1; padding: 1.5rem 0 0; display: flex; flex-direction: column; align-items: flex-start; }
.ministry-card__body .eyebrow { margin-bottom: .9rem; color: var(--fd-cobalt); }
.ministry-card__body h3 { max-width: 12ch; margin-bottom: .8rem; font-size: clamp(1.9rem, 3vw, 3rem); }
.ministry-card__body p:not(.eyebrow) { max-width: 34ch; margin-bottom: 1.25rem; }
.ministry-card__body .text-link { margin-top: auto; }
.ministry-band { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-cobalt); }
.ministry-band h2 { max-width: 12ch; color: var(--fd-white); }
.ministry-band__intro { max-width: 52rem; margin-bottom: 3rem; }
.service-boundary-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--fd-rule); }
.service-boundary { min-height: 18rem; padding: clamp(1.5rem, 3vw, 2.5rem); color: var(--fd-ink-strong); background: var(--fd-paper); }
.service-boundary--cobalt { color: var(--fd-white); background: var(--fd-cobalt-dark); }
.service-boundary--yellow { color: var(--fd-ink-strong); background: var(--fd-yellow); }
.service-boundary--ink { color: var(--fd-white); background: var(--fd-ink-strong); }
.service-boundary__label { margin-bottom: 2.5rem; font: 700 .76rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .15em; text-transform: uppercase; }
.service-boundary h3 { max-width: 16ch; margin-bottom: .85rem; color: inherit; font-size: clamp(1.75rem, 3vw, 2.7rem); }
.service-boundary p { max-width: 48ch; }
.service-boundary__detail { margin-top: 1.25rem; padding-top: 1rem; border-top: 1px solid currentColor; font-size: .94rem; }
.ministry-next { background: var(--fd-paper-light); }
.ministry-next__grid { display: grid; grid-template-columns: 1fr .9fr; gap: var(--fd-grid-gap); align-items: end; }
.ministry-next h2 { max-width: 11ch; }
.ministry-related { padding-block: var(--fd-section); background: var(--fd-paper-light); }
.ministry-related h2 { max-width: 12ch; }

.ministry-page-hero { padding-top: 6rem; color: var(--fd-white); background: var(--fd-cobalt); overflow: hidden; }
.youth-page-hero { background: var(--fd-ink-strong); }
.rise-page-hero { background: var(--fd-cobalt-dark); }
.ministry-page-hero__grid { min-height: min(45rem, 78svh); display: grid; grid-template-columns: 1.05fr .95fr; align-items: stretch; }
.ministry-page-hero__copy { max-width: 52rem; padding-block: var(--fd-section); align-self: center; }
.ministry-page-hero h1 { max-width: 16ch; margin-bottom: 1.5rem; color: var(--fd-white); }
.ministry-page-hero__copy .lead { max-width: 40rem; color: var(--fd-yellow); font-weight: 700; }
.ministry-page-hero__copy > p:not(.eyebrow):not(.lead) { max-width: 42rem; }
.ministry-page-hero__media { min-height: 34rem; position: relative; margin-right: calc(var(--fd-gutter) * -1); overflow: hidden; background: var(--fd-ink); }
.ministry-page-hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,16,16,.45), rgba(16,16,16,.04) 55%); pointer-events: none; }
.ministry-page-hero__image { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.kids-experience { background: var(--fd-paper); }
.kids-practices, .youth-values__grid, .rise-pillars { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--fd-rule); border-bottom: 1px solid var(--fd-rule); }
.youth-values__grid, .rise-pillars { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.kids-practices article, .youth-values__grid article, .rise-pillars article { min-height: 15rem; padding: 1.4rem clamp(1rem, 2vw, 2rem) 1.75rem 0; display: flex; flex-direction: column; border-right: 1px solid var(--fd-rule); }
.kids-practices article + article, .youth-values__grid article + article, .rise-pillars article + article { padding-left: clamp(1rem, 2vw, 2rem); }
.kids-practices article:last-child, .youth-values__grid article:last-child, .rise-pillars article:last-child { border-right: 0; }
.kids-practices__number, .youth-values__number, .rise-pillars__number { margin-bottom: auto; color: var(--fd-cobalt); font: 700 .78rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; }
.kids-practices h3, .youth-values__grid h3, .rise-pillars h3 { margin-bottom: .7rem; font-size: clamp(1.7rem, 2.7vw, 2.45rem); }
.kids-practices p:last-child, .youth-values__grid p:last-child, .rise-pillars p:last-child { margin-bottom: 0; }
.kids-sunday { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.kids-sunday h2, .youth-sunday h2 { max-width: 12ch; color: var(--fd-white); }
.kids-sunday__intro, .youth-sunday__intro { max-width: 52rem; margin-bottom: 3rem; }
.kids-checkin { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-cobalt); }
.kids-checkin__grid, .kids-unknowns__grid, .youth-current__grid, .rise-current__grid { display: grid; grid-template-columns: 1fr .85fr; gap: var(--fd-grid-gap); align-items: center; }
.kids-checkin h2, .youth-current h2, .rise-current h2 { max-width: 11ch; color: var(--fd-white); }
.kids-checkin__card { padding: clamp(1.5rem, 3vw, 2.5rem); color: var(--fd-ink-strong); background: var(--fd-yellow); }
.kids-checkin__label { padding-bottom: 1rem; border-bottom: 1px solid var(--fd-ink-strong); font: 700 .76rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.kids-checkin__card p:last-child { margin-bottom: 0; }
.kids-checkin__note { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--fd-ink-strong); font-size: .94rem; }
.kids-unknowns { background: var(--fd-paper-light); }
.kids-unknowns h2 { max-width: 12ch; }
.status-note { padding: 1.4rem 1.5rem; border: 1px solid var(--fd-rule); background: var(--fd-paper); }
.status-note__label { padding-bottom: .8rem; border-bottom: 1px solid var(--fd-ink); font: 700 .76rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .14em; text-transform: uppercase; }
.status-note p:last-child { margin-bottom: 0; }
.youth-values { background: var(--fd-paper); }
.youth-values__grid, .rise-pillars { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.youth-sunday { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-cobalt); }
.youth-current { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.youth-current .status-note, .rise-current .status-note { color: var(--fd-ink-strong); }
.youth-current .button--primary, .rise-current .button--primary { color: var(--fd-ink-strong); background: var(--fd-yellow); }
.rise-story { background: var(--fd-paper); }
.rise-pillars { margin-top: 1rem; }
.rise-current { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-cobalt); }
.rise-current h2 { color: var(--fd-white); }
.rise-current a:not(.button), .youth-current a:not(.button), .kids-checkin a:not(.button) { color: inherit; }

@media (min-width: 768px) and (max-width: 1199px) {
  .ministry-hero__grid, .ministry-page-hero__grid { grid-template-columns: 1.3fr .7fr; }
  .ministry-hero__marker { font-size: clamp(3.3rem, 8vw, 7rem); }
  .ministry-page-hero__media { min-height: 30rem; }
  .kids-practices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kids-practices article:nth-child(2n) { border-right: 0; }
  .kids-practices article:nth-child(2n+1) { padding-left: 0; }
  .kids-practices article:nth-child(n+3) { border-top: 1px solid var(--fd-rule); }
}

@media (max-width: 767px) {
  .ministry-hero { min-height: auto; padding-top: 5.25rem; }
  .ministry-hero__grid, .ministry-page-hero__grid, .ministry-next__grid, .kids-checkin__grid, .kids-unknowns__grid, .youth-current__grid, .rise-current__grid { grid-template-columns: 1fr; }
  .ministry-hero__copy, .ministry-page-hero__copy { padding-block: 3.5rem 4rem; }
  .ministry-hero__marker { min-height: 10rem; margin: 0 calc(var(--fd-gutter) * -1); padding: 1.5rem var(--fd-gutter); border-top: 1px solid rgba(255,255,255,.3); border-left: 0; font-size: clamp(3rem, 17vw, 5.5rem); }
  .ministry-cards { grid-template-columns: 1fr; gap: 3rem; }
  .ministry-card__media { aspect-ratio: 16 / 10; }
  .ministry-card__body h3 { max-width: 14ch; }
  .service-boundary-grid { grid-template-columns: 1fr; }
  .service-boundary { min-height: auto; }
  .service-boundary__label { margin-bottom: 1.75rem; }
  .ministry-page-hero { padding-top: 5.25rem; }
  .ministry-page-hero__media { min-height: 22rem; margin: 0 calc(var(--fd-gutter) * -1); }
  .ministry-page-hero__media::after { background: linear-gradient(180deg, rgba(16,16,16,.08), rgba(16,16,16,.62)); }
  .kids-practices, .youth-values__grid, .rise-pillars { grid-template-columns: 1fr; }
  .kids-practices article, .kids-practices article + article, .youth-values__grid article, .youth-values__grid article + article, .rise-pillars article, .rise-pillars article + article { min-height: auto; padding: 1.5rem 0 2rem; border-right: 0; border-top: 0; border-bottom: 1px solid var(--fd-rule); }
  .kids-practices article:last-child, .youth-values__grid article:last-child, .rise-pillars article:last-child { border-bottom: 0; }
  .kids-practices__number, .youth-values__number, .rise-pillars__number { margin-bottom: 2.5rem; }
  .kids-checkin__grid, .kids-unknowns__grid, .youth-current__grid, .rise-current__grid { gap: 2rem; }
  .ministry-related { padding-block: 4rem; }
}

/* Messages use the shared Front Door palette, type and spacing. */
.media-hero { padding-block: 10rem 4rem; color: var(--fd-white); background: var(--fd-ink-strong); }
.media-hero--cobalt { background: var(--fd-cobalt-dark); }
.media-hero__grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: var(--fd-grid-gap); align-items: center; }
.media-hero__copy { min-width: 0; }
.media-hero h1 { max-width: 13ch; margin-bottom: 1.4rem; color: var(--fd-white); font-size: clamp(3rem, 4.8vw, 5.2rem); }
.media-hero__copy .lead { max-width: 32ch; color: var(--fd-white); }
.media-feature, .watch-feature, .message-player { min-width: 0; }
.media-feature__body { padding-top: 1.5rem; }
.media-feature h2, .watch-feature h2 { max-width: 28ch; margin-bottom: 1rem; color: var(--fd-white); font-size: clamp(1.65rem, 2.5vw, 2.4rem); }
.media-feature__body > p { margin-bottom: 1.2rem; }
.media-feature__owned-image { width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; }
.message-date { display: block; font: 500 .78rem/1.5 "Maison Mono", ui-monospace, Consolas, monospace; }
.media-hero .message-date { color: var(--fd-white); }
.message-art { position: relative; display: block; width: 100%; aspect-ratio: 16/9; overflow: hidden; background: var(--fd-cobalt-dark); }
.message-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.message-art__fallback { position: absolute; inset: 0; display: grid; align-content: center; padding: 1.5rem; color: var(--fd-white); text-align: left; font-weight: 700; }
.message-art__fallback[hidden], .message-art img[hidden] { display: none; }
.message-art__play { position: absolute; right: 1rem; bottom: 1rem; width: 2.7rem; height: 2.7rem; display: grid; place-items: center; border-radius: 50%; color: var(--fd-ink-strong); background: var(--fd-white); font-size: 1rem; }
.media-feature > a, .media-card__image { display: block; }
.media-archive { background: var(--fd-paper); padding-block: 4rem; }
.media-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem 2rem; }
.media-card { min-width: 0; display: flex; flex-direction: column; border-bottom: 1px solid var(--fd-rule); }
.media-card__body { flex: 1; display: flex; flex-direction: column; padding-block: 1.1rem 1.6rem; }
.media-card .message-date { margin-bottom: .75rem; color: var(--fd-cobalt-dark); }
.media-card h3 { margin-bottom: 1rem; font-size: clamp(1.35rem, 2vw, 1.9rem); }
.media-card h3 a { text-decoration: none; }
.media-card h3 a:hover { text-decoration: underline; text-decoration-thickness: 2px; }
.media-card .text-link { margin-top: auto; }
.media-card__speaker { font-size: .9rem; }
.message-pagination { margin-top: 2.5rem; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; }
.message-pagination > span { font: 500 .8rem/1.4 "Maison Mono", ui-monospace, Consolas, monospace; }
.message-archive-more { margin-top: 2rem; }
.media-state { padding: 1.5rem; color: var(--fd-ink-strong); background: var(--fd-paper-light); }
.media-state p { margin-bottom: 1rem; }
.media-state .button { margin-bottom: 0; }
.media-feature--fallback .media-state { margin-top: 1rem; }
.media-bridge { padding-block: 4rem; color: var(--fd-white); background: var(--fd-cobalt); }
.media-bridge__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--fd-grid-gap); align-items: center; }
.media-bridge h2 { max-width: 14ch; color: inherit; }
.message-player__preview { position: relative; width: 100%; display: block; padding: 0; border: 0; cursor: pointer; text-decoration: none; background: var(--fd-cobalt-dark); }
.message-player__label { position: absolute; left: 1rem; bottom: 1rem; padding: .55rem .8rem; color: var(--fd-ink-strong); background: var(--fd-white); font: 700 .85rem/1.2 "Basic Commercial", Arial, sans-serif; }
.message-player iframe { display: block; width: 100%; aspect-ratio: 16/9; height: auto; border: 0; background: var(--fd-ink-strong); }
.message-player__recovery { margin-top: .8rem; font-size: .9rem; }
.media-hero .message-player__recovery a { color: var(--fd-white); }
.watch-feature > h2 { margin-top: 1.5rem; }
.message-back { display: inline-block; margin-bottom: 1.5rem; color: var(--fd-white); font-size: .9rem; }
.episode-page .media-hero h1 { font-size: clamp(2.3rem, 3.7vw, 4rem); max-width: 22ch; }
.message-description { padding-block: 3rem; background: var(--fd-paper-light); }
.message-description .frame { max-width: 54rem; }
@media (max-width: 1199px) {
  .media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 899px) {
  .media-hero { padding-block: 8.5rem 3rem; }
  .media-hero__grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .media-hero h1 { max-width: 18ch; }
  .media-hero__copy .lead { max-width: 45ch; }
  .media-feature__body { max-width: 40rem; }
  .media-bridge__grid { grid-template-columns: 1fr; gap: 2rem; }
}
@media (max-width: 599px) {
  .media-hero { padding-block: 7.5rem 2.5rem; }
  .media-hero__grid { gap: 2rem; }
  .media-hero h1 { font-size: 3rem; }
  .media-hero__copy .lead { font-size: 1.1rem; }
  .media-feature h2, .watch-feature h2 { font-size: 1.7rem; }
  .media-grid { grid-template-columns: 1fr; gap: 2rem; }
  .media-card h3 { font-size: 1.65rem; }
  .media-archive, .media-bridge { padding-block: 3rem; }
  .message-pagination .button { width: 100%; }
  .message-player__label { font-size: .8rem; }
}
/* Wrapped card rows reset their edges before the mobile stack takes over. */
@media (min-width: 768px) and (max-width: 1199px) {
  .community-rhythm--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .community-rhythm--four .community-rhythm__card:nth-child(2) { border-right: 0; }
  .community-rhythm--four .community-rhythm__card:nth-child(2n+1) { padding-left: 0; }
  .community-rhythm--four .community-rhythm__card:nth-child(n+3) { border-top: 1px solid var(--fd-rule); }
}

/* Shared display fields fit their own columns instead of splitting words. */
.visit-hero__marker, .ministry-hero__marker, .media-hero__marker, .about-mission__statement { container-type: inline-size; overflow-wrap: normal; word-break: normal; line-height: .9; }
.visit-hero__marker span, .ministry-hero__marker span, .media-hero__marker span, .about-mission__statement span { white-space: nowrap; font-size: clamp(1.5rem, 13cqi, 6rem); }

/* Recompose editorial columns before tablet widths squeeze the text and tasks. */
@media (max-width: 1023px) {
  .section-intro--split, .visit-hero__grid, .visit-facts__heading, .handoff-grid,
  .connection-hero__grid, .community-band__inner, .community-note__inner,
  .provider-handoff, .serve-areas__inner, .community-close__inner,
  .about-story__grid, .about-mission__grid, .belief-deep__intro, .leadership-intro, .governance-band,
  .profile-hero__grid, .profile-main__grid, .ministry-hero__grid, .ministry-page-hero__grid,
  .ministry-next__grid, .kids-checkin__grid, .kids-unknowns__grid, .youth-current__grid, .rise-current__grid,
  .media-hero__grid, .media-current__grid, .watch-state__grid, .media-channel-state__grid,
  .media-channel-archive__grid, .media-bridge__grid, .episode-player__grid, .episode-context__grid, .episode-next__grid, .watch-fallback__grid { grid-template-columns: minmax(0, 1fr); }
  .visit-hero__essentials { grid-template-columns: minmax(0, 1fr); }
  .visit-hero__essentials .button { justify-self: start; }
  .confidence-grid { grid-template-columns: minmax(0, 1fr); }
  .confidence-block, .confidence-block + .confidence-block { padding: 1.5rem 0; border-right: 0; border-bottom: 1px solid var(--fd-rule); }
  .confidence-block:last-child { border-bottom: 0; }
  .visit-hero__marker, .ministry-hero__marker, .media-hero__marker, .about-mission__statement { min-height: 0; margin: 0; padding: 1.5rem 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: .75rem 1.25rem; border-left: 0; border-top: 1px solid rgba(255,255,255,.3); text-align: left; }
  .visit-hero__marker span, .ministry-hero__marker span, .media-hero__marker span, .about-mission__statement span { font-size: clamp(1.25rem, 4.2vw, 3rem); }
  .connection-hero__media, .connection-hero__image { min-height: 0; height: clamp(22rem, 55vw, 30rem); }
  .connection-hero__media { margin-block: 0; }
  .ministry-page-hero__media { min-height: 0; height: clamp(22rem, 55vw, 30rem); }
  .profile-hero__grid { min-height: 0; grid-template-areas: "identity" "portrait"; gap: 0; }
  .profile-hero__visual { min-height: 0; height: clamp(22rem, 60vw, 32rem); }
  .profile-hero__copy { padding-block: 3rem; }
  .community-close__inner, .section-intro--split { gap: var(--fd-section-gap); }
}

/* Visit keeps its arrival, journey choice and forms on one deliberate grid. */
.visit-page .visit-hero { min-height: auto; }
.visit-page .visit-hero__grid { grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: var(--fd-grid-gap); align-items: stretch; }
.visit-page .visit-hero__copy { padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.visit-page .visit-hero__copy h1 { max-width: 13ch; margin-bottom: 1.25rem; font-size: clamp(2.6rem, 4.6vw, 4.9rem); }
.visit-page .visit-hero__copy .lead { font-size: clamp(1.15rem, 1.5vw, 1.4rem); }
.visit-page .visit-hero__essentials { display: block; }
.visit-page .visit-hero__essentials .text-link { margin-top: .75rem; }
.visit-page .visit-hero__media { position: relative; min-width: 0; min-height: 34rem; overflow: hidden; }
.visit-page .visit-hero__media img { object-position: 28% center; }
.visit-page .visit-paths { padding-block: var(--fd-section-gap); background: var(--fd-paper-light); }
.visit-page .visit-paths h2 { margin-bottom: 1.5rem; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.visit-page .visit-paths__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.visit-page .visit-path { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid var(--fd-rule); }
.visit-page .visit-path--first { background: var(--fd-yellow); border-color: var(--fd-yellow); }
.visit-page .visit-path__label { margin-bottom: .75rem; font: 500 .76rem/1.4 "Maison Mono", ui-monospace, Consolas, monospace; text-transform: uppercase; letter-spacing: .1em; }
.visit-page .visit-path h3 { margin-bottom: .75rem; font-size: clamp(1.8rem, 2.7vw, 2.6rem); }
.visit-page .visit-path .button { margin-top: auto; max-width: 100%; }
.visit-page .visit-plan-section { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-ink-strong); }
.visit-page .provider-handoff--plan-your-visit { max-width: 48rem; gap: 1.5rem; }
.visit-page .provider-handoff--plan-your-visit h2 { max-width: none; font-size: clamp(2rem, 3vw, 2.75rem); }
.visit-page .provider-handoff--plan-your-visit .provider-embed__frame { height: auto; border: 0; }
.visit-page .provider-handoff--plan-your-visit .provider-handoff__recovery { max-width: none; padding: 1.25rem; }
.visit-page .provider-handoff--plan-your-visit .provider-handoff__recovery .provider-handoff__label { display: none; }
.visit-page .provider-handoff--plan-your-visit .provider-handoff__recovery p { margin-bottom: .25rem; }
/* Light section so the provider form's own white/beige card is not nested inside a dark panel. */
.visit-page .visit-plan-section { color: var(--fd-ink-strong); background: var(--fd-paper); }
.visit-page .provider-handoff--plan-your-visit { color: var(--fd-ink-strong); background: transparent; }
.visit-page .provider-handoff--plan-your-visit h2, .visit-page .provider-handoff--plan-your-visit .provider-handoff__main h2 { color: var(--fd-ink-strong); }
.visit-page .provider-handoff--plan-your-visit .provider-embed__frame { border: 1px solid var(--fd-rule); background: var(--fd-white); }
.visit-page .visit-expectation, .visit-page .visit-arrival, .visit-page .visit-family, .visit-page .visit-questions { padding-block: var(--fd-section); }
.visit-page .visit-expectation__grid, .visit-page .visit-family__grid, .visit-page .visit-questions__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--fd-grid-gap); align-items: center; }
.visit-page .visit-expectation__media { aspect-ratio: 16 / 10; overflow: hidden; }
.visit-page .visit-expectation__media img { width: 100%; height: 100%; object-fit: cover; }
.visit-page .visit-arrival { background: var(--fd-paper-light); }
.visit-page .visit-arrival__facts { margin: 1.75rem 0 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem var(--fd-grid-gap); }
.visit-page .visit-arrival__facts div { padding-top: 1rem; border-top: 1px solid var(--fd-rule); }
.visit-page .visit-arrival__facts dt { margin-bottom: .5rem; color: var(--fd-ink-strong); font-weight: 800; }
.visit-page .visit-arrival__facts dd { margin: 0; }
.visit-page .visit-family__grid, .visit-page .visit-questions__grid { align-items: start; }
.visit-page .visit-family__checkin { padding: 1.5rem; background: var(--fd-yellow); }
.visit-page .visit-family__checkin h3 { font-size: 1.7rem; }
.visit-page .visit-family__checkin p { margin-bottom: 0; }
.visit-page .visit-questions { padding-top: 0; }
.visit-page .visit-questions .faq-wrap { max-width: none; margin: 0; }
@media (min-width: 1200px) {
  .visit-page .visit-hero { padding-top: 7rem; }
}
@media (min-width: 700px) and (max-width: 999px) {
  .visit-page .visit-hero__grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
  .visit-page .visit-hero__essentials .fact-list { grid-template-columns: 1fr; }
}
@media (max-width: 699px) {
  .visit-page .visit-hero__grid, .visit-page .visit-paths__grid, .visit-page .visit-expectation__grid, .visit-page .visit-family__grid, .visit-page .visit-questions__grid, .visit-page .visit-arrival__facts { grid-template-columns: 1fr; }
  .visit-page .visit-hero__media { min-height: 0; aspect-ratio: 1.15; }
  .visit-page .visit-hero__copy { padding-block: 2rem 1rem; }
  .visit-page .visit-hero__essentials .fact-list { grid-template-columns: 1fr; }
  .visit-page .visit-expectation__grid, .visit-page .visit-family__grid, .visit-page .visit-questions__grid { gap: 1.75rem; }
}

/* Locations and governance extend the established paper, cobalt and photo system. */
.location-index-hero, .location-hero { padding-block: 9.5rem 3.5rem; color: var(--fd-white); background: var(--fd-ink-strong); }
.location-index-hero h1, .location-hero h1 { color: var(--fd-white); }
.location-index-hero h1 { margin-bottom: 1.25rem; }
.location-index-hero p { max-width: 48rem; }
.location-hero__inner { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: var(--fd-grid-gap); align-items: center; }
.location-hero h1 { max-width: 12ch; font-family: "Basic Commercial", Arial, sans-serif; font-weight: 800; }
.location-hero p { max-width: 44rem; }
.location-back { display: inline-flex; min-height: 3rem; margin-bottom: 1.25rem; }
.location-hero__identity { width: 100%; max-width: 26rem; aspect-ratio: 1; display: grid; place-items: center; padding: 1.75rem; justify-self: end; background: white; }
.location-hero__identity img { width: 100%; height: 100%; object-fit: contain; }
.location-page--indy .location-hero__identity { aspect-ratio: 4 / 3; }
.location-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.25rem, 3vw, 2.5rem); }
.location-card { display: flex; flex-direction: column; border-bottom: 1px solid var(--fd-rule); }
.location-card__visual { aspect-ratio: 3 / 2; overflow: hidden; display: block; background: white; }
.location-card__visual img { width: 100%; height: 100%; object-fit: cover; }
.location-card__visual--logo { padding: 1.25rem; }
.location-card__visual--logo img { object-fit: contain; }
.location-card__copy { padding-block: 1.5rem 2rem; display: flex; flex: 1; flex-direction: column; align-items: start; }
.location-card h3 { font-size: clamp(1.8rem, 2.65vw, 2.6rem); }
.location-card__copy .text-link { margin-top: auto; }
.location-family { padding-block: var(--fd-section); color: var(--fd-white); background: var(--fd-cobalt); }
.location-family h2 { color: var(--fd-white); max-width: 13ch; }
.location-family__inner, .location-discovery__inner { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: var(--fd-grid-gap); align-items: center; }
.location-discovery { padding-block: var(--fd-section); background: var(--fd-paper); }
.location-discovery h2 { font-size: clamp(2rem, 3.6vw, 3.5rem); }
.location-links { display: grid; border-top: 1px solid var(--fd-rule); }
.location-links a { display: flex; justify-content: space-between; align-items: center; gap: 1rem; min-height: 3.75rem; padding-block: .75rem; border-bottom: 1px solid var(--fd-rule); font-size: 1.2rem; font-weight: 700; text-decoration: none; }
.location-links a:hover, .location-links a[aria-current] { color: var(--fd-cobalt-dark); text-decoration: underline; }
.location-current-life__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--fd-grid-gap); align-items: start; }
.location-current-life__inner h2 { max-width: 12ch; }
.location-current-life__list { display: grid; gap: 1.5rem; }
.location-next-step { padding: clamp(1.5rem, 3vw, 2.75rem); background: var(--fd-paper-light); border-top: .35rem solid var(--fd-cobalt); }
.location-story { background: var(--fd-paper-light); }
.location-story__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: var(--fd-grid-gap); }
.location-story figure { margin: 0; }
.location-story img { width: 100%; height: auto; }
.location-story figcaption { padding-top: .75rem; font-size: .875rem; }
.location-other h2 { font-size: clamp(2rem, 3vw, 3rem); }
.location-other .location-links { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.75rem; }
.footer-locations { display: grid; gap: .35rem; margin-top: 2rem; }
.footer-locations a { display: inline-flex; align-items: center; min-height: 3rem; }
.governance-roster { display: grid; gap: 3rem; margin-top: 3rem; }
.governance-roster h3 { font-size: clamp(1.7rem, 2.6vw, 2.5rem); }
.governance-roster section > p { max-width: 65ch; }
.governance-members { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.governance-person { display: flex; gap: 1rem; align-items: center; min-height: 7rem; padding-block: 1rem; border-top: 1px solid var(--fd-rule); text-decoration: none; font-weight: 700; }
.governance-person img { flex: 0 0 5rem; width: 5rem; height: 5rem; object-fit: cover; object-position: center 30%; }
.governance-person__link { display: block; font-size: .875rem; font-weight: 400; margin-top: .4rem; text-decoration: underline; }
.about-locations { background: var(--fd-paper-light); }
.about-locations .location-grid { margin-block: 2.5rem; }
.profile-hero--governance .profile-hero__grid { min-height: 29rem; grid-template-columns: minmax(16rem, .75fr) minmax(0, 1.25fr); grid-template-areas: "portrait identity"; gap: var(--fd-grid-gap); }
.profile-hero--governance .profile-hero__visual { min-height: 0; height: auto; margin-inline: 0; max-width: 25rem; align-self: center; aspect-ratio: 1; background: var(--fd-ink-strong); }
.profile-hero--governance .profile-hero__image { object-fit: contain; }
.profile-message { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--fd-rule); }
@media (max-width: 899px) {
  .location-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(0, .65fr); gap: 1.5rem; }
  .location-hero__identity { padding: 1rem; }
  .location-grid { grid-template-columns: 1fr; }
  .location-card { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; gap: 1.5rem; }
  .location-card__copy { padding-block: 1rem 1.5rem; }
  .location-card__copy .text-link { margin-top: .5rem; }
  .location-current-life__inner, .location-story__inner { grid-template-columns: 1fr; }
  .location-story figure { max-width: 36rem; }
  .governance-members { grid-template-columns: 1fr; }
  .profile-hero--governance .profile-hero__grid { grid-template-columns: minmax(12rem, .7fr) minmax(0, 1.3fr); }
  .location-other .location-links { grid-template-columns: 1fr; gap: 0; }
}
@media (max-width: 599px) {
  .location-index-hero, .location-hero { padding-block: 7rem 2.5rem; }
  .location-hero__inner, .location-family__inner, .location-discovery__inner, .location-grid { grid-template-columns: 1fr; }
  .location-hero__identity { max-width: 20rem; justify-self: start; margin-top: .75rem; }
  .location-grid { gap: 2rem; }
  .location-card { display: flex; gap: 0; }
  .location-card__copy { padding-block: 1.5rem 2rem; }
  .profile-hero--governance .profile-hero__grid { min-height: 0; grid-template-columns: 1fr; grid-template-areas: "identity" "portrait"; gap: 0; }
  .profile-hero--governance .profile-hero__visual { width: 100%; max-width: 22rem; margin-bottom: 2rem; }
  .profile-hero--governance .profile-hero__copy { padding-block: 2rem 1rem; }
}
:root { --continuity-space: clamp(1.25rem, 3vw, 2.5rem); }
.program-information { max-width: 900px; }
.program-information h2 { margin-top: var(--continuity-space); }
.program-information p { max-width: 72ch; }
.program-details details { border-top: 1px solid currentColor; padding: 1rem 0; }
.program-details summary { cursor: pointer; font-size: 1.15rem; font-weight: 700; }
.program-details details p { padding-top: 1rem; line-height: 1.7; }
.program-details summary:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.program-schedule { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin: 1.5rem 0; }
.program-schedule dt { font-weight: 700; }
.program-schedule dd { margin: .5rem 0 0; }
.program-process { padding-left: 1.5rem; }
.program-process li { padding: .75rem 0 .75rem .5rem; }
.full-doctrine { padding-block: var(--continuity-space); }
.full-doctrine .program-details { max-width: 85ch; }
.legacy-occurrence { padding-block: 1.25rem; background: #f3f0e8; color: #151515; }
@media (max-width: 599px) { .program-schedule { grid-template-columns: 1fr; } }
.visit-page .provider-handoff--plan-your-visit .provider-embed__fallback .button { border: 1px solid var(--fd-ink-strong); }
/* Home hero: directions link sits under the facts, address wraps evenly. */
.home-arrival { grid-template-columns: minmax(0, 1fr); gap: 1rem; align-items: start; }
.home-arrival .home-arrival__facts { grid-template-columns: minmax(8rem, .6fr) minmax(0, 1.4fr); }
.home-arrival__facts dd { text-wrap: balance; }
.home-arrival > .text-link { justify-self: start; }

/* Visual QA pass (2026-10-03) */
.ministry-hero, .ministry-page-hero { padding-top: 7rem; }
.ministry-hero__marker { color: rgba(255,255,255,.26); }
.site-header:not(.is-scrolled) .button--primary { box-shadow: inset 0 0 0 2px var(--fd-white); }
h2 + p:not(.eyebrow) { margin-top: 1.1rem; }
.button-row + p { margin-top: 1.25rem; }
.status-note + .button, .status-note + .text-link { margin-top: 1.25rem; }
.button + p { margin-top: 1rem; }
.location-card h3 { min-height: 2.1em; }
@media (max-width: 767px) {
  .belief-card:nth-child(3n + 2), .belief-card:nth-child(2n + 1) { padding-left: 0; }
}
/* Long-form program pages: align to the page grid with calmer heading scale. */
.frame.program-information { margin-inline: 0 auto; margin-left: max(var(--fd-gutter), calc((100% - var(--fd-frame)) / 2)); }
.program-information h2 { font-size: clamp(1.9rem, 3.2vw, 2.9rem); }

/* Visual QA pass 2 */
.provider-handoff__status { padding-top: 0; border-top: 0; margin-top: 1rem; }
.provider-handoff__status > span[aria-hidden="true"] { display: none; }
.provider-handoff__label, .kids-visit__label, .handoff-path__label, .status-note__label { max-width: none; }
.profile-hero { padding-top: 7rem; }
.serve-areas__list { margin-bottom: 2rem; }
.media-grid + .button, .media-grid + .button-row { margin-top: 2.5rem; }
@media (max-width: 899px) {
  .ministry-page-hero__media { margin-inline: calc(var(--fd-gutter) * -1); }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .section-intro h2, .belief-grid h2, .story-split__copy h2, .leadership-intro h2, .closing-cta h2, .connection-choices-section h2 { max-width: 18ch; }
}

/* Pre-launch polish (2026-10-03) */
.visit-plan-section .eyebrow, .visit-page .provider-handoff--plan-your-visit .eyebrow { color: var(--fd-cobalt-dark); }
#related-title, .related-section h2 { max-width: 20ch; }
#community-band-title, .community-band h2 { max-width: 14ch; }
.program-information h2 { margin-top: clamp(3.5rem, 6vw, 5rem); }
.program-information > h2:first-child { margin-top: 0; }
.give-embed__status { margin-bottom: 1rem; }
.give-embed + p { margin-top: 1.5rem; }
.online-participation { padding-bottom: clamp(2.5rem, 5vw, 4rem); }
.profile-hero__role { margin-top: 0; }
@media (min-width: 900px) {
  .community-page--table-groups .connection-hero__media { margin-top: 2rem; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .belief-grid--full .belief-card:last-child:nth-child(odd) { grid-column: 1 / -1; border-right: 0; }
  .ministry-card__link, .ministry-card .text-link { white-space: nowrap; }
}
@media (max-width: 899px) {
  .closing-cta__inner, .about-close__inner { grid-template-columns: minmax(0, 1fr); }
}

/* Give prominence: header, menu, home hero and home band. */
.button--give { color: var(--fd-ink-strong); background: var(--fd-yellow); border-color: var(--fd-yellow); }
.button--give:hover { background: var(--fd-white); border-color: var(--fd-white); }
.button--give[aria-current="page"] { box-shadow: inset 0 0 0 2px var(--fd-ink-strong); }
.desktop-nav__actions { display: flex; align-items: center; gap: .75rem; }
.header-compact-actions { display: none; align-items: center; gap: .6rem; }
.header-give { width: auto; flex: none; justify-content: center; min-height: 3rem; padding-inline: 1.1rem; }
.header-compact-actions .menu-button { flex: none; }
.compact-menu__give { display: none; }
.home-give { padding-block: 4.5rem; color: var(--fd-white); background: var(--fd-cobalt); }
.home-give__inner { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 4vw, 4rem); align-items: center; }
.home-give h2 { color: var(--fd-white); max-width: 14ch; margin-bottom: 0; font-size: clamp(2.6rem, 5vw, 4.75rem); overflow-wrap: normal; }
.home-give .lead { max-width: 34ch; margin-top: 0; margin-bottom: 1.75rem; }
@media (max-width: 1199px) {
  .header-compact-actions { display: flex; }
  .compact-menu nav .compact-menu__give { margin-bottom: 1rem; padding-inline: 1rem; border: 1px solid var(--fd-yellow); background: var(--fd-yellow); color: var(--fd-ink-strong); font-weight: 750; }
  .compact-menu nav .compact-menu__primary { margin-bottom: .6rem; }
}
@media (max-width: 767px) {
  .home-give { padding-block: 3rem; }
  .home-give__inner { grid-template-columns: 1fr; gap: 1.25rem; }
  .home-give .lead { max-width: none; }
}
@media (max-width: 359px) { .header-give { display: none; } }
@media (forced-colors: active) { .button--give { border: 2px solid ButtonText; } }
html.no-js .compact-menu nav .compact-menu__give { display: flex; color: var(--fd-ink-strong); background: var(--fd-yellow); border-color: var(--fd-ink-strong); margin-bottom: 1rem; }

/* App download page (/app) */
.remaining-page--app .button-row { margin-top: 2rem; }
.app-help { margin-top: 1.25rem; color: var(--fd-white); }
.app-help a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
@media (max-width: 767px) { .remaining-page--app .button-row { display: grid; } }

/* Our Mandate to Multiply (/mandate-to-multiply): plum, white and periwinkle from the Fall 2026 series artwork. */
@font-face {
  font-family: "Instrument Serif";
  src: url("/assets/instrument-serif-regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Instrument Serif";
  src: url("/assets/instrument-serif-italic.ttf") format("truetype");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}
.mandate-page {
  --m-plum: #572d40;
  --m-plum-deep: #3f1f2e;
  --m-peri: #5b5a89;
  --m-serif: "Instrument Serif", Georgia, "Times New Roman", serif;
}
.mandate-page h1, .mandate-page .mandate-goal h2 { font-family: var(--m-serif); font-weight: 400; text-transform: none; letter-spacing: -.01em; }
.mandate-kicker { margin: 0 0 1.25rem; font: 500 .8rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; color: var(--fd-yellow); }
.mandate-kicker--light { color: var(--fd-white); opacity: .85; }

.mandate-hero { padding-top: 6rem; color: var(--fd-white); background: var(--m-plum); border-bottom: .75rem solid var(--m-peri); }
.mandate-hero__grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: var(--fd-grid-gap); align-items: end; padding-block: clamp(2.5rem, 5vw, 4.5rem) clamp(3rem, 7vw, 6rem); }
.mandate-hero h1 { margin: 0; font-size: clamp(3.4rem, 8.4vw, 8rem); line-height: .92; color: var(--fd-white); }
.mandate-hero h1 span { display: block; }
.mandate-hero h1 em { font-style: italic; }
.mandate-hero__lead { max-width: 38rem; margin: 1.75rem 0 0; font-size: clamp(1.15rem, 1.3vw, 1.4rem); line-height: 1.5; color: rgba(255,255,255,.92); }
.mandate-hero .button-row { margin-top: 2rem; }
.mandate-hero__art img { display: block; width: 100%; height: auto; border: 2px solid var(--fd-white); }
.mandate-verse { margin: 1.5rem 0 0; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.7); font-size: .95rem; line-height: 1.55; color: rgba(255,255,255,.92); }
.mandate-verse p { margin: 0 0 .5rem; font-style: italic; }
.mandate-verse cite { font: 500 .78rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .08em; text-transform: uppercase; font-style: normal; }

.mandate-amount { color: var(--fd-white); background: var(--m-peri); padding-block: clamp(3rem, 6vw, 5rem); }
.mandate-amount__grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: var(--fd-grid-gap); align-items: center; }
.mandate-amount h2 { margin: 0; font-size: clamp(1.4rem, 2.4vw, 2rem); color: var(--fd-white); }
.mandate-amount__figure { margin: .25rem 0 0; white-space: nowrap; font-size: clamp(3rem, 8vw, 7rem); font-weight: 800; line-height: .95; letter-spacing: -.03em; }
.mandate-amount__date { margin: .5rem 0 0; font-size: clamp(1.1rem, 2vw, 1.6rem); font-weight: 800; letter-spacing: .02em; text-transform: uppercase; }
.mandate-amount__copy p { max-width: 32rem; color: rgba(255,255,255,.95); }
.mandate-amount__copy .button { margin-top: .75rem; }

.mandate-seed__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: var(--fd-grid-gap); }
.mandate-seed h2 { margin-bottom: 0; font-size: var(--fd-heading-2); }
.mandate-seed__copy p { max-width: 44rem; }
.mandate-verses { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin-top: clamp(2rem, 4vw, 3.5rem); }
.mandate-verses blockquote { margin: 0; padding-top: 1.1rem; border-top: 2px solid var(--m-plum); }
.mandate-verses p { margin: 0 0 .6rem; font-family: var(--m-serif); font-size: clamp(1.5rem, 2.2vw, 2rem); line-height: 1.2; color: var(--m-plum); }
.mandate-verses cite { font: 500 .78rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .08em; text-transform: uppercase; font-style: normal; }

.mandate-jump { background: var(--fd-paper-light); border-block: 1px solid var(--fd-rule); padding-block: 2rem; }
.mandate-jump__title { margin: 0 0 1rem; font: 500 .8rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; }
.mandate-jump ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.mandate-jump a { display: flex; flex-direction: column; gap: .5rem; height: 100%; padding: 1rem 1.1rem; border: 1px solid var(--m-plum); color: var(--m-plum); font-weight: 800; text-decoration: none; }
.mandate-jump a:hover { color: var(--fd-white); background: var(--m-plum); }
.mandate-jump a span { font: 500 .78rem/1 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .12em; }

.mandate-goal { padding-block: var(--fd-section); }
.mandate-goal--paper { background: var(--fd-paper); }
.mandate-goal--ink { color: var(--fd-white); background: var(--m-plum); }
.mandate-goal--ink h2, .mandate-goal--ink h3 { color: var(--fd-white); }
.mandate-goal--ink a { color: var(--fd-yellow); }
.mandate-goal__head { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: clamp(1rem, 3vw, 3rem); align-items: start; margin-bottom: clamp(2rem, 4vw, 3.5rem); }
.mandate-goal__head h2 { margin: 0 0 1rem; font-size: clamp(2.5rem, 5.5vw, 5rem); line-height: 1; }
.mandate-goal__head .lead { max-width: 46rem; margin: 0; }
.mandate-number { margin: 0; font-family: var(--m-serif); font-style: italic; font-size: clamp(3rem, 7vw, 6rem); line-height: .9; opacity: .55; }

.mandate-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.mandate-list li { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 1.5rem; padding-block: 1.1rem; border-top: 1px solid var(--fd-rule); }
.mandate-goal--ink .mandate-list li { border-color: rgba(255,255,255,.35); }
.mandate-list strong { font-size: 1.1rem; }
.mandate-list a { font-weight: 800; }
.mandate-split { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); gap: var(--fd-grid-gap); align-items: start; }
.mandate-split .mandate-list li { grid-template-columns: 1fr; gap: .35rem; }
.mandate-figure { margin: 0; position: sticky; top: 7rem; }
.mandate-figure img { display: block; width: 100%; height: auto; }

.mandate-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.25rem, 2.5vw, 2.25rem); align-items: start; }
.mandate-card { display: flex; flex-direction: column; gap: 1.1rem; }
.mandate-card img { display: block; width: 100%; height: auto; }
.mandate-card h3 { margin: 0 0 .6rem; font-size: clamp(1.5rem, 2vw, 2rem); }
.mandate-card p { margin: 0 0 .75rem; }
.mandate-card a { font-weight: 800; }
.mandate-card--text { padding: 1.5rem; border: 1px solid rgba(255,255,255,.45); }
.mandate-note { max-width: 52rem; margin: clamp(2rem, 4vw, 3rem) 0 0; padding-top: 1.25rem; border-top: 1px solid var(--fd-rule); }

.mandate-done { background: var(--fd-paper-light); }
.mandate-done h2, .mandate-plant h2 { max-width: 14ch; font-size: var(--fd-heading-2); }
.mandate-done .lead { max-width: 44rem; }
.mandate-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 2rem; margin: 2.5rem 0 0; }
.mandate-stats div { padding-block: 1.25rem 1.5rem; border-top: 2px solid var(--m-plum); }
.mandate-stats dt { font-family: var(--m-serif); font-size: clamp(2.4rem, 4.5vw, 4rem); line-height: 1; color: var(--m-plum); }
.mandate-stats dd { margin: .6rem 0 0; }

.mandate-ways { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin-top: 2rem; }
.mandate-ways a { position: relative; display: flex; flex-direction: column; gap: .6rem; min-height: 11rem; padding: 1.25rem 1.25rem 3rem; border: 1px solid var(--m-plum); color: var(--fd-ink); text-decoration: none; }
.mandate-ways a:hover { color: var(--fd-white); background: var(--m-plum); }
.mandate-ways strong { font-size: 1.25rem; }
.mandate-ways__go { position: absolute; right: 1.25rem; bottom: 1rem; font-size: 1.4rem; }

.mandate-close { color: var(--fd-white); background: var(--m-plum-deep); padding-block: clamp(3rem, 7vw, 6rem); }
.mandate-close h2 { max-width: 16ch; margin: 0; font-family: var(--m-serif); font-weight: 400; text-transform: none; font-size: clamp(2.8rem, 6.5vw, 6rem); line-height: .98; color: var(--fd-white); }

@media (max-width: 1023px) {
  .mandate-hero__grid, .mandate-amount__grid, .mandate-seed__grid, .mandate-split { grid-template-columns: 1fr; }
  .mandate-figure { position: static; }
  .mandate-cards, .mandate-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mandate-jump ol, .mandate-ways { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mandate-verses { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .mandate-cards, .mandate-stats, .mandate-jump ol, .mandate-ways { grid-template-columns: 1fr; }
  .mandate-list li { grid-template-columns: 1fr; gap: .35rem; }
  .mandate-goal__head { grid-template-columns: 1fr; gap: .5rem; }
  .mandate-ways a { min-height: 0; }
  .mandate-amount__figure { font-size: 15vw; }
  .mandate-hero .button-row, .mandate-close .button-row { display: grid; }
}
@media (forced-colors: active) {
  .mandate-hero__art img, .mandate-jump a, .mandate-ways a, .mandate-card--text { border: 1px solid CanvasText; }
}

/* Home banner for /mandate-to-multiply, in the series plum. */
.home-mandate { padding-block: 3rem; color: var(--fd-white); background: #572d40; }
.home-mandate__inner { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 4vw, 4rem); align-items: center; }
.home-mandate__kicker { margin: 0 0 1rem; font: 500 .76rem/1.2 "Maison Mono", ui-monospace, Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; color: var(--fd-yellow); }
.home-mandate h2 { max-width: 16ch; margin: 0; font-family: "Instrument Serif", Georgia, "Times New Roman", serif; font-weight: 400; text-transform: none; letter-spacing: -.01em; font-size: clamp(2.8rem, 5vw, 4.75rem); line-height: .95; color: var(--fd-white); }
.home-mandate h2 span { display: block; }
.home-mandate p:last-child { margin-bottom: 0; }
@media (max-width: 767px) {
  .home-mandate__inner { grid-template-columns: 1fr; gap: 1.5rem; }
  .home-mandate { padding-block: 2.5rem; }
}

/* Connect page: six paths in a 3 x 2 grid. */
.connection-choices--six { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1023px) { .connection-choices--six { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) { .connection-choices--six { grid-template-columns: 1fr; } }
.community-note--paper { background: var(--fd-paper-light); }
