:root {
    --navy-950: #06172b;
    --navy-900: #0a213c;
    --navy-800: #123654;
    --navy-700: #1c4b6f;
    --gold-600: #aa772a;
    --gold-500: #c9953d;
    --gold-400: #ddb663;
    --gold-300: #ebcf91;
    --gold-200: #f3e2bc;
    --ivory-50: #fffdf8;
    --ivory-100: #fbf6ea;
    --ivory-200: #f4ead5;
    --paper: #ffffff;
    --ink: #122740;
    --muted: #637083;
    --line: rgba(16, 39, 64, .13);
    --shadow-sm: 0 16px 44px rgba(8, 29, 51, .08);
    --shadow-lg: 0 34px 90px rgba(5, 22, 43, .16);
    --radius-sm: 14px;
    --radius-md: 22px;
    --radius-lg: 34px;
    --container: 1320px;
}


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

html {
    min-height: 100%;
    scroll-behavior: smooth;
    background: var(--ivory-50);
}

body {
    min-height: 100vh;
    margin: 0;
    overflow-x: hidden;
    color: var(--ink);
    background: var(--ivory-50);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system,
        BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body,
button,
input,
textarea,
select {
    font: inherit;
}

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

a {
    color: inherit;
}

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

::selection {
    color: var(--navy-950);
    background: var(--gold-300);
}

.container {
    width: min(calc(100% - 64px), var(--container));
    margin-inline: auto;
}

.skip-link {
    position: fixed;
    top: 16px;
    left: 16px;
    z-index: 999;
    padding: 12px 18px;
    border-radius: 10px;
    color: #fff;
    background: var(--navy-950);
    text-decoration: none;
    transform: translateY(-180%);
    transition: transform .2s ease;
}

.skip-link:focus {
    transform: translateY(0);
}

.preview-notice {
    position: sticky;
    top: 0;
    z-index: 100;
    min-height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 8px 24px;
    color: rgba(255, 255, 255, .76);
    background: var(--navy-950);
    font-size: .75rem;
    letter-spacing: .02em;
    text-align: center;
}

.preview-notice strong {
    color: #fff;
}

.preview-notice a {
    margin-left: 8px;
    color: var(--gold-300);
    font-weight: 800;
}

.preview-notice__pulse {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gold-400);
    box-shadow: 0 0 0 6px rgba(221, 182, 99, .13);
}

.site-header {
    position: relative;
    z-index: 50;
    border-bottom: 1px solid var(--line);
    background: rgba(255, 253, 248, .97);
    box-shadow: 0 12px 36px rgba(5, 25, 47, .04);
}

.utility-bar {
    color: rgba(255, 255, 255, .7);
    background: var(--navy-950);
}

.utility-bar__inner {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.utility-bar p {
    margin: 0;
    overflow: hidden;
    font-family: Georgia, "Times New Roman", serif;
    font-size: .68rem;
    letter-spacing: .055em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.utility-actions {
    min-height: 38px;
    display: flex;
    align-items: stretch;
}

.utility-actions a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 15px;
    border-left: 1px solid rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .82);
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .055em;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .2s ease, background .2s ease;
}

.utility-actions a:hover,
.utility-actions a:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, .06);
}

.utility-actions a:nth-last-child(2) {
    color: var(--gold-300);
}

.utility-actions a:last-child {
    border-right: 1px solid rgba(255, 255, 255, .1);
}

.utility-actions span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #e0504d;
    box-shadow: 0 0 0 4px rgba(224, 80, 77, .15);
}

.site-header__main {
    min-height: 92px;
    display: flex;
    align-items: center;
    gap: clamp(22px, 3vw, 46px);
}

.site-brand {
    min-width: 250px;
    display: inline-flex;
    align-items: center;
    gap: 13px;
    text-decoration: none;
}

.site-brand__mark {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid rgba(170, 119, 42, .28);
    border-radius: 18px;
    background: linear-gradient(145deg, #f8e9c7, #d2a14e);
    box-shadow: 0 12px 28px rgba(89, 58, 18, .16);
}

.site-brand__mark img {
    width: 100%;
    height: 100%;
    padding: 5px;
    object-fit: contain;
}

.site-brand__copy strong,
.site-brand__copy span,
.site-brand__copy small {
    display: block;
}

.site-brand__copy strong {
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1rem;
    letter-spacing: .08em;
    line-height: 1.05;
    text-transform: uppercase;
}

.site-brand__copy span {
    margin-top: 4px;
    color: var(--navy-800);
    font-size: .57rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.site-brand__copy small {
    margin-top: 5px;
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .61rem;
    font-style: italic;
}

.primary-navigation {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: clamp(12px, 1.45vw, 23px);
    margin-left: auto;
}

.primary-navigation a {
    position: relative;
    padding: 37px 0 35px;
    color: #34485d;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .055em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color .2s ease;
}

.primary-navigation a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 25px;
    left: 0;
    height: 2px;
    border-radius: 999px;
    background: var(--gold-500);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .25s ease;
}

.primary-navigation a:hover,
.primary-navigation a:focus-visible,
.primary-navigation a[aria-current="page"] {
    color: var(--navy-950);
}

.primary-navigation a:hover::after,
.primary-navigation a:focus-visible::after,
.primary-navigation a[aria-current="page"]::after {
    transform: scaleX(1);
    transform-origin: left;
}

.header-login {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 19px;
    border: 1px solid var(--navy-900);
    border-radius: 999px;
    color: var(--navy-900);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .07em;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .2s ease, background .2s ease;
}

.header-login:hover,
.header-login:focus-visible {
    color: #fff;
    background: var(--navy-900);
}

.mobile-navigation {
    position: relative;
    display: none;
    margin-left: auto;
}

.mobile-navigation summary {
    width: 48px;
    height: 48px;
    display: grid;
    align-content: center;
    gap: 5px;
    padding: 0 13px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: #fff;
    cursor: pointer;
    list-style: none;
}

.mobile-navigation summary::-webkit-details-marker {
    display: none;
}

.mobile-navigation summary span {
    height: 2px;
    display: block;
    border-radius: 999px;
    background: var(--navy-900);
    transition: transform .2s ease, opacity .2s ease;
}

.mobile-navigation[open] summary span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
}

.mobile-navigation[open] summary span:nth-child(2) {
    opacity: 0;
}

.mobile-navigation[open] summary span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}

.mobile-navigation__panel {
    position: absolute;
    top: calc(100% + 15px);
    right: 0;
    width: min(390px, calc(100vw - 32px));
    padding: 26px;
    border: 1px solid var(--line);
    border-radius: 24px;
    background: rgba(255, 253, 248, .99);
    box-shadow: var(--shadow-lg);
}

.mobile-navigation__heading {
    padding: 0 4px 20px;
    border-bottom: 1px solid var(--line);
}

.mobile-navigation__heading strong,
.mobile-navigation__heading small {
    display: block;
}

.mobile-navigation__heading strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
}

.mobile-navigation__heading small {
    margin-top: 6px;
    color: var(--muted);
}

.mobile-navigation nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
    margin-top: 10px;
}

.mobile-navigation nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 4px;
    border-bottom: 1px solid var(--line);
    color: var(--navy-900);
    font-size: .78rem;
    font-weight: 750;
    text-decoration: none;
}

.mobile-navigation nav a span {
    color: var(--gold-600);
}

.mobile-navigation__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 22px;
}

.button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .075em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        color .2s ease,
        border-color .2s ease,
        background .2s ease;
}

.button:hover,
.button:focus-visible {
    transform: translateY(-2px);
}

.button--gold {
    color: var(--navy-950);
    background: linear-gradient(135deg, #efd494, #c9943b);
    box-shadow: 0 16px 38px rgba(164, 111, 31, .26);
}

.button--gold:hover,
.button--gold:focus-visible {
    background: linear-gradient(135deg, #f5dfaa, #d4a64e);
    box-shadow: 0 20px 45px rgba(164, 111, 31, .34);
}

.button--navy {
    color: #fff;
    background: var(--navy-900);
    box-shadow: 0 16px 38px rgba(6, 30, 54, .2);
}

.button--navy:hover,
.button--navy:focus-visible {
    background: var(--navy-800);
    box-shadow: 0 20px 44px rgba(6, 30, 54, .26);
}

.button--outline {
    color: var(--navy-900);
    border-color: rgba(10, 33, 60, .27);
    background: transparent;
}

.button--outline:hover,
.button--outline:focus-visible {
    border-color: var(--navy-900);
    background: rgba(10, 33, 60, .04);
}

.button--glass {
    color: #fff;
    border-color: rgba(255, 255, 255, .32);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(12px);
}

.button--glass:hover,
.button--glass:focus-visible {
    border-color: rgba(255, 255, 255, .62);
    background: rgba(255, 255, 255, .15);
}

.text-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--navy-900);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .07em;
    text-decoration: none;
    text-transform: uppercase;
}

.text-link span {
    color: var(--gold-600);
    font-size: 1.15rem;
    transition: transform .2s ease;
}

.text-link:hover span,
.text-link:focus-visible span {
    transform: translateX(5px);
}

.text-link--light {
    color: rgba(255, 255, 255, .88);
}

.text-link--light span {
    color: var(--gold-300);
}

.eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 20px;
    color: var(--gold-600);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.eyebrow::before {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
}

.eyebrow--light {
    color: var(--gold-300);
}

.section {
    position: relative;
    padding: clamp(88px, 10vw, 152px) 0;
}

.section-heading h2,
.partnership h2,
.journey h2 {
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.7rem, 5.1vw, 5.25rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: .99;
}

.section-heading h2 em,
.journey h2 em {
    display: block;
    color: var(--gold-600);
    font-weight: 400;
}

.section-heading--light h2 {
    color: #fff;
}

.section-heading--light h2 em {
    color: var(--gold-300);
}

.home-hero {
    position: relative;
    min-height: min(850px, calc(100vh - 130px));
    display: flex;
    align-items: center;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.home-hero__media,
.home-hero__veil,
.home-hero__glow {
    position: absolute;
    inset: 0;
}

.home-hero__media {
    z-index: -4;
}

.home-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    animation: hero-breathe 18s ease-in-out infinite alternate;
}

.home-hero__veil {
    z-index: -3;
    background:
        linear-gradient(90deg, rgba(4, 18, 35, .96) 0%, rgba(4, 18, 35, .8) 42%, rgba(4, 18, 35, .24) 76%, rgba(4, 18, 35, .46) 100%),
        linear-gradient(180deg, rgba(4, 18, 35, .08), rgba(4, 18, 35, .72));
}

.home-hero__glow {
    z-index: -2;
    background:
        radial-gradient(circle at 72% 24%, rgba(223, 182, 99, .2), transparent 30%),
        linear-gradient(90deg, transparent 0 69%, rgba(255, 255, 255, .06) 69% 69.08%, transparent 69.08%);
}

@keyframes hero-breathe {
    to {
        transform: scale(1.035);
    }
}

.home-hero__inner {
    min-height: inherit;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(270px, 350px);
    align-items: center;
    gap: clamp(50px, 8vw, 130px);
    padding-top: clamp(74px, 8vw, 110px);
    padding-bottom: clamp(90px, 10vw, 140px);
}

.home-hero__content {
    max-width: 880px;
}

.home-hero h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.6rem, 7.5vw, 7.7rem);
    font-weight: 400;
    letter-spacing: -.058em;
    line-height: .84;
    text-wrap: balance;
}

.home-hero h1 span {
    display: block;
    margin-top: 17px;
    color: var(--gold-300);
    font-size: .47em;
    letter-spacing: -.025em;
    line-height: 1.05;
}

.home-hero__identity {
    margin: 24px 0 0;
    color: rgba(255, 255, 255, .82);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1rem, 1.4vw, 1.3rem);
    font-style: italic;
    letter-spacing: .08em;
}

.home-hero__statement {
    max-width: 730px;
    margin: 30px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.28rem, 2vw, 1.8rem);
    line-height: 1.45;
}

.home-hero__intro {
    max-width: 700px;
    margin: 19px 0 0;
    color: rgba(255, 255, 255, .66);
    font-size: clamp(.92rem, 1.1vw, 1.03rem);
    line-height: 1.78;
}

.home-hero__actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 38px;
}

.home-hero__actions .text-link {
    margin-left: 10px;
}

.home-hero__card {
    align-self: end;
    margin-bottom: 16px;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: var(--radius-md);
    background: rgba(5, 23, 43, .56);
    box-shadow: 0 30px 70px rgba(0, 0, 0, .23);
    backdrop-filter: blur(16px);
}

.home-hero__card > p {
    margin: 0;
    color: var(--gold-300);
    font-size: .67rem;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.home-hero__card-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    margin: 22px 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 14px;
    background: rgba(255, 255, 255, .11);
}

.home-hero__card-grid span {
    min-height: 91px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 15px;
    color: rgba(255, 255, 255, .55);
    background: rgba(4, 19, 36, .72);
    font-size: .66rem;
    letter-spacing: .04em;
}

.home-hero__card-grid strong {
    display: block;
    margin-bottom: 5px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    font-weight: 400;
}

.home-hero__card > a {
    display: flex;
    justify-content: space-between;
    color: rgba(255, 255, 255, .84);
    font-size: .72rem;
    font-weight: 750;
    text-decoration: none;
}

.home-hero__card > a span {
    color: var(--gold-300);
}

.home-hero__scroll {
    position: absolute;
    bottom: 30px;
    left: 50%;
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, .48);
    font-size: .6rem;
    font-weight: 750;
    letter-spacing: .12em;
    text-transform: uppercase;
    transform: translateX(-50%);
}

.home-hero__scroll span {
    width: 1px;
    height: 27px;
    background: linear-gradient(var(--gold-300), transparent);
}

.welcome {
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 16%, rgba(235, 207, 145, .22), transparent 23rem),
        var(--ivory-50);
}

.welcome::after {
    content: "KTFM";
    position: absolute;
    right: -1.5vw;
    bottom: -3vw;
    z-index: 0;
    color: rgba(10, 33, 60, .025);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(8rem, 24vw, 25rem);
    font-weight: 700;
    letter-spacing: -.08em;
    line-height: .7;
    pointer-events: none;
}

.welcome__grid,
.welcome__values {
    position: relative;
    z-index: 1;
}

.welcome__grid {
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(0, .9fr);
    gap: clamp(55px, 10vw, 150px);
    align-items: start;
}

.welcome__copy {
    max-width: 650px;
    padding-top: 12px;
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.85;
}

.welcome__copy p {
    margin: 0 0 17px;
}

.welcome__copy .welcome__lead {
    color: var(--navy-900);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.42rem;
    line-height: 1.55;
}

.welcome__copy blockquote {
    margin: 29px 0 0;
    padding: 4px 0 4px 22px;
    border-left: 2px solid var(--gold-500);
    color: var(--navy-900);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.17rem;
    font-style: italic;
    line-height: 1.6;
}

.welcome__actions {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
    margin-top: 35px;
}

.welcome__values {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: clamp(68px, 9vw, 118px);
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.welcome__values article {
    position: relative;
    min-height: 210px;
    padding: 38px 7% 34px;
}

.welcome__values article + article {
    border-left: 1px solid var(--line);
}

.welcome__values span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.welcome__values h3 {
    margin: 33px 0 9px;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.45rem;
    font-weight: 400;
}

.welcome__values p {
    max-width: 310px;
    margin: 0;
    color: var(--muted);
    font-size: .88rem;
    line-height: 1.65;
}

.locations {
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(138deg, #071a30, #0d2b49 58%, #123b5d);
}

.locations::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .12;
    background-image:
        linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 80%, transparent);
}

.locations__orb {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    filter: blur(2px);
    pointer-events: none;
}

.locations__orb--one {
    width: 38rem;
    height: 38rem;
    top: -24rem;
    right: -10rem;
    background: radial-gradient(circle, rgba(221, 182, 99, .24), transparent 69%);
}

.locations__orb--two {
    width: 42rem;
    height: 42rem;
    bottom: -31rem;
    left: -13rem;
    background: radial-gradient(circle, rgba(69, 135, 183, .28), transparent 70%);
}

.locations__head,
.online__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .65fr);
    align-items: end;
    gap: 70px;
}

.locations__head > p,
.online__head > p {
    max-width: 520px;
    margin: 0 0 4px;
    line-height: 1.8;
}

.locations__head > p {
    color: rgba(255, 255, 255, .62);
}

.locations__layout {
    display: grid;
    grid-template-columns: minmax(330px, .78fr) minmax(0, 1.22fr);
    gap: clamp(60px, 10vw, 150px);
    align-items: center;
    margin-top: clamp(68px, 8vw, 108px);
}

.global-mark {
    position: relative;
    width: min(100%, 430px);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border: 1px solid rgba(235, 207, 145, .24);
    border-radius: 50%;
    background:
        radial-gradient(circle, rgba(221, 182, 99, .13), transparent 53%),
        rgba(255, 255, 255, .025);
    box-shadow:
        inset 0 0 90px rgba(221, 182, 99, .05),
        0 42px 100px rgba(0, 0, 0, .18);
}

.global-mark::before,
.global-mark::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(235, 207, 145, .18);
    border-radius: 50%;
}

.global-mark::before {
    inset: 10% 36%;
}

.global-mark::after {
    inset: 36% 10%;
}

.global-mark__ring {
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 50%;
}

.global-mark__ring--one {
    inset: 18%;
}

.global-mark__ring--two {
    inset: 31%;
}

.global-mark__axis {
    position: absolute;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(235, 207, 145, .33), transparent);
    transform: rotate(-18deg);
}

.global-mark strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 4.5vw, 4rem);
    font-weight: 400;
    line-height: .92;
    text-align: center;
}

.location-list article {
    display: grid;
    grid-template-columns: 105px minmax(0, 1fr) 62px;
    align-items: center;
    gap: 22px;
    min-height: 94px;
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.location-list article:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.location-list p {
    margin: 0;
    color: var(--gold-300);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.location-list h3 {
    margin: 0;
    color: rgba(255, 255, 255, .92);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.05rem, 1.6vw, 1.35rem);
    font-weight: 400;
}

.location-list article > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: rgba(255, 255, 255, .42);
    font-size: .67rem;
    text-decoration: none;
}

.location-list article > a span {
    color: var(--gold-300);
    font-size: 1.1rem;
    transition: transform .2s ease;
}

.location-list article > a:hover span,
.location-list article > a:focus-visible span {
    transform: translateX(5px);
}

.location-list__online {
    background: linear-gradient(90deg, rgba(221, 182, 99, .09), transparent);
}

.locations__actions,
.online__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 26px;
    flex-wrap: wrap;
    margin-top: 54px;
}

.online {
    background:
        radial-gradient(circle at 88% 16%, rgba(235, 207, 145, .24), transparent 24rem),
        var(--paper);
}

.online__head > p {
    color: var(--muted);
}

.experience-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(58px, 7vw, 88px);
}

.experience-card {
    position: relative;
    min-height: 410px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 47px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background: var(--ivory-50);
    box-shadow: var(--shadow-sm);
    transition: transform .25s ease, box-shadow .25s ease;
}

.experience-card::after {
    content: "";
    position: absolute;
    right: -7rem;
    bottom: -8rem;
    width: 16rem;
    height: 16rem;
    border: 1px solid rgba(170, 119, 42, .13);
    border-radius: 50%;
    box-shadow:
        0 0 0 28px rgba(170, 119, 42, .035),
        0 0 0 58px rgba(170, 119, 42, .025);
}

.experience-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 30px 70px rgba(8, 29, 51, .13);
}

.experience-card--featured {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(145deg, var(--navy-950), var(--navy-800));
}

.experience-card__number {
    align-self: flex-end;
    color: var(--gold-500);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .75rem;
}

.experience-card__label {
    margin: 92px 0 13px;
    color: var(--gold-600);
    font-size: .67rem;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.experience-card--featured .experience-card__label {
    color: var(--gold-300);
}

.experience-card h3 {
    max-width: 330px;
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.6vw, 2.35rem);
    font-weight: 400;
    letter-spacing: -.025em;
    line-height: 1.05;
}

.experience-card--featured h3 {
    color: #fff;
}

.experience-card > p:not(.experience-card__label) {
    max-width: 330px;
    margin: 18px 0 28px;
    color: var(--muted);
    font-size: .9rem;
    line-height: 1.7;
}

.experience-card--featured > p:not(.experience-card__label) {
    color: rgba(255, 255, 255, .62);
}

.experience-card > a {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid var(--line);
    color: var(--navy-900);
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .06em;
    text-decoration: none;
    text-transform: uppercase;
}

.experience-card--featured > a {
    color: #fff;
    border-top-color: rgba(255, 255, 255, .14);
}

.experience-card > a span {
    color: var(--gold-500);
    font-size: 1.15rem;
}

.partnership {
    position: relative;
    padding: clamp(74px, 8vw, 112px) 0;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.partnership::before {
    content: "";
    position: absolute;
    top: -22rem;
    right: -14rem;
    width: 46rem;
    height: 46rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(221, 182, 99, .23), transparent 67%);
}

.partnership__grid {
    position: relative;
    display: grid;
    grid-template-columns: minmax(320px, 1.15fr) minmax(270px, .7fr) auto;
    align-items: end;
    gap: clamp(48px, 7vw, 100px);
}

.partnership h2 {
    max-width: 680px;
    color: #fff;
    font-size: clamp(2.7rem, 4.6vw, 4.7rem);
}

.partnership ul {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.partnership li {
    position: relative;
    padding-left: 23px;
    color: rgba(255, 255, 255, .68);
    font-size: .88rem;
}

.partnership li::before {
    content: "";
    position: absolute;
    top: .48em;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gold-400);
    box-shadow: 0 0 0 5px rgba(221, 182, 99, .1);
}

.partnership__actions {
    display: grid;
    gap: 22px;
    justify-items: start;
}

.journey {
    isolation: isolate;
    overflow: hidden;
    text-align: center;
    background:
        linear-gradient(rgba(255, 253, 248, .94), rgba(255, 253, 248, .97)),
        repeating-radial-gradient(circle at center, rgba(170, 119, 42, .1) 0 1px, transparent 1px 35px);
}

.journey__halo {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    width: min(80vw, 900px);
    aspect-ratio: 1;
    border: 1px solid rgba(170, 119, 42, .11);
    border-radius: 50%;
    box-shadow:
        0 0 0 70px rgba(170, 119, 42, .025),
        0 0 0 145px rgba(170, 119, 42, .018);
    transform: translate(-50%, -50%);
}

.journey__inner {
    max-width: 900px;
}

.journey .eyebrow {
    justify-content: center;
}

.journey h2 {
    font-size: clamp(3.2rem, 7vw, 7rem);
}

.journey h2 em {
    display: inline;
}

.journey__inner > p:not(.eyebrow) {
    max-width: 720px;
    margin: 30px auto 0;
    color: var(--muted);
    font-size: 1.02rem;
    line-height: 1.8;
}

.journey__actions {
    display: flex;
    justify-content: center;
    gap: 13px;
    flex-wrap: wrap;
    margin-top: 37px;
}

.site-footer {
    position: relative;
    color: rgba(255, 255, 255, .62);
    background: #051528;
}

.site-footer__accent {
    height: 4px;
    background: linear-gradient(90deg, var(--navy-950), var(--gold-500), var(--navy-950));
}

.site-footer__top {
    display: grid;
    grid-template-columns: minmax(280px, .75fr) minmax(0, 1.4fr);
    gap: clamp(60px, 10vw, 150px);
    padding-top: clamp(72px, 8vw, 110px);
    padding-bottom: clamp(62px, 7vw, 90px);
}

.site-brand--footer .site-brand__copy strong,
.site-brand--footer .site-brand__copy span {
    color: #fff;
}

.site-brand--footer .site-brand__copy small {
    color: var(--gold-300);
}

.footer-brand > p {
    max-width: 390px;
    margin: 28px 0 0;
    font-size: .88rem;
    line-height: 1.75;
}

.footer-location-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 27px;
    color: var(--gold-300);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-decoration: none;
    text-transform: uppercase;
}

.footer-location-link span {
    font-size: 1.1rem;
}

.footer-links {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.footer-links h2 {
    margin: 0 0 23px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.08rem;
    font-weight: 400;
}

.footer-links a {
    display: block;
    width: fit-content;
    margin-top: 13px;
    color: rgba(255, 255, 255, .58);
    font-size: .78rem;
    text-decoration: none;
    transition: color .2s ease, transform .2s ease;
}

.footer-links a:hover,
.footer-links a:focus-visible {
    color: var(--gold-300);
    transform: translateX(3px);
}

.site-footer__bottom {
    min-height: 76px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    border-top: 1px solid rgba(255, 255, 255, .09);
    font-size: .68rem;
}

.site-footer__bottom p {
    margin: 0;
}

.site-footer__bottom nav {
    display: flex;
    gap: 24px;
}

.site-footer__bottom a {
    text-decoration: none;
}

.site-footer__bottom a:hover,
.site-footer__bottom a:focus-visible {
    color: #fff;
}

/* Inner-page foundation */

.page-hero {
    position: relative;
    min-height: clamp(520px, 62vw, 690px);
    display: flex;
    align-items: flex-end;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 76% 22%, rgba(221, 182, 99, .23), transparent 27rem),
        linear-gradient(145deg, #071a30, #0c2c4b);
}

.page-hero__media,
.page-hero__pattern {
    position: absolute;
    inset: 0;
}

.page-hero__media {
    z-index: -3;
}

.page-hero__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(4, 18, 35, .97), rgba(4, 18, 35, .78) 47%, rgba(4, 18, 35, .3)),
        linear-gradient(180deg, rgba(4, 18, 35, .13), rgba(4, 18, 35, .8));
}

.page-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.page-hero__pattern {
    z-index: -2;
    opacity: .4;
    background:
        linear-gradient(90deg, transparent 0 70%, rgba(255, 255, 255, .08) 70% 70.06%, transparent 70.06%),
        radial-gradient(circle at 82% 30%, rgba(221, 182, 99, .22), transparent 23rem);
}

.page-hero__inner {
    padding-top: clamp(110px, 13vw, 180px);
    padding-bottom: clamp(72px, 8vw, 106px);
}

.breadcrumbs {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: clamp(48px, 7vw, 86px);
    color: rgba(255, 255, 255, .5);
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.breadcrumbs a {
    color: rgba(255, 255, 255, .7);
    text-decoration: none;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus-visible {
    color: var(--gold-300);
}

.breadcrumbs strong {
    color: var(--gold-300);
    font-weight: 800;
}

.page-hero__content {
    max-width: 1000px;
}

.page-hero h1 {
    max-width: 980px;
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.3rem, 7vw, 7rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .9;
    text-wrap: balance;
}

.page-hero h1 em {
    display: block;
    margin-top: 10px;
    color: var(--gold-300);
    font-weight: 400;
}

.page-hero__content > p:last-child {
    max-width: 770px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .7);
    font-size: clamp(.96rem, 1.3vw, 1.08rem);
    line-height: 1.78;
}

.section-navigation {
    position: relative;
    z-index: 20;
    border-bottom: 1px solid var(--line);
    background: rgba(255, 253, 248, .98);
    box-shadow: 0 10px 32px rgba(7, 28, 50, .04);
}

.section-navigation__inner {
    min-height: 68px;
    display: flex;
    align-items: stretch;
    gap: 7px;
    overflow-x: auto;
    scrollbar-width: none;
}

.section-navigation__inner::-webkit-scrollbar {
    display: none;
}

.section-navigation a {
    position: relative;
    min-width: max-content;
    display: flex;
    align-items: center;
    padding: 0 16px;
    color: var(--muted);
    font-size: .68rem;
    font-weight: 820;
    letter-spacing: .055em;
    text-decoration: none;
    text-transform: uppercase;
}

.section-navigation a::after {
    content: "";
    position: absolute;
    right: 16px;
    bottom: 0;
    left: 16px;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: var(--gold-500);
    transform: scaleX(0);
    transition: transform .2s ease;
}

.section-navigation a:hover,
.section-navigation a:focus-visible,
.section-navigation a[aria-current="page"] {
    color: var(--navy-950);
}

.section-navigation a:hover::after,
.section-navigation a:focus-visible::after,
.section-navigation a[aria-current="page"]::after {
    transform: scaleX(1);
}

.about-intro {
    overflow: hidden;
    background:
        radial-gradient(circle at 2% 12%, rgba(235, 207, 145, .24), transparent 25rem),
        var(--ivory-50);
}

.about-intro::after {
    content: "KTFM";
    position: absolute;
    right: -2vw;
    bottom: -2.8vw;
    color: rgba(10, 33, 60, .025);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(9rem, 24vw, 24rem);
    font-weight: 700;
    letter-spacing: -.08em;
    line-height: .7;
}

.about-intro__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(0, .92fr);
    gap: clamp(60px, 10vw, 155px);
}

.rich-copy {
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.88;
}

.rich-copy p {
    margin: 0 0 21px;
}

.rich-copy strong {
    color: var(--navy-900);
}

.rich-copy--lead > p:first-child {
    color: var(--navy-900);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 1.8vw, 1.55rem);
    line-height: 1.6;
}

.rich-copy blockquote,
.story-preview__content blockquote {
    margin: 34px 0;
    padding: 5px 0 5px 25px;
    border-left: 2px solid var(--gold-500);
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.35rem, 2.4vw, 2rem);
    font-style: italic;
    line-height: 1.45;
}

.purpose-statement {
    position: relative;
    z-index: 1;
    margin-top: clamp(70px, 9vw, 120px);
    padding: clamp(40px, 5vw, 66px);
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background:
        linear-gradient(120deg, rgba(255, 255, 255, .96), rgba(250, 244, 230, .86));
    box-shadow: var(--shadow-sm);
}

.purpose-statement span {
    display: block;
    color: var(--gold-600);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.purpose-statement blockquote {
    max-width: 980px;
    margin: 22px 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 4vw, 4.2rem);
    letter-spacing: -.035em;
    line-height: 1.03;
}

.story-preview {
    background: var(--paper);
}

.story-preview__grid {
    display: grid;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1.05fr);
    gap: clamp(62px, 10vw, 150px);
    align-items: center;
}

.story-preview__timeline {
    position: relative;
    padding-left: 40px;
}

.story-preview__timeline::before {
    content: "";
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 7px;
    width: 1px;
    background: linear-gradient(var(--gold-500), rgba(170, 119, 42, .12));
}

.story-preview__timeline article {
    position: relative;
    min-height: 135px;
    padding: 6px 0 34px 24px;
}

.story-preview__timeline article::before {
    content: "";
    position: absolute;
    top: 10px;
    left: -38px;
    width: 12px;
    height: 12px;
    border: 3px solid var(--ivory-50);
    border-radius: 50%;
    background: var(--gold-500);
    box-shadow: 0 0 0 1px rgba(170, 119, 42, .35);
}

.story-preview__timeline span {
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.1rem, 4vw, 3.6rem);
    letter-spacing: -.04em;
}

.story-preview__timeline p {
    max-width: 270px;
    margin: 8px 0 0;
    color: var(--muted);
    font-size: .84rem;
    line-height: 1.65;
}

.story-preview__content h2,
.vision-window h2,
.about-pathways__head h2,
.calling-statement h2,
.next-page h2 {
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.7rem, 5vw, 5rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: .98;
}

.story-preview__content h2 em,
.vision-window h2 em,
.about-pathways__head h2 em {
    display: block;
    color: var(--gold-600);
    font-weight: 400;
}

.story-preview__content > p:not(.eyebrow) {
    max-width: 650px;
    margin: 24px 0 0;
    color: var(--muted);
    line-height: 1.82;
}

.story-preview__content .text-link {
    margin-top: 31px;
}

.vision-window {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(140deg, #07192e, #0e3252 68%, #123d5f);
}

.vision-window::before,
.apostolic-mandate::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .12;
    background-image:
        linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent);
}

.vision-window::after,
.apostolic-mandate::after {
    content: "";
    position: absolute;
    top: -24rem;
    right: -18rem;
    z-index: -1;
    width: 50rem;
    height: 50rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(221, 182, 99, .24), transparent 68%);
}

.vision-window__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 50px;
}

.vision-window h2 {
    max-width: 960px;
    color: #fff;
}

.vision-window h2 em {
    color: var(--gold-300);
}

.vision-window__head .button {
    flex: 0 0 auto;
}

.mandate-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin-top: clamp(60px, 8vw, 105px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .13);
}

.mandate-grid article {
    min-height: 380px;
    padding: clamp(30px, 4vw, 48px);
    background: rgba(5, 24, 45, .72);
}

.mandate-grid article > span,
.apostolic-mandate__grid article > span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .78rem;
}

.mandate-grid article > p:first-of-type {
    margin: 86px 0 12px;
    color: var(--gold-300);
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.mandate-grid h3,
.apostolic-mandate__grid h3 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.4vw, 2.2rem);
    font-weight: 400;
    letter-spacing: -.02em;
    line-height: 1.1;
}

.mandate-grid article > p:last-child,
.apostolic-mandate__grid article > p {
    margin: 19px 0 0;
    color: rgba(255, 255, 255, .6);
    font-size: .86rem;
    line-height: 1.75;
}

.about-pathways {
    background:
        radial-gradient(circle at 92% 10%, rgba(235, 207, 145, .24), transparent 25rem),
        var(--ivory-50);
}

.about-pathways__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .65fr);
    gap: 70px;
    align-items: end;
}

.about-pathways__head > p {
    max-width: 520px;
    margin: 0;
    color: var(--muted);
    line-height: 1.8;
}

.pathway-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(58px, 8vw, 90px);
}

.pathway-grid > a {
    min-height: 360px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 44px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    color: inherit;
    background: rgba(255, 255, 255, .82);
    box-shadow: var(--shadow-sm);
    text-decoration: none;
    transition: transform .25s ease, box-shadow .25s ease;
}

.pathway-grid > a:hover,
.pathway-grid > a:focus-visible {
    transform: translateY(-7px);
    box-shadow: 0 30px 70px rgba(8, 29, 51, .13);
}

.pathway-grid > a > span {
    color: var(--gold-600);
    font-size: .65rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.pathway-grid h3 {
    margin: 82px 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.8rem, 3vw, 2.65rem);
    font-weight: 400;
    letter-spacing: -.03em;
}

.pathway-grid p {
    margin: 16px 0 28px;
    color: var(--muted);
    font-size: .88rem;
    line-height: 1.7;
}

.pathway-grid strong {
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid var(--line);
    color: var(--navy-900);
    font-size: .68rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.inner-cta {
    position: relative;
    padding: clamp(70px, 8vw, 108px) 0;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.inner-cta::before {
    content: "";
    position: absolute;
    top: -22rem;
    right: -12rem;
    width: 45rem;
    height: 45rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(221, 182, 99, .22), transparent 68%);
}

.inner-cta__inner {
    position: relative;
    display: grid;
    grid-template-columns: minmax(320px, 1fr) minmax(260px, .6fr) auto;
    gap: clamp(40px, 7vw, 90px);
    align-items: end;
}

.inner-cta h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.7rem, 5vw, 5rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: .98;
}

.inner-cta__inner > p {
    margin: 0;
    color: rgba(255, 255, 255, .62);
    font-size: .9rem;
    line-height: 1.75;
}

.inner-cta__actions {
    display: grid;
    gap: 12px;
}

/* Our Story */

.story-page {
    background:
        radial-gradient(circle at 6% 10%, rgba(235, 207, 145, .24), transparent 26rem),
        var(--ivory-50);
}

.story-page__opening {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, .96fr);
    gap: clamp(60px, 10vw, 150px);
}

.story-page__drop {
    max-width: 580px;
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.5rem, 5vw, 5rem);
    letter-spacing: -.045em;
    line-height: .98;
}

.story-line {
    position: relative;
    margin-top: clamp(80px, 11vw, 150px);
}

.story-line::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: min(24%, 300px);
    width: 1px;
    background: linear-gradient(transparent, var(--gold-500) 8%, var(--gold-500) 92%, transparent);
}

.story-line article {
    position: relative;
    display: grid;
    grid-template-columns: minmax(180px, .36fr) minmax(0, 1fr);
    gap: clamp(45px, 8vw, 120px);
    padding: clamp(48px, 7vw, 88px) 0;
    border-top: 1px solid var(--line);
}

.story-line article:last-child {
    border-bottom: 1px solid var(--line);
}

.story-line article::before {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(min(24%, 300px) - 6px);
    width: 13px;
    height: 13px;
    border: 3px solid var(--ivory-50);
    border-radius: 50%;
    background: var(--gold-500);
    box-shadow: 0 0 0 1px rgba(170, 119, 42, .32);
    transform: translateY(-50%);
}

.story-line__year {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 3vw, 2.7rem);
    letter-spacing: -.03em;
}

.story-line article > div {
    padding-left: clamp(20px, 4vw, 62px);
}

.story-line h2 {
    max-width: 760px;
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 4vw, 3.8rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.03;
}

.story-line article > div > p:last-child {
    max-width: 720px;
    margin: 22px 0 0;
    color: var(--muted);
    line-height: 1.8;
}

.calling-statement {
    position: relative;
    padding: clamp(95px, 12vw, 170px) 0;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(145deg, #071a30, #0d3152);
}

.calling-statement::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: min(78vw, 900px);
    aspect-ratio: 1;
    border: 1px solid rgba(221, 182, 99, .12);
    border-radius: 50%;
    box-shadow:
        0 0 0 80px rgba(221, 182, 99, .025),
        0 0 0 165px rgba(221, 182, 99, .018);
    transform: translate(-50%, -50%);
}

.calling-statement__inner {
    position: relative;
    z-index: 1;
    max-width: 1020px;
    text-align: center;
}

.calling-statement .eyebrow {
    justify-content: center;
}

.calling-statement h2 {
    color: #fff;
}

.calling-statement__inner > p:last-child {
    max-width: 700px;
    margin: 30px auto 0;
    color: rgba(255, 255, 255, .62);
    line-height: 1.8;
}

.next-page {
    background: var(--paper);
}

.next-page__inner {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 50px;
}

.next-page h2 {
    max-width: 850px;
}

.next-page .button {
    flex: 0 0 auto;
}

/* Vision & Mission */

.vision-statements {
    overflow: hidden;
    background:
        radial-gradient(circle at 5% 8%, rgba(235, 207, 145, .25), transparent 26rem),
        var(--ivory-50);
}

.vision-statements__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.vision-statement {
    position: relative;
    min-height: 650px;
    display: flex;
    flex-direction: column;
    padding: clamp(38px, 5vw, 66px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background: rgba(255, 255, 255, .88);
    box-shadow: var(--shadow-sm);
}

.vision-statement::after {
    content: "";
    position: absolute;
    right: -10rem;
    bottom: -10rem;
    width: 24rem;
    height: 24rem;
    border: 1px solid rgba(170, 119, 42, .13);
    border-radius: 50%;
    box-shadow:
        0 0 0 50px rgba(170, 119, 42, .035),
        0 0 0 100px rgba(170, 119, 42, .02);
}

.vision-statement--mission {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(145deg, var(--navy-950), var(--navy-800));
}

.vision-statement > span {
    align-self: flex-end;
    color: var(--gold-500);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .78rem;
}

.vision-statement .eyebrow {
    margin-top: clamp(70px, 9vw, 125px);
}

.vision-statement h2 {
    position: relative;
    z-index: 1;
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.8rem, 3.25vw, 3.2rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: 1.08;
}

.vision-statement--mission h2 {
    color: #fff;
}

.vision-statement > p:last-child {
    position: relative;
    z-index: 1;
    max-width: 620px;
    margin: auto 0 0;
    padding-top: 34px;
    color: var(--muted);
    font-size: .92rem;
    line-height: 1.8;
}

.vision-statement--mission > p:last-child {
    color: rgba(255, 255, 255, .62);
}

.mission-practice {
    background: var(--paper);
}

.mission-practice__grid {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, .9fr);
    gap: clamp(65px, 10vw, 150px);
    align-items: start;
}

.mission-list {
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--line);
    list-style: none;
}

.mission-list li {
    min-height: 82px;
    display: grid;
    grid-template-columns: 46px 1fr;
    align-items: center;
    gap: 20px;
    border-bottom: 1px solid var(--line);
}

.mission-list span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.mission-list p {
    margin: 0;
    color: var(--navy-900);
    font-size: .92rem;
    font-weight: 650;
    line-height: 1.55;
}

.apostolic-mandate {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(142deg, #06172b, #0e3151 70%, #133e60);
}

.apostolic-mandate__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .62fr);
    align-items: end;
    gap: 70px;
}

.apostolic-mandate__head > p {
    max-width: 520px;
    margin: 0;
    color: rgba(255, 255, 255, .62);
    line-height: 1.8;
}

.apostolic-mandate__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(60px, 8vw, 105px);
}

.apostolic-mandate__grid article {
    min-height: 370px;
    padding: clamp(34px, 4vw, 50px);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
    backdrop-filter: blur(8px);
}

.apostolic-mandate__grid h3 {
    margin-top: 100px;
}

/* Our Values */

.values-intro,
.beliefs-intro {
    overflow: hidden;
    background:
        radial-gradient(circle at 4% 10%, rgba(235, 207, 145, .25), transparent 26rem),
        var(--ivory-50);
}

.values-intro__grid,
.beliefs-intro__grid {
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(0, .92fr);
    gap: clamp(60px, 10vw, 155px);
    align-items: start;
}

.values-catalogue {
    background: var(--paper);
}

.values-catalogue__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 60px;
    margin-bottom: clamp(50px, 7vw, 84px);
}

.values-catalogue__head .eyebrow {
    margin: 0;
}

.values-catalogue__head > p:last-child {
    max-width: 570px;
    margin: 0;
    color: var(--muted);
    line-height: 1.8;
}

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

.value-card {
    position: relative;
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 46px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(251, 246, 234, .72));
    box-shadow: 0 15px 42px rgba(8, 29, 51, .055);
}

.value-card::after {
    content: "";
    position: absolute;
    right: -7rem;
    bottom: -7rem;
    width: 15rem;
    height: 15rem;
    border: 1px solid rgba(170, 119, 42, .11);
    border-radius: 50%;
    box-shadow: 0 0 0 38px rgba(170, 119, 42, .025);
}

.value-card:nth-child(5n + 1) {
    background: var(--ivory-100);
}

.value-card:first-child,
.value-card:last-child {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(145deg, var(--navy-950), var(--navy-800));
}

.value-card > span {
    position: relative;
    z-index: 1;
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .73rem;
}

.value-card:first-child > span,
.value-card:last-child > span {
    color: var(--gold-300);
}

.value-card h2 {
    position: relative;
    z-index: 1;
    margin: clamp(62px, 7vw, 92px) 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.5vw, 2.25rem);
    font-weight: 400;
    letter-spacing: -.025em;
    line-height: 1.08;
}

.value-card:first-child h2,
.value-card:last-child h2 {
    color: #fff;
}

.value-card > p {
    position: relative;
    z-index: 1;
    margin: 20px 0 0;
    color: var(--muted);
    font-size: .88rem;
    line-height: 1.75;
}

.value-card:first-child > p,
.value-card:last-child > p {
    color: rgba(255, 255, 255, .64);
}

.value-card blockquote {
    position: relative;
    z-index: 1;
    margin: auto 0 0;
    padding-top: 24px;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .84rem;
    font-style: italic;
    line-height: 1.55;
}

.values-commitment {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(142deg, #06172b, #0e3151 70%, #133e60);
}

.values-commitment::before,
.kingdom-mandate::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .12;
    background-image:
        linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent);
}

.values-commitment::after,
.kingdom-mandate::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -16rem;
    z-index: -1;
    width: 44rem;
    height: 44rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(221, 182, 99, .22), transparent 68%);
    transform: translateY(-50%);
}

.values-commitment__inner {
    max-width: 1050px;
    text-align: center;
}

.values-commitment .eyebrow {
    justify-content: center;
}

.values-commitment h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.8rem, 5.7vw, 5.7rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .98;
}

.values-commitment__inner > p:last-child {
    max-width: 720px;
    margin: 31px auto 0;
    color: rgba(255, 255, 255, .62);
    line-height: 1.8;
}

/* Statement of Faith */

.beliefs-catalogue {
    background: var(--paper);
}

.beliefs-ledger {
    border-top: 1px solid var(--line);
}

.belief-row {
    display: grid;
    grid-template-columns: 84px minmax(230px, .62fr) minmax(0, 1fr);
    gap: clamp(28px, 5vw, 76px);
    align-items: start;
    padding: clamp(44px, 6vw, 74px) 0;
    border-bottom: 1px solid var(--line);
}

.belief-row > span {
    padding-top: 9px;
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .75rem;
}

.belief-row h2 {
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.8rem, 3.1vw, 3.05rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: 1.05;
}

.belief-row > p {
    max-width: 710px;
    margin: 0;
    color: var(--muted);
    font-size: .94rem;
    line-height: 1.86;
}

.belief-row--featured {
    margin: 22px 0;
    padding: clamp(42px, 6vw, 70px);
    border: 0;
    border-radius: var(--radius-lg);
    background: linear-gradient(145deg, var(--navy-950), var(--navy-800));
    box-shadow: var(--shadow-lg);
}

.belief-row--featured > span {
    color: var(--gold-300);
}

.belief-row--featured h2 {
    color: #fff;
}

.belief-row--featured > p {
    color: rgba(255, 255, 255, .65);
}

.kingdom-mandate {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(142deg, #06172b, #0e3151 70%, #133e60);
}

.kingdom-mandate__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
    gap: clamp(60px, 10vw, 150px);
    align-items: end;
}

.kingdom-mandate h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.8rem, 5.6vw, 5.5rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .98;
}

.kingdom-mandate h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.kingdom-mandate__inner > div:last-child p {
    margin: 0;
    color: rgba(255, 255, 255, .64);
    line-height: 1.82;
}

.kingdom-mandate__inner > div:last-child p + p {
    margin-top: 20px;
}

/* Leadership */

.leadership-intro,
.governance-intro {
    overflow: hidden;
    background:
        radial-gradient(circle at 4% 10%, rgba(235, 207, 145, .25), transparent 26rem),
        var(--ivory-50);
}

.leadership-intro__grid,
.governance-intro__grid {
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(0, .92fr);
    gap: clamp(60px, 10vw, 155px);
    align-items: start;
}

.founder-focus {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 12% 50%, rgba(221, 182, 99, .2), transparent 24rem),
        linear-gradient(142deg, #06172b, #0e3151 72%, #133e60);
}

.founder-focus::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .11;
    background-image:
        linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(90deg, #000, transparent 76%);
}

.founder-focus__inner {
    display: grid;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1fr);
    gap: clamp(60px, 10vw, 145px);
    align-items: center;
}

.founder-focus__portrait {
    position: relative;
    width: min(100%, 460px);
    aspect-ratio: 4 / 5;
    min-height: 560px;
    justify-self: center;
    overflow: hidden;
    border: 1px solid rgba(221, 182, 99, .28);
    border-radius: 240px 240px 28px 28px;
    background: rgba(255, 255, 255, .035);
    box-shadow:
        0 0 0 18px rgba(221, 182, 99, .035),
        0 30px 80px rgba(0, 0, 0, .2);
}

.founder-focus__portrait img {
    object-position: center 18%;
}

.founder-focus__content h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 5.8vw, 5.8rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .96;
}

.founder-focus__content h2 span {
    display: block;
    margin-top: 12px;
    color: var(--gold-300);
    font-size: .42em;
    letter-spacing: -.01em;
}

.founder-focus__content > p:not(.eyebrow) {
    max-width: 690px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .66);
    line-height: 1.84;
}

.founder-focus blockquote {
    max-width: 650px;
    margin: 42px 0 0;
    padding: 28px 0 0 30px;
    border-top: 1px solid rgba(255, 255, 255, .14);
    border-left: 2px solid var(--gold-400);
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.35rem, 2.4vw, 2.1rem);
    line-height: 1.35;
}

.founder-focus cite {
    display: block;
    margin-top: 13px;
    color: rgba(255, 255, 255, .48);
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: .66rem;
    font-style: normal;
    font-weight: 760;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.leadership-structure {
    background: var(--paper);
}

.leadership-structure__head,
.governance-principles__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .58fr);
    gap: clamp(50px, 8vw, 120px);
    align-items: end;
    margin-bottom: clamp(58px, 8vw, 96px);
}

.leadership-structure__head > p,
.governance-principles__head > p {
    margin: 0;
    color: var(--muted);
    line-height: 1.82;
}

.leadership-map {
    border-top: 1px solid var(--line);
}

.leadership-role {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    border-bottom: 1px solid var(--line);
}

.leadership-role__number {
    padding: clamp(38px, 5vw, 64px) 20px 0 0;
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.leadership-role__content {
    display: grid;
    grid-template-columns: minmax(160px, .32fr) minmax(260px, .7fr) minmax(0, 1fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: start;
    padding: clamp(38px, 5vw, 64px) 0;
    border-left: 1px solid var(--line);
}

.leadership-role__content > p {
    margin: 8px 0 0;
    padding-left: clamp(24px, 4vw, 52px);
    color: var(--gold-600);
    font-size: .63rem;
    font-weight: 820;
    letter-spacing: .075em;
    line-height: 1.55;
    text-transform: uppercase;
}

.leadership-role h3 {
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.75rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: 1.06;
}

.leadership-role__content > span {
    max-width: 640px;
    color: var(--muted);
    font-size: .9rem;
    line-height: 1.82;
}

.leadership-role:first-child .leadership-role__content,
.leadership-role:first-child .leadership-role__number {
    background: var(--ivory-100);
}

.leadership-unity {
    overflow: hidden;
    background:
        radial-gradient(circle at 84% 50%, rgba(221, 182, 99, .24), transparent 25rem),
        var(--ivory-100);
}

.leadership-unity__inner,
.governance-assurance__inner {
    max-width: 1050px;
    text-align: center;
}

.leadership-unity .eyebrow,
.governance-assurance .eyebrow {
    justify-content: center;
}

.leadership-unity h2,
.governance-assurance h2 {
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.8rem, 5.7vw, 5.7rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .98;
}

.leadership-unity__inner > p:last-child,
.governance-assurance__inner > p:last-child {
    max-width: 740px;
    margin: 31px auto 0;
    color: var(--muted);
    line-height: 1.82;
}

/* Governance */

.governance-framework {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(142deg, #06172b, #0e3151 70%, #133e60);
}

.governance-framework::before {
    content: "";
    position: absolute;
    top: -20rem;
    right: -13rem;
    z-index: -1;
    width: 48rem;
    height: 48rem;
    border: 1px solid rgba(221, 182, 99, .13);
    border-radius: 50%;
    box-shadow:
        0 0 0 80px rgba(221, 182, 99, .025),
        0 0 0 170px rgba(221, 182, 99, .018);
}

.governance-framework__head {
    max-width: 1040px;
}

.governance-framework__head h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.8rem, 5.8vw, 5.8rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .98;
}

.governance-framework__head h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.governance-framework__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: clamp(58px, 8vw, 100px);
}

.governance-framework__grid article {
    min-height: 360px;
    padding: clamp(32px, 4vw, 48px);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
    backdrop-filter: blur(8px);
}

.governance-framework__grid span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.governance-framework__grid h3 {
    margin: clamp(78px, 8vw, 108px) 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.7rem, 2.7vw, 2.5rem);
    font-weight: 400;
    letter-spacing: -.03em;
    line-height: 1.08;
}

.governance-framework__grid p {
    margin: 19px 0 0;
    color: rgba(255, 255, 255, .62);
    font-size: .88rem;
    line-height: 1.76;
}

.governance-principles {
    background: var(--paper);
}

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

.governance-principle {
    min-height: 330px;
    padding: clamp(32px, 4vw, 48px);
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background: linear-gradient(145deg, #fff, rgba(251, 246, 234, .72));
    box-shadow: 0 15px 42px rgba(8, 29, 51, .05);
}

.governance-principle:first-child,
.governance-principle:last-child {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(145deg, var(--navy-950), var(--navy-800));
}

.governance-principle:last-child {
    grid-column: 1 / -1;
    min-height: 280px;
}

.governance-principle > span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.governance-principle:first-child > span,
.governance-principle:last-child > span {
    color: var(--gold-300);
}

.governance-principle h3 {
    margin: clamp(60px, 7vw, 88px) 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.8rem, 3vw, 2.8rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: 1.06;
}

.governance-principle:first-child h3,
.governance-principle:last-child h3 {
    color: #fff;
}

.governance-principle p {
    max-width: 760px;
    margin: 20px 0 0;
    color: var(--muted);
    font-size: .9rem;
    line-height: 1.8;
}

.governance-principle:first-child p,
.governance-principle:last-child p {
    color: rgba(255, 255, 255, .64);
}

.governance-assurance {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(142deg, #06172b, #0e3151 70%, #133e60);
}

.governance-assurance::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -16rem;
    z-index: -1;
    width: 44rem;
    height: 44rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(221, 182, 99, .22), transparent 68%);
    transform: translateY(-50%);
}

.governance-assurance h2 {
    color: #fff;
}

.governance-assurance__inner > p:last-child {
    color: rgba(255, 255, 255, .62);
}

@media (max-width: 960px) {
    .leadership-intro__grid,
    .governance-intro__grid,
    .founder-focus__inner,
    .leadership-structure__head,
    .governance-principles__head {
        grid-template-columns: 1fr;
    }

    .leadership-intro__grid,
    .governance-intro__grid,
    .leadership-structure__head,
    .governance-principles__head {
        gap: 40px;
    }

    .founder-focus__inner {
        gap: 72px;
    }

    .founder-focus__portrait {
        width: min(68vw, 410px);
        min-height: 0;
        margin-inline: auto;
    }

    .leadership-role__content {
        grid-template-columns: minmax(150px, .34fr) minmax(230px, .66fr);
    }

    .leadership-role__content > span {
        grid-column: 2;
    }

    .governance-framework__grid {
        grid-template-columns: 1fr 1fr;
    }

    .governance-framework__grid article:last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 700px) {
    .leadership-intro__grid,
    .governance-intro__grid,
    .leadership-structure__head,
    .governance-principles__head {
        gap: 34px;
    }

    .founder-focus__portrait {
        width: min(78vw, 340px);
    }

    .founder-focus__content h2,
    .leadership-unity h2,
    .governance-framework__head h2,
    .governance-assurance h2 {
        font-size: clamp(2.55rem, 12vw, 4rem);
    }

    .founder-focus blockquote {
        padding-left: 22px;
    }

    .leadership-role {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .leadership-role__number {
        padding-right: 8px;
    }

    .leadership-role__content {
        grid-template-columns: 1fr;
        gap: 19px;
        padding-left: 21px;
    }

    .leadership-role__content > p {
        margin: 0;
        padding: 0;
    }

    .leadership-role__content > span {
        grid-column: auto;
    }

    .governance-framework__grid,
    .governance-principles__grid {
        grid-template-columns: 1fr;
    }

    .governance-framework__grid article:last-child,
    .governance-principle:last-child {
        grid-column: auto;
    }

    .governance-framework__grid article,
    .governance-principle,
    .governance-principle:last-child {
        min-height: 330px;
        padding: 31px 26px;
    }

    .governance-framework__grid h3,
    .governance-principle h3 {
        margin-top: 58px;
    }
}

/* Global locations */

.locations-navigation {
    position: relative;
    z-index: 10;
    border-bottom: 1px solid var(--line);
    background: rgba(255, 253, 248, .98);
    box-shadow: 0 14px 40px rgba(6, 23, 43, .05);
}

.locations-navigation__inner {
    min-height: 68px;
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.locations-navigation a {
    min-width: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border-right: 1px solid var(--line);
    color: var(--muted);
    font-size: .69rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .2s ease, background .2s ease;
}

.locations-navigation a:first-child {
    border-left: 1px solid var(--line);
}

.locations-navigation a:hover,
.locations-navigation a:focus-visible {
    color: var(--navy-950);
    background: var(--ivory-100);
}

.locations-overview {
    background:
        radial-gradient(circle at 9% 12%, rgba(221, 182, 99, .15), transparent 28%),
        var(--paper);
}

.locations-overview__grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(60px, 9vw, 150px);
    align-items: start;
}

.locations-overview__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 88px;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: rgba(255, 255, 255, .86);
    box-shadow: var(--shadow-sm);
}

.locations-overview__facts article {
    min-height: 280px;
    display: flex;
    flex-direction: column;
    padding: 40px;
}

.locations-overview__facts article + article {
    border-left: 1px solid var(--line);
}

.locations-overview__facts strong {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.2rem, 5vw, 5.2rem);
    font-weight: 400;
    line-height: .9;
}

.locations-overview__facts span {
    margin-top: 38px;
    color: var(--navy-950);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.locations-overview__facts p {
    margin: 15px 0 0;
    color: var(--muted);
    font-size: .86rem;
    line-height: 1.75;
}

.campus-directory {
    position: relative;
    background: var(--ivory-100);
}

.campus-directory::before {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
    background-image:
        linear-gradient(rgba(10, 33, 60, .025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(10, 33, 60, .025) 1px, transparent 1px);
    background-size: 62px 62px;
    mask-image: linear-gradient(to bottom, transparent, #000 14%, #000 86%, transparent);
}

.campus-directory__head,
.country-directory {
    position: relative;
}

.campus-directory__head {
    max-width: 930px;
}

.campus-directory__head h2 {
    max-width: 830px;
    margin: 17px 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.15rem, 6vw, 6.1rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .98;
}

.campus-directory__head h2 em {
    display: block;
    color: var(--gold-600);
    font-weight: 400;
}

.country-directory {
    margin-top: 88px;
}

.country-block {
    scroll-margin-top: 24px;
    padding: 76px 0;
    border-top: 1px solid rgba(10, 33, 60, .15);
}

.country-block:last-child {
    padding-bottom: 0;
}

.country-block__head {
    display: grid;
    grid-template-columns: 94px minmax(270px, .8fr) minmax(320px, 1.2fr);
    gap: 38px;
    align-items: start;
    margin-bottom: 46px;
}

.country-block__head > span {
    width: 82px;
    height: 82px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(170, 119, 42, .3);
    border-radius: 50%;
    color: var(--gold-600);
    background: rgba(255, 255, 255, .68);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    letter-spacing: .08em;
    box-shadow: inset 0 0 0 8px rgba(221, 182, 99, .08);
}

.country-block__head div > p {
    margin: 1px 0 10px;
    color: var(--gold-600);
    font-size: .69rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.country-block__head h3 {
    max-width: 500px;
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3.3vw, 3.35rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: 1.06;
}

.country-block__head > p {
    max-width: 650px;
    margin: 0;
    color: var(--muted);
    font-size: .96rem;
    line-height: 1.85;
}

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

.campus-card {
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: 34px;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 15px 40px rgba(8, 29, 51, .05);
}

.campus-card--featured {
    grid-column: span 2;
    color: #fff;
    border-color: rgba(221, 182, 99, .25);
    background:
        radial-gradient(circle at 92% 9%, rgba(221, 182, 99, .24), transparent 28%),
        linear-gradient(145deg, var(--navy-900), var(--navy-950));
    box-shadow: 0 25px 60px rgba(6, 23, 43, .16);
}

.campus-card:only-child {
    grid-column: 1 / -1;
}

.campus-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.campus-card__top > span {
    color: var(--gold-600);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.campus-card--featured .campus-card__top > span {
    color: var(--gold-300);
}

.campus-card__top small {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 50%;
    color: var(--muted);
    font-size: .61rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.campus-card--featured .campus-card__top small {
    color: rgba(255, 255, 255, .7);
    border-color: rgba(255, 255, 255, .16);
}

.campus-card h4 {
    margin: 64px 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.25rem, 4vw, 4rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: 1;
}

.campus-card--featured h4 {
    color: #fff;
}

.campus-card dl {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    margin: 32px 0 0;
}

.campus-card dl > div {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 16px;
    padding-top: 15px;
    border-top: 1px solid var(--line);
}

.campus-card--featured dl > div {
    border-color: rgba(255, 255, 255, .12);
}

.campus-card dt {
    color: var(--gold-600);
    font-size: .59rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.campus-card--featured dt {
    color: var(--gold-300);
}

.campus-card dd {
    margin: 0;
    color: var(--muted);
    font-size: .79rem;
    line-height: 1.65;
}

.campus-card--featured dd {
    color: rgba(255, 255, 255, .73);
}

.campus-card > a {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin-top: auto;
    padding-top: 26px;
    color: var(--navy-900);
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-decoration: none;
    text-transform: uppercase;
}

.campus-card--featured > a {
    color: var(--gold-300);
}

.campus-card > a span {
    font-size: 1rem;
    transition: transform .2s ease;
}

.campus-card > a:hover span,
.campus-card > a:focus-visible span {
    transform: translateX(4px);
}

.global-online {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(130deg, rgba(9, 35, 62, .98), rgba(4, 18, 35, 1));
}

.global-online::before {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
    opacity: .18;
    background-image:
        radial-gradient(circle, var(--gold-300) 1px, transparent 1.2px);
    background-size: 34px 34px;
    mask-image: radial-gradient(circle at 27% 50%, #000, transparent 45%);
}

.global-online__orb {
    position: absolute;
    border: 1px solid rgba(221, 182, 99, .16);
    border-radius: 50%;
    pointer-events: none;
}

.global-online__orb--one {
    width: 560px;
    height: 560px;
    top: -310px;
    right: -150px;
}

.global-online__orb--two {
    width: 340px;
    height: 340px;
    right: -20px;
    bottom: -240px;
}

.global-online__grid {
    position: relative;
    display: grid;
    grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
    gap: clamp(65px, 10vw, 165px);
    align-items: center;
}

.global-online__mark {
    position: relative;
    aspect-ratio: 1;
    width: min(100%, 430px);
    display: grid;
    place-items: center;
    margin-inline: auto;
    border: 1px solid rgba(221, 182, 99, .28);
    border-radius: 50%;
    box-shadow:
        inset 0 0 0 36px rgba(221, 182, 99, .035),
        inset 0 0 0 72px rgba(221, 182, 99, .025);
}

.global-online__mark::before,
.global-online__mark::after,
.global-online__mark span {
    position: absolute;
    content: "";
    border: 1px solid rgba(221, 182, 99, .25);
    border-radius: 50%;
}

.global-online__mark::before {
    width: 54%;
    height: 100%;
}

.global-online__mark::after {
    width: 100%;
    height: 54%;
}

.global-online__mark span {
    width: 68%;
    height: 68%;
}

.global-online__mark strong {
    position: relative;
    z-index: 2;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.5rem, 6vw, 5rem);
    font-weight: 400;
    letter-spacing: .1em;
}

.global-online h2 {
    max-width: 760px;
    margin: 17px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.2rem, 6vw, 6.2rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .96;
}

.global-online h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.global-online h2 + p {
    max-width: 710px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .73);
    font-size: .98rem;
    line-height: 1.85;
}

.global-online__features {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 32px;
}

.global-online__features span {
    padding: 10px 14px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    background: rgba(255, 255, 255, .035);
    font-size: .67rem;
    font-weight: 750;
    letter-spacing: .04em;
}

.global-online .button {
    margin-top: 38px;
}

.locations-next {
    background:
        radial-gradient(circle at 90% 0%, rgba(221, 182, 99, .18), transparent 28%),
        var(--paper);
}

.locations-next__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 60px;
    align-items: end;
}

.locations-next h2 {
    max-width: 850px;
    margin: 17px 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 5.5vw, 5.6rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .98;
}

.locations-next h2 + p {
    max-width: 690px;
    margin: 28px 0 0;
    color: var(--muted);
    line-height: 1.82;
}

.locations-next__actions {
    display: flex;
    align-items: center;
    gap: 28px;
    padding-bottom: 8px;
}

@media (max-width: 960px) {
    .locations-overview__grid,
    .global-online__grid,
    .locations-next__inner {
        grid-template-columns: 1fr;
    }

    .locations-overview__grid,
    .global-online__grid {
        gap: 58px;
    }

    .locations-overview__facts {
        margin-top: 65px;
    }

    .locations-overview__facts article {
        min-height: 250px;
        padding: 32px 28px;
    }

    .country-block__head {
        grid-template-columns: 94px minmax(0, 1fr);
    }

    .country-block__head > p {
        grid-column: 2;
    }

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

    .campus-card:only-child {
        grid-column: 1 / -1;
    }

    .global-online__mark {
        width: min(66vw, 400px);
    }

    .locations-next__actions {
        padding-bottom: 0;
    }
}

@media (max-width: 700px) {
    .locations-navigation__inner {
        width: 100%;
        min-height: 60px;
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .locations-navigation__inner::-webkit-scrollbar {
        display: none;
    }

    .locations-navigation a {
        min-width: max-content;
        padding: 0 18px;
        font-size: .62rem;
    }

    .locations-overview__facts {
        grid-template-columns: 1fr;
        border-radius: 25px;
    }

    .locations-overview__facts article {
        min-height: 0;
        padding: 31px 27px;
    }

    .locations-overview__facts article + article {
        border-top: 1px solid var(--line);
        border-left: 0;
    }

    .locations-overview__facts strong {
        font-size: 3.5rem;
    }

    .locations-overview__facts span {
        margin-top: 22px;
    }

    .campus-directory__head h2,
    .global-online h2,
    .locations-next h2 {
        font-size: clamp(2.6rem, 12vw, 4rem);
    }

    .country-directory {
        margin-top: 60px;
    }

    .country-block {
        padding: 58px 0;
    }

    .country-block__head {
        grid-template-columns: 1fr;
        gap: 24px;
        margin-bottom: 34px;
    }

    .country-block__head > span {
        width: 68px;
        height: 68px;
        font-size: 1rem;
    }

    .country-block__head > p {
        grid-column: auto;
    }

    .country-block__head h3 {
        font-size: clamp(2rem, 10vw, 3rem);
    }

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

    .campus-card,
    .campus-card--featured,
    .campus-card:only-child {
        min-height: 360px;
        grid-column: auto;
        padding: 29px 25px;
    }

    .campus-card h4 {
        margin-top: 55px;
        font-size: clamp(2.25rem, 12vw, 3.4rem);
    }

    .campus-card dl > div {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .global-online__grid {
        gap: 52px;
    }

    .global-online__mark {
        width: min(78vw, 330px);
    }

    .global-online__features {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .locations-next__actions {
        align-items: stretch;
        flex-direction: column;
    }
}

/* Explicit image placements */

.site-image {
    position: relative;
    overflow: hidden;
    background: #0a2540;
}

.site-image picture,
.site-image img {
    display: block;
    width: 100%;
    height: 100%;
}

.site-image img {
    object-fit: cover;
}

.home-hero__media.site-image {
    border-radius: 0;
}

.welcome__identity {
    min-width: 0;
}

.welcome__image {
    width: min(100%, 610px);
    min-height: 360px;
    aspect-ratio: 4 / 3;
    margin-top: clamp(42px, 6vw, 72px);
    border-radius: 160px 24px 24px 24px;
    box-shadow: 0 32px 80px rgba(8, 29, 51, .14);
}

.welcome__image img {
    object-position: center;
}

.home-locations__visual {
    width: min(100%, 440px);
    justify-self: center;
}

.home-locations__image {
    width: 100%;
    aspect-ratio: 4 / 5;
    min-height: 500px;
    border: 1px solid rgba(235, 207, 145, .26);
    border-radius: 220px 220px 24px 24px;
    box-shadow: 0 42px 100px rgba(0, 0, 0, .22);
}

.home-locations__visual > p {
    max-width: 340px;
    margin: 26px auto 0;
    color: rgba(255, 255, 255, .58);
    font-size: .8rem;
    line-height: 1.7;
    text-align: center;
}

.home-locations__visual > p strong {
    display: block;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.45rem;
    font-weight: 400;
}

.online__visual {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(280px, .62fr);
    align-items: stretch;
    gap: 0;
    margin-top: clamp(50px, 7vw, 84px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background: var(--navy-950);
    box-shadow: var(--shadow-md);
}

.online__image {
    min-height: 430px;
}

.online__visual-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(34px, 5vw, 66px);
    color: rgba(255, 255, 255, .66);
}

.online__visual-copy span {
    color: var(--gold-300);
    font-size: .65rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.online__visual-copy strong {
    margin-top: 24px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.8rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.03em;
    line-height: 1.08;
}

.online__visual-copy p {
    margin: 22px 0 0;
    line-height: 1.8;
}

.partnership {
    isolation: isolate;
}

.partnership__media,
.partnership__veil {
    position: absolute;
    inset: 0;
}

.partnership__media {
    z-index: -3;
}

.partnership__media img {
    object-position: center;
}

.partnership__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 18, 35, .97), rgba(4, 18, 35, .78)),
        linear-gradient(180deg, rgba(4, 18, 35, .2), rgba(4, 18, 35, .88));
}

@media (max-width: 1220px) {
    .primary-navigation,
    .header-login {
        display: none;
    }

    .mobile-navigation {
        display: block;
    }

    .home-hero__inner {
        grid-template-columns: minmax(0, 1fr) 300px;
        gap: 50px;
    }

    .home-hero h1 {
        font-size: clamp(3.6rem, 8vw, 6rem);
    }

    .partnership__grid {
        grid-template-columns: 1fr .7fr;
    }

    .partnership__actions {
        grid-column: 1 / -1;
        display: flex;
        align-items: center;
    }

    .site-footer__top {
        grid-template-columns: 1fr;
    }

    .inner-cta__inner {
        grid-template-columns: 1fr .7fr;
    }

    .inner-cta__actions {
        grid-column: 1 / -1;
        display: flex;
    }
}

@media (max-width: 960px) {
    .utility-bar p {
        display: none;
    }

    .utility-bar__inner {
        justify-content: center;
    }

    .home-hero {
        min-height: 850px;
    }

    .home-hero__inner {
        grid-template-columns: 1fr;
        gap: 38px;
    }

    .home-hero__content {
        align-self: end;
    }

    .home-hero__card {
        width: min(100%, 580px);
        align-self: start;
        margin: 0;
    }

    .home-hero__scroll {
        display: none;
    }

    .welcome__grid,
    .locations__head,
    .online__head,
    .locations__layout {
        grid-template-columns: 1fr;
    }

    .welcome__grid,
    .locations__head,
    .online__head {
        gap: 38px;
    }

    .welcome__copy {
        max-width: 760px;
    }

    .welcome__image {
        width: min(100%, 720px);
    }

    .locations__layout {
        gap: 55px;
    }

    .home-locations__visual {
        width: min(72vw, 440px);
        margin-inline: auto;
    }

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

    .online__image {
        min-height: 390px;
    }

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

    .experience-card:first-child {
        grid-column: 1 / -1;
    }

    .footer-links {
        grid-template-columns: 1fr 1fr;
        row-gap: 48px;
    }

    .about-intro__grid,
    .story-preview__grid,
    .about-pathways__head,
    .story-page__opening,
    .mission-practice__grid,
    .apostolic-mandate__head,
    .values-intro__grid,
    .beliefs-intro__grid,
    .kingdom-mandate__inner {
        grid-template-columns: 1fr;
    }

    .about-intro__grid,
    .about-pathways__head,
    .apostolic-mandate__head,
    .values-intro__grid,
    .beliefs-intro__grid {
        gap: 40px;
    }

    .story-preview__grid,
    .story-page__opening,
    .mission-practice__grid {
        gap: 58px;
    }

    .story-preview__timeline {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
        padding: 0;
    }

    .story-preview__timeline::before {
        top: 7px;
        right: 5%;
        bottom: auto;
        left: 5%;
        width: auto;
        height: 1px;
        background: linear-gradient(90deg, var(--gold-500), rgba(170, 119, 42, .12));
    }

    .story-preview__timeline article {
        min-height: 0;
        padding: 40px 0 0;
    }

    .story-preview__timeline article::before {
        top: 1px;
        left: 0;
    }

    .vision-window__head,
    .next-page__inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .mandate-grid,
    .pathway-grid,
    .apostolic-mandate__grid {
        grid-template-columns: 1fr 1fr;
    }

    .mandate-grid article:last-child,
    .pathway-grid > a:last-child,
    .apostolic-mandate__grid article:last-child {
        grid-column: 1 / -1;
    }

    .vision-statements__grid {
        grid-template-columns: 1fr;
    }

    .vision-statement {
        min-height: 560px;
    }

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

    .values-grid .value-card:last-child {
        grid-column: 1 / -1;
    }

    .belief-row {
        grid-template-columns: 56px minmax(210px, .62fr) minmax(0, 1fr);
        gap: 28px;
    }

    .kingdom-mandate__inner {
        gap: 52px;
        align-items: start;
    }
}

@media (max-width: 700px) {
    .container {
        width: min(calc(100% - 32px), var(--container));
    }

    .preview-notice {
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 6px 9px;
        padding: 10px 16px;
        font-size: .66rem;
    }

    .preview-notice span:not(.preview-notice__pulse) {
        display: none;
    }

    .utility-actions {
        width: 100%;
        justify-content: center;
    }

    .utility-actions a {
        flex: 1;
        justify-content: center;
        padding: 0 7px;
        font-size: .55rem;
    }

    .utility-actions a:nth-child(2) {
        display: none;
    }

    .site-header__main {
        min-height: 78px;
    }

    .site-brand {
        min-width: 0;
        gap: 10px;
    }

    .site-brand__mark {
        width: 49px;
        height: 49px;
        flex-basis: 49px;
        border-radius: 15px;
    }

    .site-brand__copy strong {
        font-size: .79rem;
    }

    .site-brand__copy span {
        font-size: .48rem;
    }

    .site-brand__copy small {
        font-size: .54rem;
    }

    .mobile-navigation__panel {
        position: absolute;
        top: calc(100% + 15px);
        right: 0;
        left: auto;
        width: calc(100vw - 32px);
        margin: 0;
        padding: 22px;
    }

    .mobile-navigation nav {
        grid-template-columns: 1fr;
        max-height: 48vh;
        overflow-y: auto;
    }

    .section {
        padding: 82px 0;
    }

    .section-heading h2,
    .partnership h2 {
        font-size: clamp(2.55rem, 12vw, 4rem);
    }

    .home-hero {
        min-height: 820px;
        align-items: flex-end;
    }

    .home-hero__media img {
        object-position: 62% center;
    }

    .home-hero__veil {
        background:
            linear-gradient(180deg, rgba(4, 18, 35, .24), rgba(4, 18, 35, .92) 50%, rgba(4, 18, 35, .98));
    }

    .home-hero__inner {
        min-height: 820px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        gap: 28px;
        padding-top: 100px;
        padding-bottom: 50px;
    }

    .home-hero h1 {
        font-size: clamp(3.05rem, 15vw, 4.65rem);
        line-height: .88;
    }

    .home-hero h1 span {
        margin-top: 13px;
        font-size: .43em;
        line-height: 1.1;
    }

    .home-hero__identity {
        margin-top: 19px;
    }

    .home-hero__statement {
        margin-top: 22px;
        font-size: 1.13rem;
    }

    .home-hero__intro {
        display: none;
    }

    .home-hero__actions {
        align-items: stretch;
        margin-top: 27px;
    }

    .home-hero__actions .button {
        flex: 1 1 145px;
        padding: 0 16px;
    }

    .home-hero__actions .text-link {
        width: 100%;
        margin: 8px 0 0;
    }

    .home-hero__card {
        display: none;
    }

    .welcome__image {
        min-height: 300px;
        border-radius: 100px 20px 20px 20px;
    }

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

    .welcome__values article {
        min-height: 0;
        padding: 28px 12px;
    }

    .welcome__values article + article {
        border-top: 1px solid var(--line);
        border-left: 0;
    }

    .welcome__values h3 {
        margin-top: 18px;
    }

    .location-list article {
        grid-template-columns: 1fr 48px;
        gap: 8px 16px;
        padding: 19px 0;
    }

    .home-locations__visual {
        width: min(88vw, 380px);
    }

    .home-locations__image {
        min-height: 430px;
    }

    .location-list p {
        grid-column: 1;
    }

    .location-list h3 {
        grid-column: 1;
    }

    .location-list article > a {
        grid-column: 2;
        grid-row: 1 / 3;
    }

    .locations__actions,
    .online__actions {
        align-items: stretch;
        justify-content: flex-start;
    }

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

    .online__visual {
        border-radius: 24px;
    }

    .online__image {
        min-height: 280px;
    }

    .online__visual-copy {
        padding: 34px 26px 38px;
    }

    .experience-card:first-child {
        grid-column: auto;
    }

    .experience-card {
        min-height: 370px;
    }

    .experience-card__label {
        margin-top: 70px;
    }

    .partnership__grid {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 38px;
    }

    .partnership__actions {
        grid-column: auto;
        align-items: flex-start;
        flex-direction: column;
    }

    .journey h2 {
        font-size: clamp(3.2rem, 15vw, 5rem);
    }

    .journey h2 em {
        display: block;
    }

    .site-footer__top {
        gap: 55px;
    }

    .footer-links {
        grid-template-columns: 1fr 1fr;
        gap: 40px 24px;
    }

    .site-footer__bottom {
        align-items: flex-start;
        flex-direction: column;
        padding: 24px 0;
    }

    .page-hero {
        min-height: 590px;
    }

    .page-hero__media img {
        object-position: 62% center;
    }

    .page-hero__media::after {
        background:
            linear-gradient(180deg, rgba(4, 18, 35, .32), rgba(4, 18, 35, .86) 50%, rgba(4, 18, 35, .97));
    }

    .page-hero__inner {
        padding-top: 95px;
        padding-bottom: 62px;
    }

    .breadcrumbs {
        margin-bottom: 62px;
        font-size: .6rem;
    }

    .page-hero h1 {
        font-size: clamp(3rem, 14vw, 4.7rem);
        line-height: .91;
    }

    .page-hero__content > p:last-child {
        margin-top: 23px;
        font-size: .9rem;
        line-height: 1.68;
    }

    .section-navigation__inner {
        min-height: 60px;
    }

    .section-navigation a {
        padding: 0 13px;
        font-size: .62rem;
    }

    .about-intro__grid,
    .about-pathways__head,
    .apostolic-mandate__head,
    .values-intro__grid,
    .beliefs-intro__grid {
        gap: 34px;
    }

    .rich-copy {
        font-size: .94rem;
        line-height: 1.8;
    }

    .purpose-statement {
        width: min(calc(100% - 32px), var(--container));
        padding: 31px 25px;
        border-radius: 24px;
    }

    .purpose-statement blockquote {
        font-size: clamp(1.8rem, 9vw, 2.8rem);
    }

    .story-preview__timeline {
        grid-template-columns: 1fr;
        gap: 0;
        padding-left: 32px;
    }

    .story-preview__timeline::before {
        top: 8px;
        right: auto;
        bottom: 8px;
        left: 5px;
        width: 1px;
        height: auto;
        background: linear-gradient(var(--gold-500), rgba(170, 119, 42, .12));
    }

    .story-preview__timeline article {
        padding: 0 0 37px 16px;
    }

    .story-preview__timeline article::before {
        top: 7px;
        left: -33px;
    }

    .story-preview__timeline span {
        font-size: 2.45rem;
    }

    .story-preview__content h2,
    .vision-window h2,
    .about-pathways__head h2,
    .calling-statement h2,
    .next-page h2,
    .inner-cta h2 {
        font-size: clamp(2.45rem, 12vw, 3.8rem);
    }

    .vision-window__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .mandate-grid,
    .pathway-grid,
    .apostolic-mandate__grid {
        grid-template-columns: 1fr;
    }

    .mandate-grid article:last-child,
    .pathway-grid > a:last-child,
    .apostolic-mandate__grid article:last-child {
        grid-column: auto;
    }

    .mandate-grid article,
    .pathway-grid > a,
    .apostolic-mandate__grid article {
        min-height: 340px;
    }

    .mandate-grid article > p:first-of-type,
    .pathway-grid h3,
    .apostolic-mandate__grid h3 {
        margin-top: 62px;
    }

    .inner-cta__inner {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 34px;
    }

    .inner-cta__actions {
        grid-column: auto;
        align-items: stretch;
        flex-direction: column;
    }

    .story-page__drop {
        font-size: clamp(2.5rem, 12vw, 4rem);
    }

    .story-line::before {
        left: 6px;
    }

    .story-line article {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 50px 0 50px 34px;
    }

    .story-line article::before {
        top: 60px;
        left: 0;
        transform: none;
    }

    .story-line article > div {
        padding-left: 0;
    }

    .story-line h2 {
        font-size: clamp(2rem, 10vw, 3rem);
    }

    .calling-statement {
        padding: 95px 0;
    }

    .next-page__inner {
        align-items: stretch;
        flex-direction: column;
    }

    .vision-statement {
        min-height: 580px;
        padding: 32px 26px;
        border-radius: 25px;
    }

    .vision-statement .eyebrow {
        margin-top: 70px;
    }

    .vision-statement h2 {
        font-size: clamp(1.65rem, 8vw, 2.55rem);
    }

    .mission-list li {
        min-height: 76px;
        grid-template-columns: 38px 1fr;
        gap: 13px;
    }

    .values-catalogue__head {
        align-items: flex-start;
        flex-direction: column;
        gap: 24px;
    }

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

    .values-grid .value-card:last-child {
        grid-column: auto;
    }

    .value-card {
        min-height: 350px;
        padding: 31px 26px;
    }

    .value-card h2 {
        margin-top: 58px;
        font-size: clamp(1.7rem, 9vw, 2.5rem);
    }

    .values-commitment h2,
    .kingdom-mandate h2 {
        font-size: clamp(2.6rem, 12vw, 4rem);
    }

    .belief-row,
    .belief-row--featured {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 46px 0;
    }

    .belief-row > span {
        padding: 0;
    }

    .belief-row h2 {
        font-size: clamp(2rem, 10vw, 3rem);
    }

    .belief-row--featured {
        margin: 16px 0;
        padding: 38px 27px;
        border-radius: 25px;
    }
}

@media (max-width: 430px) {
    .site-brand__copy span,
    .site-brand__copy small {
        display: none;
    }

    .mobile-navigation summary {
        width: 44px;
        height: 44px;
    }

    .footer-links {
        grid-template-columns: 1fr;
    }

    .site-footer__bottom nav {
        flex-wrap: wrap;
        gap: 14px 20px;
    }
}

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

/* ================================================================
   Phase 1, Step 12 — Ministry detail system / Keep The Faith Kids
   ================================================================ */

.ministry-detail-hero {
    position: relative;
    min-height: clamp(760px, calc(100vh - 130px), 940px);
    display: flex;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.ministry-detail-hero__media.site-image,
.ministry-detail-hero__veil,
.ministry-detail-hero__glow {
    position: absolute;
    inset: 0;
}

.ministry-detail-hero__media.site-image {
    z-index: -4;
    width: 100%;
    height: 100%;
}

.ministry-detail-hero__media picture,
.ministry-detail-hero__media img {
    width: 100%;
    height: 100%;
}

.ministry-detail-hero__media img {
    object-fit: cover;
    object-position: center 35%;
    animation: kids-hero-breathe 18s ease-in-out infinite alternate;
}

.ministry-detail-hero__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(3, 17, 33, .96) 0%, rgba(3, 17, 33, .85) 42%, rgba(3, 17, 33, .26) 78%, rgba(3, 17, 33, .48) 100%),
        linear-gradient(180deg, rgba(3, 17, 33, .08), rgba(3, 17, 33, .72));
}

.ministry-detail-hero__veil {
    z-index: -3;
    background:
        radial-gradient(circle at 78% 28%, rgba(235, 207, 145, .22), transparent 26%),
        linear-gradient(180deg, transparent 58%, rgba(3, 17, 33, .55));
}

.ministry-detail-hero__glow {
    z-index: -2;
    background:
        linear-gradient(90deg, transparent 0 72%, rgba(255, 255, 255, .08) 72% 72.06%, transparent 72.06%),
        radial-gradient(circle at 8% 92%, rgba(201, 149, 61, .15), transparent 28%);
}

@keyframes kids-hero-breathe {
    to {
        transform: scale(1.04);
    }
}

.ministry-detail-hero__inner {
    min-height: inherit;
    display: flex;
    flex-direction: column;
    padding-top: clamp(48px, 7vw, 90px);
    padding-bottom: clamp(68px, 8vw, 112px);
}

.breadcrumbs--detail {
    color: rgba(255, 255, 255, .62);
}

.breadcrumbs--detail a,
.breadcrumbs--detail strong {
    color: inherit;
}

.breadcrumbs--detail a:hover,
.breadcrumbs--detail a:focus-visible {
    color: var(--gold-300);
}

.ministry-detail-hero__content {
    width: min(850px, 72%);
    margin-top: auto;
    animation: page-hero-enter .9s cubic-bezier(.22, .61, .36, 1) both;
}

.ministry-detail-hero h1 {
    max-width: 810px;
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4rem, 7.2vw, 7.4rem);
    font-weight: 400;
    letter-spacing: -.06em;
    line-height: .84;
}

.ministry-detail-hero h1 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.ministry-detail-hero__intro {
    max-width: 720px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .82);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2vw, 1.7rem);
    line-height: 1.48;
}

.ministry-detail-hero blockquote {
    max-width: 720px;
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin: 24px 0 0;
    padding-left: 20px;
    border-left: 1px solid var(--gold-400);
}

.ministry-detail-hero blockquote p,
.ministry-detail-hero blockquote cite {
    margin: 0;
}

.ministry-detail-hero blockquote p {
    color: rgba(255, 255, 255, .67);
    font-size: .78rem;
    font-style: italic;
    line-height: 1.6;
}

.ministry-detail-hero blockquote cite {
    flex: 0 0 auto;
    color: var(--gold-300);
    font-size: .62rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ministry-detail-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 34px;
}

.ministry-detail-hero__actions .button {
    min-height: 50px;
}

.ministry-detail-hero__scroll {
    position: absolute;
    right: 32px;
    bottom: 40px;
    display: flex;
    align-items: center;
    gap: 14px;
    color: rgba(255, 255, 255, .66);
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-decoration: none;
    text-transform: uppercase;
    transform: rotate(90deg) translateX(-100%);
    transform-origin: left bottom;
}

.ministry-detail-hero__scroll i {
    width: 46px;
    height: 1px;
    display: block;
    overflow: hidden;
    background: rgba(255, 255, 255, .25);
}

.ministry-detail-hero__scroll i::after {
    content: "";
    width: 45%;
    height: 100%;
    display: block;
    background: var(--gold-300);
    animation: kids-scroll-cue 2.4s ease-in-out infinite;
}

@keyframes kids-scroll-cue {
    50% {
        transform: translateX(125%);
    }
}

.ministry-detail-nav {
    position: sticky;
    top: 0;
    z-index: 38;
    border-bottom: 1px solid var(--line);
    background: rgba(255, 253, 248, .96);
    box-shadow: 0 10px 28px rgba(8, 29, 51, .04);
    backdrop-filter: blur(16px);
}

.is-administrator-preview .ministry-detail-nav {
    top: 43px;
}

.ministry-detail-nav__inner {
    min-height: 66px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: clamp(20px, 4vw, 62px);
    overflow-x: auto;
    scrollbar-width: none;
}

.ministry-detail-nav__inner::-webkit-scrollbar {
    display: none;
}

.ministry-detail-nav a {
    position: relative;
    display: flex;
    align-items: center;
    color: var(--navy-800);
    font-size: .65rem;
    font-weight: 850;
    letter-spacing: .07em;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.ministry-detail-nav a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    background: var(--gold-500);
    transform: scaleX(0);
    transition: transform .25s ease;
}

.ministry-detail-nav a:hover::after,
.ministry-detail-nav a:focus-visible::after {
    transform: scaleX(1);
}

#welcome-kids,
#kids-vision,
#age-groups,
#kids-safety,
#kids-sunday,
#kids-locations {
    scroll-margin-top: 120px;
}

.kids-welcome {
    overflow: hidden;
    background:
        radial-gradient(circle at 92% 20%, rgba(235, 207, 145, .2), transparent 26%),
        var(--ivory-50);
}

.kids-welcome__grid,
.kids-mission__grid,
.kids-experience__grid,
.kids-safety__grid,
.kids-locations__grid {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    align-items: center;
    gap: clamp(68px, 9vw, 145px);
}

.kids-welcome__visual {
    position: relative;
    width: min(100%, 590px);
}

.kids-welcome__visual::before {
    content: "";
    position: absolute;
    top: -28px;
    left: -28px;
    z-index: 0;
    width: 45%;
    aspect-ratio: 1;
    border: 1px solid rgba(170, 119, 42, .35);
    border-radius: 50%;
}

.kids-welcome__image,
.kids-mission__image,
.kids-experience__image,
.kids-safety__image {
    width: 100%;
    height: clamp(510px, 55vw, 720px);
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

.kids-welcome__image {
    border-radius: 220px 28px 28px 28px;
}

.kids-welcome__image img,
.kids-mission__image img,
.kids-experience__image img,
.kids-safety__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.kids-welcome__seal {
    position: absolute;
    right: -38px;
    bottom: 42px;
    width: 168px;
    aspect-ratio: 1;
    display: grid;
    align-content: center;
    justify-items: center;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 50%;
    color: #fff;
    background: rgba(6, 23, 43, .9);
    box-shadow: 0 20px 50px rgba(6, 23, 43, .26);
    text-align: center;
    backdrop-filter: blur(10px);
}

.kids-welcome__seal strong {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.28rem;
    font-weight: 400;
}

.kids-welcome__seal span {
    margin-top: 8px;
    font-size: .54rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.5;
    text-transform: uppercase;
}

.kids-welcome__content .rich-copy {
    margin-top: 34px;
}

.kids-vision,
.kids-events {
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(145deg, #06172b, #0b2c4a 70%, #113f63);
}

.kids-vision::before,
.kids-events::before {
    content: "";
    position: absolute;
    top: -24rem;
    right: -15rem;
    z-index: -1;
    width: 56rem;
    height: 56rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(221, 182, 99, .2), transparent 67%);
}

.kids-vision__head,
.kids-values__head,
.kids-sunday__head {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    align-items: end;
    gap: clamp(50px, 8vw, 120px);
}

.kids-vision__head > p,
.kids-values__head > p,
.kids-sunday__head > p {
    margin: 0 0 10px;
    line-height: 1.85;
}

.kids-vision__head > p {
    color: rgba(255, 255, 255, .67);
}

.kids-vision__pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(60px, 8vw, 96px);
}

.kids-vision__pillars article {
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 45px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
    backdrop-filter: blur(7px);
    transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

.kids-vision__pillars article:hover {
    border-color: rgba(221, 182, 99, .48);
    background: rgba(255, 255, 255, .075);
    transform: translateY(-7px);
}

.kids-vision__pillars span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .75rem;
}

.kids-vision__pillars h3 {
    margin: 66px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.04em;
}

.kids-vision__pillars strong {
    margin-top: 20px;
    color: var(--gold-300);
    font-size: .74rem;
    line-height: 1.6;
}

.kids-vision__pillars p {
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .62);
    font-size: .84rem;
    line-height: 1.75;
}

.kids-mission {
    background: var(--paper);
}

.kids-mission__grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
}

.kids-mission__content .rich-copy {
    margin-top: 34px;
}

.kids-mission__image {
    border-radius: 28px 220px 28px 28px;
}

.kids-scripture {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-top: clamp(74px, 9vw, 130px);
    overflow: hidden;
    border-radius: var(--radius-lg);
    color: #fff;
    background: var(--navy-950);
    box-shadow: var(--shadow-lg);
}

.kids-scripture > div {
    min-height: 320px;
    padding: clamp(38px, 5vw, 62px);
}

.kids-scripture > div + div {
    border-left: 1px solid rgba(255, 255, 255, .12);
    background: linear-gradient(145deg, rgba(221, 182, 99, .13), transparent);
}

.kids-scripture span,
.kids-scripture cite {
    color: var(--gold-300);
    font-size: .62rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.kids-scripture blockquote {
    margin: 45px 0 30px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.6vw, 2.45rem);
    line-height: 1.35;
}

.kids-experience {
    overflow: hidden;
    background: var(--ivory-100);
}

.kids-experience__grid {
    align-items: stretch;
}

.kids-experience__content,
.kids-events__head {
    min-width: 0;
}

.kids-experience__visual {
    position: relative;
}

.kids-experience__image {
    height: 100%;
    min-height: 780px;
    border-radius: 30px;
}

.kids-experience__visual > p {
    position: absolute;
    right: 24px;
    bottom: 24px;
    left: 24px;
    margin: 0;
    padding: 22px 26px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 18px;
    color: #fff;
    background: rgba(6, 23, 43, .82);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.08rem;
    line-height: 1.5;
    backdrop-filter: blur(10px);
}

.kids-experience__list {
    margin-top: 42px;
    border-top: 1px solid var(--line);
}

.kids-experience__list article {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 24px;
    padding: 24px 0;
    border-bottom: 1px solid var(--line);
}

.kids-experience__list article > span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.kids-experience__list h3 {
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
    font-weight: 400;
}

.kids-experience__list p {
    margin: 8px 0 0;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.65;
}

.kids-age-groups {
    overflow: hidden;
    color: #fff;
    background: #081e37;
}

.kids-age-groups__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
}

.detail-carousel__controls {
    display: flex;
    gap: 10px;
}

.detail-carousel__controls button {
    width: 54px;
    height: 54px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
    color: #fff;
    background: rgba(255, 255, 255, .06);
    cursor: pointer;
    font-size: 1.2rem;
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.detail-carousel__controls button:hover,
.detail-carousel__controls button:focus-visible {
    border-color: var(--gold-300);
    background: rgba(221, 182, 99, .12);
    transform: translateY(-2px);
}

.kids-age-groups__track {
    width: min(calc(100% - 64px), var(--container));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(315px, 32vw);
    gap: 18px;
    margin: clamp(58px, 8vw, 94px) auto 0;
    padding-bottom: 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-color: rgba(221, 182, 99, .5) rgba(255, 255, 255, .08);
    scrollbar-width: thin;
}

.kids-age-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
    scroll-snap-align: start;
}

.kids-age-card__media {
    position: relative;
    aspect-ratio: 4 / 4.7;
    overflow: hidden;
}

.kids-age-card__image,
.kids-age-card__image picture,
.kids-age-card__image img {
    width: 100%;
    height: 100%;
}

.kids-age-card__image img {
    object-fit: cover;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1);
}

.kids-age-card:hover .kids-age-card__image img {
    transform: scale(1.045);
}

.kids-age-card__media > span {
    position: absolute;
    top: 22px;
    right: 22px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 50%;
    color: var(--navy-950);
    background: rgba(255, 253, 248, .9);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
    backdrop-filter: blur(7px);
}

.kids-age-card__body {
    min-height: 260px;
    padding: 30px 30px 34px;
}

.kids-age-card__body > p {
    margin: 0;
    color: var(--gold-300);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.kids-age-card__body h3 {
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.75rem, 2.6vw, 2.5rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.kids-age-card__body div {
    margin-top: 18px;
    color: rgba(255, 255, 255, .62);
    font-size: .82rem;
    line-height: 1.72;
}

.detail-carousel__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 18px;
    color: rgba(255, 255, 255, .52);
    font-size: .68rem;
}

.detail-carousel__footer p {
    margin: 0;
}

.detail-carousel__footer span {
    color: var(--gold-300);
    font-weight: 800;
}

.kids-values {
    background: var(--ivory-50);
}

.kids-values__head > p,
.kids-sunday__head > p {
    color: var(--muted);
}

.kids-values__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin-top: clamp(60px, 8vw, 94px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background: var(--line);
}

.kids-values__grid article {
    min-height: 270px;
    padding: clamp(30px, 4vw, 48px);
    background: var(--paper);
    transition: background .3s ease, transform .3s ease;
}

.kids-values__grid article:hover {
    background: var(--ivory-100);
}

.kids-values__grid span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.kids-values__grid h3 {
    margin: 58px 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.5vw, 2.2rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.kids-values__grid p {
    margin: 16px 0 0;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.7;
}

.kids-safety {
    overflow: hidden;
    color: #fff;
    background: linear-gradient(120deg, #06172b, #0d3557);
}

.kids-safety__grid {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
}

.kids-safety__image {
    border-radius: 230px 30px 30px 30px;
}

.kids-safety__content > p:not(.eyebrow) {
    max-width: 700px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .67);
    line-height: 1.82;
}

.kids-safety__content ul {
    display: grid;
    gap: 0;
    margin: 34px 0;
    padding: 0;
    border-top: 1px solid rgba(255, 255, 255, .12);
    list-style: none;
}

.kids-safety__content li {
    position: relative;
    padding: 18px 0 18px 34px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    color: rgba(255, 255, 255, .8);
    font-size: .82rem;
}

.kids-safety__content li::before {
    content: "";
    position: absolute;
    top: 22px;
    left: 2px;
    width: 10px;
    height: 10px;
    border: 2px solid var(--gold-300);
    border-radius: 50%;
}

.kids-sunday {
    overflow: hidden;
    background: var(--paper);
}

.kids-sunday__timeline {
    display: grid;
    grid-template-columns: repeat(8, minmax(150px, 1fr));
    margin-top: clamp(66px, 8vw, 100px);
    padding: 0 0 24px;
    overflow-x: auto;
    list-style: none;
    scrollbar-color: var(--gold-400) var(--ivory-200);
    scrollbar-width: thin;
}

.kids-sunday__timeline li {
    position: relative;
    min-height: 170px;
    padding: 0 24px 26px 0;
}

.kids-sunday__timeline li::before {
    content: "";
    position: absolute;
    top: 42px;
    right: 0;
    left: 0;
    height: 1px;
    background: var(--line);
}

.kids-sunday__timeline li:last-child::before {
    right: 50%;
}

.kids-sunday__timeline span {
    position: relative;
    z-index: 1;
    width: 84px;
    height: 84px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 50%;
    color: var(--gold-600);
    background: var(--ivory-50);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .74rem;
    transition: color .25s ease, border-color .25s ease, background .25s ease;
}

.kids-sunday__timeline li:hover span {
    border-color: var(--gold-500);
    color: var(--navy-950);
    background: var(--gold-300);
}

.kids-sunday__timeline strong {
    max-width: 120px;
    display: block;
    margin-top: 22px;
    color: var(--navy-900);
    font-size: .72rem;
    line-height: 1.5;
}

.kids-events__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-top: clamp(60px, 8vw, 94px);
}

.kids-events__grid article {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    min-height: 330px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
}

.kids-event-card__media,
.kids-event-card__image,
.kids-event-card__image picture,
.kids-event-card__image img {
    width: 100%;
    height: 100%;
}

.kids-event-card__media {
    min-height: 330px;
    overflow: hidden;
}

.kids-event-card__image img {
    object-fit: cover;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1);
}

.kids-events__grid article:hover .kids-event-card__image img {
    transform: scale(1.05);
}

.kids-event-card__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(28px, 4vw, 46px);
}

.kids-event-card__body h3 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.6vw, 2.45rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.kids-event-card__body p {
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .62);
    font-size: .82rem;
    line-height: 1.75;
}

.kids-locations {
    background: var(--ivory-100);
}

.kids-locations__grid {
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    align-items: start;
}

.kids-locations__intro {
    position: sticky;
    top: 110px;
}

.kids-locations__intro > p:not(.eyebrow) {
    margin: 30px 0 34px;
    color: var(--muted);
    line-height: 1.82;
}

.kids-locations__list {
    border-top: 1px solid var(--line);
}

.kids-locations__list article {
    display: grid;
    grid-template-columns: 54px 1fr;
    gap: 24px;
    padding: 28px 0;
    border-bottom: 1px solid var(--line);
}

.kids-locations__list article > span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.kids-locations__list h3 {
    margin: 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    font-weight: 400;
}

.kids-locations__list p {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: .78rem;
}

.kids-testimonies {
    color: #fff;
    background: var(--navy-950);
}

.kids-testimonies__head {
    max-width: 780px;
}

.kids-testimonies__head h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.8rem, 5vw, 5rem);
    font-weight: 400;
    letter-spacing: -.045em;
}

.kids-testimonies__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: clamp(54px, 7vw, 88px);
}

.kids-testimonies blockquote {
    min-height: 340px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0;
    padding: clamp(34px, 5vw, 58px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
}

.kids-testimonies blockquote p {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.45rem, 2.5vw, 2.25rem);
    line-height: 1.45;
}

.kids-testimonies blockquote cite {
    margin-top: 34px;
    color: var(--gold-300);
    font-size: .65rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.kids-family-cta {
    position: relative;
    min-height: 760px;
    display: flex;
    align-items: center;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.kids-family-cta__media.site-image,
.kids-family-cta__veil {
    position: absolute;
    inset: 0;
}

.kids-family-cta__media.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
}

.kids-family-cta__media picture,
.kids-family-cta__media img {
    width: 100%;
    height: 100%;
}

.kids-family-cta__media img {
    object-fit: cover;
    object-position: center;
}

.kids-family-cta__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 18, 35, .96), rgba(4, 18, 35, .76) 55%, rgba(4, 18, 35, .34)),
        linear-gradient(180deg, rgba(4, 18, 35, .1), rgba(4, 18, 35, .66));
}

.kids-family-cta__inner {
    padding-top: 100px;
    padding-bottom: 100px;
}

.kids-family-cta h2 {
    max-width: 960px;
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.5rem, 6.5vw, 7rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .95;
}

.kids-family-cta h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.kids-family-cta__inner > p:not(.eyebrow) {
    max-width: 720px;
    margin: 32px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: 1rem;
    line-height: 1.82;
}

.kids-family-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 24px;
    margin-top: 38px;
}

@media (max-width: 1100px) {
    .ministry-detail-hero__content {
        width: min(850px, 82%);
    }

    .kids-welcome__grid,
    .kids-mission__grid,
    .kids-experience__grid,
    .kids-safety__grid,
    .kids-locations__grid {
        gap: 70px;
    }

    .kids-welcome__seal {
        right: -18px;
    }

    .kids-age-groups__track {
        grid-auto-columns: minmax(310px, 39vw);
    }

    .kids-events__grid article {
        grid-template-columns: 1fr;
    }

    .kids-event-card__media {
        min-height: 300px;
    }
}

@media (max-width: 900px) {
    .ministry-detail-hero__content {
        width: 100%;
    }

    .ministry-detail-hero__scroll {
        display: none;
    }

    .ministry-detail-nav__inner {
        justify-content: flex-start;
    }

    .kids-welcome__grid,
    .kids-mission__grid,
    .kids-experience__grid,
    .kids-safety__grid,
    .kids-locations__grid,
    .kids-vision__head,
    .kids-values__head,
    .kids-sunday__head {
        grid-template-columns: 1fr;
    }

    .kids-welcome__visual,
    .kids-mission__visual,
    .kids-safety__visual {
        width: min(82vw, 620px);
        margin-inline: auto;
    }

    .kids-mission__content {
        order: 2;
    }

    .kids-mission__visual {
        order: 1;
    }

    .kids-vision__pillars,
    .kids-values__grid {
        grid-template-columns: 1fr;
    }

    .kids-vision__pillars article {
        min-height: 300px;
    }

    .kids-experience__image {
        min-height: 620px;
    }

    .kids-age-groups__track {
        grid-auto-columns: minmax(300px, 58vw);
    }

    .kids-safety__visual {
        order: 2;
    }

    .kids-safety__content {
        order: 1;
    }

    .kids-locations__intro {
        position: static;
    }
}

@media (max-width: 700px) {
    .ministry-detail-hero {
        min-height: 760px;
    }

    .ministry-detail-hero__media::after {
        background:
            linear-gradient(180deg, rgba(3, 17, 33, .38) 0%, rgba(3, 17, 33, .78) 46%, rgba(3, 17, 33, .98) 100%);
    }

    .ministry-detail-hero__media img {
        object-position: center 28%;
    }

    .ministry-detail-hero__inner {
        width: calc(100% - 32px);
        padding-top: 34px;
        padding-bottom: 54px;
    }

    .breadcrumbs--detail {
        flex-wrap: wrap;
    }

    .ministry-detail-hero h1 {
        font-size: clamp(3.55rem, 18vw, 5.2rem);
        line-height: .88;
    }

    .ministry-detail-hero__intro {
        margin-top: 24px;
        font-size: 1.12rem;
    }

    .ministry-detail-hero blockquote {
        display: block;
    }

    .ministry-detail-hero blockquote cite {
        display: block;
        margin-top: 8px;
    }

    .ministry-detail-hero__actions {
        align-items: stretch;
        flex-direction: column;
        margin-top: 26px;
    }

    .ministry-detail-hero__actions .button {
        width: 100%;
    }

    .ministry-detail-nav__inner {
        width: calc(100% - 32px);
        min-height: 60px;
        gap: 28px;
    }

    .ministry-detail-nav a {
        font-size: .58rem;
    }

    .kids-welcome__grid,
    .kids-mission__grid,
    .kids-experience__grid,
    .kids-safety__grid,
    .kids-locations__grid {
        gap: 54px;
    }

    .kids-welcome__visual,
    .kids-mission__visual,
    .kids-safety__visual {
        width: min(88vw, 520px);
    }

    .kids-welcome__image,
    .kids-mission__image,
    .kids-safety__image {
        height: 500px;
    }

    .kids-welcome__image {
        border-radius: 130px 22px 22px 22px;
    }

    .kids-mission__image {
        border-radius: 22px 130px 22px 22px;
    }

    .kids-safety__image {
        border-radius: 130px 22px 22px 22px;
    }

    .kids-welcome__seal {
        right: -3px;
        bottom: 24px;
        width: 132px;
    }

    .kids-welcome__seal strong {
        font-size: 1.05rem;
    }

    .kids-vision__pillars article {
        min-height: 280px;
    }

    .kids-vision__pillars h3 {
        margin-top: 44px;
    }

    .kids-scripture {
        grid-template-columns: 1fr;
        border-radius: 24px;
    }

    .kids-scripture > div {
        min-height: auto;
        padding: 38px 28px;
    }

    .kids-scripture > div + div {
        border-top: 1px solid rgba(255, 255, 255, .12);
        border-left: 0;
    }

    .kids-scripture blockquote {
        margin-top: 30px;
    }

    .kids-experience__image {
        min-height: 520px;
        border-radius: 24px;
    }

    .kids-experience__visual > p {
        right: 14px;
        bottom: 14px;
        left: 14px;
        padding: 18px;
        font-size: .95rem;
    }

    .kids-experience__list article {
        grid-template-columns: 38px 1fr;
        gap: 15px;
    }

    .kids-age-groups__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .detail-carousel__controls {
        align-self: flex-end;
    }

    .kids-age-groups__track {
        width: calc(100% - 16px);
        grid-auto-columns: minmax(278px, calc(100vw - 52px));
        margin-left: 16px;
        padding-right: 16px;
    }

    .kids-age-card__body {
        min-height: 245px;
        padding: 27px 24px 30px;
    }

    .detail-carousel__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .kids-values__grid {
        border-radius: 24px;
    }

    .kids-values__grid article {
        min-height: 230px;
        padding: 30px 26px;
    }

    .kids-values__grid h3 {
        margin-top: 42px;
    }

    .kids-sunday__timeline {
        width: calc(100% - 16px);
        margin-left: 16px;
        padding-right: 16px;
    }

    .kids-events__grid {
        grid-template-columns: 1fr;
    }

    .kids-events__grid article {
        grid-template-columns: 1fr;
    }

    .kids-event-card__media {
        min-height: 290px;
    }

    .kids-event-card__body {
        min-height: 230px;
    }

    .kids-locations__list article {
        grid-template-columns: 38px 1fr;
        gap: 15px;
    }

    .kids-testimonies__grid {
        grid-template-columns: 1fr;
    }

    .kids-testimonies blockquote {
        min-height: 300px;
        padding: 32px 26px;
    }

    .kids-family-cta {
        min-height: 720px;
    }

    .kids-family-cta__veil {
        background: linear-gradient(180deg, rgba(4, 18, 35, .35), rgba(4, 18, 35, .94) 55%);
    }

    .kids-family-cta__inner {
        width: calc(100% - 32px);
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .kids-family-cta h2 {
        font-size: clamp(3rem, 14vw, 4.7rem);
    }

    .kids-family-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .kids-family-cta__actions .button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ministry-detail-hero__media img,
    .ministry-detail-hero__scroll i::after {
        animation: none;
    }

    .kids-age-groups__track {
        scroll-behavior: auto;
    }

    .kids-vision__pillars article,
    .kids-age-card__image img,
    .kids-event-card__image img,
    .kids-sunday__timeline span {
        transition: none;
    }
}

/* Phase 1 / Step 10B — cinematic restoration and motion system */

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

.site-header {
    transition: box-shadow .35s ease, transform .35s ease;
}

.site-header.is-scrolled {
    box-shadow: 0 16px 40px rgba(5, 25, 45, .11);
}

/* The reusable image wrapper must never enter a hero's document flow. */
.hero-slide__media.site-image,
.page-hero__media.site-image,
.partnership__media.site-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    border-radius: 0;
}

.site-image picture,
.site-image img {
    display: block;
    width: 100%;
    height: 100%;
}

.site-image img {
    object-fit: cover;
}

.site-image__ambient {
    position: absolute;
    inset: 0;
    display: block;
    background:
        radial-gradient(circle at 74% 22%, rgba(221, 182, 99, .25), transparent 26rem),
        repeating-linear-gradient(-45deg, rgba(255, 255, 255, .025) 0 1px, transparent 1px 28px),
        linear-gradient(145deg, #071a30, #0f3556);
}

.site-image__status {
    display: none;
}

.is-administrator-preview .site-image--pending .site-image__status {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 12;
    max-width: min(360px, calc(100% - 36px));
    display: grid;
    gap: 3px;
    padding: 9px 12px;
    border: 1px solid rgba(235, 207, 145, .3);
    border-radius: 10px;
    color: rgba(255, 255, 255, .7);
    background: rgba(4, 18, 35, .76);
    box-shadow: 0 12px 34px rgba(0, 0, 0, .18);
    backdrop-filter: blur(12px);
    pointer-events: none;
}

.is-administrator-preview .site-image__status strong {
    color: var(--gold-300);
    font-size: .57rem;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.is-administrator-preview .site-image__status small {
    overflow-wrap: anywhere;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: .57rem;
    line-height: 1.35;
}

/* Homepage hero slider */
.hero-slider {
    position: relative;
    min-height: min(850px, calc(100vh - 130px));
    display: block;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.hero-slider__stage {
    position: absolute;
    inset: 0;
}

.hero-slide {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 1s cubic-bezier(.22, .61, .36, 1),
        visibility 1s step-end;
}

.hero-slide.is-active {
    z-index: 2;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition:
        opacity 1s cubic-bezier(.22, .61, .36, 1),
        visibility 0s step-start;
}

.hero-slide__media {
    z-index: -4;
}

.hero-slide__media img {
    object-position: center;
    transform: scale(1.015);
    transition: transform 8s ease-out, filter 1s ease;
}

.hero-slide.is-active .hero-slide__media img {
    transform: scale(1.07);
}

.hero-slide__media--nations img {
    object-position: 56% center;
    filter: saturate(.86) contrast(1.03);
}

.hero-slide__media--prayer img {
    object-position: 68% center;
    filter: saturate(.8) sepia(.08);
}

.hero-slide__veil,
.hero-slide__glow {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.hero-slide__veil {
    z-index: -3;
    background:
        linear-gradient(90deg, rgba(4, 18, 35, .97) 0%, rgba(4, 18, 35, .83) 43%, rgba(4, 18, 35, .3) 76%, rgba(4, 18, 35, .56) 100%),
        linear-gradient(180deg, rgba(4, 18, 35, .08), rgba(4, 18, 35, .78));
}

.hero-slide__glow {
    z-index: -2;
    background:
        radial-gradient(circle at 73% 23%, rgba(223, 182, 99, .24), transparent 30%),
        linear-gradient(90deg, transparent 0 69%, rgba(255, 255, 255, .07) 69% 69.06%, transparent 69.06%);
}

.hero-slide__inner {
    min-height: inherit;
    height: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(270px, 350px);
    align-items: center;
    gap: clamp(50px, 8vw, 130px);
    padding-top: clamp(74px, 8vw, 110px);
    padding-bottom: clamp(116px, 12vw, 158px);
}

.hero-slide__content {
    max-width: 880px;
    opacity: 0;
    transform: translateY(32px);
    transition: opacity .8s .18s ease, transform .8s .18s ease;
}

.hero-slide.is-active .hero-slide__content {
    opacity: 1;
    transform: translateY(0);
}

.hero-slide__content--focused {
    max-width: 790px;
}

.hero-slide h1,
.hero-slide h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.7rem, 7.25vw, 7.5rem);
    font-weight: 400;
    letter-spacing: -.058em;
    line-height: .85;
    text-wrap: balance;
}

.hero-slide h1 span,
.hero-slide h2 span {
    display: block;
    margin-top: 17px;
    color: var(--gold-300);
    font-size: .47em;
    letter-spacing: -.025em;
    line-height: 1.05;
}

.hero-slide__identity {
    margin: 24px 0 0;
    color: rgba(255, 255, 255, .82);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1rem, 1.4vw, 1.3rem);
    font-style: italic;
    letter-spacing: .08em;
}

.hero-slide__statement {
    max-width: 730px;
    margin: 30px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.28rem, 2vw, 1.8rem);
    line-height: 1.45;
}

.hero-slide__intro {
    max-width: 700px;
    margin: 19px 0 0;
    color: rgba(255, 255, 255, .67);
    font-size: clamp(.92rem, 1.1vw, 1.03rem);
    line-height: 1.78;
}

.hero-slide__actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 38px;
}

.hero-slide__actions .text-link {
    margin-left: 10px;
}

.hero-slide__card,
.hero-slide__feature {
    align-self: end;
    margin-bottom: 22px;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: var(--radius-md);
    background: rgba(5, 23, 43, .57);
    box-shadow: 0 30px 70px rgba(0, 0, 0, .23);
    backdrop-filter: blur(16px);
    opacity: 0;
    transform: translateX(28px);
    transition: opacity .8s .38s ease, transform .8s .38s ease;
}

.hero-slide.is-active .hero-slide__card,
.hero-slide.is-active .hero-slide__feature {
    opacity: 1;
    transform: translateX(0);
}

.hero-slide__card > p,
.hero-slide__feature > span {
    margin: 0;
    color: var(--gold-300);
    font-size: .67rem;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.hero-slide__card-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    margin: 22px 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 14px;
    background: rgba(255, 255, 255, .11);
}

.hero-slide__card-grid span {
    min-height: 91px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 15px;
    color: rgba(255, 255, 255, .55);
    background: rgba(4, 19, 36, .72);
    font-size: .66rem;
    letter-spacing: .04em;
}

.hero-slide__card-grid strong {
    display: block;
    margin-bottom: 5px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    font-weight: 400;
}

.hero-slide__card > a,
.hero-slide__feature > a {
    display: flex;
    justify-content: space-between;
    color: rgba(255, 255, 255, .84);
    font-size: .72rem;
    font-weight: 750;
    text-decoration: none;
}

.hero-slide__feature {
    display: grid;
    gap: 23px;
    align-self: center;
}

.hero-slide__feature strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.45rem, 2.4vw, 2.25rem);
    font-weight: 400;
    line-height: 1.12;
}

.hero-slider__navigation {
    position: absolute;
    right: 0;
    bottom: 38px;
    left: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    pointer-events: none;
}

.hero-slider__dots,
.hero-slider__controls {
    display: flex;
    align-items: center;
    pointer-events: auto;
}

.hero-slider__dots {
    gap: 8px;
}

.hero-slider__dots button,
.hero-slider__controls button {
    appearance: none;
    display: grid;
    place-items: center;
    border: 0;
    color: rgba(255, 255, 255, .56);
    background: transparent;
    cursor: pointer;
}

.hero-slider__dots button {
    width: 50px;
    height: 34px;
    padding: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .22);
    font: 700 .62rem/1 Arial, sans-serif;
    transition: color .25s ease, border-color .25s ease;
}

.hero-slider__dots button.is-active {
    color: var(--gold-300);
    border-color: var(--gold-300);
}

.hero-slider__controls {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    background: rgba(4, 18, 35, .52);
    backdrop-filter: blur(12px);
}

.hero-slider__controls button {
    min-width: 48px;
    height: 40px;
    padding: 0 15px;
    border-left: 1px solid rgba(255, 255, 255, .13);
    font-size: .78rem;
}

.hero-slider__controls button:first-child {
    border-left: 0;
}

.hero-slider__controls [data-hero-pause] {
    min-width: 70px;
    color: rgba(255, 255, 255, .72);
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.hero-slider__controls button:hover,
.hero-slider__controls button:focus-visible {
    color: var(--gold-300);
    background: rgba(255, 255, 255, .08);
}

.hero-slider__progress {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
    height: 2px;
    background: rgba(255, 255, 255, .08);
}

.hero-slider__progress span {
    display: block;
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--gold-500), var(--gold-300));
}

.hero-slider__progress span.is-running {
    animation: hero-progress 7.2s linear forwards;
}

@keyframes hero-progress {
    from { width: 0; }
    to { width: 100%; }
}

/* Restored editorial image compositions */
.welcome__identity {
    min-width: 0;
}

.welcome__image {
    width: min(100%, 610px);
    min-height: 360px;
    aspect-ratio: 4 / 3;
    margin-top: clamp(42px, 6vw, 72px);
    border-radius: 160px 24px 24px 24px;
    box-shadow: 0 32px 80px rgba(8, 29, 51, .14);
}

.welcome__image img {
    object-position: center;
}

.home-locations__visual {
    position: relative;
    width: min(100%, 440px);
    justify-self: center;
}

.home-locations__image {
    width: 100%;
    aspect-ratio: 4 / 5;
    min-height: 500px;
    overflow: hidden;
    border: 1px solid rgba(235, 207, 145, .26);
    border-radius: 220px 220px 24px 24px;
    box-shadow: 0 42px 100px rgba(0, 0, 0, .22);
}

.home-locations__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 52%, rgba(4, 18, 35, .72));
    pointer-events: none;
}

.home-locations__seal {
    position: absolute;
    right: -28px;
    bottom: 34px;
    z-index: 3;
    width: 150px;
    aspect-ratio: 1;
    display: grid;
    place-content: center;
    padding: 22px;
    border: 1px solid rgba(235, 207, 145, .42);
    border-radius: 50%;
    color: rgba(255, 255, 255, .65);
    background: rgba(5, 23, 43, .82);
    box-shadow: 0 20px 44px rgba(0, 0, 0, .22);
    text-align: center;
    backdrop-filter: blur(12px);
}

.home-locations__seal strong {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.5rem;
    font-weight: 400;
}

.home-locations__seal span {
    margin-top: 6px;
    font-size: .58rem;
    line-height: 1.45;
    text-transform: uppercase;
}

.online__visual {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(280px, .62fr);
    align-items: stretch;
    gap: 0;
    margin-top: clamp(50px, 7vw, 84px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background: var(--navy-950);
    box-shadow: var(--shadow-md);
}

.online__image {
    min-height: 430px;
}

.online__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent 55%, rgba(4, 18, 35, .28));
}

.online__visual-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(34px, 5vw, 66px);
    color: rgba(255, 255, 255, .66);
}

.online__visual-copy span {
    color: var(--gold-300);
    font-size: .65rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.online__visual-copy strong {
    margin-top: 24px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.8rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.03em;
    line-height: 1.08;
}

.online__visual-copy p {
    margin: 22px 0 0;
    line-height: 1.8;
}

.partnership {
    isolation: isolate;
}

.partnership__media {
    z-index: -3;
}

.partnership__media img {
    object-position: center;
}

.partnership__veil {
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 18, 35, .97), rgba(4, 18, 35, .78)),
        linear-gradient(180deg, rgba(4, 18, 35, .2), rgba(4, 18, 35, .88));
}

/* About and Locations hero restoration */
.page-hero {
    min-height: clamp(560px, 62vw, 720px);
}

.page-hero__media {
    z-index: -3;
}

.page-hero__media img {
    object-position: center;
    transform: scale(1.03);
    animation: page-hero-breathe 18s ease-in-out infinite alternate;
}

.page-hero__media::after {
    z-index: 2;
}

.page-hero__pattern {
    z-index: -1;
}

.page-hero__content,
.breadcrumbs {
    animation: page-hero-enter .9s cubic-bezier(.22, .61, .36, 1) both;
}

.page-hero__content {
    animation-delay: .1s;
}

@keyframes page-hero-enter {
    from {
        opacity: 0;
        transform: translateY(28px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes page-hero-breathe {
    to { transform: scale(1.075); }
}

/* Restrained scroll reveals; content remains visible without JavaScript. */
.has-js [data-reveal] {
    opacity: 0;
    transform: translateY(28px);
    transition:
        opacity .75s cubic-bezier(.22, .61, .36, 1),
        transform .75s cubic-bezier(.22, .61, .36, 1);
}

.has-js [data-reveal].is-revealed {
    opacity: 1;
    transform: translateY(0);
}

.has-js .location-list [data-reveal]:nth-child(2),
.has-js .experience-grid [data-reveal]:nth-child(2),
.has-js .welcome__values [data-reveal]:nth-child(2) {
    transition-delay: .08s;
}

.has-js .location-list [data-reveal]:nth-child(3),
.has-js .experience-grid [data-reveal]:nth-child(3),
.has-js .welcome__values [data-reveal]:nth-child(3) {
    transition-delay: .16s;
}

.has-js .location-list [data-reveal]:nth-child(4) {
    transition-delay: .24s;
}

.has-js .location-list [data-reveal]:nth-child(5) {
    transition-delay: .32s;
}

@media (max-width: 1100px) {
    .hero-slide__inner {
        grid-template-columns: minmax(0, 1fr) minmax(235px, 300px);
        gap: 42px;
    }

    .hero-slide h1,
    .hero-slide h2 {
        font-size: clamp(3.5rem, 8.5vw, 6.4rem);
    }

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

    .online__image {
        min-height: 390px;
    }
}

@media (max-width: 900px) {
    .hero-slider {
        min-height: 790px;
    }

    .hero-slide__inner {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-end;
        gap: 28px;
        padding-top: 110px;
        padding-bottom: 112px;
    }

    .hero-slide__content {
        max-width: 720px;
    }

    .hero-slide__card,
    .hero-slide__feature {
        display: none;
    }

    .hero-slide__media img,
    .hero-slide__media--nations img,
    .hero-slide__media--prayer img {
        object-position: 60% center;
    }

    .hero-slide__veil {
        background:
            linear-gradient(180deg, rgba(4, 18, 35, .25), rgba(4, 18, 35, .84) 48%, rgba(4, 18, 35, .98)),
            linear-gradient(90deg, rgba(4, 18, 35, .8), rgba(4, 18, 35, .22));
    }

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

    .home-locations__visual {
        width: min(72vw, 440px);
        margin-inline: auto;
    }
}

@media (max-width: 700px) {
    .hero-slider {
        min-height: 820px;
    }

    .hero-slide__inner {
        min-height: 820px;
        padding-top: 100px;
        padding-bottom: 108px;
    }

    .hero-slide h1,
    .hero-slide h2 {
        font-size: clamp(3rem, 14vw, 4.65rem);
        line-height: .88;
    }

    .hero-slide h1 span,
    .hero-slide h2 span {
        margin-top: 13px;
        font-size: .43em;
        line-height: 1.1;
    }

    .hero-slide__identity {
        margin-top: 19px;
    }

    .hero-slide__statement {
        margin-top: 22px;
        font-size: 1.13rem;
    }

    .hero-slide__intro {
        display: none;
    }

    .hero-slide__actions {
        align-items: stretch;
        margin-top: 27px;
    }

    .hero-slide__actions .button {
        flex: 1 1 142px;
        padding: 0 15px;
    }

    .hero-slide__actions .text-link {
        width: 100%;
        margin: 8px 0 0;
    }

    .hero-slider__navigation {
        bottom: 29px;
    }

    .hero-slider__dots button {
        width: 38px;
    }

    .hero-slider__controls [data-hero-pause] {
        display: none;
    }

    .hero-slider__controls button {
        min-width: 43px;
        height: 38px;
    }

    .is-administrator-preview .site-image--pending .site-image__status {
        right: 10px;
        bottom: 10px;
        max-width: calc(100% - 20px);
        padding: 7px 9px;
    }

    .is-administrator-preview .hero-slide__media .site-image__status,
    .is-administrator-preview .page-hero__media .site-image__status {
        top: 10px;
        right: 10px;
        bottom: auto;
    }

    .welcome__image {
        min-height: 300px;
        border-radius: 100px 20px 20px 20px;
    }

    .home-locations__visual {
        width: min(86vw, 380px);
    }

    .home-locations__image {
        min-height: 430px;
    }

    .home-locations__seal {
        right: -8px;
        bottom: 24px;
        width: 126px;
    }

    .online__visual {
        border-radius: 24px;
    }

    .online__image {
        min-height: 280px;
    }

    .online__visual-copy {
        padding: 34px 26px 38px;
    }

    .page-hero__media img {
        object-position: 62% center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-slide__media img,
    .page-hero__media img {
        transform: none !important;
    }

    .has-js [data-reveal] {
        opacity: 1;
        transform: none;
    }
}

/* Ministries hub */

.ministries-navigation {
    position: sticky;
    top: 0;
    z-index: 20;
    border-bottom: 1px solid var(--line);
    background: rgba(255, 253, 247, .94);
    box-shadow: 0 12px 30px rgba(8, 29, 51, .045);
    backdrop-filter: blur(16px);
}

.is-administrator-preview .ministries-navigation {
    top: 43px;
}

.ministries-navigation__inner {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(24px, 4vw, 62px);
    overflow-x: auto;
    scrollbar-width: none;
}

.ministries-navigation__inner::-webkit-scrollbar {
    display: none;
}

.ministries-navigation a {
    position: relative;
    flex: 0 0 auto;
    padding: 26px 0 23px;
    color: var(--navy-900);
    font-size: .65rem;
    font-weight: 850;
    letter-spacing: .085em;
    text-decoration: none;
    text-transform: uppercase;
}

.ministries-navigation a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 17px;
    left: 0;
    height: 1px;
    background: var(--gold-500);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .3s ease;
}

.ministries-navigation a:hover::after,
.ministries-navigation a:focus-visible::after {
    transform: scaleX(1);
    transform-origin: left;
}

.ministries-intro {
    overflow: hidden;
    background:
        radial-gradient(circle at 4% 8%, rgba(235, 207, 145, .27), transparent 28rem),
        var(--ivory-50);
}

.ministries-intro::after {
    content: "";
    position: absolute;
    top: 20%;
    right: -12rem;
    width: 30rem;
    height: 30rem;
    border: 1px solid rgba(170, 119, 42, .1);
    border-radius: 50%;
    box-shadow:
        0 0 0 58px rgba(170, 119, 42, .025),
        0 0 0 116px rgba(170, 119, 42, .014);
}

.ministries-intro__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, .82fr);
    gap: clamp(62px, 10vw, 150px);
    align-items: start;
}

.ministries-intro__pillars {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin-top: clamp(68px, 9vw, 112px);
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    background: var(--line);
    box-shadow: var(--shadow-sm);
}

.ministries-intro__pillars article {
    min-height: 310px;
    display: flex;
    flex-direction: column;
    padding: clamp(32px, 4vw, 50px);
    background: rgba(255, 255, 255, .9);
}

.ministries-intro__pillars article:nth-child(2) {
    color: #fff;
    background: linear-gradient(145deg, var(--navy-950), var(--navy-800));
}

.ministries-intro__pillars span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .75rem;
}

.ministries-intro__pillars article:nth-child(2) span {
    color: var(--gold-300);
}

.ministries-intro__pillars h3 {
    margin: auto 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3.3vw, 3.35rem);
    font-weight: 400;
    letter-spacing: -.04em;
}

.ministries-intro__pillars article:nth-child(2) h3 {
    color: #fff;
}

.ministries-intro__pillars p {
    margin: 17px 0 0;
    color: var(--muted);
    font-size: .87rem;
    line-height: 1.72;
}

.ministries-intro__pillars article:nth-child(2) p {
    color: rgba(255, 255, 255, .62);
}

.ministry-gallery {
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 82% 5%, rgba(221, 182, 99, .18), transparent 29rem),
        linear-gradient(145deg, #05172b, #0b2c4b 65%, #113c5e);
}

.ministry-gallery::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .11;
    background-image:
        linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
    background-size: 84px 84px;
    mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 84%, transparent);
}

.ministry-gallery__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 50px;
}

.ministry-gallery__head h2,
.ministries-together__content h2,
.ministry-next-steps__head h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.7rem, 5vw, 5.2rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: .98;
}

.ministry-gallery__head h2 em,
.ministries-together__content h2 em,
.ministry-next-steps__head h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.ministry-gallery__controls {
    display: flex;
    gap: 10px;
}

.ministry-gallery__controls button {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 50%;
    color: #fff;
    background: rgba(255, 255, 255, .06);
    cursor: pointer;
    transition:
        border-color .25s ease,
        color .25s ease,
        background .25s ease,
        transform .25s ease;
}

.ministry-gallery__controls button:hover,
.ministry-gallery__controls button:focus-visible {
    border-color: var(--gold-300);
    color: var(--navy-950);
    background: var(--gold-300);
    transform: translateY(-2px);
}

.ministry-gallery__track {
    width: min(calc(100% - max(32px, (100vw - var(--container)) / 2)), calc(var(--container) + (100vw - var(--container)) / 2));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(310px, 400px);
    gap: 20px;
    margin-top: clamp(58px, 7vw, 92px);
    margin-left: max(32px, calc((100vw - var(--container)) / 2));
    padding: 0 max(32px, calc((100vw - var(--container)) / 2)) 28px 0;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    scrollbar-color: rgba(221, 182, 99, .52) rgba(255, 255, 255, .08);
    scrollbar-width: thin;
}

.ministry-gallery__track:focus-visible {
    outline: 2px solid var(--gold-300);
    outline-offset: 8px;
}

.ministry-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 24px;
    background: rgba(255, 255, 255, .055);
    box-shadow: 0 28px 70px rgba(0, 0, 0, .2);
    scroll-snap-align: start;
    backdrop-filter: blur(8px);
    transition: border-color .3s ease, transform .3s ease;
}

.ministry-card:hover {
    border-color: rgba(221, 182, 99, .52);
    transform: translateY(-7px);
}

.ministry-card__media {
    position: relative;
    aspect-ratio: 4 / 4.6;
    overflow: hidden;
    background: var(--navy-900);
}

.ministry-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(180deg, transparent 55%, rgba(4, 18, 35, .78));
    pointer-events: none;
}

.ministry-card__image {
    width: 100%;
    height: 100%;
}

.ministry-card__image img {
    object-position: center;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1);
}

.ministry-card:hover .ministry-card__image img {
    transform: scale(1.055);
}

.ministry-card__number {
    position: absolute;
    right: 22px;
    bottom: 18px;
    z-index: 3;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .75rem;
}

.ministry-card__body {
    min-height: 350px;
    display: flex;
    flex-direction: column;
    padding: 29px 28px 31px;
}

.ministry-card__body > p {
    margin: 0;
    color: var(--gold-300);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.ministry-card h3 {
    margin: 18px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.2vw, 2.25rem);
    font-weight: 400;
    letter-spacing: -.025em;
    line-height: 1.07;
}

.ministry-card__body > div {
    margin-top: 18px;
    color: rgba(255, 255, 255, .61);
    font-size: .84rem;
    line-height: 1.72;
}

.ministry-card__body > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: auto;
    padding-top: 25px;
    border-top: 1px solid rgba(255, 255, 255, .13);
    color: #fff;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-decoration: none;
    text-transform: uppercase;
}

.ministry-card__body > a span {
    color: var(--gold-300);
    font-size: 1.1rem;
    transition: transform .25s ease;
}

.ministry-card__body > a:hover span,
.ministry-card__body > a:focus-visible span {
    transform: translateX(5px);
}

.ministry-gallery__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding-top: 28px;
    color: rgba(255, 255, 255, .5);
    font-size: .7rem;
    letter-spacing: .045em;
}

.ministry-gallery__footer p {
    margin: 0;
}

.ministry-gallery__footer span {
    color: var(--gold-300);
}

.ministries-together {
    overflow: hidden;
    background:
        radial-gradient(circle at 92% 20%, rgba(235, 207, 145, .22), transparent 27rem),
        var(--paper);
}

.ministries-together__grid {
    display: grid;
    grid-template-columns: minmax(320px, .88fr) minmax(0, .92fr);
    gap: clamp(64px, 10vw, 148px);
    align-items: center;
}

.ministries-together__visual {
    position: relative;
    width: min(100%, 620px);
}

.ministries-together__image {
    width: 100%;
    min-height: 570px;
    aspect-ratio: 10 / 8.4;
    border-radius: 220px 24px 24px 24px;
    box-shadow: 0 36px 90px rgba(8, 29, 51, .15);
}

.ministries-together__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 55%, rgba(4, 18, 35, .42));
    pointer-events: none;
}

.ministries-together__seal {
    position: absolute;
    right: -40px;
    bottom: 38px;
    z-index: 3;
    width: 162px;
    aspect-ratio: 1;
    display: grid;
    place-content: center;
    padding: 22px;
    border: 1px solid rgba(235, 207, 145, .42);
    border-radius: 50%;
    color: rgba(255, 255, 255, .67);
    background: rgba(5, 23, 43, .87);
    box-shadow: 0 22px 50px rgba(0, 0, 0, .2);
    text-align: center;
    backdrop-filter: blur(12px);
}

.ministries-together__seal strong {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2rem;
    font-weight: 400;
}

.ministries-together__seal span {
    margin-top: 6px;
    font-size: .58rem;
    line-height: 1.45;
    text-transform: uppercase;
}

.ministries-together__content h2 {
    color: var(--navy-950);
}

.ministries-together__content h2 em {
    color: var(--gold-600);
}

.ministries-together__content > p:not(.eyebrow) {
    margin: 28px 0 0;
    color: var(--muted);
    line-height: 1.85;
}

.ministries-together__content blockquote {
    margin: 34px 0;
    padding: 5px 0 5px 24px;
    border-left: 2px solid var(--gold-500);
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.35rem, 2.2vw, 1.9rem);
    font-style: italic;
    line-height: 1.45;
}

.ministries-together__actions {
    display: flex;
    align-items: center;
    gap: 27px;
}

.ministry-next-steps {
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(142deg, #06172b, #0e3151 70%, #133e60);
}

.ministry-next-steps::before {
    content: "";
    position: absolute;
    top: -25rem;
    right: -15rem;
    z-index: -1;
    width: 54rem;
    height: 54rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(221, 182, 99, .2), transparent 67%);
}

.ministry-next-steps__head {
    max-width: 980px;
}

.ministry-next-steps__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(58px, 8vw, 96px);
}

.ministry-next-steps__grid > a {
    min-height: 360px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 45px);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: var(--radius-md);
    color: inherit;
    background: rgba(255, 255, 255, .045);
    text-decoration: none;
    backdrop-filter: blur(7px);
    transition: border-color .3s ease, background .3s ease, transform .3s ease;
}

.ministry-next-steps__grid > a:hover,
.ministry-next-steps__grid > a:focus-visible {
    border-color: rgba(221, 182, 99, .55);
    background: rgba(255, 255, 255, .08);
    transform: translateY(-7px);
}

.ministry-next-steps__grid span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .74rem;
}

.ministry-next-steps__grid h3 {
    margin: 75px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.9rem, 3vw, 2.8rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.ministry-next-steps__grid p {
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .61);
    font-size: .86rem;
    line-height: 1.72;
}

.ministry-next-steps__grid strong {
    margin-top: auto;
    padding-top: 26px;
    border-top: 1px solid rgba(255, 255, 255, .13);
    color: var(--gold-300);
    font-size: .65rem;
    letter-spacing: .075em;
    text-transform: uppercase;
}

@media (max-width: 1100px) {
    .ministries-intro__grid,
    .ministries-together__grid {
        gap: 70px;
    }

    .ministry-gallery__track {
        grid-auto-columns: minmax(300px, 36vw);
    }

    .ministries-together__seal {
        right: -18px;
    }
}

@media (max-width: 900px) {
    .ministries-navigation__inner {
        justify-content: flex-start;
    }

    .ministries-intro__grid,
    .ministries-together__grid {
        grid-template-columns: 1fr;
    }

    .ministries-intro__pillars,
    .ministry-next-steps__grid {
        grid-template-columns: 1fr;
    }

    .ministries-intro__pillars article {
        min-height: 230px;
    }

    .ministry-gallery__track {
        grid-auto-columns: minmax(300px, 54vw);
    }

    .ministries-together__visual {
        width: min(82vw, 620px);
        margin-inline: auto;
    }
}

@media (max-width: 700px) {
    .ministries-navigation__inner {
        width: calc(100% - 32px);
        min-height: 62px;
        gap: 26px;
    }

    .ministries-navigation a {
        padding: 22px 0 20px;
        font-size: .59rem;
    }

    .ministries-navigation a::after {
        bottom: 13px;
    }

    .ministries-intro__pillars {
        border-radius: 24px;
    }

    .ministries-intro__pillars article {
        min-height: 210px;
        padding: 30px 26px;
    }

    .ministry-gallery__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .ministry-gallery__controls {
        align-self: flex-end;
    }

    .ministry-gallery__track {
        width: calc(100% - 16px);
        grid-auto-columns: minmax(278px, calc(100vw - 52px));
        margin-left: 16px;
        padding-right: 16px;
    }

    .ministry-card__body {
        min-height: 325px;
        padding: 27px 24px 29px;
    }

    .ministry-gallery__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .ministries-together__visual {
        width: min(88vw, 500px);
    }

    .ministries-together__image {
        min-height: 420px;
        border-radius: 120px 20px 20px 20px;
    }

    .ministries-together__seal {
        right: -4px;
        bottom: 24px;
        width: 132px;
    }

    .ministries-together__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .ministry-next-steps__grid > a {
        min-height: 310px;
    }
}

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

    .ministry-card,
    .ministry-card__image img,
    .ministry-next-steps__grid > a {
        transition: none;
    }
}

/* ================================================================
   Phase 1, Step 13 — Keep The Faith Youth
   ================================================================ */

.page-ministry-youth .ministry-detail-hero__veil {
    background:
        radial-gradient(circle at 78% 24%, rgba(232, 188, 92, .2), transparent 25%),
        radial-gradient(circle at 68% 82%, rgba(49, 93, 158, .2), transparent 34%),
        linear-gradient(180deg, transparent 50%, rgba(3, 12, 25, .66));
}

.page-ministry-youth .ministry-detail-hero__glow {
    opacity: .78;
    background:
        linear-gradient(90deg, transparent 0 69%, rgba(255, 255, 255, .08) 69% 69.06%, transparent 69.06%),
        repeating-linear-gradient(90deg, transparent 0 94px, rgba(255, 255, 255, .025) 94px 95px),
        radial-gradient(circle at 9% 91%, rgba(219, 172, 70, .17), transparent 27%);
}

#welcome-youth,
#youth-vision,
#youth-experiences,
#youth-programs,
#youth-night,
#youth-safety,
#youth-faq {
    scroll-margin-top: 120px;
}

.youth-welcome {
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 88%, rgba(221, 182, 99, .19), transparent 23rem),
        var(--ivory-50);
}

.youth-welcome__grid,
.youth-mission__grid,
.youth-safety__grid,
.youth-global__grid,
.youth-faq__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    align-items: center;
    gap: clamp(68px, 9vw, 145px);
}

.youth-welcome__content .rich-copy,
.youth-mission__content .rich-copy {
    margin-top: 34px;
}

.youth-welcome__visual,
.youth-mission__visual,
.youth-safety__visual,
.youth-global__visual {
    position: relative;
    min-width: 0;
}

.youth-welcome__visual::before {
    content: "";
    position: absolute;
    top: -28px;
    right: -28px;
    z-index: 0;
    width: 48%;
    aspect-ratio: 1;
    border: 1px solid rgba(170, 119, 42, .35);
    border-radius: 50%;
}

.youth-welcome__image,
.youth-mission__image,
.youth-safety__image,
.youth-global__image {
    width: 100%;
    height: clamp(520px, 55vw, 720px);
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

.youth-welcome__image {
    border-radius: 28px 220px 28px 28px;
}

.youth-welcome__image img,
.youth-mission__image img,
.youth-safety__image img,
.youth-global__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.youth-welcome__badge {
    position: absolute;
    bottom: 38px;
    left: -42px;
    width: 176px;
    aspect-ratio: 1;
    display: grid;
    align-content: center;
    justify-items: center;
    padding: 22px;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 50%;
    color: #fff;
    background: rgba(5, 21, 42, .92);
    box-shadow: 0 24px 55px rgba(6, 23, 43, .3);
    text-align: center;
    backdrop-filter: blur(12px);
}

.youth-welcome__badge span,
.youth-welcome__badge small {
    font-size: .54rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.youth-welcome__badge span {
    color: rgba(255, 255, 255, .6);
}

.youth-welcome__badge strong {
    margin: 3px 0 7px;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2rem;
    font-weight: 400;
}

.youth-welcome__badge small {
    color: rgba(255, 255, 255, .75);
    line-height: 1.45;
}

.youth-vision {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(130deg, rgba(25, 56, 103, .42), transparent 48%),
        #061426;
}

.youth-vision::before {
    content: "";
    position: absolute;
    top: -27rem;
    right: -16rem;
    z-index: -1;
    width: 60rem;
    height: 60rem;
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 50%;
    box-shadow:
        0 0 0 110px rgba(255, 255, 255, .018),
        0 0 0 220px rgba(255, 255, 255, .012);
}

.youth-vision__head,
.youth-culture__head,
.youth-age-groups__head,
.youth-night__head {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    align-items: end;
    gap: clamp(50px, 8vw, 120px);
}

.youth-vision__head > p,
.youth-culture__head > p,
.youth-age-groups__head > p,
.youth-night__head > p {
    margin: 0 0 10px;
    line-height: 1.85;
}

.youth-vision__head > p {
    color: rgba(255, 255, 255, .65);
}

.youth-vision__pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(60px, 8vw, 96px);
}

.youth-vision__pillars article {
    position: relative;
    min-height: 360px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 45px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .04);
    backdrop-filter: blur(7px);
    transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

.youth-vision__pillars article::after {
    content: "";
    position: absolute;
    right: -52px;
    bottom: -52px;
    width: 160px;
    height: 160px;
    border: 1px solid rgba(221, 182, 99, .14);
    border-radius: 50%;
}

.youth-vision__pillars article:hover {
    border-color: rgba(221, 182, 99, .48);
    background: rgba(255, 255, 255, .07);
    transform: translateY(-7px);
}

.youth-vision__pillars span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .75rem;
}

.youth-vision__pillars h3 {
    margin: auto 0 0;
    padding-top: 68px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.04em;
}

.youth-vision__pillars p {
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .62);
    font-size: .84rem;
    line-height: 1.75;
}

.youth-mission {
    overflow: hidden;
    background: var(--paper);
}

.youth-mission__grid {
    grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
}

.youth-mission__image {
    border-radius: 220px 28px 28px 28px;
}

.youth-mission__visual blockquote {
    position: absolute;
    right: -36px;
    bottom: 38px;
    max-width: 330px;
    margin: 0;
    padding: 26px 30px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 18px;
    color: #fff;
    background: rgba(5, 21, 42, .9);
    backdrop-filter: blur(10px);
}

.youth-mission__visual blockquote p,
.youth-mission__visual blockquote cite {
    margin: 0;
}

.youth-mission__visual blockquote p {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2rem;
    line-height: 1.45;
}

.youth-mission__visual blockquote cite {
    display: block;
    margin-top: 10px;
    color: rgba(255, 255, 255, .62);
    font-size: .57rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.youth-mission__content .text-link {
    margin-top: 34px;
}

.youth-experiences {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: #0a2039;
}

.youth-experiences::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 15% 18%, rgba(221, 182, 99, .14), transparent 28rem),
        repeating-linear-gradient(-45deg, transparent 0 34px, rgba(255, 255, 255, .018) 34px 35px);
}

.youth-experiences__intro {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    align-items: center;
    gap: clamp(58px, 8vw, 120px);
}

.youth-experiences__visual {
    min-width: 0;
}

.youth-experiences__image {
    width: 100%;
    height: clamp(380px, 42vw, 570px);
    overflow: hidden;
    border-radius: 28px 150px 28px 28px;
    box-shadow: 0 38px 80px rgba(0, 0, 0, .22);
}

.youth-experiences__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.youth-experiences__intro > div:last-child > p:last-child {
    max-width: 640px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .65);
    line-height: 1.8;
}

.youth-experiences__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin-top: clamp(70px, 9vw, 116px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--radius-lg);
    background: rgba(255, 255, 255, .12);
}

.youth-experiences__grid article {
    min-height: 300px;
    padding: clamp(30px, 4vw, 46px);
    background: rgba(5, 22, 42, .92);
    transition: background .3s ease;
}

.youth-experiences__grid article:hover {
    background: rgba(15, 51, 82, .96);
}

.youth-experiences__grid span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.youth-experiences__grid h3 {
    margin: 66px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.5rem, 2.2vw, 2rem);
    font-weight: 400;
    letter-spacing: -.03em;
}

.youth-experiences__grid p {
    margin: 17px 0 0;
    color: rgba(255, 255, 255, .61);
    font-size: .82rem;
    line-height: 1.72;
}

.youth-culture {
    overflow: hidden;
    background:
        radial-gradient(circle at 100% 0, rgba(221, 182, 99, .18), transparent 24rem),
        var(--ivory-50);
}

.youth-culture__head > p,
.youth-age-groups__head > p,
.youth-night__head > p {
    color: var(--muted);
}

.youth-culture__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: clamp(62px, 8vw, 96px);
    border-top: 1px solid var(--line);
    border-left: 1px solid var(--line);
}

.youth-culture__grid article {
    position: relative;
    min-height: 270px;
    padding: clamp(30px, 4vw, 46px);
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: rgba(255, 255, 255, .54);
    transition: color .3s ease, background .3s ease;
}

.youth-culture__grid article:hover {
    color: #fff;
    background: var(--navy-950);
}

.youth-culture__grid span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.youth-culture__grid h3 {
    margin: 62px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.5vw, 2.2rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.youth-culture__grid p {
    margin: 16px 0 0;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.7;
    transition: color .3s ease;
}

.youth-culture__grid article:hover p {
    color: rgba(255, 255, 255, .65);
}

.youth-programs {
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 86% 12%, rgba(44, 87, 145, .34), transparent 28rem),
        #050f20;
}

.youth-programs__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
}

.youth-programs__track {
    width: min(calc(100% - 64px), var(--container));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(315px, 32vw);
    gap: 18px;
    margin: clamp(58px, 8vw, 94px) auto 0;
    padding-bottom: 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-color: rgba(221, 182, 99, .5) rgba(255, 255, 255, .08);
    scrollbar-width: thin;
}

.youth-program-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
    scroll-snap-align: start;
}

.youth-program-card__media {
    position: relative;
    aspect-ratio: 4 / 4.8;
    overflow: hidden;
}

.youth-program-card__image,
.youth-program-card__image picture,
.youth-program-card__image img {
    width: 100%;
    height: 100%;
}

.youth-program-card__image img {
    object-fit: cover;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1), filter .4s ease;
}

.youth-program-card:hover .youth-program-card__image img {
    filter: saturate(1.08);
    transform: scale(1.045);
}

.youth-program-card__media > span {
    position: absolute;
    top: 22px;
    right: 22px;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 50%;
    color: var(--navy-950);
    background: rgba(255, 253, 248, .92);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
    backdrop-filter: blur(7px);
}

.youth-program-card__body {
    min-height: 265px;
    padding: 30px 30px 34px;
}

.youth-program-card__body > p {
    margin: 0;
    color: var(--gold-300);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.youth-program-card__body h3 {
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.75rem, 2.6vw, 2.5rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.youth-program-card__body div {
    margin-top: 18px;
    color: rgba(255, 255, 255, .62);
    font-size: .82rem;
    line-height: 1.72;
}

.youth-age-groups {
    overflow: hidden;
    background: var(--paper);
}

.youth-age-groups__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: clamp(60px, 8vw, 96px);
}

.youth-age-groups__grid article {
    position: relative;
    min-width: 0;
    min-height: 670px;
    overflow: hidden;
    border-radius: var(--radius-lg);
    color: #fff;
    background: var(--navy-950);
    box-shadow: var(--shadow-md);
}

.youth-age-card__media,
.youth-age-card__image,
.youth-age-card__image picture,
.youth-age-card__image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.youth-age-card__image img {
    object-fit: cover;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1);
}

.youth-age-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(4, 16, 32, .04), rgba(4, 16, 32, .94) 86%);
}

.youth-age-groups__grid article:hover .youth-age-card__image img {
    transform: scale(1.045);
}

.youth-age-card__body {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: clamp(32px, 5vw, 56px);
}

.youth-age-card__body > span {
    position: absolute;
    right: clamp(30px, 4vw, 48px);
    bottom: clamp(32px, 5vw, 56px);
    color: rgba(255, 255, 255, .24);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4.5rem, 8vw, 8rem);
    line-height: .7;
}

.youth-age-card__body > p {
    margin: 0;
    color: var(--gold-300);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.youth-age-card__body h3 {
    max-width: 70%;
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.4rem, 4.5vw, 4.4rem);
    font-weight: 400;
    letter-spacing: -.05em;
}

.youth-age-card__body div {
    max-width: 70%;
    margin-top: 18px;
    color: rgba(255, 255, 255, .72);
    font-size: .84rem;
    line-height: 1.72;
}

.youth-night {
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(238, 224, 190, .24), transparent 45%),
        var(--ivory-50);
}

.youth-night__timeline {
    display: grid;
    grid-template-columns: repeat(6, minmax(215px, 1fr));
    margin-top: clamp(66px, 8vw, 100px);
    padding: 0 0 26px;
    overflow-x: auto;
    list-style: none;
    scrollbar-color: var(--gold-400) var(--ivory-200);
    scrollbar-width: thin;
}

.youth-night__timeline li {
    position: relative;
    min-height: 250px;
    padding-right: 32px;
}

.youth-night__timeline li::before {
    content: "";
    position: absolute;
    top: 46px;
    right: 0;
    left: 0;
    height: 1px;
    background: var(--line);
}

.youth-night__timeline li:last-child::before {
    right: 50%;
}

.youth-night__timeline li > span {
    position: relative;
    z-index: 1;
    width: 92px;
    height: 92px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 50%;
    color: var(--gold-600);
    background: var(--paper);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .74rem;
    transition: color .25s ease, border-color .25s ease, background .25s ease;
}

.youth-night__timeline li:hover > span {
    border-color: var(--gold-500);
    color: var(--navy-950);
    background: var(--gold-300);
}

.youth-night__timeline div {
    max-width: 180px;
    margin-top: 24px;
}

.youth-night__timeline strong {
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.15rem;
    font-weight: 400;
    line-height: 1.4;
}

.youth-night__timeline p {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: .76rem;
    line-height: 1.65;
}

.youth-safety {
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 20% 8%, rgba(221, 182, 99, .12), transparent 24rem),
        linear-gradient(125deg, #061426, #0d3557);
}

.youth-safety__grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
}

.youth-safety__content > p:not(.eyebrow) {
    max-width: 700px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .67);
    line-height: 1.82;
}

.youth-safety__content ul {
    display: grid;
    margin: 34px 0;
    padding: 0;
    border-top: 1px solid rgba(255, 255, 255, .12);
    list-style: none;
}

.youth-safety__content li {
    position: relative;
    padding: 18px 0 18px 34px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    color: rgba(255, 255, 255, .8);
    font-size: .82rem;
}

.youth-safety__content li::before {
    content: "";
    position: absolute;
    top: 22px;
    left: 2px;
    width: 10px;
    height: 10px;
    border: 2px solid var(--gold-300);
    border-radius: 50%;
}

.youth-safety__image {
    border-radius: 30px 210px 30px 30px;
}

.youth-global {
    overflow: hidden;
    background: var(--paper);
}

.youth-global__grid {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
}

.youth-global__image {
    height: clamp(480px, 50vw, 650px);
    border-radius: 210px 28px 28px 28px;
}

.youth-global__content > p:not(.eyebrow) {
    max-width: 680px;
    margin: 30px 0 0;
    color: var(--muted);
    line-height: 1.82;
}

.youth-global__nations {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 38px;
    border-top: 1px solid var(--line);
    border-left: 1px solid var(--line);
}

.youth-global__nations a {
    min-height: 106px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 22px 24px;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    color: var(--navy-950);
    text-decoration: none;
    transition: color .25s ease, background .25s ease;
}

.youth-global__nations a:hover,
.youth-global__nations a:focus-visible {
    color: #fff;
    background: var(--navy-950);
}

.youth-global__nations span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .68rem;
}

.youth-global__nations strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2rem;
    font-weight: 400;
}

.youth-testimonies {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: #07172a;
}

.youth-testimonies::before {
    content: "“";
    position: absolute;
    top: -100px;
    right: 4vw;
    z-index: -1;
    color: rgba(221, 182, 99, .08);
    font-family: Georgia, "Times New Roman", serif;
    font-size: min(46vw, 580px);
    line-height: 1;
}

.youth-testimonies__head {
    text-align: center;
}

.youth-testimonies__head h2 {
    margin: 12px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.6rem, 5vw, 5.2rem);
    font-weight: 400;
    letter-spacing: -.05em;
}

.youth-testimonies__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-top: clamp(58px, 8vw, 90px);
}

.youth-testimonies blockquote {
    min-height: 330px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0;
    padding: clamp(36px, 5vw, 58px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
}

.youth-testimonies blockquote p {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.6vw, 2.35rem);
    line-height: 1.45;
}

.youth-testimonies blockquote cite {
    margin-top: 36px;
    color: var(--gold-300);
    font-size: .6rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.youth-faq {
    overflow: hidden;
    background:
        radial-gradient(circle at 0 100%, rgba(221, 182, 99, .16), transparent 28rem),
        var(--ivory-50);
}

.youth-faq__grid {
    align-items: start;
    grid-template-columns: minmax(290px, .75fr) minmax(0, 1.25fr);
}

.youth-faq__intro {
    position: sticky;
    top: 108px;
}

.is-administrator-preview .youth-faq__intro {
    top: 151px;
}

.youth-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    margin: 28px 0 0;
    color: var(--muted);
    line-height: 1.8;
}

.youth-faq__intro .button {
    margin-top: 32px;
}

.youth-faq__list {
    border-top: 1px solid var(--line);
}

.youth-faq__list details {
    border-bottom: 1px solid var(--line);
}

.youth-faq__list summary {
    display: grid;
    grid-template-columns: 42px 1fr 32px;
    align-items: center;
    gap: 18px;
    min-height: 104px;
    padding: 20px 0;
    color: var(--navy-950);
    cursor: pointer;
    list-style: none;
}

.youth-faq__list summary::-webkit-details-marker {
    display: none;
}

.youth-faq__list summary > span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .68rem;
}

.youth-faq__list summary strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.2rem, 2.1vw, 1.7rem);
    font-weight: 400;
    line-height: 1.35;
}

.youth-faq__list summary i {
    position: relative;
    width: 30px;
    height: 30px;
    border: 1px solid var(--line);
    border-radius: 50%;
}

.youth-faq__list summary i::before,
.youth-faq__list summary i::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 1px;
    background: var(--navy-900);
    transform: translate(-50%, -50%);
    transition: transform .25s ease;
}

.youth-faq__list summary i::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.youth-faq__list details[open] summary i::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.youth-faq__list details > p {
    margin: -4px 50px 30px 60px;
    color: var(--muted);
    line-height: 1.8;
}

.youth-movement-cta {
    position: relative;
    min-height: 800px;
    display: grid;
    align-items: center;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.youth-movement-cta__media.site-image,
.youth-movement-cta__veil {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.youth-movement-cta__media.site-image {
    z-index: -3;
}

.youth-movement-cta__media picture,
.youth-movement-cta__media img {
    width: 100%;
    height: 100%;
}

.youth-movement-cta__media img {
    object-fit: cover;
}

.youth-movement-cta__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 15, 30, .95), rgba(4, 15, 30, .76) 52%, rgba(4, 15, 30, .3)),
        linear-gradient(180deg, transparent 48%, rgba(4, 15, 30, .6));
}

.youth-movement-cta__inner {
    padding-top: 96px;
    padding-bottom: 96px;
}

.youth-movement-cta h2 {
    max-width: 980px;
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4rem, 7vw, 7.2rem);
    font-weight: 400;
    letter-spacing: -.06em;
    line-height: .93;
}

.youth-movement-cta h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.youth-movement-cta__inner > p:not(.eyebrow) {
    max-width: 700px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .72);
    line-height: 1.8;
}

.youth-movement-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 24px;
    margin-top: 38px;
}

@media (max-width: 1100px) {
    .youth-welcome__grid,
    .youth-mission__grid,
    .youth-safety__grid,
    .youth-global__grid,
    .youth-faq__grid {
        gap: 70px;
    }

    .youth-welcome__badge {
        left: -20px;
    }

    .youth-mission__visual blockquote {
        right: -18px;
    }

    .youth-programs__track {
        grid-auto-columns: minmax(310px, 39vw);
    }
}

@media (max-width: 900px) {
    .youth-welcome__grid,
    .youth-mission__grid,
    .youth-experiences__intro,
    .youth-safety__grid,
    .youth-global__grid,
    .youth-faq__grid,
    .youth-vision__head,
    .youth-culture__head,
    .youth-age-groups__head,
    .youth-night__head {
        grid-template-columns: 1fr;
    }

    .youth-welcome__visual,
    .youth-mission__visual,
    .youth-safety__visual,
    .youth-global__visual {
        width: min(82vw, 620px);
        margin-inline: auto;
    }

    .youth-welcome__content {
        order: 2;
    }

    .youth-welcome__visual {
        order: 1;
    }

    .youth-vision__pillars,
    .youth-experiences__grid,
    .youth-culture__grid {
        grid-template-columns: 1fr;
    }

    .youth-vision__pillars article {
        min-height: 300px;
    }

    .youth-programs__track {
        grid-auto-columns: minmax(300px, 58vw);
    }

    .youth-age-groups__grid {
        grid-template-columns: 1fr;
    }

    .youth-age-groups__grid article {
        min-height: 620px;
    }

    .youth-faq__intro {
        position: static;
    }
}

@media (max-width: 700px) {
    .page-ministry-youth .ministry-detail-hero__media::after {
        background:
            linear-gradient(180deg, rgba(3, 17, 33, .3) 0%, rgba(3, 17, 33, .76) 44%, rgba(3, 17, 33, .99) 100%);
    }

    .youth-welcome__grid,
    .youth-mission__grid,
    .youth-experiences__intro,
    .youth-safety__grid,
    .youth-global__grid,
    .youth-faq__grid {
        gap: 54px;
    }

    .youth-welcome__visual,
    .youth-mission__visual,
    .youth-safety__visual,
    .youth-global__visual {
        width: min(88vw, 520px);
    }

    .youth-welcome__image,
    .youth-mission__image,
    .youth-safety__image,
    .youth-global__image {
        height: 500px;
    }

    .youth-welcome__image,
    .youth-safety__image {
        border-radius: 22px 130px 22px 22px;
    }

    .youth-mission__image,
    .youth-global__image {
        border-radius: 130px 22px 22px 22px;
    }

    .youth-welcome__badge {
        bottom: 22px;
        left: -2px;
        width: 138px;
    }

    .youth-welcome__badge strong {
        font-size: 1.55rem;
    }

    .youth-mission__visual blockquote {
        right: 14px;
        bottom: 14px;
        left: 14px;
        max-width: none;
        padding: 20px 22px;
    }

    .youth-experiences__image {
        height: 420px;
        border-radius: 22px 100px 22px 22px;
    }

    .youth-vision__pillars article,
    .youth-experiences__grid article {
        min-height: 270px;
    }

    .youth-vision__pillars h3,
    .youth-experiences__grid h3,
    .youth-culture__grid h3 {
        margin-top: 44px;
    }

    .youth-culture__grid article {
        min-height: 230px;
        padding: 30px 26px;
    }

    .youth-programs__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .youth-programs__head .detail-carousel__controls {
        align-self: flex-end;
    }

    .youth-programs__track {
        width: calc(100% - 16px);
        grid-auto-columns: minmax(278px, calc(100vw - 52px));
        margin-left: 16px;
        padding-right: 16px;
    }

    .youth-program-card__body {
        min-height: 250px;
        padding: 27px 24px 30px;
    }

    .youth-age-groups__grid article {
        min-height: 540px;
        border-radius: 24px;
    }

    .youth-age-card__body {
        padding: 30px 26px;
    }

    .youth-age-card__body > span {
        right: 24px;
        bottom: 32px;
        font-size: 4rem;
    }

    .youth-age-card__body h3,
    .youth-age-card__body div {
        max-width: 78%;
    }

    .youth-night__timeline {
        width: calc(100% - 16px);
        margin-left: 16px;
        padding-right: 16px;
    }

    .youth-global__nations {
        grid-template-columns: 1fr;
    }

    .youth-testimonies__grid {
        grid-template-columns: 1fr;
    }

    .youth-testimonies blockquote {
        min-height: 300px;
        padding: 32px 26px;
    }

    .youth-faq__list summary {
        grid-template-columns: 32px 1fr 30px;
        gap: 12px;
        min-height: 96px;
    }

    .youth-faq__list details > p {
        margin: 0 40px 28px 44px;
    }

    .youth-movement-cta {
        min-height: 760px;
    }

    .youth-movement-cta__veil {
        background: linear-gradient(180deg, rgba(4, 15, 30, .35), rgba(4, 15, 30, .95) 52%);
    }

    .youth-movement-cta__inner {
        width: calc(100% - 32px);
        padding-top: 82px;
        padding-bottom: 82px;
    }

    .youth-movement-cta h2 {
        font-size: clamp(3.2rem, 15vw, 5rem);
    }

    .youth-movement-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .youth-movement-cta__actions .button {
        width: 100%;
    }
}

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

    .youth-vision__pillars article,
    .youth-program-card__image img,
    .youth-age-card__image img,
    .youth-culture__grid article,
    .youth-night__timeline li > span,
    .youth-faq__list summary i::before,
    .youth-faq__list summary i::after {
        transition: none;
    }
}

/* ================================================================
   Phase 1, Step 14 — Keep The Faith Young Adults
   ================================================================ */

.page-ministry-young-adults .ministry-detail-hero__veil {
    background:
        radial-gradient(circle at 76% 24%, rgba(225, 180, 86, .2), transparent 27%),
        radial-gradient(circle at 82% 78%, rgba(43, 116, 106, .22), transparent 30%),
        linear-gradient(180deg, transparent 48%, rgba(2, 14, 25, .7));
}

.page-ministry-young-adults .ministry-detail-hero__glow {
    opacity: .72;
    background:
        linear-gradient(90deg, transparent 0 73%, rgba(255, 255, 255, .075) 73% 73.06%, transparent 73.06%),
        repeating-linear-gradient(90deg, transparent 0 116px, rgba(255, 255, 255, .022) 116px 117px),
        radial-gradient(circle at 8% 90%, rgba(221, 182, 99, .15), transparent 28%);
}

#welcome-young-adults,
#young-adults-vision,
#young-adults-mission,
#young-adults-global,
#young-adults-leadership,
#young-adults-faq {
    scroll-margin-top: 120px;
}

.young-adults-welcome {
    overflow: hidden;
    background:
        radial-gradient(circle at 0 100%, rgba(221, 182, 99, .2), transparent 25rem),
        var(--ivory-50);
}

.young-adults-welcome__grid,
.young-adults-mission__grid,
.young-adults-global__grid,
.young-adults-faq__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    align-items: center;
    gap: clamp(68px, 9vw, 145px);
}

.young-adults-welcome__content .rich-copy {
    margin-top: 34px;
}

.young-adults-welcome__visual,
.young-adults-mission__visual,
.young-adults-global__visual {
    position: relative;
    min-width: 0;
}

.young-adults-welcome__visual::before {
    content: "";
    position: absolute;
    top: -32px;
    right: -32px;
    width: 58%;
    aspect-ratio: 1;
    border: 1px solid rgba(170, 119, 42, .34);
    border-radius: 50%;
}

.young-adults-welcome__visual::after {
    content: "";
    position: absolute;
    right: -20px;
    bottom: -20px;
    z-index: 0;
    width: 38%;
    aspect-ratio: 1;
    border: 1px solid rgba(5, 48, 57, .15);
    transform: rotate(12deg);
}

.young-adults-welcome__image {
    width: 100%;
    height: clamp(540px, 56vw, 730px);
    overflow: hidden;
    border-radius: 34px 230px 34px 34px;
    box-shadow: var(--shadow-lg);
}

.young-adults-welcome__image img,
.young-adults-mission__image img,
.young-adults-global__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.young-adults-welcome__badge {
    position: absolute;
    bottom: 38px;
    left: -44px;
    z-index: 2;
    width: 190px;
    aspect-ratio: 1;
    display: grid;
    align-content: center;
    justify-items: center;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 50%;
    color: #fff;
    background: rgba(3, 30, 42, .93);
    box-shadow: 0 24px 55px rgba(3, 29, 40, .32);
    text-align: center;
    backdrop-filter: blur(12px);
}

.young-adults-welcome__badge span,
.young-adults-welcome__badge small {
    font-size: .54rem;
    font-weight: 850;
    letter-spacing: .1em;
    line-height: 1.4;
    text-transform: uppercase;
}

.young-adults-welcome__badge span {
    color: rgba(255, 255, 255, .6);
}

.young-adults-welcome__badge strong {
    margin: 4px 0 7px;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2.15rem;
    font-weight: 400;
}

.young-adults-welcome__badge small {
    max-width: 120px;
    color: rgba(255, 255, 255, .72);
}

.young-adults-vision {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(125deg, rgba(27, 92, 88, .34), transparent 50%),
        #041724;
}

.young-adults-vision::before,
.young-adults-vision::after {
    content: "";
    position: absolute;
    z-index: -1;
    border: 1px solid rgba(255, 255, 255, .055);
    border-radius: 50%;
}

.young-adults-vision::before {
    top: -32rem;
    right: -14rem;
    width: 65rem;
    height: 65rem;
    box-shadow:
        0 0 0 110px rgba(255, 255, 255, .016),
        0 0 0 220px rgba(255, 255, 255, .01);
}

.young-adults-vision::after {
    bottom: -13rem;
    left: -12rem;
    width: 28rem;
    height: 28rem;
    border-color: rgba(221, 182, 99, .09);
}

.young-adults-vision__head,
.young-adults-leadership__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: clamp(40px, 8vw, 120px);
}

.young-adults-vision__head > p {
    max-width: 480px;
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .62);
    line-height: 1.85;
}

.young-adults-vision__pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(60px, 8vw, 96px);
}

.young-adults-vision__pillars article {
    position: relative;
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: clamp(32px, 4vw, 48px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .045);
    backdrop-filter: blur(8px);
    transition: transform .35s ease, border-color .35s ease, background .35s ease;
}

.young-adults-vision__pillars article::after {
    content: "";
    position: absolute;
    right: -58px;
    bottom: -58px;
    width: 178px;
    height: 178px;
    border: 1px solid rgba(221, 182, 99, .14);
    border-radius: 50%;
}

.young-adults-vision__pillars article:hover {
    border-color: rgba(221, 182, 99, .5);
    background: rgba(255, 255, 255, .075);
    transform: translateY(-8px);
}

.young-adults-vision__pillars span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .74rem;
}

.young-adults-vision__pillars h3 {
    max-width: 330px;
    margin: auto 0 0;
    padding-top: 74px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: 1.03;
}

.young-adults-vision__pillars p {
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .62);
    font-size: .84rem;
    line-height: 1.75;
}

.young-adults-mission {
    overflow: hidden;
    background: var(--paper);
}

.young-adults-mission__grid {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
}

.young-adults-mission__image {
    width: 100%;
    height: clamp(650px, 63vw, 830px);
    overflow: hidden;
    border-radius: 230px 30px 30px 30px;
    box-shadow: var(--shadow-lg);
}

.young-adults-mission__visual blockquote {
    position: absolute;
    right: -38px;
    bottom: 42px;
    max-width: 360px;
    margin: 0;
    padding: 28px 32px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 18px;
    color: #fff;
    background: rgba(3, 30, 42, .92);
    backdrop-filter: blur(11px);
}

.young-adults-mission__visual blockquote p {
    margin: 0;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.22rem;
    line-height: 1.45;
}

.young-adults-mission__visual blockquote cite {
    display: block;
    margin-top: 11px;
    color: rgba(255, 255, 255, .62);
    font-size: .58rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.young-adults-mission__intro {
    margin: 32px 0 0;
    color: var(--muted);
    line-height: 1.85;
}

.young-adults-mission__commitments {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    margin: 40px 0 0;
    padding: 1px;
    overflow: hidden;
    border-radius: 18px;
    background: var(--line);
    list-style: none;
}

.young-adults-mission__commitments li {
    min-height: 178px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    padding: 28px;
    background: var(--ivory-50);
    transition: background .3s ease, transform .3s ease;
}

.young-adults-mission__commitments li:hover {
    background: #fff;
}

.young-adults-mission__commitments li > span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.young-adults-mission__commitments strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.2;
}

.young-adults-mission__commitments p {
    margin: 12px 0 0;
    color: var(--muted);
    font-size: .76rem;
    line-height: 1.65;
}

.young-adults-global {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 12% 16%, rgba(221, 182, 99, .15), transparent 28rem),
        #061a2a;
}

.young-adults-global__grid {
    grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
}

.young-adults-global__content > p:not(.eyebrow) {
    max-width: 650px;
    margin: 32px 0 0;
    color: rgba(255, 255, 255, .64);
    line-height: 1.85;
}

.young-adults-global__nations {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 42px;
}

.young-adults-global__nations a {
    min-width: 0;
    display: grid;
    grid-template-columns: 48px 1fr;
    align-items: center;
    gap: 16px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 14px;
    color: #fff;
    background: rgba(255, 255, 255, .045);
    text-decoration: none;
    transition: border-color .3s ease, background .3s ease, transform .3s ease;
}

.young-adults-global__nations a:hover,
.young-adults-global__nations a:focus-visible {
    border-color: rgba(221, 182, 99, .5);
    background: rgba(255, 255, 255, .08);
    transform: translateY(-3px);
}

.young-adults-global__nations a > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(221, 182, 99, .32);
    border-radius: 50%;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.young-adults-global__nations strong,
.young-adults-global__nations small {
    display: block;
}

.young-adults-global__nations strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.13rem;
    font-weight: 400;
}

.young-adults-global__nations small {
    margin-top: 4px;
    color: rgba(255, 255, 255, .48);
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.young-adults-global__image {
    width: 100%;
    height: clamp(560px, 55vw, 740px);
    overflow: hidden;
    border-radius: 32px 210px 32px 32px;
    box-shadow: 0 36px 90px rgba(0, 0, 0, .3);
}

.young-adults-leadership {
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(238, 224, 190, .32), transparent 34%),
        var(--ivory-50);
}

.young-adults-leadership__track {
    width: min(calc(100% - 64px), var(--container));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(315px, 32vw);
    gap: 18px;
    margin: clamp(58px, 8vw, 94px) auto 0;
    padding-bottom: 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-color: var(--gold-500) var(--ivory-200);
    scrollbar-width: thin;
}

.young-adults-leadership-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background: #fff;
    box-shadow: 0 18px 40px rgba(8, 31, 48, .06);
    scroll-snap-align: start;
}

.young-adults-leadership-card__media {
    position: relative;
    aspect-ratio: 4 / 4.65;
    overflow: hidden;
}

.young-adults-leadership-card__image,
.young-adults-leadership-card__image picture,
.young-adults-leadership-card__image img {
    width: 100%;
    height: 100%;
}

.young-adults-leadership-card__image img {
    object-fit: cover;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1), filter .4s ease;
}

.young-adults-leadership-card:hover .young-adults-leadership-card__image img {
    filter: saturate(1.08);
    transform: scale(1.045);
}

.young-adults-leadership-card__media > span {
    position: absolute;
    top: 22px;
    right: 22px;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .38);
    border-radius: 50%;
    color: var(--navy-950);
    background: rgba(255, 253, 248, .92);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
    backdrop-filter: blur(8px);
}

.young-adults-leadership-card__body {
    min-height: 285px;
    padding: 30px 30px 36px;
}

.young-adults-leadership-card__body > p {
    margin: 0;
    color: var(--gold-600);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.young-adults-leadership-card__body h3 {
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.75rem, 2.5vw, 2.4rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.08;
}

.young-adults-leadership-card__body div {
    margin-top: 18px;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.72;
}

.young-adults-testimonies {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: #04131f;
}

.young-adults-testimonies::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 80% 12%, rgba(42, 116, 106, .24), transparent 28rem),
        repeating-linear-gradient(-45deg, transparent 0 38px, rgba(255, 255, 255, .017) 38px 39px);
}

.young-adults-testimonies__head {
    max-width: 900px;
}

.young-adults-testimonies__head h2 {
    margin: 14px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.9rem, 6vw, 6.3rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .96;
}

.young-adults-testimonies__head h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.young-adults-testimonies__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-top: clamp(58px, 8vw, 90px);
}

.young-adults-testimonies blockquote {
    position: relative;
    min-height: 350px;
    margin: 0;
    padding: clamp(38px, 5vw, 60px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .04);
}

.young-adults-testimonies blockquote > span {
    position: absolute;
    top: 10px;
    right: 34px;
    color: rgba(221, 182, 99, .13);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 10rem;
    line-height: 1;
}

.young-adults-testimonies blockquote p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255, 255, 255, .88);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 3vw, 2.6rem);
    line-height: 1.32;
}

.young-adults-testimonies blockquote cite {
    display: block;
    margin-top: 38px;
    color: var(--gold-300);
    font-size: .6rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.young-adults-faq {
    overflow: hidden;
    background:
        radial-gradient(circle at 100% 0, rgba(221, 182, 99, .17), transparent 24rem),
        var(--paper);
}

.young-adults-faq__grid {
    align-items: start;
}

.young-adults-faq__intro {
    position: sticky;
    top: 130px;
}

.is-administrator-preview .young-adults-faq__intro {
    top: 164px;
}

.young-adults-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    margin: 30px 0 0;
    color: var(--muted);
    line-height: 1.8;
}

.young-adults-faq__intro .button {
    margin-top: 34px;
}

.young-adults-faq__list details {
    border-bottom: 1px solid var(--line);
}

.young-adults-faq__list summary {
    min-height: 118px;
    display: grid;
    grid-template-columns: 38px 1fr 36px;
    align-items: center;
    gap: 20px;
    padding: 22px 0;
    cursor: pointer;
    list-style: none;
}

.young-adults-faq__list summary::-webkit-details-marker {
    display: none;
}

.young-adults-faq__list summary > span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.young-adults-faq__list summary strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2vw, 1.8rem);
    font-weight: 400;
    letter-spacing: -.025em;
}

.young-adults-faq__list summary i {
    position: relative;
    width: 34px;
    height: 34px;
    border: 1px solid var(--line);
    border-radius: 50%;
}

.young-adults-faq__list summary i::before,
.young-adults-faq__list summary i::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 1px;
    background: currentColor;
    transform: translate(-50%, -50%);
}

.young-adults-faq__list summary i::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: transform .25s ease;
}

.young-adults-faq__list details[open] summary i::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.young-adults-faq__list details > p {
    margin: -6px 52px 0 58px;
    padding: 0 0 34px;
    color: var(--muted);
    line-height: 1.8;
}

.young-adults-movement-cta {
    position: relative;
    min-height: 780px;
    display: grid;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.young-adults-movement-cta__media.site-image,
.young-adults-movement-cta__veil {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.young-adults-movement-cta__media picture,
.young-adults-movement-cta__media img {
    width: 100%;
    height: 100%;
}

.young-adults-movement-cta__media img {
    object-fit: cover;
}

.young-adults-movement-cta__veil {
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(2, 16, 27, .96) 0%, rgba(2, 16, 27, .82) 45%, rgba(2, 16, 27, .32) 76%, rgba(2, 16, 27, .52)),
        linear-gradient(180deg, transparent 48%, rgba(2, 16, 27, .84));
}

.young-adults-movement-cta__inner {
    position: relative;
    z-index: 2;
    padding-top: 110px;
    padding-bottom: 110px;
}

.young-adults-movement-cta h2 {
    max-width: 980px;
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.4rem, 7vw, 7.2rem);
    font-weight: 400;
    letter-spacing: -.06em;
    line-height: .92;
}

.young-adults-movement-cta h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.young-adults-movement-cta__inner > p:not(.eyebrow) {
    max-width: 680px;
    margin: 32px 0 0;
    color: rgba(255, 255, 255, .7);
    line-height: 1.85;
}

.young-adults-movement-cta__inner > strong {
    display: block;
    max-width: 720px;
    margin-top: 20px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2.1vw, 1.8rem);
    font-weight: 400;
    line-height: 1.4;
}

.young-adults-movement-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 22px;
    margin-top: 42px;
}

@media (max-width: 1160px) {
    .young-adults-welcome__grid,
    .young-adults-mission__grid,
    .young-adults-global__grid,
    .young-adults-faq__grid {
        gap: 58px;
    }

    .young-adults-welcome__badge {
        left: -24px;
    }

    .young-adults-mission__visual blockquote {
        right: -22px;
    }

    .young-adults-leadership__track {
        grid-auto-columns: minmax(320px, 42vw);
    }
}

@media (max-width: 960px) {
    .young-adults-welcome__grid,
    .young-adults-mission__grid,
    .young-adults-global__grid,
    .young-adults-faq__grid {
        grid-template-columns: 1fr;
        gap: 66px;
    }

    .young-adults-welcome__content,
    .young-adults-mission__content,
    .young-adults-global__content {
        max-width: 760px;
    }

    .young-adults-welcome__visual,
    .young-adults-mission__visual,
    .young-adults-global__visual {
        width: min(100%, 760px);
    }

    .young-adults-welcome__visual {
        margin-left: auto;
    }

    .young-adults-mission__visual {
        order: 2;
    }

    .young-adults-global__visual {
        margin-left: auto;
    }

    .young-adults-vision__head,
    .young-adults-leadership__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .young-adults-vision__pillars {
        grid-template-columns: 1fr;
    }

    .young-adults-vision__pillars article {
        min-height: 300px;
    }

    .young-adults-vision__pillars h3 {
        margin-top: 52px;
        padding-top: 0;
    }

    .young-adults-faq__intro {
        position: static;
        max-width: 680px;
    }

    .young-adults-testimonies__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .page-ministry-young-adults .ministry-detail-hero__media::after {
        background:
            linear-gradient(180deg, rgba(2, 14, 25, .12), rgba(2, 14, 25, .96) 88%),
            linear-gradient(90deg, rgba(2, 14, 25, .7), transparent 88%);
    }

    .young-adults-welcome__image,
    .young-adults-mission__image,
    .young-adults-global__image {
        height: min(126vw, 650px);
    }

    .young-adults-welcome__image {
        border-radius: 24px 130px 24px 24px;
    }

    .young-adults-welcome__badge {
        bottom: 22px;
        left: 16px;
        width: 154px;
        padding: 19px;
    }

    .young-adults-welcome__badge strong {
        font-size: 1.65rem;
    }

    .young-adults-mission__image {
        border-radius: 130px 24px 24px 24px;
    }

    .young-adults-mission__visual blockquote {
        right: 16px;
        bottom: 18px;
        left: 16px;
        max-width: none;
    }

    .young-adults-mission__commitments,
    .young-adults-global__nations {
        grid-template-columns: 1fr;
    }

    .young-adults-mission__commitments li {
        min-height: 150px;
    }

    .young-adults-global__image {
        border-radius: 24px 130px 24px 24px;
    }

    .young-adults-leadership__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(285px, 84vw);
    }

    .young-adults-testimonies blockquote {
        min-height: 300px;
    }

    .young-adults-faq__list summary {
        grid-template-columns: 30px 1fr 34px;
        gap: 14px;
    }

    .young-adults-faq__list details > p {
        margin-right: 44px;
        margin-left: 44px;
    }

    .young-adults-movement-cta {
        min-height: 720px;
    }

    .young-adults-movement-cta__veil {
        background:
            linear-gradient(180deg, rgba(2, 16, 27, .5), rgba(2, 16, 27, .96) 75%),
            linear-gradient(90deg, rgba(2, 16, 27, .76), transparent);
    }

    .young-adults-movement-cta__inner {
        align-self: end;
        padding-top: 110px;
        padding-bottom: 78px;
    }

    .young-adults-movement-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .young-adults-movement-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .young-adults-welcome__grid,
    .young-adults-mission__grid,
    .young-adults-global__grid,
    .young-adults-faq__grid {
        gap: 50px;
    }

    .young-adults-vision__pillars article {
        min-height: 285px;
        padding: 30px;
    }

    .young-adults-mission__commitments li {
        grid-template-columns: 26px 1fr;
        gap: 10px;
        padding: 24px 20px;
    }

    .young-adults-global__nations a {
        padding: 16px;
    }

    .young-adults-leadership-card__body {
        min-height: 270px;
        padding: 26px;
    }

    .young-adults-testimonies blockquote {
        min-height: 280px;
        padding: 32px 28px;
    }

    .young-adults-faq__list summary strong {
        font-size: 1.18rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .young-adults-vision__pillars article,
    .young-adults-global__nations a,
    .young-adults-leadership-card__image img {
        transition: none;
    }
}

/* ================================================================
   Phase 1, Step 15 — Keep The Faith Men
   ================================================================ */

.page-ministry-men .ministry-detail-hero__veil {
    background:
        radial-gradient(circle at 78% 22%, rgba(205, 151, 63, .21), transparent 27%),
        radial-gradient(circle at 12% 84%, rgba(33, 84, 76, .24), transparent 31%),
        linear-gradient(180deg, transparent 42%, rgba(2, 12, 21, .78));
}

.page-ministry-men .ministry-detail-hero__glow {
    opacity: .7;
    background:
        linear-gradient(90deg, transparent 0 69%, rgba(255, 255, 255, .07) 69% 69.07%, transparent 69.07%),
        repeating-linear-gradient(90deg, transparent 0 132px, rgba(255, 255, 255, .021) 132px 133px),
        radial-gradient(circle at 6% 92%, rgba(205, 151, 63, .15), transparent 27%);
}

#welcome-men,
#men-vision,
#men-mission,
#men-global,
#men-gatherings,
#men-faq {
    scroll-margin-top: 120px;
}

.men-welcome {
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(206, 156, 69, .08) 1px, transparent 1px),
        radial-gradient(circle at 0 100%, rgba(205, 151, 63, .18), transparent 27rem),
        var(--ivory-50);
    background-size: 118px 100%, auto, auto;
}

.men-welcome__grid,
.men-mission__grid,
.men-global__grid,
.men-faq__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    align-items: center;
    gap: clamp(70px, 9vw, 146px);
}

.men-welcome__content .rich-copy {
    margin-top: 34px;
}

.men-welcome__visual,
.men-mission__visual,
.men-global__visual {
    position: relative;
    min-width: 0;
}

.men-welcome__visual::before {
    content: "";
    position: absolute;
    top: -26px;
    right: -26px;
    width: 55%;
    height: 44%;
    border-top: 1px solid rgba(158, 109, 38, .46);
    border-right: 1px solid rgba(158, 109, 38, .46);
}

.men-welcome__visual::after {
    content: "";
    position: absolute;
    right: -34px;
    bottom: -34px;
    z-index: 0;
    width: 38%;
    height: 35%;
    border-right: 1px solid rgba(5, 48, 57, .2);
    border-bottom: 1px solid rgba(5, 48, 57, .2);
}

.men-welcome__image {
    width: 100%;
    height: clamp(560px, 58vw, 750px);
    overflow: hidden;
    border-radius: 20px 168px 20px 20px;
    box-shadow: var(--shadow-lg);
}

.men-welcome__image img,
.men-mission__image img,
.men-global__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.men-welcome__seal {
    position: absolute;
    bottom: 34px;
    left: -52px;
    z-index: 2;
    width: 188px;
    aspect-ratio: 1;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 7px;
    padding: 26px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
    color: #fff;
    background: rgba(3, 24, 35, .94);
    box-shadow: 0 24px 55px rgba(3, 29, 40, .34);
    text-align: center;
    backdrop-filter: blur(12px);
}

.men-welcome__seal span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: .86rem;
    letter-spacing: .035em;
}

.men-welcome__seal i {
    width: 34px;
    height: 1px;
    background: rgba(221, 182, 99, .72);
}

.men-vision {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(125deg, rgba(30, 76, 71, .28), transparent 52%),
        #031521;
}

.men-vision::before {
    content: "";
    position: absolute;
    top: -22rem;
    right: -10rem;
    z-index: -1;
    width: 56rem;
    height: 56rem;
    border: 1px solid rgba(255, 255, 255, .055);
    border-radius: 50%;
    box-shadow:
        0 0 0 110px rgba(255, 255, 255, .015),
        0 0 0 220px rgba(255, 255, 255, .008);
}

.men-vision::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .32;
    background: repeating-linear-gradient(
        90deg,
        transparent 0 160px,
        rgba(255, 255, 255, .025) 160px 161px
    );
}

.men-vision__head,
.men-gatherings__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: clamp(40px, 8vw, 120px);
}

.men-vision__head > p {
    max-width: 480px;
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .62);
    line-height: 1.85;
}

.men-vision__pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(60px, 8vw, 96px);
}

.men-vision__pillars article {
    position: relative;
    min-height: 410px;
    display: flex;
    flex-direction: column;
    padding: clamp(32px, 4vw, 48px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .115);
    border-radius: 8px 64px 8px 8px;
    background: rgba(255, 255, 255, .042);
    backdrop-filter: blur(8px);
    transition: transform .35s ease, border-color .35s ease, background .35s ease;
}

.men-vision__pillars article::after {
    content: "";
    position: absolute;
    right: -1px;
    bottom: -1px;
    width: 90px;
    height: 90px;
    border-right: 1px solid rgba(221, 182, 99, .18);
    border-bottom: 1px solid rgba(221, 182, 99, .18);
}

.men-vision__pillars article:hover {
    border-color: rgba(221, 182, 99, .48);
    background: rgba(255, 255, 255, .07);
    transform: translateY(-8px);
}

.men-vision__pillar-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.men-vision__pillar-meta span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .74rem;
}

.men-vision__pillar-meta small {
    color: rgba(255, 255, 255, .48);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.men-vision__pillars h3 {
    max-width: 340px;
    margin: auto 0 0;
    padding-top: 76px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: 1.03;
}

.men-vision__pillars p {
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .62);
    font-size: .84rem;
    line-height: 1.75;
}

.men-mission {
    overflow: hidden;
    background: var(--paper);
}

.men-mission__grid {
    grid-template-columns: minmax(0, .91fr) minmax(0, 1.09fr);
}

.men-mission__image {
    width: 100%;
    height: clamp(680px, 65vw, 850px);
    overflow: hidden;
    border-radius: 154px 18px 18px 18px;
    box-shadow: var(--shadow-lg);
}

.men-mission__visual blockquote {
    position: absolute;
    right: -42px;
    bottom: 42px;
    max-width: 370px;
    margin: 0;
    padding: 30px 34px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 10px;
    color: #fff;
    background: rgba(3, 24, 35, .94);
    backdrop-filter: blur(11px);
}

.men-mission__visual blockquote p {
    margin: 0;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    line-height: 1.45;
}

.men-mission__visual blockquote cite {
    display: block;
    margin-top: 12px;
    color: rgba(255, 255, 255, .58);
    font-size: .57rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.men-mission__intro {
    margin: 32px 0 0;
    color: var(--muted);
    line-height: 1.85;
}

.men-mission__areas {
    margin: 42px 0 0;
    padding: 0;
    border-top: 1px solid var(--line);
    list-style: none;
}

.men-mission__areas li {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 22px;
    padding: 23px 0;
    border-bottom: 1px solid var(--line);
    transition: padding-left .3s ease, background .3s ease;
}

.men-mission__areas li:hover {
    padding-left: 12px;
    background: linear-gradient(90deg, rgba(221, 182, 99, .09), transparent 72%);
}

.men-mission__areas li > span {
    padding-top: 4px;
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.men-mission__areas strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.42rem;
    font-weight: 400;
    line-height: 1.2;
}

.men-mission__areas p {
    margin: 8px 0 0;
    color: var(--muted);
    font-size: .78rem;
    line-height: 1.65;
}

.men-global {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 12% 16%, rgba(203, 150, 62, .15), transparent 28rem),
        #061923;
}

.men-global::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 24%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .018));
}

.men-global__grid {
    grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
}

.men-global__content > p:not(.eyebrow) {
    max-width: 650px;
    margin: 32px 0 0;
    color: rgba(255, 255, 255, .64);
    line-height: 1.85;
}

.men-global__nations {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 42px;
}

.men-global__nations a {
    min-width: 0;
    display: grid;
    grid-template-columns: 48px 1fr;
    align-items: center;
    gap: 16px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 8px;
    color: #fff;
    background: rgba(255, 255, 255, .042);
    text-decoration: none;
    transition: border-color .3s ease, background .3s ease, transform .3s ease;
}

.men-global__nations a:hover,
.men-global__nations a:focus-visible {
    border-color: rgba(221, 182, 99, .48);
    background: rgba(255, 255, 255, .075);
    transform: translateY(-3px);
}

.men-global__nations a > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(221, 182, 99, .3);
    border-radius: 50%;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.men-global__nations strong,
.men-global__nations small {
    display: block;
}

.men-global__nations strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.12rem;
    font-weight: 400;
}

.men-global__nations small {
    margin-top: 4px;
    color: rgba(255, 255, 255, .48);
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.men-global__image {
    width: 100%;
    height: clamp(570px, 55vw, 750px);
    overflow: hidden;
    border-radius: 18px 152px 18px 18px;
    box-shadow: 0 36px 90px rgba(0, 0, 0, .31);
}

.men-global__statement {
    position: absolute;
    right: 28px;
    bottom: 28px;
    z-index: 2;
    min-width: 190px;
    padding: 22px 24px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 8px;
    color: #fff;
    background: rgba(3, 24, 35, .88);
    backdrop-filter: blur(10px);
}

.men-global__statement span,
.men-global__statement strong {
    display: block;
}

.men-global__statement span {
    color: rgba(255, 255, 255, .55);
    font-size: .55rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.men-global__statement strong {
    margin-top: 7px;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
    font-weight: 400;
}

.men-gatherings {
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(222, 199, 147, .28), transparent 34%),
        var(--ivory-50);
}

.men-gatherings__track {
    width: min(calc(100% - 64px), var(--container));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(315px, 32vw);
    gap: 18px;
    margin: clamp(58px, 8vw, 94px) auto 0;
    padding-bottom: 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-color: var(--gold-500) var(--ivory-200);
    scrollbar-width: thin;
}

.men-gathering-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px 52px 8px 8px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(8, 31, 48, .06);
    scroll-snap-align: start;
}

.men-gathering-card__media {
    position: relative;
    aspect-ratio: 4 / 4.65;
    overflow: hidden;
}

.men-gathering-card__image,
.men-gathering-card__image picture,
.men-gathering-card__image img {
    width: 100%;
    height: 100%;
}

.men-gathering-card__image img {
    object-fit: cover;
    filter: saturate(.94);
    transition: transform .8s cubic-bezier(.22, .61, .36, 1), filter .4s ease;
}

.men-gathering-card:hover .men-gathering-card__image img {
    filter: saturate(1.08);
    transform: scale(1.045);
}

.men-gathering-card__media > span {
    position: absolute;
    top: 22px;
    right: 22px;
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .38);
    border-radius: 50%;
    color: var(--navy-950);
    background: rgba(255, 253, 248, .92);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
    backdrop-filter: blur(8px);
}

.men-gathering-card__body {
    min-height: 284px;
    padding: 30px 30px 36px;
}

.men-gathering-card__body > p {
    margin: 0;
    color: var(--gold-600);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.men-gathering-card__body h3 {
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.75rem, 2.5vw, 2.4rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.08;
}

.men-gathering-card__body div {
    margin-top: 18px;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.72;
}

.men-testimonies {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: #03131e;
}

.men-testimonies::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 80% 12%, rgba(40, 90, 78, .23), transparent 28rem),
        repeating-linear-gradient(90deg, transparent 0 124px, rgba(255, 255, 255, .018) 124px 125px);
}

.men-testimonies__head {
    max-width: 930px;
}

.men-testimonies__head h2 {
    margin: 14px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.9rem, 6vw, 6.3rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .96;
}

.men-testimonies__head h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.men-testimonies__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-top: clamp(58px, 8vw, 90px);
}

.men-testimonies blockquote {
    position: relative;
    min-height: 350px;
    margin: 0;
    padding: clamp(38px, 5vw, 60px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .115);
    border-radius: 8px 50px 8px 8px;
    background: rgba(255, 255, 255, .04);
}

.men-testimonies blockquote > span {
    position: absolute;
    top: 8px;
    right: 34px;
    color: rgba(221, 182, 99, .13);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 10rem;
    line-height: 1;
}

.men-testimonies blockquote p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255, 255, 255, .88);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 3vw, 2.6rem);
    line-height: 1.32;
}

.men-testimonies blockquote cite {
    display: block;
    margin-top: 38px;
    color: var(--gold-300);
    font-size: .6rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.men-faq {
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(221, 182, 99, .06) 1px, transparent 1px),
        radial-gradient(circle at 100% 0, rgba(221, 182, 99, .15), transparent 24rem),
        var(--paper);
    background-size: 140px 100%, auto, auto;
}

.men-faq__grid {
    align-items: start;
}

.men-faq__intro {
    position: sticky;
    top: 130px;
}

.is-administrator-preview .men-faq__intro {
    top: 164px;
}

.men-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    margin: 30px 0 0;
    color: var(--muted);
    line-height: 1.8;
}

.men-faq__intro .button {
    margin-top: 34px;
}

.men-faq__list details {
    border-bottom: 1px solid var(--line);
}

.men-faq__list summary {
    min-height: 118px;
    display: grid;
    grid-template-columns: 38px 1fr 36px;
    align-items: center;
    gap: 20px;
    padding: 22px 0;
    cursor: pointer;
    list-style: none;
}

.men-faq__list summary::-webkit-details-marker {
    display: none;
}

.men-faq__list summary > span {
    color: var(--gold-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.men-faq__list summary strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2vw, 1.8rem);
    font-weight: 400;
    letter-spacing: -.025em;
}

.men-faq__list summary i {
    position: relative;
    width: 34px;
    height: 34px;
    border: 1px solid var(--line);
    border-radius: 50%;
}

.men-faq__list summary i::before,
.men-faq__list summary i::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 1px;
    background: currentColor;
    transform: translate(-50%, -50%);
}

.men-faq__list summary i::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: transform .25s ease;
}

.men-faq__list details[open] summary i::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.men-faq__list details > p {
    margin: -6px 52px 0 58px;
    padding: 0 0 34px;
    color: var(--muted);
    line-height: 1.8;
}

.men-legacy-cta {
    position: relative;
    min-height: 800px;
    display: grid;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--navy-950);
}

.men-legacy-cta__media.site-image,
.men-legacy-cta__veil {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.men-legacy-cta__media picture,
.men-legacy-cta__media img {
    width: 100%;
    height: 100%;
}

.men-legacy-cta__media img {
    object-fit: cover;
}

.men-legacy-cta__veil {
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(2, 15, 24, .97) 0%, rgba(2, 15, 24, .84) 46%, rgba(2, 15, 24, .3) 78%, rgba(2, 15, 24, .55)),
        linear-gradient(180deg, transparent 46%, rgba(2, 15, 24, .85));
}

.men-legacy-cta__inner {
    position: relative;
    z-index: 2;
    padding-top: 110px;
    padding-bottom: 110px;
}

.men-legacy-cta h2 {
    max-width: 1050px;
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.4rem, 7vw, 7.2rem);
    font-weight: 400;
    letter-spacing: -.06em;
    line-height: .92;
}

.men-legacy-cta h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.men-legacy-cta__inner > p:not(.eyebrow) {
    max-width: 700px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .7);
    line-height: 1.82;
}

.men-legacy-cta__inner > p + p {
    margin-top: 12px;
}

.men-legacy-cta__inner > strong {
    display: block;
    max-width: 720px;
    margin-top: 22px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2.1vw, 1.8rem);
    font-weight: 400;
    line-height: 1.4;
}

.men-legacy-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 22px;
    margin-top: 42px;
}

@media (max-width: 1160px) {
    .men-welcome__grid,
    .men-mission__grid,
    .men-global__grid,
    .men-faq__grid {
        gap: 58px;
    }

    .men-welcome__seal {
        left: -25px;
    }

    .men-mission__visual blockquote {
        right: -22px;
    }

    .men-gatherings__track {
        grid-auto-columns: minmax(320px, 42vw);
    }
}

@media (max-width: 960px) {
    .men-welcome__grid,
    .men-mission__grid,
    .men-global__grid,
    .men-faq__grid {
        grid-template-columns: 1fr;
        gap: 66px;
    }

    .men-welcome__content,
    .men-mission__content,
    .men-global__content {
        max-width: 760px;
    }

    .men-welcome__visual,
    .men-mission__visual,
    .men-global__visual {
        width: min(100%, 760px);
    }

    .men-welcome__visual,
    .men-global__visual {
        margin-left: auto;
    }

    .men-mission__visual {
        order: 2;
    }

    .men-vision__head,
    .men-gatherings__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .men-vision__pillars {
        grid-template-columns: 1fr;
    }

    .men-vision__pillars article {
        min-height: 300px;
    }

    .men-vision__pillars h3 {
        margin-top: 52px;
        padding-top: 0;
    }

    .men-faq__intro {
        position: static;
        max-width: 680px;
    }

    .men-testimonies__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .page-ministry-men .ministry-detail-hero__media::after {
        background:
            linear-gradient(180deg, rgba(2, 14, 25, .12), rgba(2, 14, 25, .97) 88%),
            linear-gradient(90deg, rgba(2, 14, 25, .72), transparent 88%);
    }

    .men-welcome__image,
    .men-mission__image,
    .men-global__image {
        height: min(126vw, 650px);
    }

    .men-welcome__image,
    .men-global__image {
        border-radius: 18px 104px 18px 18px;
    }

    .men-welcome__seal {
        bottom: 20px;
        left: 16px;
        width: 150px;
        gap: 5px;
        padding: 20px;
    }

    .men-welcome__seal span {
        font-size: .72rem;
    }

    .men-mission__image {
        border-radius: 104px 18px 18px 18px;
    }

    .men-mission__visual blockquote {
        right: 16px;
        bottom: 18px;
        left: 16px;
        max-width: none;
    }

    .men-global__nations {
        grid-template-columns: 1fr;
    }

    .men-global__statement {
        right: 16px;
        bottom: 16px;
        left: 16px;
    }

    .men-gatherings__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(285px, 84vw);
    }

    .men-testimonies blockquote {
        min-height: 300px;
    }

    .men-faq__list summary {
        grid-template-columns: 30px 1fr 34px;
        gap: 14px;
    }

    .men-faq__list details > p {
        margin-right: 44px;
        margin-left: 44px;
    }

    .men-legacy-cta {
        min-height: 760px;
    }

    .men-legacy-cta__veil {
        background:
            linear-gradient(180deg, rgba(2, 15, 24, .5), rgba(2, 15, 24, .97) 73%),
            linear-gradient(90deg, rgba(2, 15, 24, .78), transparent);
    }

    .men-legacy-cta__inner {
        align-self: end;
        padding-top: 110px;
        padding-bottom: 78px;
    }

    .men-legacy-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .men-legacy-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .men-welcome__grid,
    .men-mission__grid,
    .men-global__grid,
    .men-faq__grid {
        gap: 50px;
    }

    .men-vision__pillars article {
        min-height: 285px;
        padding: 30px;
    }

    .men-mission__areas li {
        grid-template-columns: 32px 1fr;
        gap: 12px;
    }

    .men-global__nations a {
        padding: 16px;
    }

    .men-gathering-card__body {
        min-height: 270px;
        padding: 26px;
    }

    .men-testimonies blockquote {
        min-height: 280px;
        padding: 32px 28px;
    }

    .men-faq__list summary strong {
        font-size: 1.18rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .men-vision__pillars article,
    .men-mission__areas li,
    .men-global__nations a,
    .men-gathering-card__image img {
        transition: none;
    }
}

/* ================================================================
   Phase 1, Step 16 — Keep The Faith Women
   ================================================================ */

.page-ministry-women {
    --women-plum-950: #241326;
    --women-plum-900: #321a35;
    --women-plum-800: #4a284c;
    --women-rose-600: #a45f6f;
    --women-rose-400: #ce8d98;
    --women-blush: #f8e9e6;
    --women-cream: #fff9f2;
}

.page-ministry-women .ministry-detail-hero__veil {
    background:
        radial-gradient(circle at 78% 17%, rgba(212, 142, 151, .24), transparent 29%),
        radial-gradient(circle at 9% 88%, rgba(195, 144, 63, .2), transparent 31%),
        linear-gradient(180deg, transparent 39%, rgba(25, 10, 28, .84));
}

.page-ministry-women .ministry-detail-hero__glow {
    opacity: .72;
    background:
        linear-gradient(90deg, transparent 0 72%, rgba(255, 255, 255, .07) 72% 72.07%, transparent 72.07%),
        repeating-linear-gradient(90deg, transparent 0 136px, rgba(255, 255, 255, .02) 136px 137px),
        radial-gradient(circle at 5% 90%, rgba(224, 177, 103, .18), transparent 29%);
}

#welcome-women,
#women-vision,
#women-programmes,
#women-aflame,
#women-global,
#women-events,
#women-faq {
    scroll-margin-top: 120px;
}

.women-welcome {
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(164, 95, 111, .055) 1px, transparent 1px),
        radial-gradient(circle at 0 100%, rgba(206, 141, 152, .2), transparent 28rem),
        var(--women-cream);
    background-size: 124px 100%, auto, auto;
}

.women-welcome__grid,
.women-mission__grid,
.women-aflame__grid,
.women-global__grid,
.women-faq__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    align-items: center;
    gap: clamp(70px, 9vw, 146px);
}

.women-welcome__content .rich-copy {
    margin-top: 34px;
}

.women-welcome__visual,
.women-mission__visual,
.women-aflame__visual,
.women-global__visual {
    position: relative;
    min-width: 0;
}

.women-welcome__visual::before {
    content: "";
    position: absolute;
    top: -28px;
    right: -28px;
    width: 55%;
    height: 46%;
    border-top: 1px solid rgba(164, 95, 111, .46);
    border-right: 1px solid rgba(164, 95, 111, .46);
    border-radius: 0 170px 0 0;
}

.women-welcome__visual::after {
    content: "";
    position: absolute;
    right: -36px;
    bottom: -36px;
    z-index: 0;
    width: 39%;
    height: 35%;
    border-right: 1px solid rgba(193, 140, 56, .25);
    border-bottom: 1px solid rgba(193, 140, 56, .25);
}

.women-welcome__image {
    width: 100%;
    height: clamp(570px, 58vw, 760px);
    overflow: hidden;
    border-radius: 170px 22px 22px 22px;
    box-shadow: var(--shadow-lg);
}

.women-welcome__image img,
.women-mission__image img,
.women-aflame__image img,
.women-global__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.women-welcome__signature {
    position: absolute;
    right: -44px;
    bottom: 34px;
    z-index: 2;
    width: 194px;
    aspect-ratio: 1;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 7px;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    color: #fff;
    background: rgba(45, 23, 48, .94);
    box-shadow: 0 25px 60px rgba(46, 22, 48, .34);
    text-align: center;
    backdrop-filter: blur(12px);
}

.women-welcome__signature span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: .84rem;
    letter-spacing: .035em;
}

.women-welcome__signature i {
    width: 34px;
    height: 1px;
    background: rgba(235, 207, 145, .72);
}

.women-vision {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(126deg, rgba(177, 89, 111, .25), transparent 53%),
        var(--women-plum-950);
}

.women-vision::before {
    content: "";
    position: absolute;
    top: -23rem;
    right: -11rem;
    z-index: -1;
    width: 58rem;
    height: 58rem;
    border: 1px solid rgba(255, 255, 255, .055);
    border-radius: 50%;
    box-shadow:
        0 0 0 116px rgba(255, 255, 255, .014),
        0 0 0 232px rgba(255, 255, 255, .007);
}

.women-vision::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .3;
    background: repeating-linear-gradient(
        90deg,
        transparent 0 164px,
        rgba(255, 255, 255, .025) 164px 165px
    );
}

.women-vision__head,
.women-programmes__head,
.women-events__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: clamp(40px, 8vw, 120px);
}

.women-vision__head > p,
.women-events__head > p {
    max-width: 500px;
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .64);
    line-height: 1.85;
}

.women-vision__pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: clamp(60px, 8vw, 96px);
}

.women-vision__pillars article {
    position: relative;
    min-height: 420px;
    display: flex;
    flex-direction: column;
    padding: clamp(32px, 4vw, 48px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .115);
    border-radius: 72px 10px 10px 10px;
    background: rgba(255, 255, 255, .045);
    backdrop-filter: blur(8px);
    transition: transform .35s ease, border-color .35s ease, background .35s ease;
}

.women-vision__pillars article::after {
    content: "";
    position: absolute;
    right: -1px;
    bottom: -1px;
    width: 92px;
    height: 92px;
    border-right: 1px solid rgba(235, 207, 145, .18);
    border-bottom: 1px solid rgba(235, 207, 145, .18);
}

.women-vision__pillars article:hover {
    border-color: rgba(235, 207, 145, .48);
    background: rgba(255, 255, 255, .075);
    transform: translateY(-8px);
}

.women-vision__pillar-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.women-vision__pillar-meta span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .74rem;
}

.women-vision__pillar-meta small {
    color: rgba(255, 255, 255, .5);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.women-vision__pillars h3 {
    max-width: 350px;
    margin: auto 0 0;
    padding-top: 72px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.95rem, 3vw, 2.9rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: 1.04;
}

.women-vision__pillars p {
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .84rem;
    line-height: 1.75;
}

.women-mission {
    overflow: hidden;
    background:
        radial-gradient(circle at 100% 18%, rgba(206, 141, 152, .12), transparent 27rem),
        var(--paper);
}

.women-mission__grid {
    grid-template-columns: minmax(0, .91fr) minmax(0, 1.09fr);
}

.women-mission__image {
    width: 100%;
    height: clamp(680px, 65vw, 850px);
    overflow: hidden;
    border-radius: 20px 20px 162px 20px;
    box-shadow: var(--shadow-lg);
}

.women-mission__visual blockquote {
    position: absolute;
    right: -42px;
    bottom: 42px;
    max-width: 380px;
    margin: 0;
    padding: 30px 34px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 12px 12px 58px 12px;
    color: #fff;
    background: rgba(48, 24, 51, .95);
    backdrop-filter: blur(11px);
}

.women-mission__visual blockquote p {
    margin: 0;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    line-height: 1.45;
}

.women-mission__visual blockquote cite {
    display: block;
    margin-top: 12px;
    color: rgba(255, 255, 255, .58);
    font-size: .57rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.women-mission__content > p:not(.eyebrow) {
    margin: 30px 0 0;
    color: var(--muted);
    line-height: 1.85;
}

.women-mission__content > p + p {
    margin-top: 14px;
}

.women-mission__rhythm {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 40px;
}

.women-mission__rhythm span {
    min-height: 82px;
    display: flex;
    align-items: center;
    padding: 20px 22px;
    border: 1px solid rgba(164, 95, 111, .2);
    border-radius: 10px 28px 10px 10px;
    color: var(--women-plum-900);
    background: linear-gradient(135deg, rgba(248, 233, 230, .8), #fff);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1rem;
}

.women-programmes {
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(248, 226, 223, .74), transparent 31%),
        var(--women-cream);
}

.women-programmes__track {
    width: min(calc(100% - 64px), var(--container));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(320px, 32vw);
    gap: 18px;
    margin: clamp(58px, 8vw, 94px) auto 0;
    padding-bottom: 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-color: var(--women-rose-600) var(--women-blush);
    scrollbar-width: thin;
}

.women-programme-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(75, 40, 77, .13);
    border-radius: 62px 10px 10px 10px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(52, 25, 54, .07);
    scroll-snap-align: start;
}

.women-programme-card__media {
    position: relative;
    aspect-ratio: 4 / 4.65;
    overflow: hidden;
}

.women-programme-card__image,
.women-programme-card__image picture,
.women-programme-card__image img {
    width: 100%;
    height: 100%;
}

.women-programme-card__image img {
    object-fit: cover;
    filter: saturate(.94);
    transition: transform .8s cubic-bezier(.22, .61, .36, 1), filter .4s ease;
}

.women-programme-card:hover .women-programme-card__image img {
    filter: saturate(1.08);
    transform: scale(1.045);
}

.women-programme-card__media > span {
    position: absolute;
    top: 22px;
    right: 22px;
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 50%;
    color: var(--women-plum-950);
    background: rgba(255, 249, 242, .92);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
    backdrop-filter: blur(8px);
}

.women-programme-card__body {
    min-height: 310px;
    padding: 30px 30px 36px;
}

.women-programme-card__body > p {
    margin: 0;
    color: var(--women-rose-600);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.women-programme-card__body h3 {
    margin: 16px 0 0;
    color: var(--women-plum-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.72rem, 2.5vw, 2.35rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.08;
}

.women-programme-card__body > div {
    margin-top: 18px;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.72;
}

.women-programme-card__body ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.women-programme-card__body li {
    padding: 7px 10px;
    border: 1px solid rgba(164, 95, 111, .18);
    border-radius: 999px;
    color: var(--women-plum-800);
    background: var(--women-cream);
    font-size: .62rem;
    font-weight: 750;
}

.women-aflame {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 13% 10%, rgba(202, 117, 133, .23), transparent 29rem),
        radial-gradient(circle at 92% 88%, rgba(213, 163, 83, .15), transparent 26rem),
        var(--women-plum-950);
}

.women-aflame::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .34;
    background: repeating-linear-gradient(
        90deg,
        transparent 0 132px,
        rgba(255, 255, 255, .02) 132px 133px
    );
}

.women-aflame__grid {
    grid-template-columns: minmax(0, 1.03fr) minmax(0, .97fr);
}

.women-aflame__content > p:not(.eyebrow) {
    max-width: 660px;
    margin: 32px 0 0;
    color: rgba(255, 255, 255, .66);
    line-height: 1.85;
}

.women-aflame__focus {
    margin: 40px 0 0;
    padding: 0;
    border-top: 1px solid rgba(255, 255, 255, .11);
    list-style: none;
}

.women-aflame__focus li {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 20px;
    padding: 20px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .11);
}

.women-aflame__focus li > span {
    padding-top: 4px;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .68rem;
}

.women-aflame__focus strong {
    display: block;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.34rem;
    font-weight: 400;
}

.women-aflame__focus p {
    margin: 6px 0 0;
    color: rgba(255, 255, 255, .54);
    font-size: .75rem;
    line-height: 1.6;
}

.women-aflame__image {
    width: 100%;
    height: clamp(670px, 66vw, 860px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 180px 18px 18px 18px;
    box-shadow: 0 36px 90px rgba(0, 0, 0, .34);
}

.women-aflame__mark {
    position: absolute;
    right: 26px;
    bottom: 26px;
    z-index: 2;
    min-width: 180px;
    padding: 22px 26px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 46px 10px 10px 10px;
    color: #fff;
    background: rgba(45, 22, 48, .9);
    backdrop-filter: blur(10px);
}

.women-aflame__mark span,
.women-aflame__mark strong {
    display: block;
}

.women-aflame__mark span {
    color: rgba(255, 255, 255, .56);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.women-aflame__mark strong {
    margin: 6px 0;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.5rem;
    font-weight: 400;
}

.women-initiatives {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-top: clamp(78px, 10vw, 126px);
}

.women-initiatives article {
    display: grid;
    grid-template-columns: minmax(150px, .7fr) minmax(0, 1.3fr);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 12px 52px 12px 12px;
    background: rgba(255, 255, 255, .045);
}

.women-initiatives__media,
.women-initiatives__image,
.women-initiatives__image picture,
.women-initiatives__image img {
    width: 100%;
    height: 100%;
}

.women-initiatives__media {
    min-height: 330px;
    overflow: hidden;
}

.women-initiatives__image img {
    object-fit: cover;
}

.women-initiatives article > div:last-child {
    padding: clamp(30px, 4vw, 44px);
}

.women-initiatives article p {
    margin: 0;
    color: var(--gold-300);
    font-size: .58rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.women-initiatives article h3 {
    margin: 14px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.5vw, 2.35rem);
    font-weight: 400;
    line-height: 1.08;
}

.women-initiatives article div > span {
    display: block;
    margin-top: 18px;
    color: rgba(255, 255, 255, .6);
    font-size: .78rem;
    line-height: 1.72;
}

.women-initiatives ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.women-initiatives li {
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 999px;
    color: rgba(255, 255, 255, .7);
    font-size: .58rem;
}

.women-global {
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(164, 95, 111, .05) 1px, transparent 1px),
        radial-gradient(circle at 100% 0, rgba(206, 141, 152, .18), transparent 27rem),
        var(--women-cream);
    background-size: 138px 100%, auto, auto;
}

.women-global__grid {
    grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
}

.women-global__image {
    width: 100%;
    height: clamp(580px, 56vw, 750px);
    overflow: hidden;
    border-radius: 18px 18px 154px 18px;
    box-shadow: var(--shadow-lg);
}

.women-global__statement {
    position: absolute;
    right: 28px;
    bottom: 28px;
    z-index: 2;
    min-width: 194px;
    padding: 22px 24px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 44px 10px 10px 10px;
    color: #fff;
    background: rgba(47, 24, 50, .9);
    backdrop-filter: blur(10px);
}

.women-global__statement span,
.women-global__statement strong {
    display: block;
}

.women-global__statement span {
    color: rgba(255, 255, 255, .57);
    font-size: .55rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.women-global__statement strong {
    margin-top: 7px;
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
    font-weight: 400;
}

.women-global__content > p:not(.eyebrow) {
    max-width: 650px;
    margin: 32px 0 0;
    color: var(--muted);
    line-height: 1.85;
}

.women-global__nations {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 42px;
}

.women-global__nations a {
    min-width: 0;
    display: grid;
    grid-template-columns: 48px 1fr;
    align-items: center;
    gap: 16px;
    padding: 20px;
    border: 1px solid rgba(72, 38, 74, .14);
    border-radius: 30px 8px 8px 8px;
    color: var(--women-plum-950);
    background: rgba(255, 255, 255, .72);
    text-decoration: none;
    transition: border-color .3s ease, background .3s ease, transform .3s ease;
}

.women-global__nations a:hover,
.women-global__nations a:focus-visible {
    border-color: rgba(164, 95, 111, .5);
    background: #fff;
    transform: translateY(-3px);
}

.women-global__nations a > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(164, 95, 111, .25);
    border-radius: 50%;
    color: var(--women-rose-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.women-global__nations strong,
.women-global__nations small {
    display: block;
}

.women-global__nations strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.12rem;
    font-weight: 400;
}

.women-global__nations small {
    margin-top: 4px;
    color: var(--muted);
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.women-events {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 86% 18%, rgba(195, 108, 126, .2), transparent 28rem),
        #1b1020;
}

.women-events::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .33;
    background: repeating-linear-gradient(
        90deg,
        transparent 0 126px,
        rgba(255, 255, 255, .02) 126px 127px
    );
}

.women-events__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: clamp(58px, 8vw, 90px);
}

.women-events__grid article {
    min-height: 150px;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 36px;
    align-items: center;
    gap: 22px;
    padding: 28px 30px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 12px 42px 12px 12px;
    background: rgba(255, 255, 255, .04);
    transition: border-color .3s ease, background .3s ease, transform .3s ease;
}

.women-events__grid article:hover {
    border-color: rgba(235, 207, 145, .4);
    background: rgba(255, 255, 255, .07);
    transform: translateY(-4px);
}

.women-events__grid article > span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.women-events__grid small {
    color: rgba(255, 255, 255, .46);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.women-events__grid h3 {
    margin: 8px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.3rem, 2.2vw, 1.9rem);
    font-weight: 400;
    line-height: 1.15;
}

.women-events__grid i {
    color: var(--gold-300);
    font-style: normal;
    font-size: 1.25rem;
}

.women-testimonies {
    overflow: hidden;
    background:
        radial-gradient(circle at 10% 86%, rgba(206, 141, 152, .2), transparent 26rem),
        var(--women-blush);
}

.women-testimonies__head {
    max-width: 950px;
}

.women-testimonies__head h2 {
    margin: 14px 0 0;
    color: var(--women-plum-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.9rem, 6vw, 6.3rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .96;
}

.women-testimonies__head h2 em {
    display: block;
    color: var(--women-rose-600);
    font-weight: 400;
}

.women-testimonies__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-top: clamp(58px, 8vw, 90px);
}

.women-testimonies blockquote {
    position: relative;
    min-height: 350px;
    margin: 0;
    padding: clamp(38px, 5vw, 60px);
    overflow: hidden;
    border: 1px solid rgba(72, 38, 74, .13);
    border-radius: 66px 12px 12px 12px;
    background: rgba(255, 255, 255, .68);
}

.women-testimonies blockquote > span {
    position: absolute;
    top: 8px;
    right: 34px;
    color: rgba(164, 95, 111, .13);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 10rem;
    line-height: 1;
}

.women-testimonies blockquote p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: var(--women-plum-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 3vw, 2.6rem);
    line-height: 1.32;
}

.women-testimonies blockquote cite {
    display: block;
    margin-top: 38px;
    color: var(--women-rose-600);
    font-size: .6rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.women-faq {
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, .022) 1px, transparent 1px),
        radial-gradient(circle at 100% 0, rgba(199, 117, 134, .18), transparent 25rem),
        var(--women-plum-950);
    background-size: 140px 100%, auto, auto;
}

.women-faq__grid {
    align-items: start;
}

.women-faq__intro {
    position: sticky;
    top: 130px;
}

.is-administrator-preview .women-faq__intro {
    top: 164px;
}

.women-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .62);
    line-height: 1.8;
}

.women-faq__intro .button {
    margin-top: 34px;
}

.women-faq__list details {
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.women-faq__list summary {
    min-height: 118px;
    display: grid;
    grid-template-columns: 38px 1fr 36px;
    align-items: center;
    gap: 20px;
    padding: 22px 0;
    cursor: pointer;
    list-style: none;
}

.women-faq__list summary::-webkit-details-marker {
    display: none;
}

.women-faq__list summary > span {
    color: var(--gold-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.women-faq__list summary strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2vw, 1.8rem);
    font-weight: 400;
    letter-spacing: -.025em;
}

.women-faq__list summary i {
    position: relative;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
}

.women-faq__list summary i::before,
.women-faq__list summary i::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 1px;
    background: currentColor;
    transform: translate(-50%, -50%);
}

.women-faq__list summary i::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: transform .25s ease;
}

.women-faq__list details[open] summary i::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.women-faq__list details > p {
    margin: -6px 52px 0 58px;
    padding: 0 0 34px;
    color: rgba(255, 255, 255, .6);
    line-height: 1.8;
}

.women-purpose-cta {
    position: relative;
    min-height: 840px;
    display: grid;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--women-plum-950);
}

.women-purpose-cta__media.site-image,
.women-purpose-cta__veil {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.women-purpose-cta__media picture,
.women-purpose-cta__media img {
    width: 100%;
    height: 100%;
}

.women-purpose-cta__media img {
    object-fit: cover;
}

.women-purpose-cta__veil {
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(37, 17, 40, .97) 0%, rgba(37, 17, 40, .86) 47%, rgba(37, 17, 40, .3) 79%, rgba(37, 17, 40, .58)),
        linear-gradient(180deg, transparent 44%, rgba(37, 17, 40, .86));
}

.women-purpose-cta__inner {
    position: relative;
    z-index: 2;
    padding-top: 110px;
    padding-bottom: 110px;
}

.women-purpose-cta h2 {
    max-width: 1140px;
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.3rem, 7vw, 7rem);
    font-weight: 400;
    letter-spacing: -.06em;
    line-height: .92;
}

.women-purpose-cta h2 em {
    display: block;
    color: var(--gold-300);
    font-weight: 400;
}

.women-purpose-cta__inner > p:not(.eyebrow) {
    max-width: 720px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .72);
    line-height: 1.82;
}

.women-purpose-cta__inner > p + p {
    margin-top: 12px;
}

.women-purpose-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 22px;
    margin-top: 42px;
}

@media (max-width: 1160px) {
    .women-welcome__grid,
    .women-mission__grid,
    .women-aflame__grid,
    .women-global__grid,
    .women-faq__grid {
        gap: 58px;
    }

    .women-welcome__signature {
        right: -24px;
    }

    .women-mission__visual blockquote {
        right: -22px;
    }

    .women-programmes__track {
        grid-auto-columns: minmax(320px, 42vw);
    }

    .women-initiatives article {
        grid-template-columns: 1fr;
    }

    .women-initiatives__media {
        height: 300px;
        min-height: 0;
    }
}

@media (max-width: 960px) {
    .women-welcome__grid,
    .women-mission__grid,
    .women-aflame__grid,
    .women-global__grid,
    .women-faq__grid {
        grid-template-columns: 1fr;
        gap: 66px;
    }

    .women-welcome__content,
    .women-mission__content,
    .women-aflame__content,
    .women-global__content {
        max-width: 760px;
    }

    .women-welcome__visual,
    .women-mission__visual,
    .women-aflame__visual,
    .women-global__visual {
        width: min(100%, 760px);
    }

    .women-welcome__visual,
    .women-aflame__visual {
        margin-left: auto;
    }

    .women-mission__visual {
        order: 2;
    }

    .women-global__visual {
        order: 2;
    }

    .women-vision__head,
    .women-programmes__head,
    .women-events__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .women-vision__pillars {
        grid-template-columns: 1fr;
    }

    .women-vision__pillars article {
        min-height: 300px;
    }

    .women-vision__pillars h3 {
        margin-top: 52px;
        padding-top: 0;
    }

    .women-initiatives {
        grid-template-columns: 1fr;
    }

    .women-initiatives article {
        grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr);
    }

    .women-initiatives__media {
        height: auto;
        min-height: 330px;
    }

    .women-faq__intro {
        position: static;
        max-width: 680px;
    }

    .women-testimonies__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .page-ministry-women .ministry-detail-hero__media::after {
        background:
            linear-gradient(180deg, rgba(36, 17, 39, .12), rgba(36, 17, 39, .97) 88%),
            linear-gradient(90deg, rgba(36, 17, 39, .72), transparent 88%);
    }

    .women-welcome__image,
    .women-mission__image,
    .women-aflame__image,
    .women-global__image {
        height: min(126vw, 650px);
    }

    .women-welcome__image,
    .women-aflame__image {
        border-radius: 106px 18px 18px 18px;
    }

    .women-welcome__signature {
        right: 16px;
        bottom: 18px;
        width: 150px;
        gap: 5px;
        padding: 20px;
    }

    .women-welcome__signature span {
        font-size: .72rem;
    }

    .women-mission__image,
    .women-global__image {
        border-radius: 18px 18px 104px 18px;
    }

    .women-mission__visual blockquote {
        right: 16px;
        bottom: 18px;
        left: 16px;
        max-width: none;
    }

    .women-mission__rhythm {
        grid-template-columns: 1fr;
    }

    .women-programmes__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(285px, 84vw);
    }

    .women-aflame__mark,
    .women-global__statement {
        right: 16px;
        bottom: 16px;
        left: 16px;
    }

    .women-initiatives article {
        grid-template-columns: 1fr;
    }

    .women-initiatives__media {
        height: 300px;
        min-height: 0;
    }

    .women-global__nations,
    .women-events__grid {
        grid-template-columns: 1fr;
    }

    .women-testimonies blockquote {
        min-height: 300px;
    }

    .women-faq__list summary {
        grid-template-columns: 30px 1fr 34px;
        gap: 14px;
    }

    .women-faq__list details > p {
        margin-right: 44px;
        margin-left: 44px;
    }

    .women-purpose-cta {
        min-height: 780px;
    }

    .women-purpose-cta__veil {
        background:
            linear-gradient(180deg, rgba(37, 17, 40, .46), rgba(37, 17, 40, .98) 72%),
            linear-gradient(90deg, rgba(37, 17, 40, .8), transparent);
    }

    .women-purpose-cta__inner {
        align-self: end;
        padding-top: 110px;
        padding-bottom: 78px;
    }

    .women-purpose-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .women-purpose-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .women-welcome__grid,
    .women-mission__grid,
    .women-aflame__grid,
    .women-global__grid,
    .women-faq__grid {
        gap: 50px;
    }

    .women-vision__pillars article {
        min-height: 290px;
        padding: 30px;
    }

    .women-programme-card__body {
        min-height: 290px;
        padding: 26px;
    }

    .women-aflame__focus li {
        grid-template-columns: 32px 1fr;
        gap: 12px;
    }

    .women-global__nations a,
    .women-events__grid article {
        padding: 17px;
    }

    .women-events__grid article {
        grid-template-columns: 32px minmax(0, 1fr) 24px;
        gap: 12px;
    }

    .women-testimonies blockquote {
        min-height: 280px;
        padding: 32px 28px;
    }

    .women-faq__list summary strong {
        font-size: 1.18rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .women-vision__pillars article,
    .women-programme-card__image img,
    .women-global__nations a,
    .women-events__grid article {
        transition: none;
    }
}

/* Prayer FIRE Global */
.page-prayer-fire {
    --prayer-night: #150a0b;
    --prayer-ember-950: #250909;
    --prayer-ember-900: #3a0e0b;
    --prayer-ember-700: #802714;
    --prayer-flame-600: #c3481c;
    --prayer-flame-500: #e16624;
    --prayer-flame-300: #f4a04e;
    --prayer-cream: #fff8eb;
    --prayer-sand: #f5ead5;
    --prayer-line: rgba(91, 31, 15, .15);
}

.page-prayer-fire .ministry-detail-hero__veil {
    background:
        linear-gradient(90deg, rgba(18, 5, 7, .97) 0%, rgba(27, 7, 7, .83) 48%, rgba(37, 9, 7, .24) 79%, rgba(18, 5, 7, .54)),
        linear-gradient(180deg, rgba(12, 5, 7, .06), rgba(17, 5, 6, .8));
}

.page-prayer-fire .ministry-detail-hero__glow {
    background:
        radial-gradient(circle at 72% 38%, rgba(227, 91, 29, .28), transparent 26rem),
        radial-gradient(circle at 18% 84%, rgba(226, 139, 47, .15), transparent 24rem);
}

.page-prayer-fire .ministry-detail-hero h1 em,
.page-prayer-fire .ministry-detail-hero blockquote cite {
    color: var(--prayer-flame-300);
}

.page-prayer-fire .ministry-detail-hero__scroll i {
    border-color: rgba(244, 160, 78, .48);
}

#prayer-welcome,
#prayer-mandate,
#prayer-experience,
#prayer-gatherings,
#prayer-global,
#prayer-stories,
#prayer-faq {
    scroll-margin-top: 120px;
}

.prayer-welcome,
.prayer-vision,
.prayer-gatherings,
.prayer-pathways,
.prayer-gallery,
.prayer-faq {
    position: relative;
    overflow: hidden;
}

.prayer-welcome {
    background:
        radial-gradient(circle at 92% 10%, rgba(225, 102, 36, .12), transparent 28rem),
        linear-gradient(90deg, rgba(128, 39, 20, .035) 1px, transparent 1px),
        var(--prayer-cream);
    background-size: auto, 138px 100%, auto;
}

.prayer-welcome__grid,
.prayer-vision__grid,
.prayer-global__grid,
.prayer-faq__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    align-items: center;
    gap: clamp(70px, 9vw, 138px);
}

.prayer-welcome__content,
.prayer-vision__content,
.prayer-global__content {
    min-width: 0;
}

.prayer-welcome__content .section-heading h2,
.prayer-vision__content .section-heading h2,
.prayer-gatherings__head .section-heading h2,
.prayer-pathways__head .section-heading h2,
.prayer-gallery__head .section-heading h2,
.prayer-faq__intro .section-heading h2 {
    color: var(--prayer-ember-950);
}

.prayer-welcome__content .section-heading h2 em,
.prayer-vision__content .section-heading h2 em,
.prayer-gatherings__head .section-heading h2 em,
.prayer-pathways__head .section-heading h2 em,
.prayer-gallery__head .section-heading h2 em,
.prayer-faq__intro .section-heading h2 em {
    color: var(--prayer-flame-600);
}

.prayer-welcome__content .rich-copy {
    margin-top: 36px;
}

.prayer-welcome__visual,
.prayer-vision__visual,
.prayer-global__visual {
    position: relative;
    min-width: 0;
}

.prayer-welcome__image,
.prayer-vision__image,
.prayer-global__image {
    width: 100%;
    overflow: hidden;
    box-shadow: 0 34px 90px rgba(49, 12, 8, .2);
}

.prayer-welcome__image {
    height: clamp(620px, 58vw, 780px);
    border-radius: 180px 18px 18px 18px;
}

.prayer-welcome__image picture,
.prayer-welcome__image img,
.prayer-vision__image picture,
.prayer-vision__image img,
.prayer-global__image picture,
.prayer-global__image img {
    width: 100%;
    height: 100%;
}

.prayer-welcome__image img,
.prayer-vision__image img,
.prayer-global__image img {
    object-fit: cover;
}

.prayer-welcome__mark {
    position: absolute;
    right: -34px;
    bottom: 34px;
    z-index: 2;
    min-width: 230px;
    padding: 26px 30px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 58px 10px 10px 10px;
    color: #fff;
    background: rgba(37, 9, 9, .92);
    backdrop-filter: blur(12px);
}

.prayer-welcome__mark span,
.prayer-welcome__mark strong {
    display: block;
}

.prayer-welcome__mark span {
    color: rgba(255, 255, 255, .58);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.prayer-welcome__mark strong {
    margin-top: 8px;
    color: var(--prayer-flame-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.42rem;
    font-weight: 400;
}

.prayer-mandate {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 84% 12%, rgba(225, 102, 36, .23), transparent 29rem),
        radial-gradient(circle at 10% 100%, rgba(195, 72, 28, .13), transparent 28rem),
        var(--prayer-night);
}

.prayer-mandate::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .38;
    background: repeating-linear-gradient(
        90deg,
        transparent 0 132px,
        rgba(255, 255, 255, .025) 132px 133px
    );
}

.prayer-mandate__head,
.prayer-gatherings__head,
.prayer-gallery__head,
.prayer-testimonies__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 54px;
}

.prayer-mandate__head > p,
.prayer-gatherings__head > p {
    max-width: 440px;
    margin: 0 0 8px;
    color: rgba(255, 255, 255, .58);
    line-height: 1.8;
}

.prayer-mandate__cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: clamp(62px, 8vw, 96px);
}

.prayer-mandate__cards article {
    position: relative;
    min-height: 440px;
    padding: clamp(34px, 4vw, 54px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 14px 76px 14px 14px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .018));
    transition: border-color .3s ease, background .3s ease, transform .3s ease;
}

.prayer-mandate__cards article::after {
    content: "";
    position: absolute;
    right: -80px;
    bottom: -90px;
    width: 210px;
    height: 210px;
    border: 1px solid rgba(244, 160, 78, .2);
    border-radius: 50%;
}

.prayer-mandate__cards article:hover {
    border-color: rgba(244, 160, 78, .42);
    background: rgba(255, 255, 255, .07);
    transform: translateY(-6px);
}

.prayer-mandate__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.prayer-mandate__meta span {
    color: var(--prayer-flame-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .75rem;
}

.prayer-mandate__meta small {
    color: rgba(255, 255, 255, .45);
    font-size: .55rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.prayer-mandate__cards h3 {
    margin: 102px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 2.8vw, 2.8rem);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: .98;
    overflow-wrap: anywhere;
}

.prayer-mandate__cards p {
    position: relative;
    z-index: 1;
    max-width: 340px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .62);
    line-height: 1.78;
}

.prayer-vision {
    background:
        radial-gradient(circle at 8% 8%, rgba(225, 102, 36, .11), transparent 25rem),
        var(--prayer-sand);
}

.prayer-vision__grid {
    grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
}

.prayer-vision__image {
    height: clamp(560px, 54vw, 730px);
    border-radius: 18px 18px 150px 18px;
}

.prayer-vision__visual blockquote {
    position: absolute;
    right: -34px;
    bottom: 32px;
    z-index: 2;
    max-width: 340px;
    margin: 0;
    padding: 28px 32px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 52px 10px 10px 10px;
    color: #fff;
    background: rgba(37, 9, 9, .92);
    backdrop-filter: blur(12px);
}

.prayer-vision__visual blockquote p {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.3rem;
    line-height: 1.36;
}

.prayer-vision__visual blockquote cite {
    display: block;
    margin-top: 16px;
    color: var(--prayer-flame-300);
    font-size: .55rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.prayer-vision__content > p:not(.eyebrow) {
    max-width: 670px;
    margin: 30px 0 0;
    color: var(--muted);
    line-height: 1.86;
}

.prayer-vision__content > p + p {
    margin-top: 18px;
}

.prayer-experience {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, .025) 1px, transparent 1px),
        radial-gradient(circle at 100% 0, rgba(225, 102, 36, .2), transparent 25rem),
        var(--prayer-ember-950);
    background-size: 140px 100%, auto, auto;
}

.prayer-experience__head {
    max-width: 980px;
}

.prayer-experience__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-top: clamp(60px, 8vw, 96px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 16px 80px 16px 16px;
    background: rgba(255, 255, 255, .11);
}

.prayer-experience__grid article {
    min-height: 300px;
    padding: clamp(30px, 4vw, 48px);
    background: var(--prayer-ember-950);
    transition: background .3s ease;
}

.prayer-experience__grid article:hover {
    background: rgba(128, 39, 20, .82);
}

.prayer-experience__grid span {
    color: var(--prayer-flame-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.prayer-experience__grid h3 {
    margin: 68px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.6rem, 2.8vw, 2.5rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.05;
}

.prayer-experience__grid p {
    margin: 22px 0 0;
    color: rgba(255, 255, 255, .6);
    line-height: 1.75;
}

.prayer-gatherings {
    background:
        radial-gradient(circle at 100% 0, rgba(225, 102, 36, .13), transparent 28rem),
        var(--prayer-cream);
}

.prayer-gatherings__head > p {
    color: var(--muted);
}

.prayer-gatherings__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
    gap: 20px;
    margin-top: clamp(60px, 8vw, 94px);
}

.prayer-gatherings__weekly {
    grid-row: span 2;
    border-top: 1px solid var(--prayer-line);
}

.prayer-gatherings__weekly article {
    min-height: 190px;
    display: grid;
    grid-template-columns: 50px 120px minmax(0, 1fr) minmax(160px, .55fr);
    align-items: center;
    gap: 22px;
    border-bottom: 1px solid var(--prayer-line);
}

.prayer-gatherings__weekly article > span {
    color: var(--prayer-flame-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.prayer-gatherings__weekly small {
    color: var(--prayer-ember-700);
    font-size: .58rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.prayer-gatherings__weekly h3 {
    margin: 0;
    color: var(--prayer-ember-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.45rem, 2.8vw, 2.3rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.prayer-gatherings__weekly p {
    margin: 0;
    color: var(--muted);
    line-height: 1.6;
}

.prayer-gatherings__monthly,
.prayer-gatherings__special {
    min-width: 0;
    padding: clamp(34px, 4vw, 52px);
    border-radius: 14px 64px 14px 14px;
}

.prayer-gatherings__monthly {
    min-height: 330px;
    color: #fff;
    background:
        radial-gradient(circle at 100% 100%, rgba(244, 160, 78, .23), transparent 17rem),
        var(--prayer-ember-950);
}

.prayer-gatherings__monthly p,
.prayer-gatherings__special > p {
    margin: 0;
    font-size: .58rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.prayer-gatherings__monthly p {
    color: var(--prayer-flame-300);
}

.prayer-gatherings__monthly strong,
.prayer-gatherings__monthly span,
.prayer-gatherings__monthly small {
    display: block;
}

.prayer-gatherings__monthly strong {
    margin-top: 62px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3.6vw, 3.3rem);
    font-weight: 400;
    letter-spacing: -.045em;
    line-height: .98;
}

.prayer-gatherings__monthly span {
    margin-top: 24px;
    color: rgba(255, 255, 255, .7);
}

.prayer-gatherings__monthly small {
    margin-top: 8px;
    color: rgba(255, 255, 255, .45);
}

.prayer-gatherings__special {
    border: 1px solid var(--prayer-line);
    background: rgba(255, 255, 255, .72);
}

.prayer-gatherings__special > p {
    color: var(--prayer-flame-600);
}

.prayer-gatherings__special ul {
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
}

.prayer-gatherings__special li {
    padding: 13px 0;
    border-bottom: 1px solid var(--prayer-line);
    color: var(--prayer-ember-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.1rem;
}

.prayer-gatherings__special li:last-child {
    border-bottom: 0;
}

.prayer-global {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 94% 16%, rgba(225, 102, 36, .2), transparent 28rem),
        linear-gradient(90deg, rgba(255, 255, 255, .022) 1px, transparent 1px),
        var(--prayer-night);
    background-size: auto, 138px 100%, auto;
}

.prayer-global__grid {
    grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
}

.prayer-global__image {
    height: clamp(580px, 56vw, 760px);
    border-radius: 18px 18px 160px 18px;
}

.prayer-global__mark {
    position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 2;
    min-width: 230px;
    padding: 24px 28px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 52px 10px 10px 10px;
    background: rgba(37, 9, 9, .91);
    backdrop-filter: blur(12px);
}

.prayer-global__mark span,
.prayer-global__mark strong {
    display: block;
}

.prayer-global__mark span {
    color: rgba(255, 255, 255, .48);
    font-size: .55rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.prayer-global__mark strong {
    margin-top: 7px;
    color: var(--prayer-flame-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.4rem;
    font-weight: 400;
}

.prayer-global__content > p:not(.eyebrow) {
    max-width: 610px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .62);
    line-height: 1.82;
}

.prayer-global__nations {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 42px;
}

.prayer-global__nations a {
    min-width: 0;
    display: grid;
    grid-template-columns: 46px 1fr;
    align-items: center;
    gap: 15px;
    padding: 19px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 28px 8px 8px 8px;
    color: #fff;
    background: rgba(255, 255, 255, .04);
    text-decoration: none;
    transition: border-color .3s ease, background .3s ease, transform .3s ease;
}

.prayer-global__nations a:hover,
.prayer-global__nations a:focus-visible {
    border-color: rgba(244, 160, 78, .48);
    background: rgba(255, 255, 255, .08);
    transform: translateY(-3px);
}

.prayer-global__nations a > span {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(244, 160, 78, .36);
    border-radius: 50%;
    color: var(--prayer-flame-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.prayer-global__nations strong,
.prayer-global__nations small {
    display: block;
}

.prayer-global__nations strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.08rem;
    font-weight: 400;
}

.prayer-global__nations small {
    margin-top: 4px;
    color: rgba(255, 255, 255, .43);
    font-size: .54rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.prayer-pathways {
    background:
        radial-gradient(circle at 0 100%, rgba(225, 102, 36, .13), transparent 26rem),
        var(--prayer-sand);
}

.prayer-pathways__head {
    max-width: 920px;
}

.prayer-pathways__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: clamp(58px, 8vw, 90px);
}

.prayer-pathways__grid a {
    position: relative;
    min-height: 390px;
    padding: 34px;
    overflow: hidden;
    border: 1px solid var(--prayer-line);
    border-radius: 12px 58px 12px 12px;
    color: var(--prayer-ember-950);
    background: rgba(255, 255, 255, .62);
    text-decoration: none;
    transition: border-color .3s ease, background .3s ease, color .3s ease,
        transform .3s ease;
}

.prayer-pathways__grid a:hover,
.prayer-pathways__grid a:focus-visible {
    border-color: var(--prayer-ember-700);
    color: #fff;
    background: var(--prayer-ember-950);
    transform: translateY(-5px);
}

.prayer-pathways__grid a > span {
    color: var(--prayer-flame-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.prayer-pathways__grid h3 {
    margin: 92px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3.3vw, 3.1rem);
    font-weight: 400;
    letter-spacing: -.05em;
}

.prayer-pathways__grid p {
    margin: 24px 0 0;
    color: var(--muted);
    line-height: 1.72;
    transition: color .3s ease;
}

.prayer-pathways__grid a:hover p,
.prayer-pathways__grid a:focus-visible p {
    color: rgba(255, 255, 255, .64);
}

.prayer-pathways__grid i {
    position: absolute;
    right: 30px;
    bottom: 26px;
    color: var(--prayer-flame-600);
    font-style: normal;
    font-size: 1.25rem;
}

.prayer-testimonies {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 88% 18%, rgba(225, 102, 36, .22), transparent 28rem),
        var(--prayer-ember-950);
}

.prayer-testimonies__track,
.prayer-gallery__track {
    display: grid;
    grid-auto-flow: column;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
}

.prayer-testimonies__track::-webkit-scrollbar,
.prayer-gallery__track::-webkit-scrollbar {
    display: none;
}

.prayer-testimonies__track {
    width: min(calc(100% - 64px), var(--container));
    grid-auto-columns: minmax(440px, 49%);
    gap: 20px;
    margin: clamp(58px, 8vw, 90px) auto 0;
}

.prayer-testimonies blockquote {
    min-height: 420px;
    margin: 0;
    padding: clamp(38px, 5vw, 62px);
    scroll-snap-align: start;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 72px 14px 14px 14px;
    background: rgba(255, 255, 255, .055);
}

.prayer-testimonies blockquote > span {
    color: var(--prayer-flame-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.prayer-testimonies blockquote p {
    max-width: 590px;
    margin: 78px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.85rem, 3.5vw, 3.3rem);
    letter-spacing: -.04em;
    line-height: 1.14;
}

.prayer-testimonies blockquote cite {
    display: block;
    margin-top: 42px;
    color: rgba(255, 255, 255, .45);
    font-size: .55rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.prayer-testimonies__footer p,
.prayer-testimonies__footer span {
    color: rgba(255, 255, 255, .48);
}

.prayer-gallery {
    background:
        radial-gradient(circle at 100% 0, rgba(225, 102, 36, .12), transparent 28rem),
        var(--prayer-cream);
}

.prayer-gallery__track {
    width: min(calc(100% - 64px), var(--container));
    grid-auto-columns: minmax(330px, 31.5%);
    gap: 18px;
    margin: clamp(58px, 8vw, 90px) auto 0;
}

.prayer-gallery-card {
    position: relative;
    min-height: 620px;
    overflow: hidden;
    scroll-snap-align: start;
    border-radius: 14px 70px 14px 14px;
    background: var(--prayer-ember-950);
}

.prayer-gallery-card__image.site-image,
.prayer-gallery-card__image picture,
.prayer-gallery-card__image img {
    width: 100%;
    height: 100%;
}

.prayer-gallery-card__image img {
    object-fit: cover;
    transition: transform .65s cubic-bezier(.2, .7, .2, 1);
}

.prayer-gallery-card:hover .prayer-gallery-card__image img {
    transform: scale(1.045);
}

.prayer-gallery-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 44%, rgba(22, 6, 7, .96));
}

.prayer-gallery-card > div:last-child {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: 34px;
    color: #fff;
}

.prayer-gallery-card span {
    color: var(--prayer-flame-300);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .72rem;
}

.prayer-gallery-card h3 {
    margin: 12px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.5vw, 2.2rem);
    font-weight: 400;
    line-height: 1.06;
}

.prayer-faq {
    background:
        linear-gradient(90deg, rgba(128, 39, 20, .035) 1px, transparent 1px),
        radial-gradient(circle at 0 100%, rgba(225, 102, 36, .12), transparent 25rem),
        var(--prayer-sand);
    background-size: 140px 100%, auto, auto;
}

.prayer-faq__grid {
    align-items: start;
}

.prayer-faq__intro {
    position: sticky;
    top: 130px;
}

.is-administrator-preview .prayer-faq__intro {
    top: 164px;
}

.prayer-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    margin: 30px 0 0;
    color: var(--muted);
    line-height: 1.8;
}

.prayer-faq__intro .button {
    margin-top: 34px;
}

.prayer-faq__list details {
    border-bottom: 1px solid var(--prayer-line);
}

.prayer-faq__list summary {
    min-height: 118px;
    display: grid;
    grid-template-columns: 38px 1fr 36px;
    align-items: center;
    gap: 20px;
    padding: 22px 0;
    cursor: pointer;
    list-style: none;
}

.prayer-faq__list summary::-webkit-details-marker {
    display: none;
}

.prayer-faq__list summary > span {
    color: var(--prayer-flame-600);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.prayer-faq__list summary strong {
    color: var(--prayer-ember-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2vw, 1.8rem);
    font-weight: 400;
    letter-spacing: -.025em;
}

.prayer-faq__list summary i {
    position: relative;
    width: 34px;
    height: 34px;
    border: 1px solid var(--prayer-line);
    border-radius: 50%;
}

.prayer-faq__list summary i::before,
.prayer-faq__list summary i::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 1px;
    background: currentColor;
    transform: translate(-50%, -50%);
}

.prayer-faq__list summary i::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: transform .25s ease;
}

.prayer-faq__list details[open] summary i::after {
    transform: translate(-50%, -50%) rotate(0deg);
}

.prayer-faq__list details > p {
    margin: -6px 52px 0 58px;
    padding: 0 0 34px;
    color: var(--muted);
    line-height: 1.8;
}

.prayer-cta {
    position: relative;
    min-height: 860px;
    display: grid;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--prayer-night);
}

.prayer-cta__media.site-image,
.prayer-cta__veil {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.prayer-cta__media picture,
.prayer-cta__media img {
    width: 100%;
    height: 100%;
}

.prayer-cta__media img {
    object-fit: cover;
}

.prayer-cta__veil {
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(18, 5, 7, .98) 0%, rgba(30, 7, 7, .86) 50%, rgba(37, 9, 7, .26) 80%, rgba(18, 5, 7, .58)),
        linear-gradient(180deg, transparent 42%, rgba(18, 5, 7, .86));
}

.prayer-cta__inner {
    position: relative;
    z-index: 2;
    padding-top: 110px;
    padding-bottom: 110px;
}

.prayer-cta h2 {
    max-width: 1160px;
    margin: 16px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.3rem, 7vw, 7rem);
    font-weight: 400;
    letter-spacing: -.06em;
    line-height: .92;
}

.prayer-cta h2 em {
    display: block;
    color: var(--prayer-flame-300);
    font-weight: 400;
}

.prayer-cta__inner > p:not(.eyebrow) {
    max-width: 720px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, .7);
    line-height: 1.82;
}

.prayer-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 22px;
    margin-top: 42px;
}

@media (max-width: 1160px) {
    .prayer-welcome__grid,
    .prayer-vision__grid,
    .prayer-global__grid,
    .prayer-faq__grid {
        gap: 60px;
    }

    .prayer-welcome__mark,
    .prayer-vision__visual blockquote {
        right: -24px;
    }

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

    .prayer-gallery__track {
        grid-auto-columns: minmax(340px, 42vw);
    }
}

@media (max-width: 960px) {
    .prayer-welcome__grid,
    .prayer-vision__grid,
    .prayer-global__grid,
    .prayer-faq__grid {
        grid-template-columns: 1fr;
        gap: 66px;
    }

    .prayer-welcome__content,
    .prayer-vision__content,
    .prayer-global__content {
        max-width: 760px;
    }

    .prayer-welcome__visual,
    .prayer-vision__visual,
    .prayer-global__visual {
        width: min(100%, 760px);
    }

    .prayer-welcome__visual {
        margin-left: auto;
    }

    .prayer-vision__visual,
    .prayer-global__visual {
        order: 2;
    }

    .prayer-mandate__head,
    .prayer-gatherings__head,
    .prayer-gallery__head,
    .prayer-testimonies__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .prayer-mandate__cards,
    .prayer-experience__grid {
        grid-template-columns: 1fr;
    }

    .prayer-mandate__cards article {
        min-height: 330px;
    }

    .prayer-mandate__cards h3 {
        margin-top: 56px;
    }

    .prayer-experience__grid article {
        min-height: 240px;
    }

    .prayer-experience__grid h3 {
        margin-top: 44px;
    }

    .prayer-gatherings__layout {
        grid-template-columns: 1fr;
    }

    .prayer-gatherings__weekly {
        grid-row: auto;
    }

    .prayer-faq__intro {
        position: static;
        max-width: 680px;
    }

    .prayer-testimonies__track {
        grid-auto-columns: minmax(390px, 72vw);
    }
}

@media (max-width: 720px) {
    .page-prayer-fire .ministry-detail-hero__media::after {
        background:
            linear-gradient(180deg, rgba(20, 5, 7, .12), rgba(20, 5, 7, .98) 88%),
            linear-gradient(90deg, rgba(20, 5, 7, .76), transparent 88%);
    }

    .prayer-welcome__image,
    .prayer-vision__image,
    .prayer-global__image {
        height: min(126vw, 650px);
    }

    .prayer-welcome__image {
        border-radius: 108px 18px 18px 18px;
    }

    .prayer-vision__image,
    .prayer-global__image {
        border-radius: 18px 18px 108px 18px;
    }

    .prayer-welcome__mark,
    .prayer-vision__visual blockquote,
    .prayer-global__mark {
        right: 16px;
        bottom: 16px;
        left: 16px;
        max-width: none;
    }

    .prayer-gatherings__weekly article {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 12px 16px;
        padding: 28px 0;
    }

    .prayer-gatherings__weekly small,
    .prayer-gatherings__weekly p {
        grid-column: 2;
    }

    .prayer-gatherings__weekly h3 {
        grid-column: 2;
    }

    .prayer-global__nations,
    .prayer-pathways__grid {
        grid-template-columns: 1fr;
    }

    .prayer-pathways__grid a {
        min-height: 330px;
    }

    .prayer-testimonies__track,
    .prayer-gallery__track {
        width: calc(100% - 32px);
    }

    .prayer-testimonies__track {
        grid-auto-columns: minmax(290px, 86vw);
    }

    .prayer-testimonies blockquote {
        min-height: 360px;
    }

    .prayer-testimonies blockquote p {
        margin-top: 56px;
    }

    .prayer-gallery__track {
        grid-auto-columns: minmax(285px, 84vw);
    }

    .prayer-gallery-card {
        min-height: 540px;
    }

    .prayer-faq__list summary {
        grid-template-columns: 30px 1fr 34px;
        gap: 14px;
    }

    .prayer-faq__list details > p {
        margin-right: 44px;
        margin-left: 44px;
    }

    .prayer-cta {
        min-height: 800px;
    }

    .prayer-cta__veil {
        background:
            linear-gradient(180deg, rgba(20, 5, 7, .42), rgba(20, 5, 7, .99) 72%),
            linear-gradient(90deg, rgba(20, 5, 7, .82), transparent);
    }

    .prayer-cta__inner {
        align-self: end;
        padding-top: 110px;
        padding-bottom: 78px;
    }

    .prayer-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .prayer-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .prayer-welcome__grid,
    .prayer-vision__grid,
    .prayer-global__grid,
    .prayer-faq__grid {
        gap: 50px;
    }

    .prayer-mandate__cards article,
    .prayer-experience__grid article,
    .prayer-gatherings__monthly,
    .prayer-gatherings__special,
    .prayer-pathways__grid a {
        padding: 28px;
    }

    .prayer-mandate__cards article {
        min-height: 310px;
    }

    .prayer-experience__grid article {
        min-height: 230px;
    }

    .prayer-global__nations a {
        padding: 17px;
    }

    .prayer-testimonies blockquote {
        min-height: 340px;
        padding: 32px 28px;
    }

    .prayer-gallery-card > div:last-child {
        padding: 28px;
    }

    .prayer-faq__list summary strong {
        font-size: 1.18rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .prayer-mandate__cards article,
    .prayer-experience__grid article,
    .prayer-global__nations a,
    .prayer-pathways__grid a,
    .prayer-gallery-card__image img {
        transition: none;
    }
}

/* Phase 1, Step 18 — HolySpirit Singers */

.page-holyspirit-singers {
    --singers-night: #080b19;
    --singers-navy: #10162d;
    --singers-indigo: #24204d;
    --singers-violet: #5b3f8e;
    --singers-blue: #58b9d6;
    --singers-amber: #e5b96a;
    --singers-ivory: #fffaf0;
    background: var(--singers-ivory);
}

.page-holyspirit-singers .ministry-detail-hero__veil {
    background:
        linear-gradient(90deg, rgba(5, 7, 18, .96) 0%, rgba(8, 11, 25, .82) 39%, rgba(8, 11, 25, .28) 74%, rgba(8, 11, 25, .52) 100%),
        linear-gradient(0deg, rgba(5, 7, 18, .9), transparent 48%);
}

.page-holyspirit-singers .ministry-detail-hero__glow {
    background:
        radial-gradient(circle at 73% 34%, rgba(88, 185, 214, .28), transparent 28%),
        radial-gradient(circle at 82% 64%, rgba(229, 185, 106, .25), transparent 30%);
}

.page-holyspirit-singers .ministry-detail-hero h1 em,
.page-holyspirit-singers .ministry-detail-hero blockquote cite {
    color: var(--singers-amber);
}

.page-holyspirit-singers .ministry-detail-hero__scroll i::after {
    background: linear-gradient(90deg, var(--singers-blue), var(--singers-amber));
}

.page-holyspirit-singers .ministry-detail-nav a::after {
    background: linear-gradient(90deg, var(--singers-blue), var(--singers-violet));
}

#singers-welcome,
#singers-vision,
#singers-culture,
#singers-ministries,
#singers-development,
#singers-global,
#singers-faq {
    scroll-margin-top: 120px;
}

.singers-welcome {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 3% 12%, rgba(88, 185, 214, .11), transparent 25%),
        radial-gradient(circle at 92% 88%, rgba(91, 63, 142, .1), transparent 27%),
        var(--singers-ivory);
}

.singers-welcome::before {
    content: "";
    position: absolute;
    top: 14%;
    left: -11rem;
    width: 20rem;
    height: 20rem;
    border: 1px solid rgba(36, 32, 77, .12);
    border-radius: 50%;
}

.singers-welcome__grid,
.singers-mission__grid,
.singers-lifestyle__grid,
.singers-development__grid,
.singers-music__grid,
.singers-global__grid,
.singers-join__grid,
.singers-faq__grid {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    align-items: center;
    gap: clamp(66px, 9vw, 145px);
}

.singers-welcome__content .rich-copy {
    margin-top: 34px;
}

.singers-welcome__visual,
.singers-mission__visual,
.singers-lifestyle__visual,
.singers-development__visual,
.singers-music__visual,
.singers-global__visual {
    position: relative;
    min-width: 0;
}

.singers-welcome__image,
.singers-mission__image,
.singers-lifestyle__image {
    width: 100%;
    height: clamp(540px, 57vw, 760px);
    overflow: hidden;
    box-shadow: 0 34px 88px rgba(8, 11, 25, .2);
}

.singers-welcome__image {
    border-radius: 240px 30px 30px 30px;
}

.singers-mission__image {
    border-radius: 30px 30px 230px 30px;
}

.singers-lifestyle__image {
    border-radius: 30px 230px 30px 30px;
}

.singers-welcome__image img,
.singers-mission__image img,
.singers-lifestyle__image img,
.singers-development__image img,
.singers-music__image img,
.singers-global__image img,
.singers-journey__image img,
.singers-cta__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.singers-welcome__mark,
.singers-development__mark,
.singers-global__mark {
    position: absolute;
    z-index: 2;
    display: grid;
    align-content: center;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .27);
    color: #fff;
    background: rgba(8, 11, 25, .9);
    box-shadow: 0 20px 55px rgba(8, 11, 25, .28);
    backdrop-filter: blur(12px);
}

.singers-welcome__mark {
    right: -38px;
    bottom: 58px;
    width: 174px;
    aspect-ratio: 1;
    justify-items: center;
    border-radius: 50%;
    text-align: center;
}

.singers-welcome__mark span,
.singers-development__mark span,
.singers-global__mark span {
    color: var(--singers-blue);
    font-size: .57rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.singers-welcome__mark strong,
.singers-development__mark strong,
.singers-global__mark strong {
    margin-top: 8px;
    color: var(--singers-amber);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    font-weight: 400;
}

.singers-vision,
.singers-expressions,
.singers-development,
.singers-global,
.singers-journey,
.singers-stories {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fff;
    background: var(--singers-night);
}

.singers-vision::before,
.singers-expressions::before,
.singers-development::before,
.singers-global::before,
.singers-journey::before,
.singers-stories::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 48rem;
    height: 48rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(91, 63, 142, .34), transparent 67%);
    pointer-events: none;
}

.singers-vision::before,
.singers-development::before,
.singers-journey::before {
    top: -23rem;
    right: -14rem;
}

.singers-expressions::before,
.singers-global::before,
.singers-stories::before {
    bottom: -25rem;
    left: -15rem;
}

.singers-vision::after,
.singers-development::after,
.singers-global::after,
.singers-journey::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .15;
    background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px);
    background-size: 100% 84px;
    mask-image: linear-gradient(90deg, transparent, #000 22%, #000 78%, transparent);
}

.singers-vision__head,
.singers-expressions__head,
.singers-journey__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: clamp(42px, 8vw, 120px);
}

.singers-vision__head > p,
.singers-journey__head > p {
    width: min(100%, 390px);
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .62);
    line-height: 1.85;
}

.singers-vision__cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: clamp(58px, 8vw, 96px);
}

.singers-vision__cards article {
    min-height: 400px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 46px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .025));
    transition: border-color .3s ease, transform .3s ease, background .3s ease;
}

.singers-vision__cards article:hover {
    border-color: rgba(88, 185, 214, .52);
    background: linear-gradient(145deg, rgba(88, 185, 214, .12), rgba(91, 63, 142, .08));
    transform: translateY(-7px);
}

.singers-vision__cards article > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.singers-vision__cards span,
.singers-vision__cards small {
    color: var(--singers-blue);
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.singers-vision__cards h3 {
    margin: auto 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 400;
    letter-spacing: -.04em;
}

.singers-vision__cards p {
    margin: 22px 0 0;
    color: rgba(255, 255, 255, .64);
    font-size: .84rem;
    line-height: 1.75;
}

.singers-mission {
    background: #fff;
}

.singers-mission__grid,
.singers-lifestyle__grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
}

.singers-mission__visual blockquote {
    position: absolute;
    right: -38px;
    bottom: 45px;
    left: 38px;
    margin: 0;
    padding: 27px 30px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 20px;
    color: #fff;
    background: rgba(8, 11, 25, .88);
    box-shadow: 0 22px 55px rgba(8, 11, 25, .24);
    backdrop-filter: blur(12px);
}

.singers-mission__visual blockquote p {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.2rem, 2.2vw, 1.8rem);
    line-height: 1.35;
}

.singers-mission__visual blockquote cite {
    display: block;
    margin-top: 14px;
    color: var(--singers-amber);
    font-size: .59rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.singers-mission__content > p,
.singers-lifestyle__content > p,
.singers-music__content > p,
.singers-global__content > p,
.singers-join__intro > p,
.singers-faq__intro > p {
    margin: 26px 0 0;
    color: var(--muted);
    line-height: 1.85;
}

.singers-culture,
.singers-events,
.singers-faq {
    background: var(--singers-ivory);
}

.singers-culture {
    overflow: hidden;
}

.singers-culture__head,
.singers-events__head {
    width: min(100%, 760px);
}

.singers-culture__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-top: clamp(58px, 8vw, 92px);
    overflow: hidden;
    border: 1px solid rgba(16, 22, 45, .11);
    border-radius: 28px;
    background: rgba(16, 22, 45, .11);
    box-shadow: 0 28px 75px rgba(8, 11, 25, .08);
}

.singers-culture__grid article {
    min-height: 310px;
    padding: clamp(30px, 4vw, 44px);
    background: rgba(255, 255, 255, .93);
    transition: background .3s ease, transform .3s ease;
}

.singers-culture__grid article:hover {
    background: #fff;
    transform: translateY(-4px);
}

.singers-culture__grid span {
    color: var(--singers-violet);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .68rem;
}

.singers-culture__grid h3 {
    margin: 58px 0 0;
    color: var(--singers-night);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2.5vw, 2.25rem);
    font-weight: 400;
    letter-spacing: -.035em;
}

.singers-culture__grid p {
    margin: 18px 0 0;
    color: var(--muted);
    font-size: .84rem;
    line-height: 1.75;
}

.singers-expressions {
    background: linear-gradient(145deg, #080b19, #15152f 68%, #211a42);
}

.singers-expressions__track {
    width: min(calc(100% - 64px), var(--container));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(330px, 33vw);
    gap: 18px;
    margin: clamp(58px, 8vw, 90px) auto 0;
    padding-bottom: 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-color: rgba(88, 185, 214, .45) rgba(255, 255, 255, .07);
    scrollbar-width: thin;
}

.singers-expression-card {
    position: relative;
    min-height: 590px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 28px;
    background: #11162b;
    scroll-snap-align: start;
}

.singers-expression-card__image {
    position: absolute;
    inset: 0;
}

.singers-expression-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .65s ease;
}

.singers-expression-card:hover .singers-expression-card__image img {
    transform: scale(1.045);
}

.singers-expression-card__veil {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(0deg, rgba(5, 7, 18, .98) 3%, rgba(5, 7, 18, .82) 34%, rgba(5, 7, 18, .12) 72%),
        linear-gradient(135deg, rgba(91, 63, 142, .22), transparent 58%);
}

.singers-expression-card__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: clamp(30px, 4vw, 42px);
}

.singers-expression-card__content span {
    color: var(--singers-blue);
    font-size: .64rem;
    font-weight: 850;
    letter-spacing: .11em;
}

.singers-expression-card__content h3 {
    margin: 16px 0 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.9rem, 2.7vw, 2.65rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.08;
}

.singers-expression-card:nth-child(3) .singers-expression-card__content h3 {
    font-size: clamp(1.75rem, 2vw, 2.1rem);
}

.singers-expression-card__content p {
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .68);
    font-size: .84rem;
    line-height: 1.72;
}

.singers-expressions__footer {
    color: rgba(255, 255, 255, .6);
}

.singers-expressions__footer span {
    color: var(--singers-blue);
}

.singers-lifestyle {
    background:
        radial-gradient(circle at 12% 78%, rgba(88, 185, 214, .1), transparent 25%),
        #fff;
}

.singers-lifestyle__content blockquote {
    margin: 42px 0 0;
    padding: 28px 0 28px 30px;
    border-left: 3px solid var(--singers-blue);
    color: var(--singers-indigo);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.35rem, 2.5vw, 2rem);
    line-height: 1.45;
}

.singers-development {
    background: linear-gradient(135deg, #080b19, #111a32 58%, #241c48);
}

.singers-development__grid {
    grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr);
}

.singers-development__image {
    width: 100%;
    height: clamp(620px, 62vw, 800px);
    overflow: hidden;
    border-radius: 28px;
    box-shadow: 0 36px 95px rgba(0, 0, 0, .35);
}

.singers-development__mark,
.singers-global__mark {
    right: 24px;
    bottom: 24px;
    min-width: 210px;
    border-radius: 18px;
}

.singers-development__content > p {
    margin: 28px 0 0;
    color: rgba(255, 255, 255, .62);
    line-height: 1.8;
}

.singers-development__content ol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 24px;
    margin: 36px 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgba(255, 255, 255, .13);
}

.singers-development__content li {
    min-width: 0;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 14px;
    padding: 18px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .13);
}

.singers-development__content li span {
    color: var(--singers-blue);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .65rem;
}

.singers-development__content li strong {
    color: rgba(255, 255, 255, .85);
    font-size: .78rem;
    font-weight: 700;
    line-height: 1.55;
}

.singers-music {
    overflow: hidden;
    background:
        radial-gradient(circle at 87% 13%, rgba(229, 185, 106, .15), transparent 27%),
        var(--singers-ivory);
}

.singers-music__grid {
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
}

.singers-music__content ul {
    display: grid;
    gap: 12px;
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
}

.singers-music__content li {
    position: relative;
    padding: 13px 18px 13px 44px;
    border: 1px solid rgba(36, 32, 77, .12);
    border-radius: 12px;
    color: var(--singers-indigo);
    background: rgba(255, 255, 255, .72);
    font-size: .82rem;
    font-weight: 750;
}

.singers-music__content li::before,
.singers-join__qualities li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 18px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--singers-blue), var(--singers-violet));
    transform: translateY(-50%);
}

.singers-music__content .text-link {
    margin-top: 32px;
}

.singers-music__image {
    width: 100%;
    height: clamp(560px, 58vw, 740px);
    overflow: hidden;
    border-radius: 50% 50% 28px 28px;
    box-shadow: 0 34px 90px rgba(8, 11, 25, .19);
}

.singers-music__disc {
    position: absolute;
    right: -26px;
    bottom: 46px;
    width: 180px;
    aspect-ratio: 1;
    display: grid;
    align-content: center;
    justify-items: center;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 50%;
    color: #fff;
    background:
        repeating-radial-gradient(circle, rgba(255, 255, 255, .04) 0 2px, transparent 3px 9px),
        rgba(8, 11, 25, .92);
    box-shadow: 0 24px 60px rgba(8, 11, 25, .28);
    text-align: center;
}

.singers-music__disc span {
    color: var(--singers-blue);
    font-size: .56rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.singers-music__disc strong {
    margin-top: 5px;
    color: var(--singers-amber);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.22rem;
    font-weight: 400;
}

.singers-global {
    background: linear-gradient(145deg, #080b19, #161431 70%, #201841);
}

.singers-global__grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
}

.singers-global__image {
    width: 100%;
    height: clamp(590px, 60vw, 770px);
    overflow: hidden;
    border-radius: 28px 220px 28px 28px;
    box-shadow: 0 36px 95px rgba(0, 0, 0, .34);
}

.singers-global__content > p {
    color: rgba(255, 255, 255, .63);
}

.singers-global__nations {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 34px;
}

.singers-global__nations a {
    min-width: 0;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding: 19px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 15px;
    text-decoration: none;
    background: rgba(255, 255, 255, .045);
    transition: border-color .25s ease, transform .25s ease, background .25s ease;
}

.singers-global__nations a:hover,
.singers-global__nations a:focus-visible {
    border-color: rgba(88, 185, 214, .5);
    background: rgba(88, 185, 214, .08);
    transform: translateY(-3px);
}

.singers-global__nations a > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--singers-night);
    background: var(--singers-blue);
    font-size: .63rem;
    font-weight: 900;
}

.singers-global__nations strong,
.singers-global__nations small {
    display: block;
}

.singers-global__nations strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.05rem;
    font-weight: 400;
}

.singers-global__nations small {
    margin-top: 4px;
    color: rgba(255, 255, 255, .5);
    font-size: .57rem;
    font-weight: 750;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.singers-join {
    background: #fff;
}

.singers-join__grid {
    align-items: stretch;
}

.singers-join__intro,
.singers-join__qualities {
    padding: clamp(42px, 6vw, 72px);
    border-radius: 28px;
}

.singers-join__intro {
    border: 1px solid rgba(36, 32, 77, .11);
    background: var(--singers-ivory);
}

.singers-join__intro .button {
    margin-top: 34px;
}

.singers-join__qualities {
    color: #fff;
    background:
        radial-gradient(circle at 92% 8%, rgba(88, 185, 214, .22), transparent 31%),
        var(--singers-indigo);
    box-shadow: 0 30px 80px rgba(8, 11, 25, .17);
}

.singers-join__qualities > p {
    margin: 0;
    color: var(--singers-amber);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.6rem, 3vw, 2.5rem);
}

.singers-join__qualities ul {
    display: grid;
    gap: 0;
    margin: 35px 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgba(255, 255, 255, .13);
}

.singers-join__qualities li {
    position: relative;
    padding: 20px 0 20px 32px;
    border-bottom: 1px solid rgba(255, 255, 255, .13);
    color: rgba(255, 255, 255, .8);
    font-size: .85rem;
    font-weight: 700;
    line-height: 1.55;
}

.singers-join__qualities li::before {
    left: 2px;
    background: var(--singers-blue);
}

.singers-journey {
    background: linear-gradient(135deg, #080b19, #11162d 55%, #251d49);
}

.singers-journey__stage {
    position: relative;
    min-height: 690px;
    margin-top: clamp(58px, 8vw, 92px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 30px;
    background: #10162d;
    box-shadow: 0 34px 95px rgba(0, 0, 0, .32);
}

.singers-journey__image {
    position: absolute;
    inset: 0;
}

.singers-journey__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(8, 11, 25, .98), rgba(8, 11, 25, .7) 58%, rgba(8, 11, 25, .32)),
        linear-gradient(0deg, rgba(8, 11, 25, .78), transparent 56%);
}

.singers-journey__stage ol {
    position: relative;
    z-index: 2;
    width: min(100%, 760px);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin: 0;
    padding: clamp(38px, 7vw, 80px);
    list-style: none;
}

.singers-journey__stage li {
    min-height: 112px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 16px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 15px;
    background: rgba(8, 11, 25, .62);
    backdrop-filter: blur(8px);
}

.singers-journey__stage li:last-child {
    grid-column: 1 / -1;
}

.singers-journey__stage li span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--singers-night);
    background: var(--singers-blue);
    font-size: .62rem;
    font-weight: 900;
}

.singers-journey__stage li strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1rem, 1.8vw, 1.3rem);
    font-weight: 400;
    line-height: 1.35;
}

.singers-events {
    overflow: hidden;
}

.singers-events__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: clamp(58px, 8vw, 92px);
}

.singers-events__grid article {
    position: relative;
    min-height: 250px;
    display: flex;
    flex-direction: column;
    padding: clamp(30px, 4vw, 42px);
    overflow: hidden;
    border: 1px solid rgba(36, 32, 77, .12);
    border-radius: 24px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 22px 58px rgba(8, 11, 25, .06);
    transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.singers-events__grid article::after {
    content: "";
    position: absolute;
    right: -55px;
    bottom: -70px;
    width: 155px;
    height: 155px;
    border: 1px solid rgba(88, 185, 214, .22);
    border-radius: 50%;
}

.singers-events__grid article:hover {
    border-color: rgba(91, 63, 142, .32);
    box-shadow: 0 28px 70px rgba(8, 11, 25, .1);
    transform: translateY(-5px);
}

.singers-events__grid span,
.singers-events__grid small {
    position: relative;
    z-index: 1;
    color: var(--singers-violet);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.singers-events__grid small {
    margin-top: 8px;
    color: var(--singers-blue);
}

.singers-events__grid h3 {
    position: relative;
    z-index: 1;
    margin: auto 0 0;
    color: var(--singers-night);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.7vw, 2.45rem);
    font-weight: 400;
    letter-spacing: -.04em;
}

.singers-stories {
    background: linear-gradient(145deg, #080b19, #15142f 72%, #211944);
}

.singers-stories__head {
    width: min(100%, 780px);
}

.singers-stories__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: clamp(58px, 8vw, 90px);
}

.singers-stories__grid blockquote {
    min-height: 390px;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: clamp(34px, 5vw, 58px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 26px;
    background: rgba(255, 255, 255, .045);
}

.singers-stories__grid blockquote > span {
    color: var(--singers-blue);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .7rem;
}

.singers-stories__grid blockquote p {
    margin: auto 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 3vw, 2.65rem);
    letter-spacing: -.035em;
    line-height: 1.35;
}

.singers-stories__grid blockquote cite {
    color: var(--singers-amber);
    font-size: .61rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.singers-faq__grid {
    align-items: start;
    grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr);
}

.singers-faq__intro {
    position: sticky;
    top: 132px;
}

.is-administrator-preview .singers-faq__intro {
    top: 175px;
}

.singers-faq__intro .button {
    margin-top: 34px;
}

.singers-faq__list {
    border-top: 1px solid rgba(36, 32, 77, .15);
}

.singers-faq__list details {
    border-bottom: 1px solid rgba(36, 32, 77, .15);
}

.singers-faq__list summary {
    min-height: 105px;
    display: grid;
    grid-template-columns: 45px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 20px;
    padding: 22px 0;
    cursor: pointer;
    list-style: none;
}

.singers-faq__list summary::-webkit-details-marker {
    display: none;
}

.singers-faq__list summary > span {
    color: var(--singers-violet);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .68rem;
}

.singers-faq__list summary strong {
    color: var(--singers-night);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.2rem, 2.3vw, 1.65rem);
    font-weight: 400;
}

.singers-faq__list summary i {
    position: relative;
    width: 22px;
    height: 22px;
}

.singers-faq__list summary i::before,
.singers-faq__list summary i::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 2px;
    width: 18px;
    height: 2px;
    background: var(--singers-violet);
    transition: transform .25s ease;
}

.singers-faq__list summary i::after {
    transform: rotate(90deg);
}

.singers-faq__list details[open] summary i::after {
    transform: rotate(0deg);
}

.singers-faq__list details > p {
    max-width: 720px;
    margin: -5px 44px 30px 65px;
    color: var(--muted);
    line-height: 1.8;
}

.singers-cta {
    position: relative;
    min-height: min(850px, 92vh);
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--singers-night);
}

.singers-cta__media,
.singers-cta__veil {
    position: absolute;
    inset: 0;
}

.singers-cta__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(5, 7, 18, .96) 0%, rgba(5, 7, 18, .8) 48%, rgba(5, 7, 18, .28) 100%);
}

.singers-cta__veil {
    z-index: 1;
    background:
        radial-gradient(circle at 74% 44%, rgba(88, 185, 214, .2), transparent 28%),
        linear-gradient(0deg, rgba(5, 7, 18, .8), transparent 60%);
}

.singers-cta__inner {
    position: relative;
    z-index: 2;
    width: min(calc(100% - 64px), var(--container));
    margin-inline: auto;
    padding-block: 110px;
}

.singers-cta__inner h2 {
    max-width: 940px;
    margin: 18px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3rem, 6.8vw, 7rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .98;
}

.singers-cta__inner h2 em {
    display: block;
    color: var(--singers-amber);
    font-weight: 400;
}

.singers-cta__inner > p:not(.eyebrow) {
    max-width: 710px;
    margin: 26px 0 0;
    color: rgba(255, 255, 255, .72);
    line-height: 1.8;
}

.singers-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 20px;
    margin-top: 42px;
}

@media (max-width: 1160px) {
    .singers-welcome__grid,
    .singers-mission__grid,
    .singers-lifestyle__grid,
    .singers-development__grid,
    .singers-music__grid,
    .singers-global__grid {
        gap: 72px;
    }

    .singers-welcome__mark {
        right: -18px;
    }

    .singers-mission__visual blockquote {
        right: -18px;
    }

    .singers-expression-card {
        min-height: 550px;
    }
}

@media (max-width: 960px) {
    .singers-welcome__grid,
    .singers-mission__grid,
    .singers-lifestyle__grid,
    .singers-development__grid,
    .singers-music__grid,
    .singers-global__grid,
    .singers-join__grid,
    .singers-faq__grid {
        grid-template-columns: 1fr;
    }

    .singers-welcome__content,
    .singers-mission__content,
    .singers-lifestyle__content,
    .singers-development__content,
    .singers-music__content,
    .singers-global__content,
    .singers-join__intro,
    .singers-faq__intro {
        max-width: 760px;
    }

    .singers-welcome__visual,
    .singers-mission__visual,
    .singers-lifestyle__visual,
    .singers-development__visual,
    .singers-music__visual,
    .singers-global__visual {
        width: min(100%, 760px);
    }

    .singers-mission__content,
    .singers-music__content,
    .singers-global__content {
        order: -1;
    }

    .singers-vision__cards,
    .singers-culture__grid,
    .singers-events__grid {
        grid-template-columns: 1fr 1fr;
    }

    .singers-development__content ol {
        max-width: 760px;
    }

    .singers-faq__intro {
        position: static;
    }

    .singers-journey__stage {
        min-height: 720px;
    }
}

@media (max-width: 720px) {
    .page-holyspirit-singers .ministry-detail-hero__veil {
        background:
            linear-gradient(0deg, rgba(5, 7, 18, .98) 0%, rgba(5, 7, 18, .74) 51%, rgba(5, 7, 18, .3) 100%),
            linear-gradient(90deg, rgba(5, 7, 18, .58), transparent);
    }

    #singers-welcome,
    #singers-vision,
    #singers-culture,
    #singers-ministries,
    #singers-development,
    #singers-global,
    #singers-faq {
        scroll-margin-top: 105px;
    }

    .singers-welcome__grid,
    .singers-mission__grid,
    .singers-lifestyle__grid,
    .singers-development__grid,
    .singers-music__grid,
    .singers-global__grid,
    .singers-join__grid,
    .singers-faq__grid {
        gap: 58px;
    }

    .singers-welcome__image,
    .singers-mission__image,
    .singers-lifestyle__image,
    .singers-development__image,
    .singers-music__image,
    .singers-global__image {
        height: min(133vw, 650px);
        border-radius: 24px;
    }

    .singers-welcome__mark,
    .singers-music__disc {
        right: 18px;
        bottom: 18px;
        width: 142px;
    }

    .singers-welcome__mark {
        padding: 18px;
    }

    .singers-welcome__mark strong,
    .singers-music__disc strong {
        font-size: 1rem;
    }

    .singers-vision__head,
    .singers-expressions__head,
    .singers-journey__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .singers-vision__cards,
    .singers-culture__grid,
    .singers-events__grid,
    .singers-stories__grid {
        grid-template-columns: 1fr;
    }

    .singers-vision__cards article {
        min-height: 330px;
    }

    .singers-culture__grid article {
        min-height: 270px;
    }

    .singers-mission__visual blockquote {
        right: 18px;
        bottom: 18px;
        left: 18px;
        padding: 22px;
    }

    .singers-expressions__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(282px, 86vw);
        margin-top: 46px;
    }

    .singers-expression-card {
        min-height: 520px;
    }

    .singers-development__mark,
    .singers-global__mark {
        right: 18px;
        bottom: 18px;
        min-width: 175px;
        padding: 19px;
    }

    .singers-development__content ol,
    .singers-global__nations {
        grid-template-columns: 1fr;
    }

    .singers-join__intro,
    .singers-join__qualities {
        padding: 34px 28px;
        border-radius: 22px;
    }

    .singers-journey__stage {
        min-height: auto;
    }

    .singers-journey__image {
        position: absolute;
    }

    .singers-journey__image::after {
        background: rgba(8, 11, 25, .84);
    }

    .singers-journey__stage ol {
        width: 100%;
        grid-template-columns: 1fr;
        padding: 28px;
    }

    .singers-journey__stage li:last-child {
        grid-column: auto;
    }

    .singers-stories__grid blockquote {
        min-height: 340px;
    }

    .singers-faq__list summary {
        grid-template-columns: 36px minmax(0, 1fr) 22px;
        gap: 12px;
    }

    .singers-faq__list details > p {
        margin-right: 0;
        margin-left: 48px;
    }

    .singers-cta {
        min-height: 820px;
        align-items: flex-end;
    }

    .singers-cta__media::after {
        background: linear-gradient(0deg, rgba(5, 7, 18, .98) 2%, rgba(5, 7, 18, .82) 56%, rgba(5, 7, 18, .26) 100%);
    }

    .singers-cta__inner {
        width: calc(100% - 32px);
        padding-block: 90px 70px;
    }

    .singers-cta__inner h2 {
        font-size: clamp(2.8rem, 14vw, 4.7rem);
    }

    .singers-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .singers-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .singers-vision__cards article,
    .singers-culture__grid article,
    .singers-events__grid article {
        padding: 28px;
    }

    .singers-expression-card__content {
        padding: 30px 27px;
    }

    .singers-expression-card__content h3 {
        font-size: 2rem;
    }

    .singers-development__content li {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 10px;
    }

    .singers-global__nations a {
        padding: 17px;
    }

    .singers-journey__stage ol {
        padding: 20px;
    }

    .singers-journey__stage li {
        min-height: 98px;
        padding: 17px;
    }

    .singers-stories__grid blockquote {
        padding: 32px 28px;
    }

    .singers-faq__list summary strong {
        font-size: 1.17rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .singers-vision__cards article,
    .singers-culture__grid article,
    .singers-expression-card__image img,
    .singers-global__nations a,
    .singers-events__grid article {
        transition: none;
    }
}

/* Phase 1, Step 19 — School of Spiritual Discipleship */

.page-school-discipleship {
    --discipleship-night: #071d24;
    --discipleship-deep: #0b2e34;
    --discipleship-forest: #164a44;
    --discipleship-green: #2a7464;
    --discipleship-brass: #c49a4a;
    --discipleship-gold: #e1c07a;
    --discipleship-parchment: #f5efdf;
    --discipleship-paper: #fffdf7;
    --discipleship-ink: #102f34;
    background: var(--discipleship-paper);
}

.page-school-discipleship .ministry-detail-hero__veil {
    background:
        linear-gradient(90deg, rgba(4, 20, 26, .96) 0%, rgba(4, 20, 26, .76) 46%, rgba(4, 20, 26, .25) 78%, rgba(4, 20, 26, .14) 100%),
        linear-gradient(0deg, rgba(4, 20, 26, .7), transparent 55%);
}

.page-school-discipleship .ministry-detail-hero__glow {
    background:
        radial-gradient(circle at 75% 42%, rgba(66, 155, 127, .28), transparent 34%),
        radial-gradient(circle at 40% 92%, rgba(225, 192, 122, .16), transparent 40%);
}

.page-school-discipleship .ministry-detail-hero h1 {
    max-width: 980px;
    font-size: clamp(4.2rem, 7.2vw, 7.9rem);
    line-height: .84;
}

.page-school-discipleship .ministry-detail-hero h1 em,
.page-school-discipleship .ministry-detail-hero blockquote cite {
    color: var(--discipleship-gold);
}

.page-school-discipleship .ministry-detail-hero__scroll i::after,
.page-school-discipleship .ministry-detail-nav a::after {
    background: var(--discipleship-brass);
}

#discipleship-welcome,
#discipleship-vision,
#discipleship-pathway,
#discipleship-distinctives,
#discipleship-global,
#discipleship-team,
#discipleship-faq {
    scroll-margin-top: 150px;
}

.discipleship-welcome,
.discipleship-mission,
.discipleship-distinctives,
.discipleship-audience,
.discipleship-graduation,
.discipleship-foundation,
.discipleship-faq {
    position: relative;
    overflow: clip;
    background: var(--discipleship-paper);
}

.discipleship-welcome {
    padding-block: clamp(94px, 10vw, 160px);
}

.discipleship-welcome::before {
    position: absolute;
    top: -180px;
    left: -220px;
    width: 640px;
    height: 640px;
    border: 1px solid rgba(42, 116, 100, .13);
    border-radius: 50%;
    content: "";
    box-shadow:
        0 0 0 70px rgba(42, 116, 100, .025),
        0 0 0 140px rgba(42, 116, 100, .018);
    pointer-events: none;
}

.discipleship-welcome__grid,
.discipleship-mission__grid,
.discipleship-philosophy__grid,
.discipleship-learning__grid,
.discipleship-global__grid,
.discipleship-graduation__grid,
.discipleship-team__grid,
.discipleship-faq__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(360px, .78fr);
    align-items: center;
    gap: clamp(60px, 8vw, 132px);
}

.discipleship-welcome__content .rich-copy {
    max-width: 720px;
}

.discipleship-welcome__visual,
.discipleship-mission__visual,
.discipleship-philosophy__visual,
.discipleship-learning__visual,
.discipleship-global__visual,
.discipleship-graduation__visual,
.discipleship-team__visual {
    position: relative;
    min-width: 0;
}

.discipleship-welcome__image,
.discipleship-mission__image,
.discipleship-philosophy__image,
.discipleship-learning__image,
.discipleship-global__image,
.discipleship-graduation__image,
.discipleship-team__image {
    height: clamp(560px, 55vw, 780px);
    overflow: hidden;
    border-radius: 40px 8px 40px 8px;
    background: linear-gradient(135deg, var(--discipleship-deep), #122b37);
    box-shadow: 0 42px 90px rgba(5, 38, 39, .18);
}

.discipleship-philosophy__image,
.discipleship-learning__image,
.discipleship-global__image,
.discipleship-graduation__image,
.discipleship-team__image {
    height: clamp(500px, 49vw, 690px);
}

.discipleship-welcome__image img,
.discipleship-mission__image img,
.discipleship-philosophy__image img,
.discipleship-learning__image img,
.discipleship-global__image img,
.discipleship-graduation__image img,
.discipleship-team__image img,
.discipleship-audience__image img,
.discipleship-foundation__image img,
.discipleship-cta__media img,
.discipleship-pathway-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discipleship-welcome__image::after,
.discipleship-mission__image::after,
.discipleship-philosophy__image::after,
.discipleship-learning__image::after,
.discipleship-global__image::after,
.discipleship-graduation__image::after,
.discipleship-team__image::after {
    background: linear-gradient(0deg, rgba(4, 29, 33, .4), transparent 55%);
}

.discipleship-welcome__mark,
.discipleship-learning__mark,
.discipleship-global__mark {
    position: absolute;
    right: -26px;
    bottom: 34px;
    z-index: 4;
    min-width: 215px;
    padding: 25px 28px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 20px 4px 20px 4px;
    color: #fff;
    background: rgba(7, 29, 36, .9);
    box-shadow: 0 22px 60px rgba(4, 25, 31, .3);
    backdrop-filter: blur(16px);
}

.discipleship-welcome__mark span,
.discipleship-learning__mark span,
.discipleship-global__mark span {
    display: block;
    margin-bottom: 6px;
    color: var(--discipleship-gold);
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.discipleship-welcome__mark strong,
.discipleship-learning__mark strong,
.discipleship-global__mark strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
}

.discipleship-vision {
    position: relative;
    padding-block: clamp(100px, 10vw, 160px);
    overflow: clip;
    color: #fff;
    background:
        radial-gradient(circle at 88% 5%, rgba(60, 146, 122, .2), transparent 32%),
        linear-gradient(135deg, var(--discipleship-night), var(--discipleship-deep));
}

.discipleship-vision::after {
    position: absolute;
    right: -110px;
    bottom: -220px;
    width: 600px;
    height: 600px;
    border: 1px solid rgba(225, 192, 122, .13);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.discipleship-vision__head,
.discipleship-pathway__head,
.discipleship-audience__head,
.discipleship-foundation__head {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 56px;
}

.discipleship-vision__head > p,
.discipleship-audience__head > p,
.discipleship-foundation__head > p {
    max-width: 420px;
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .69);
    font-size: 1.03rem;
    line-height: 1.85;
}

.discipleship-audience__head > p,
.discipleship-foundation__head > p {
    color: #607273;
}

.discipleship-vision__cards {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: clamp(56px, 6vw, 88px);
}

.discipleship-vision__cards article {
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: 42px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 30px 6px 30px 6px;
    background: rgba(255, 255, 255, .055);
    transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

.discipleship-vision__cards article:hover {
    border-color: rgba(225, 192, 122, .46);
    background: rgba(255, 255, 255, .085);
    transform: translateY(-8px);
}

.discipleship-vision__cards article > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.discipleship-vision__cards span,
.discipleship-vision__cards small {
    color: var(--discipleship-gold);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.discipleship-vision__cards h3 {
    max-width: 310px;
    margin: auto 0 18px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.9rem, 2.4vw, 2.75rem);
    line-height: 1.02;
}

.discipleship-vision__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .67);
    line-height: 1.75;
}

.discipleship-mission {
    padding-block: clamp(100px, 11vw, 170px);
}

.discipleship-mission__grid {
    grid-template-columns: minmax(340px, .78fr) minmax(0, .95fr);
}

.discipleship-mission__visual blockquote {
    position: absolute;
    right: -24px;
    bottom: 30px;
    left: 30px;
    z-index: 4;
    margin: 0;
    padding: 27px 30px;
    border-left: 4px solid var(--discipleship-brass);
    color: #fff;
    background: rgba(7, 29, 36, .91);
    box-shadow: 0 22px 60px rgba(4, 25, 31, .3);
    backdrop-filter: blur(16px);
}

.discipleship-mission__visual blockquote p {
    margin: 0 0 7px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 1.8vw, 1.8rem);
    line-height: 1.3;
}

.discipleship-mission__visual blockquote cite {
    color: var(--discipleship-gold);
    font-size: .68rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.discipleship-mission__content > p {
    color: #607273;
    line-height: 1.8;
}

.discipleship-mission__content ol,
.discipleship-learning__content ol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 34px 0 0;
    padding: 0;
    list-style: none;
}

.discipleship-mission__content li,
.discipleship-learning__content li {
    min-width: 0;
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
    padding: 16px;
    border: 1px solid rgba(16, 47, 52, .1);
    border-radius: 13px;
    background: #fff;
}

.discipleship-mission__content li span,
.discipleship-learning__content li span {
    color: var(--discipleship-brass);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.discipleship-mission__content li strong,
.discipleship-learning__content li strong {
    font-size: .9rem;
    line-height: 1.45;
}

.discipleship-philosophy,
.discipleship-learning,
.discipleship-global,
.discipleship-team,
.discipleship-stories,
.discipleship-pathway {
    position: relative;
    overflow: clip;
    color: #fff;
    background: var(--discipleship-night);
}

.discipleship-philosophy {
    padding-block: clamp(95px, 10vw, 150px);
    background:
        linear-gradient(90deg, rgba(7, 29, 36, .98), rgba(11, 46, 52, .95)),
        var(--discipleship-night);
}

.discipleship-philosophy__content > p,
.discipleship-learning__content > p,
.discipleship-global__content > p,
.discipleship-team__content > p {
    max-width: 680px;
    color: rgba(255, 255, 255, .69);
    line-height: 1.82;
}

.discipleship-philosophy__content ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 34px 0 0;
    padding: 0;
    list-style: none;
}

.discipleship-philosophy__content li {
    position: relative;
    padding: 17px 18px 17px 46px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 12px;
    background: rgba(255, 255, 255, .05);
    font-weight: 750;
}

.discipleship-philosophy__content li::before {
    position: absolute;
    top: 19px;
    left: 18px;
    width: 15px;
    height: 8px;
    border-bottom: 2px solid var(--discipleship-gold);
    border-left: 2px solid var(--discipleship-gold);
    content: "";
    transform: rotate(-45deg);
}

.discipleship-pathway {
    padding-block: clamp(100px, 10vw, 160px);
    background:
        radial-gradient(circle at 13% 10%, rgba(45, 118, 99, .24), transparent 34%),
        #071d24;
}

.discipleship-pathway__head {
    align-items: center;
}

.discipleship-pathway__track {
    width: min(calc(100% - 64px), 1480px);
    display: grid;
    grid-auto-columns: clamp(370px, 30vw, 430px);
    grid-auto-flow: column;
    gap: 22px;
    margin: clamp(55px, 6vw, 85px) auto 0;
    padding: 4px 2px 25px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.discipleship-pathway__track::-webkit-scrollbar {
    display: none;
}

.discipleship-pathway-card {
    position: relative;
    min-height: 610px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 30px 6px 30px 6px;
    background: var(--discipleship-deep);
    box-shadow: 0 28px 60px rgba(0, 0, 0, .2);
    scroll-snap-align: start;
}

.discipleship-pathway-card__image,
.discipleship-pathway-card__veil {
    position: absolute;
    inset: 0;
}

.discipleship-pathway-card__image {
    z-index: 1;
}

.discipleship-pathway-card__image::after {
    background: rgba(9, 37, 42, .15);
}

.discipleship-pathway-card__image img {
    transition: transform .65s ease;
}

.discipleship-pathway-card:hover .discipleship-pathway-card__image img {
    transform: scale(1.045);
}

.discipleship-pathway-card__veil {
    z-index: 2;
    background: linear-gradient(0deg, rgba(5, 24, 30, .98) 4%, rgba(5, 24, 30, .82) 37%, rgba(5, 24, 30, .14) 78%);
}

.discipleship-pathway-card__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    padding: 38px;
}

.discipleship-pathway-card__content > span {
    color: var(--discipleship-gold);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.discipleship-pathway-card__content h3 {
    width: 100%;
    max-width: none;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
    margin: 13px 0 16px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.75rem, 2vw, 2rem);
    line-height: .98;
}

.discipleship-pathway-card__content p {
    margin: 0;
    color: rgba(255, 255, 255, .73);
    line-height: 1.68;
}

.discipleship-pathway__footer {
    color: rgba(255, 255, 255, .6);
}

.discipleship-pathway__footer [data-detail-status] {
    color: var(--discipleship-gold);
}

.discipleship-distinctives {
    padding-block: clamp(100px, 10vw, 160px);
}

.discipleship-distinctives__head {
    max-width: 760px;
}

.discipleship-distinctives__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: clamp(50px, 6vw, 80px);
}

.discipleship-distinctives__grid article {
    position: relative;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    padding: 36px;
    overflow: hidden;
    border: 1px solid rgba(16, 47, 52, .1);
    border-radius: 26px 5px 26px 5px;
    background: #fff;
    box-shadow: 0 22px 55px rgba(8, 44, 45, .06);
    transition: transform .3s ease, box-shadow .3s ease;
}

.discipleship-distinctives__grid article::after {
    position: absolute;
    right: -40px;
    bottom: -55px;
    width: 135px;
    height: 135px;
    border: 1px solid rgba(42, 116, 100, .1);
    border-radius: 50%;
    content: "";
}

.discipleship-distinctives__grid article:hover {
    box-shadow: 0 32px 70px rgba(8, 44, 45, .11);
    transform: translateY(-7px);
}

.discipleship-distinctives__grid span {
    color: var(--discipleship-brass);
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .13em;
}

.discipleship-distinctives__grid h3 {
    max-width: 290px;
    margin: auto 0 15px;
    color: var(--discipleship-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.7rem, 2.2vw, 2.35rem);
    line-height: 1.03;
}

.discipleship-distinctives__grid p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #647577;
    line-height: 1.72;
}

.discipleship-learning {
    padding-block: clamp(100px, 10vw, 160px);
    background:
        radial-gradient(circle at 88% 12%, rgba(52, 139, 112, .2), transparent 34%),
        var(--discipleship-night);
}

.discipleship-learning__grid {
    grid-template-columns: minmax(340px, .78fr) minmax(0, .98fr);
}

.discipleship-learning__content ol {
    margin-top: 30px;
}

.discipleship-learning__content li {
    border-color: rgba(255, 255, 255, .1);
    background: rgba(255, 255, 255, .055);
}

.discipleship-learning__content li strong {
    color: #fff;
}

.discipleship-audience {
    padding-block: clamp(100px, 11vw, 170px);
}

.discipleship-audience__stage,
.discipleship-foundation__stage {
    position: relative;
    min-height: 780px;
    margin-top: clamp(54px, 6vw, 86px);
    overflow: hidden;
    border-radius: 40px 8px 40px 8px;
    background: var(--discipleship-night);
    box-shadow: 0 38px 90px rgba(6, 35, 37, .17);
}

.discipleship-audience__image,
.discipleship-foundation__image {
    position: absolute;
    inset: 0;
}

.discipleship-audience__image::after {
    background: linear-gradient(90deg, rgba(5, 28, 34, .97) 0%, rgba(5, 28, 34, .88) 48%, rgba(5, 28, 34, .25) 100%);
}

.discipleship-audience__cards {
    position: relative;
    z-index: 2;
    width: min(650px, 60%);
    display: grid;
    gap: 12px;
    padding: 66px;
}

.discipleship-audience__cards article {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 20px;
    padding: 20px 22px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 14px;
    color: #fff;
    background: rgba(255, 255, 255, .06);
    backdrop-filter: blur(12px);
}

.discipleship-audience__cards article > span {
    color: var(--discipleship-gold);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.discipleship-audience__cards h3 {
    margin: 0 0 6px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
}

.discipleship-audience__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .68);
    line-height: 1.55;
}

.discipleship-global {
    padding-block: clamp(100px, 10vw, 160px);
    background:
        radial-gradient(circle at 8% 75%, rgba(47, 132, 105, .22), transparent 34%),
        #071d24;
}

.discipleship-global__nations {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 32px 0;
}

.discipleship-global__nations a {
    display: grid;
    grid-template-columns: 45px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding: 17px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 13px;
    background: rgba(255, 255, 255, .05);
    text-decoration: none;
    transition: border-color .25s ease, transform .25s ease;
}

.discipleship-global__nations a:hover {
    border-color: rgba(225, 192, 122, .45);
    transform: translateY(-4px);
}

.discipleship-global__nations a > span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid rgba(225, 192, 122, .3);
    border-radius: 50%;
    color: var(--discipleship-gold);
    font-size: .7rem;
    font-weight: 900;
}

.discipleship-global__nations strong,
.discipleship-global__nations small {
    display: block;
}

.discipleship-global__nations small {
    margin-top: 3px;
    color: rgba(255, 255, 255, .56);
    font-size: .72rem;
}

.discipleship-graduation {
    padding-block: clamp(100px, 11vw, 170px);
}

.discipleship-graduation__content p:not(.eyebrow) {
    max-width: 680px;
    color: #617375;
    line-height: 1.82;
}

.discipleship-stories {
    padding-block: clamp(95px, 10vw, 150px);
    background:
        radial-gradient(circle at 85% 22%, rgba(196, 154, 74, .13), transparent 35%),
        var(--discipleship-night);
}

.discipleship-stories__head {
    max-width: 780px;
}

.discipleship-stories__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: clamp(50px, 6vw, 80px);
}

.discipleship-stories__grid blockquote {
    min-height: 370px;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 44px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 30px 6px 30px 6px;
    background: rgba(255, 255, 255, .055);
}

.discipleship-stories__grid blockquote > span {
    color: var(--discipleship-gold);
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .13em;
}

.discipleship-stories__grid blockquote p {
    margin: auto 0 28px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.3vw, 2.65rem);
    line-height: 1.25;
}

.discipleship-stories__grid blockquote cite {
    color: rgba(255, 255, 255, .53);
    font-size: .7rem;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.discipleship-foundation {
    padding-block: clamp(100px, 11vw, 170px);
}

.discipleship-foundation__stage {
    min-height: 730px;
}

.discipleship-foundation__image::after {
    background: rgba(5, 28, 34, .77);
}

.discipleship-foundation__cards {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    padding: 60px;
}

.discipleship-foundation__cards article {
    min-height: 270px;
    display: flex;
    flex-direction: column;
    padding: 32px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 22px 5px 22px 5px;
    color: #fff;
    background: rgba(7, 29, 36, .64);
    backdrop-filter: blur(13px);
}

.discipleship-foundation__cards span {
    color: var(--discipleship-gold);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.discipleship-foundation__cards h3 {
    margin: auto 0 13px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.7rem, 2.2vw, 2.45rem);
}

.discipleship-foundation__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .69);
    line-height: 1.67;
}

.discipleship-foundation__vision {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 38px;
    margin-top: 34px;
    padding: 38px 42px;
    border-left: 4px solid var(--discipleship-brass);
    background: var(--discipleship-parchment);
}

.discipleship-foundation__vision strong {
    color: var(--discipleship-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
}

.discipleship-foundation__vision p {
    margin: 0;
    color: #566b6d;
    line-height: 1.8;
}

.discipleship-team {
    padding-block: clamp(100px, 10vw, 160px);
    background:
        radial-gradient(circle at 87% 20%, rgba(50, 134, 108, .19), transparent 32%),
        var(--discipleship-night);
}

.discipleship-team__roles {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: clamp(55px, 6vw, 85px);
}

.discipleship-team__roles article {
    min-height: 330px;
    display: flex;
    flex-direction: column;
    padding: 40px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 28px 5px 28px 5px;
    background: rgba(255, 255, 255, .055);
}

.discipleship-team__roles article > span {
    color: var(--discipleship-gold);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.discipleship-team__roles h3 {
    max-width: 560px;
    margin: auto 0 16px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.75rem, 2.5vw, 2.75rem);
    line-height: 1.05;
}

.discipleship-team__roles p {
    margin: 0 0 22px;
    color: rgba(255, 255, 255, .65);
    line-height: 1.72;
}

.discipleship-faq {
    padding-block: clamp(100px, 11vw, 170px);
}

.discipleship-faq__grid {
    align-items: start;
    grid-template-columns: minmax(300px, .68fr) minmax(0, 1fr);
}

.discipleship-faq__intro {
    position: sticky;
    top: 155px;
}

.discipleship-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    color: #617375;
    line-height: 1.8;
}

.discipleship-faq__list {
    border-top: 1px solid rgba(16, 47, 52, .14);
}

.discipleship-faq__list details {
    border-bottom: 1px solid rgba(16, 47, 52, .14);
}

.discipleship-faq__list summary {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 18px;
    padding: 29px 0;
    cursor: pointer;
    list-style: none;
}

.discipleship-faq__list summary::-webkit-details-marker {
    display: none;
}

.discipleship-faq__list summary > span {
    color: var(--discipleship-brass);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .1em;
}

.discipleship-faq__list summary strong {
    color: var(--discipleship-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.3rem;
}

.discipleship-faq__list summary i {
    position: relative;
    width: 22px;
    height: 22px;
}

.discipleship-faq__list summary i::before,
.discipleship-faq__list summary i::after {
    position: absolute;
    top: 10px;
    left: 3px;
    width: 16px;
    height: 2px;
    background: var(--discipleship-green);
    content: "";
    transition: transform .25s ease;
}

.discipleship-faq__list summary i::after {
    transform: rotate(90deg);
}

.discipleship-faq__list details[open] summary i::after {
    transform: rotate(0);
}

.discipleship-faq__list details > p {
    margin: -6px 40px 28px 62px;
    color: #607173;
    line-height: 1.82;
}

.discipleship-cta {
    position: relative;
    min-height: 760px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--discipleship-night);
}

.discipleship-cta__media,
.discipleship-cta__veil {
    position: absolute;
    inset: 0;
}

.discipleship-cta__media {
    z-index: 1;
}

.discipleship-cta__media::after {
    background: rgba(5, 25, 31, .12);
}

.discipleship-cta__veil {
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(4, 21, 27, .98) 0%, rgba(4, 21, 27, .89) 47%, rgba(4, 21, 27, .28) 80%),
        linear-gradient(0deg, rgba(4, 21, 27, .65), transparent 55%);
}

.discipleship-cta__inner {
    position: relative;
    z-index: 3;
    max-width: 900px;
    margin-left: max(32px, calc((100vw - var(--container)) / 2));
    padding-block: 110px;
}

.discipleship-cta__inner h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.5rem, 6vw, 6.8rem);
    line-height: .92;
    letter-spacing: -.045em;
}

.discipleship-cta__inner h2 em {
    display: block;
    color: var(--discipleship-gold);
    font-weight: 400;
}

.discipleship-cta__inner > p:not(.eyebrow) {
    max-width: 720px;
    color: rgba(255, 255, 255, .72);
    line-height: 1.8;
}

.discipleship-cta__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px 22px;
    margin-top: 34px;
}

@media (max-width: 1100px) {
    .page-school-discipleship .ministry-detail-hero h1 {
        font-size: clamp(3.8rem, 8vw, 6.6rem);
    }

    .discipleship-welcome__grid,
    .discipleship-mission__grid,
    .discipleship-philosophy__grid,
    .discipleship-learning__grid,
    .discipleship-global__grid,
    .discipleship-graduation__grid,
    .discipleship-team__grid,
    .discipleship-faq__grid {
        grid-template-columns: 1fr;
    }

    .discipleship-welcome__visual,
    .discipleship-mission__visual,
    .discipleship-philosophy__visual,
    .discipleship-learning__visual,
    .discipleship-global__visual,
    .discipleship-graduation__visual,
    .discipleship-team__visual {
        width: min(100%, 780px);
    }

    .discipleship-mission__content,
    .discipleship-global__content,
    .discipleship-graduation__content {
        order: -1;
    }

    .discipleship-vision__cards,
    .discipleship-distinctives__grid {
        grid-template-columns: 1fr 1fr;
    }

    .discipleship-faq__intro {
        position: static;
    }

    .discipleship-audience__cards {
        width: min(760px, 78%);
    }
}

@media (max-width: 720px) {
    .page-school-discipleship .ministry-detail-hero__veil {
        background:
            linear-gradient(0deg, rgba(4, 20, 26, .98) 0%, rgba(4, 20, 26, .78) 54%, rgba(4, 20, 26, .28) 100%),
            linear-gradient(90deg, rgba(4, 20, 26, .55), transparent);
    }

    .page-school-discipleship .ministry-detail-hero h1 {
        font-size: clamp(3.35rem, 15vw, 5.2rem);
        line-height: .88;
    }

    #discipleship-welcome,
    #discipleship-vision,
    #discipleship-pathway,
    #discipleship-distinctives,
    #discipleship-global,
    #discipleship-team,
    #discipleship-faq {
        scroll-margin-top: 105px;
    }

    .discipleship-welcome__grid,
    .discipleship-mission__grid,
    .discipleship-philosophy__grid,
    .discipleship-learning__grid,
    .discipleship-global__grid,
    .discipleship-graduation__grid,
    .discipleship-team__grid,
    .discipleship-faq__grid {
        gap: 58px;
    }

    .discipleship-welcome__image,
    .discipleship-mission__image,
    .discipleship-philosophy__image,
    .discipleship-learning__image,
    .discipleship-global__image,
    .discipleship-graduation__image,
    .discipleship-team__image {
        height: min(133vw, 650px);
        border-radius: 25px 5px 25px 5px;
    }

    .discipleship-welcome__mark,
    .discipleship-learning__mark,
    .discipleship-global__mark {
        right: 16px;
        bottom: 16px;
        min-width: 170px;
        padding: 19px;
    }

    .discipleship-vision__head,
    .discipleship-pathway__head,
    .discipleship-audience__head,
    .discipleship-foundation__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .discipleship-vision__cards,
    .discipleship-distinctives__grid,
    .discipleship-stories__grid,
    .discipleship-team__roles {
        grid-template-columns: 1fr;
    }

    .discipleship-vision__cards article {
        min-height: 330px;
    }

    .discipleship-mission__visual blockquote {
        right: 16px;
        bottom: 16px;
        left: 16px;
        padding: 22px;
    }

    .discipleship-mission__content ol,
    .discipleship-philosophy__content ul,
    .discipleship-learning__content ol,
    .discipleship-global__nations,
    .discipleship-foundation__cards {
        grid-template-columns: 1fr;
    }

    .discipleship-pathway__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(282px, 86vw);
        margin-top: 46px;
    }

    .discipleship-pathway-card {
        min-height: 550px;
    }

    .discipleship-audience__stage,
    .discipleship-foundation__stage {
        min-height: auto;
        border-radius: 25px 5px 25px 5px;
    }

    .discipleship-audience__image,
    .discipleship-foundation__image {
        position: absolute;
    }

    .discipleship-audience__image::after,
    .discipleship-foundation__image::after {
        background: rgba(5, 28, 34, .85);
    }

    .discipleship-audience__cards,
    .discipleship-foundation__cards {
        width: 100%;
        padding: 28px;
    }

    .discipleship-foundation__cards article {
        min-height: 230px;
    }

    .discipleship-foundation__vision {
        grid-template-columns: 1fr;
        gap: 13px;
        padding: 30px;
    }

    .discipleship-stories__grid blockquote,
    .discipleship-team__roles article {
        min-height: 330px;
    }

    .discipleship-faq__list summary {
        grid-template-columns: 36px minmax(0, 1fr) 22px;
        gap: 12px;
    }

    .discipleship-faq__list details > p {
        margin-right: 0;
        margin-left: 48px;
    }

    .discipleship-cta {
        min-height: 850px;
        align-items: flex-end;
    }

    .discipleship-cta__veil {
        background: linear-gradient(0deg, rgba(4, 21, 27, .99) 2%, rgba(4, 21, 27, .84) 58%, rgba(4, 21, 27, .26) 100%);
    }

    .discipleship-cta__inner {
        width: calc(100% - 32px);
        margin-inline: auto;
        padding-block: 95px 72px;
    }

    .discipleship-cta__inner h2 {
        font-size: clamp(2.75rem, 13vw, 4.7rem);
    }

    .discipleship-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .discipleship-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .discipleship-vision__cards article,
    .discipleship-distinctives__grid article {
        padding: 28px;
    }

    .discipleship-pathway-card__content {
        padding: 30px 27px;
    }

    .discipleship-pathway-card__content h3 {
        font-size: 1.7rem;
    }

    .discipleship-mission__content li,
    .discipleship-learning__content li {
        grid-template-columns: 27px minmax(0, 1fr);
        gap: 9px;
    }

    .discipleship-global__nations a {
        padding: 16px;
    }

    .discipleship-audience__cards,
    .discipleship-foundation__cards {
        padding: 20px;
    }

    .discipleship-audience__cards article {
        grid-template-columns: 37px minmax(0, 1fr);
        gap: 10px;
        padding: 17px;
    }

    .discipleship-stories__grid blockquote,
    .discipleship-team__roles article {
        padding: 30px 27px;
    }

    .discipleship-faq__list summary strong {
        font-size: 1.13rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .discipleship-vision__cards article,
    .discipleship-distinctives__grid article,
    .discipleship-pathway-card__image img,
    .discipleship-global__nations a {
        transition: none;
    }
}

/* Phase 1, Step 20 — Keep The Faith Missions */

.page-missions {
    --missions-night: #071b22;
    --missions-deep: #0b2d32;
    --missions-earth: #1f5345;
    --missions-green: #39745c;
    --missions-amber: #c8873c;
    --missions-sun: #e8b66b;
    --missions-sand: #f3ead8;
    --missions-paper: #fffdf8;
    --missions-ink: #112f33;
    background: var(--missions-paper);
}

.page-missions .ministry-detail-hero__veil {
    background:
        linear-gradient(90deg, rgba(4, 22, 28, .97) 0%, rgba(4, 22, 28, .78) 47%, rgba(4, 22, 28, .26) 79%, rgba(4, 22, 28, .12) 100%),
        linear-gradient(0deg, rgba(4, 22, 28, .72), transparent 56%);
}

.page-missions .ministry-detail-hero__glow {
    background:
        radial-gradient(circle at 78% 38%, rgba(82, 145, 96, .27), transparent 34%),
        radial-gradient(circle at 42% 92%, rgba(232, 182, 107, .18), transparent 42%);
}

.page-missions .ministry-detail-hero h1 {
    max-width: 960px;
    font-size: clamp(4.3rem, 7.5vw, 8.2rem);
    line-height: .84;
}

.page-missions .ministry-detail-hero h1 em,
.page-missions .ministry-detail-hero blockquote cite {
    color: var(--missions-sun);
}

.page-missions .ministry-detail-hero__scroll i::after,
.page-missions .ministry-detail-nav a::after {
    background: var(--missions-amber);
}

#missions-welcome,
#missions-vision,
#missions-strategy,
#missions-nations,
#missions-involvement,
#missions-impact,
#missions-faq {
    scroll-margin-top: 150px;
}

.missions-welcome,
.missions-mission,
.missions-initiatives,
.missions-impact,
.missions-pillars,
.missions-faq {
    position: relative;
    overflow: clip;
    background: var(--missions-paper);
}

.missions-welcome {
    padding-block: clamp(94px, 10vw, 160px);
}

.missions-welcome::before {
    position: absolute;
    top: -210px;
    left: -250px;
    width: 680px;
    height: 680px;
    border: 1px solid rgba(57, 116, 92, .13);
    border-radius: 50%;
    box-shadow:
        0 0 0 75px rgba(57, 116, 92, .025),
        0 0 0 150px rgba(57, 116, 92, .017);
    content: "";
    pointer-events: none;
}

.missions-welcome__grid,
.missions-mission__grid,
.missions-nations__grid,
.missions-impact__grid,
.missions-opportunities__grid,
.missions-faq__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(360px, .78fr);
    align-items: center;
    gap: clamp(60px, 8vw, 132px);
}

.missions-welcome__content .rich-copy {
    max-width: 720px;
}

.missions-welcome__visual,
.missions-mission__visual,
.missions-nations__visual,
.missions-opportunities__visual {
    position: relative;
    min-width: 0;
}

.missions-welcome__image,
.missions-mission__image,
.missions-nations__image,
.missions-opportunities__image {
    height: clamp(560px, 55vw, 780px);
    overflow: hidden;
    border-radius: 42px 8px 42px 8px;
    background: linear-gradient(135deg, var(--missions-deep), #173d3a);
    box-shadow: 0 42px 90px rgba(5, 38, 39, .18);
}

.missions-nations__image,
.missions-opportunities__image {
    height: clamp(510px, 49vw, 690px);
}

.missions-welcome__image img,
.missions-mission__image img,
.missions-strategy-card__image img,
.missions-nations__image img,
.missions-initiatives__image img,
.missions-involvement__image img,
.missions-opportunities__image img,
.missions-stories__image img,
.missions-pillars__image img,
.missions-cta__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.missions-welcome__image::after,
.missions-mission__image::after,
.missions-nations__image::after,
.missions-opportunities__image::after {
    background: linear-gradient(0deg, rgba(4, 29, 33, .42), transparent 55%);
}

.missions-welcome__mark,
.missions-nations__mark {
    position: absolute;
    right: -26px;
    bottom: 34px;
    z-index: 4;
    min-width: 215px;
    padding: 25px 28px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 20px 4px 20px 4px;
    color: #fff;
    background: rgba(7, 29, 34, .9);
    box-shadow: 0 22px 60px rgba(4, 25, 31, .3);
    backdrop-filter: blur(16px);
}

.missions-welcome__mark span,
.missions-nations__mark span {
    display: block;
    margin-bottom: 6px;
    color: var(--missions-sun);
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.missions-welcome__mark strong,
.missions-nations__mark strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
}

.missions-vision {
    position: relative;
    padding-block: clamp(100px, 10vw, 160px);
    overflow: clip;
    color: #fff;
    background:
        radial-gradient(circle at 87% 8%, rgba(71, 139, 94, .24), transparent 33%),
        linear-gradient(135deg, var(--missions-night), var(--missions-deep));
}

.missions-vision::after {
    position: absolute;
    right: -120px;
    bottom: -220px;
    width: 610px;
    height: 610px;
    border: 1px solid rgba(232, 182, 107, .13);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.missions-vision__head,
.missions-strategy__head,
.missions-initiatives__head,
.missions-involvement__head,
.missions-stories__head,
.missions-pillars__head {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 56px;
}

.missions-vision__head > p,
.missions-initiatives__head > p,
.missions-pillars__head > p {
    max-width: 440px;
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .69);
    font-size: 1.03rem;
    line-height: 1.85;
}

.missions-initiatives__head > p,
.missions-pillars__head > p {
    color: #607273;
}

.missions-vision__cards {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: clamp(56px, 6vw, 88px);
}

.missions-vision__cards article {
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: 42px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 30px 6px 30px 6px;
    background: rgba(255, 255, 255, .055);
    transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

.missions-vision__cards article:hover {
    border-color: rgba(232, 182, 107, .46);
    background: rgba(255, 255, 255, .085);
    transform: translateY(-8px);
}

.missions-vision__cards article > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.missions-vision__cards span,
.missions-vision__cards small {
    color: var(--missions-sun);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.missions-vision__cards h3 {
    max-width: 320px;
    margin: auto 0 18px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.9rem, 2.4vw, 2.75rem);
    line-height: 1.02;
}

.missions-vision__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .67);
    line-height: 1.75;
}

.missions-mission {
    padding-block: clamp(100px, 11vw, 170px);
}

.missions-mission__grid {
    grid-template-columns: minmax(340px, .78fr) minmax(0, .96fr);
}

.missions-mission__visual blockquote {
    position: absolute;
    right: -24px;
    bottom: 30px;
    left: 30px;
    z-index: 4;
    margin: 0;
    padding: 27px 30px;
    border-left: 4px solid var(--missions-amber);
    color: #fff;
    background: rgba(7, 29, 34, .91);
    box-shadow: 0 22px 60px rgba(4, 25, 31, .3);
    backdrop-filter: blur(16px);
}

.missions-mission__visual blockquote p {
    margin: 0 0 7px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.18rem, 1.7vw, 1.7rem);
    line-height: 1.3;
}

.missions-mission__visual blockquote cite {
    color: var(--missions-sun);
    font-size: .68rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.missions-mission__content > p:not(.eyebrow) {
    color: #637576;
    line-height: 1.8;
}

.missions-mission__content ol,
.missions-opportunities__content ol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 30px 0 0;
    padding: 0;
    list-style: none;
}

.missions-mission__content li,
.missions-opportunities__content li {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    min-height: 77px;
    padding: 15px 17px;
    border: 1px solid rgba(17, 58, 58, .1);
    border-radius: 12px;
    background: #fff;
}

.missions-mission__content li span,
.missions-opportunities__content li span {
    color: var(--missions-amber);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.missions-mission__content li strong,
.missions-opportunities__content li strong {
    color: var(--missions-ink);
    font-size: .88rem;
    line-height: 1.4;
}

.missions-strategy {
    padding-block: clamp(100px, 10vw, 160px);
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 12% 85%, rgba(55, 122, 89, .22), transparent 34%),
        var(--missions-night);
}

.missions-strategy__head {
    align-items: center;
}

.missions-strategy__track {
    width: min(1600px, calc(100% - 64px));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(340px, 28vw);
    gap: 20px;
    margin: clamp(55px, 6vw, 88px) auto 0;
    padding: 3px 2px 28px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
}

.missions-strategy__track::-webkit-scrollbar {
    display: none;
}

.missions-strategy-card {
    position: relative;
    min-width: 0;
    min-height: 610px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 32px 6px 32px 6px;
    background: var(--missions-deep);
    box-shadow: 0 30px 70px rgba(2, 17, 22, .25);
    scroll-snap-align: start;
}

.missions-strategy-card__image,
.missions-strategy-card__veil {
    position: absolute;
    inset: 0;
}

.missions-strategy-card__image img {
    transition: transform .6s ease;
}

.missions-strategy-card:hover .missions-strategy-card__image img {
    transform: scale(1.035);
}

.missions-strategy-card__image::after {
    background: rgba(5, 28, 31, .06);
}

.missions-strategy-card__veil {
    z-index: 2;
    background: linear-gradient(0deg, rgba(5, 24, 29, .98) 4%, rgba(5, 24, 29, .82) 38%, rgba(5, 24, 29, .13) 79%);
}

.missions-strategy-card__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    padding: 38px;
}

.missions-strategy-card__content > span {
    color: var(--missions-sun);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.missions-strategy-card__content h3 {
    width: 100%;
    max-width: none;
    margin: 13px 0 16px;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.7rem, 2vw, 2.05rem);
    line-height: 1;
}

.missions-strategy-card__content p {
    margin: 0;
    color: rgba(255, 255, 255, .73);
    line-height: 1.68;
}

.missions-strategy__footer {
    color: rgba(255, 255, 255, .6);
}

.missions-strategy__footer [data-detail-status] {
    color: var(--missions-sun);
}

.missions-nations {
    padding-block: clamp(100px, 10vw, 160px);
    color: #fff;
    background:
        radial-gradient(circle at 88% 12%, rgba(63, 135, 93, .2), transparent 34%),
        #08242a;
}

.missions-nations__grid {
    grid-template-columns: minmax(360px, .82fr) minmax(0, .98fr);
}

.missions-nations__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 32px 0;
}

.missions-nations__list a {
    display: grid;
    grid-template-columns: 45px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding: 17px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 13px;
    background: rgba(255, 255, 255, .05);
    text-decoration: none;
    transition: border-color .25s ease, transform .25s ease;
}

.missions-nations__list a:hover {
    border-color: rgba(232, 182, 107, .45);
    transform: translateY(-4px);
}

.missions-nations__list a > span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid rgba(232, 182, 107, .3);
    border-radius: 50%;
    color: var(--missions-sun);
    font-size: .7rem;
    font-weight: 900;
}

.missions-nations__list strong,
.missions-nations__list small {
    display: block;
}

.missions-nations__list small {
    margin-top: 3px;
    color: rgba(255, 255, 255, .56);
    font-size: .72rem;
}

.missions-nations__content > p:not(.eyebrow) {
    color: rgba(255, 255, 255, .68);
    line-height: 1.82;
}

.missions-initiatives {
    padding-block: clamp(100px, 11vw, 170px);
}

.missions-initiatives__stage,
.missions-involvement__stage,
.missions-stories__stage,
.missions-pillars__stage {
    position: relative;
    min-height: 780px;
    margin-top: clamp(54px, 6vw, 86px);
    overflow: hidden;
    border-radius: 42px 8px 42px 8px;
    background: var(--missions-night);
    box-shadow: 0 38px 90px rgba(6, 35, 37, .17);
}

.missions-initiatives__image,
.missions-involvement__image,
.missions-stories__image,
.missions-pillars__image {
    position: absolute;
    inset: 0;
}

.missions-initiatives__image::after {
    background: linear-gradient(90deg, rgba(5, 28, 34, .96), rgba(5, 28, 34, .68));
}

.missions-initiatives__cards {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    padding: 60px;
}

.missions-initiatives__cards article {
    min-height: 290px;
    display: flex;
    flex-direction: column;
    padding: 30px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 22px 5px 22px 5px;
    color: #fff;
    background: rgba(7, 29, 36, .66);
    backdrop-filter: blur(13px);
}

.missions-initiatives__cards span,
.missions-involvement__cards article > span,
.missions-stories__quotes blockquote > span,
.missions-pillars__cards span {
    color: var(--missions-sun);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.missions-initiatives__cards h3,
.missions-involvement__cards h3,
.missions-pillars__cards h3 {
    margin: auto 0 13px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2vw, 2.2rem);
    line-height: 1.05;
}

.missions-initiatives__cards p,
.missions-involvement__cards p,
.missions-pillars__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .69);
    line-height: 1.67;
}

.missions-involvement {
    padding-block: clamp(100px, 10vw, 160px);
    color: #fff;
    background:
        radial-gradient(circle at 12% 20%, rgba(50, 124, 83, .22), transparent 33%),
        var(--missions-night);
}

.missions-involvement__stage {
    min-height: 680px;
}

.missions-involvement__image::after {
    background: rgba(4, 23, 28, .16);
}

.missions-involvement__veil,
.missions-stories__veil {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(4, 22, 27, .93), rgba(4, 22, 27, .5)),
        linear-gradient(0deg, rgba(4, 22, 27, .76), transparent 65%);
}

.missions-involvement__cards {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    padding: 54px;
}

.missions-involvement__cards article {
    min-height: 480px;
    display: flex;
    flex-direction: column;
    padding: 32px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 26px 5px 26px 5px;
    background: rgba(7, 29, 36, .62);
    backdrop-filter: blur(14px);
}

.missions-involvement__cards .text-link {
    margin-top: 26px;
}

.missions-impact {
    padding-block: clamp(100px, 11vw, 170px);
}

.missions-impact__grid {
    align-items: start;
    grid-template-columns: minmax(300px, .66fr) minmax(0, 1fr);
}

.missions-impact__content {
    position: sticky;
    top: 155px;
}

.missions-impact__content > p:not(.eyebrow) {
    color: #617375;
    line-height: 1.82;
}

.missions-impact__measures {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.missions-impact__measures article {
    min-height: 230px;
    display: flex;
    flex-direction: column;
    padding: 30px;
    border: 1px solid rgba(16, 47, 52, .1);
    border-radius: 25px 5px 25px 5px;
    background: #fff;
    box-shadow: 0 24px 55px rgba(8, 44, 45, .06);
}

.missions-impact__measures span {
    color: var(--missions-amber);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .13em;
}

.missions-impact__measures h3 {
    margin: auto 0 10px;
    color: var(--missions-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.6rem, 2.1vw, 2.3rem);
    line-height: 1.04;
}

.missions-impact__measures small {
    color: #758584;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.missions-opportunities {
    padding-block: clamp(100px, 10vw, 160px);
    color: #fff;
    background:
        radial-gradient(circle at 87% 18%, rgba(60, 130, 89, .2), transparent 33%),
        var(--missions-night);
}

.missions-opportunities__grid {
    grid-template-columns: minmax(350px, .8fr) minmax(0, .98fr);
}

.missions-opportunities__content ol {
    margin-bottom: 32px;
}

.missions-opportunities__content li {
    border-color: rgba(255, 255, 255, .11);
    background: rgba(255, 255, 255, .055);
}

.missions-opportunities__content li strong {
    color: #fff;
}

.missions-stories {
    padding-block: clamp(100px, 10vw, 160px);
    color: #fff;
    background: #09252b;
}

.missions-stories__stage {
    min-height: 650px;
}

.missions-stories__image::after {
    background: rgba(4, 22, 27, .18);
}

.missions-stories__quotes {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding: 60px;
}

.missions-stories__quotes blockquote {
    min-height: 510px;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 42px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 30px 6px 30px 6px;
    background: rgba(7, 29, 36, .68);
    backdrop-filter: blur(14px);
}

.missions-stories__quotes p {
    margin: auto 0 30px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.3vw, 2.65rem);
    line-height: 1.24;
}

.missions-stories__quotes cite {
    color: rgba(255, 255, 255, .55);
    font-size: .7rem;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.missions-pillars {
    padding-block: clamp(100px, 11vw, 170px);
}

.missions-pillars__stage {
    min-height: 730px;
}

.missions-pillars__image::after {
    background: rgba(5, 28, 34, .8);
}

.missions-pillars__cards {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    padding: 60px;
}

.missions-pillars__cards article {
    min-height: 285px;
    display: flex;
    flex-direction: column;
    padding: 32px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 22px 5px 22px 5px;
    color: #fff;
    background: rgba(7, 29, 36, .64);
    backdrop-filter: blur(13px);
}

.missions-pillars__vision {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 38px;
    margin-top: 34px;
    padding: 38px 42px;
    border-left: 4px solid var(--missions-amber);
    background: var(--missions-sand);
}

.missions-pillars__vision strong {
    color: var(--missions-earth);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
}

.missions-pillars__vision p {
    margin: 0;
    color: #566b6d;
    line-height: 1.8;
}

.missions-faq {
    padding-block: clamp(100px, 11vw, 170px);
}

.missions-faq__grid {
    align-items: start;
    grid-template-columns: minmax(300px, .68fr) minmax(0, 1fr);
}

.missions-faq__intro {
    position: sticky;
    top: 155px;
}

.missions-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    color: #617375;
    line-height: 1.8;
}

.missions-faq__list {
    border-top: 1px solid rgba(16, 47, 52, .14);
}

.missions-faq__list details {
    border-bottom: 1px solid rgba(16, 47, 52, .14);
}

.missions-faq__list summary {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 18px;
    padding: 29px 0;
    cursor: pointer;
    list-style: none;
}

.missions-faq__list summary::-webkit-details-marker {
    display: none;
}

.missions-faq__list summary > span {
    color: var(--missions-amber);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .1em;
}

.missions-faq__list summary strong {
    color: var(--missions-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.3rem;
}

.missions-faq__list summary i {
    position: relative;
    width: 22px;
    height: 22px;
}

.missions-faq__list summary i::before,
.missions-faq__list summary i::after {
    position: absolute;
    top: 10px;
    left: 3px;
    width: 16px;
    height: 2px;
    background: var(--missions-green);
    content: "";
    transition: transform .25s ease;
}

.missions-faq__list summary i::after {
    transform: rotate(90deg);
}

.missions-faq__list details[open] summary i::after {
    transform: rotate(0);
}

.missions-faq__list details > p {
    margin: -6px 40px 28px 62px;
    color: #607173;
    line-height: 1.82;
}

.missions-cta {
    position: relative;
    min-height: 780px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--missions-night);
}

.missions-cta__media,
.missions-cta__veil {
    position: absolute;
    inset: 0;
}

.missions-cta__media {
    z-index: 1;
}

.missions-cta__media::after {
    background: rgba(5, 25, 31, .12);
}

.missions-cta__veil {
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(4, 21, 27, .98) 0%, rgba(4, 21, 27, .89) 48%, rgba(4, 21, 27, .27) 81%),
        linear-gradient(0deg, rgba(4, 21, 27, .65), transparent 55%);
}

.missions-cta__inner {
    position: relative;
    z-index: 3;
    max-width: 970px;
    margin-left: max(32px, calc((100vw - var(--container)) / 2));
    padding-block: 110px;
}

.missions-cta__inner h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.5rem, 6vw, 6.8rem);
    line-height: .92;
    letter-spacing: -.045em;
}

.missions-cta__inner h2 em {
    display: block;
    color: var(--missions-sun);
    font-weight: 400;
}

.missions-cta__inner > p:not(.eyebrow) {
    max-width: 720px;
    color: rgba(255, 255, 255, .72);
    line-height: 1.8;
}

.missions-cta__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px 22px;
    margin-top: 34px;
}

@media (max-width: 1180px) {
    .missions-involvement__cards {
        grid-template-columns: 1fr 1fr;
    }

    .missions-involvement__cards article {
        min-height: 350px;
    }
}

@media (max-width: 1100px) {
    .page-missions .ministry-detail-hero h1 {
        font-size: clamp(3.9rem, 8vw, 6.8rem);
    }

    .missions-welcome__grid,
    .missions-mission__grid,
    .missions-nations__grid,
    .missions-impact__grid,
    .missions-opportunities__grid,
    .missions-faq__grid {
        grid-template-columns: 1fr;
    }

    .missions-welcome__visual,
    .missions-mission__visual,
    .missions-nations__visual,
    .missions-opportunities__visual {
        width: min(100%, 780px);
    }

    .missions-mission__content,
    .missions-opportunities__content {
        order: -1;
    }

    .missions-vision__cards {
        grid-template-columns: 1fr 1fr;
    }

    .missions-initiatives__cards {
        grid-template-columns: 1fr 1fr;
    }

    .missions-impact__content,
    .missions-faq__intro {
        position: static;
    }
}

@media (max-width: 720px) {
    .page-missions .ministry-detail-hero__veil {
        background:
            linear-gradient(0deg, rgba(4, 20, 26, .98) 0%, rgba(4, 20, 26, .79) 55%, rgba(4, 20, 26, .29) 100%),
            linear-gradient(90deg, rgba(4, 20, 26, .55), transparent);
    }

    .page-missions .ministry-detail-hero h1 {
        font-size: clamp(3.35rem, 15vw, 5.3rem);
        line-height: .88;
    }

    #missions-welcome,
    #missions-vision,
    #missions-strategy,
    #missions-nations,
    #missions-involvement,
    #missions-impact,
    #missions-faq {
        scroll-margin-top: 105px;
    }

    .missions-welcome__grid,
    .missions-mission__grid,
    .missions-nations__grid,
    .missions-impact__grid,
    .missions-opportunities__grid,
    .missions-faq__grid {
        gap: 58px;
    }

    .missions-welcome__image,
    .missions-mission__image,
    .missions-nations__image,
    .missions-opportunities__image {
        height: min(133vw, 650px);
        border-radius: 25px 5px 25px 5px;
    }

    .missions-welcome__mark,
    .missions-nations__mark {
        right: 16px;
        bottom: 16px;
        min-width: 170px;
        padding: 19px;
    }

    .missions-vision__head,
    .missions-strategy__head,
    .missions-initiatives__head,
    .missions-involvement__head,
    .missions-stories__head,
    .missions-pillars__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .missions-vision__cards,
    .missions-initiatives__cards,
    .missions-involvement__cards,
    .missions-impact__measures,
    .missions-stories__quotes,
    .missions-pillars__cards {
        grid-template-columns: 1fr;
    }

    .missions-vision__cards article {
        min-height: 330px;
    }

    .missions-mission__visual blockquote {
        right: 16px;
        bottom: 16px;
        left: 16px;
        padding: 22px;
    }

    .missions-mission__content ol,
    .missions-opportunities__content ol,
    .missions-nations__list {
        grid-template-columns: 1fr;
    }

    .missions-strategy__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(282px, 86vw);
        margin-top: 46px;
    }

    .missions-strategy-card {
        min-height: 565px;
    }

    .missions-initiatives__stage,
    .missions-involvement__stage,
    .missions-stories__stage,
    .missions-pillars__stage {
        min-height: auto;
        border-radius: 25px 5px 25px 5px;
    }

    .missions-initiatives__image,
    .missions-involvement__image,
    .missions-stories__image,
    .missions-pillars__image {
        position: absolute;
    }

    .missions-initiatives__image::after,
    .missions-pillars__image::after {
        background: rgba(5, 28, 34, .87);
    }

    .missions-initiatives__cards,
    .missions-involvement__cards,
    .missions-stories__quotes,
    .missions-pillars__cards {
        width: 100%;
        padding: 28px;
    }

    .missions-initiatives__cards article,
    .missions-pillars__cards article {
        min-height: 235px;
    }

    .missions-involvement__cards article {
        min-height: 330px;
    }

    .missions-stories__quotes blockquote {
        min-height: 390px;
    }

    .missions-pillars__vision {
        grid-template-columns: 1fr;
        gap: 13px;
        padding: 30px;
    }

    .missions-faq__list summary {
        grid-template-columns: 36px minmax(0, 1fr) 22px;
        gap: 12px;
    }

    .missions-faq__list details > p {
        margin-right: 0;
        margin-left: 48px;
    }

    .missions-cta {
        min-height: 880px;
        align-items: flex-end;
    }

    .missions-cta__veil {
        background: linear-gradient(0deg, rgba(4, 21, 27, .99) 2%, rgba(4, 21, 27, .85) 59%, rgba(4, 21, 27, .27) 100%);
    }

    .missions-cta__inner {
        width: calc(100% - 32px);
        margin-inline: auto;
        padding-block: 95px 72px;
    }

    .missions-cta__inner h2 {
        font-size: clamp(2.75rem, 13vw, 4.7rem);
    }

    .missions-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .missions-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .missions-vision__cards article {
        padding: 28px;
    }

    .missions-strategy-card__content {
        padding: 30px 27px;
    }

    .missions-strategy-card__content h3 {
        font-size: 1.65rem;
    }

    .missions-mission__content li,
    .missions-opportunities__content li {
        grid-template-columns: 27px minmax(0, 1fr);
        gap: 9px;
    }

    .missions-nations__list a {
        padding: 16px;
    }

    .missions-initiatives__cards,
    .missions-involvement__cards,
    .missions-stories__quotes,
    .missions-pillars__cards {
        padding: 20px;
    }

    .missions-initiatives__cards article,
    .missions-involvement__cards article,
    .missions-stories__quotes blockquote,
    .missions-pillars__cards article {
        padding: 28px 26px;
    }

    .missions-faq__list summary strong {
        font-size: 1.13rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .missions-vision__cards article,
    .missions-strategy-card__image img,
    .missions-nations__list a {
        transition: none;
    }
}

/* Phase 1, Step 21 — Pastoral Care */

.page-pastoral-care {
    --pastoral-night: #082328;
    --pastoral-deep: #10383a;
    --pastoral-teal: #245b58;
    --pastoral-sage: #759683;
    --pastoral-clay: #b66f58;
    --pastoral-gold: #d5aa62;
    --pastoral-ivory: #f8f3e8;
    --pastoral-paper: #fffdf9;
    --pastoral-ink: #17383a;
    background: var(--pastoral-paper);
}

.page-pastoral-care .ministry-detail-hero__veil {
    background:
        linear-gradient(90deg, rgba(5, 29, 33, .97) 0%, rgba(5, 29, 33, .79) 48%, rgba(5, 29, 33, .27) 80%, rgba(5, 29, 33, .12) 100%),
        linear-gradient(0deg, rgba(5, 29, 33, .72), transparent 57%);
}

.page-pastoral-care .ministry-detail-hero__glow {
    background:
        radial-gradient(circle at 80% 38%, rgba(117, 150, 131, .29), transparent 35%),
        radial-gradient(circle at 42% 92%, rgba(213, 170, 98, .17), transparent 43%);
}

.page-pastoral-care .ministry-detail-hero h1 {
    max-width: 900px;
    font-size: clamp(4.5rem, 8vw, 8.6rem);
    line-height: .84;
}

.page-pastoral-care .ministry-detail-hero h1 em,
.page-pastoral-care .ministry-detail-hero blockquote cite {
    color: var(--pastoral-gold);
}

.page-pastoral-care .ministry-detail-hero__scroll i::after,
.page-pastoral-care .ministry-detail-nav a::after {
    background: var(--pastoral-clay);
}

#pastoral-welcome,
#pastoral-vision,
#pastoral-care-pathways,
#pastoral-request,
#pastoral-hope,
#pastoral-faq,
#pastoral-connect {
    scroll-margin-top: 150px;
}

.pastoral-welcome,
.pastoral-mission,
.pastoral-request,
.pastoral-faq {
    position: relative;
    overflow: clip;
    background: var(--pastoral-paper);
}

.pastoral-welcome {
    padding-block: clamp(94px, 10vw, 160px);
}

.pastoral-welcome::before {
    position: absolute;
    top: -230px;
    left: -260px;
    width: 700px;
    height: 700px;
    border: 1px solid rgba(36, 91, 88, .12);
    border-radius: 50%;
    box-shadow:
        0 0 0 78px rgba(36, 91, 88, .024),
        0 0 0 155px rgba(36, 91, 88, .015);
    content: "";
    pointer-events: none;
}

.pastoral-welcome__grid,
.pastoral-mission__grid,
.pastoral-faq__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(360px, .78fr);
    align-items: center;
    gap: clamp(60px, 8vw, 132px);
}

.pastoral-welcome__content .rich-copy {
    max-width: 720px;
}

.pastoral-welcome__visual,
.pastoral-mission__visual {
    position: relative;
    min-width: 0;
}

.pastoral-welcome__image,
.pastoral-mission__image {
    height: clamp(560px, 55vw, 780px);
    overflow: hidden;
    border-radius: 42px 8px 42px 8px;
    background: linear-gradient(135deg, var(--pastoral-deep), #365b51);
    box-shadow: 0 42px 90px rgba(5, 38, 39, .18);
}

.pastoral-welcome__image img,
.pastoral-mission__image img,
.pastoral-pathway-card__image img,
.pastoral-request__image img,
.pastoral-hope__image img,
.pastoral-cta__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pastoral-welcome__image::after,
.pastoral-mission__image::after {
    background: linear-gradient(0deg, rgba(5, 29, 33, .42), transparent 56%);
}

.pastoral-welcome__mark {
    position: absolute;
    right: -26px;
    bottom: 34px;
    z-index: 4;
    min-width: 250px;
    padding: 25px 28px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 20px 4px 20px 4px;
    color: #fff;
    background: rgba(8, 35, 40, .9);
    box-shadow: 0 22px 60px rgba(4, 25, 31, .3);
    backdrop-filter: blur(16px);
}

.pastoral-welcome__mark span {
    display: block;
    margin-bottom: 6px;
    color: var(--pastoral-gold);
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.pastoral-welcome__mark strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.28rem;
}

.pastoral-vision {
    position: relative;
    padding-block: clamp(100px, 10vw, 160px);
    overflow: clip;
    color: #fff;
    background:
        radial-gradient(circle at 87% 10%, rgba(117, 150, 131, .25), transparent 34%),
        linear-gradient(135deg, var(--pastoral-night), var(--pastoral-deep));
}

.pastoral-vision::after {
    position: absolute;
    right: -130px;
    bottom: -230px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(213, 170, 98, .14);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.pastoral-vision__head,
.pastoral-pathways__head,
.pastoral-request__head,
.pastoral-hope__head {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 56px;
}

.pastoral-vision__head > p,
.pastoral-request__head > p {
    max-width: 450px;
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .69);
    line-height: 1.82;
}

.pastoral-request__head > p {
    color: #627676;
}

.pastoral-vision__cards {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: clamp(56px, 6vw, 88px);
}

.pastoral-vision__cards article {
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: 42px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 30px 6px 30px 6px;
    background: rgba(255, 255, 255, .055);
    transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

.pastoral-vision__cards article:hover {
    border-color: rgba(213, 170, 98, .46);
    background: rgba(255, 255, 255, .085);
    transform: translateY(-8px);
}

.pastoral-vision__cards article > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.pastoral-vision__cards span,
.pastoral-vision__cards small {
    color: var(--pastoral-gold);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.pastoral-vision__cards h3 {
    max-width: 320px;
    margin: auto 0 18px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.9rem, 2.4vw, 2.75rem);
    line-height: 1.02;
}

.pastoral-vision__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .68);
    line-height: 1.75;
}

.pastoral-mission {
    padding-block: clamp(100px, 11vw, 170px);
}

.pastoral-mission__grid {
    grid-template-columns: minmax(340px, .78fr) minmax(0, .96fr);
}

.pastoral-mission__visual blockquote {
    position: absolute;
    right: -24px;
    bottom: 30px;
    left: 30px;
    z-index: 4;
    margin: 0;
    padding: 27px 30px;
    border-left: 4px solid var(--pastoral-clay);
    color: #fff;
    background: rgba(8, 35, 40, .92);
    box-shadow: 0 22px 60px rgba(4, 25, 31, .3);
    backdrop-filter: blur(16px);
}

.pastoral-mission__visual blockquote p {
    margin: 0 0 7px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.18rem, 1.7vw, 1.7rem);
    line-height: 1.3;
}

.pastoral-mission__visual blockquote cite {
    color: var(--pastoral-gold);
    font-size: .68rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.pastoral-mission__content > p:not(.eyebrow) {
    color: #637777;
    line-height: 1.8;
}

.pastoral-mission__content ol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 30px 0 0;
    padding: 0;
    list-style: none;
}

.pastoral-mission__content li {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    min-height: 77px;
    padding: 15px 17px;
    border: 1px solid rgba(23, 56, 58, .1);
    border-radius: 12px;
    background: #fff;
}

.pastoral-mission__content li span {
    color: var(--pastoral-clay);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.pastoral-mission__content li strong {
    color: var(--pastoral-ink);
    font-size: .88rem;
    line-height: 1.4;
}

.pastoral-pathways {
    padding-block: clamp(100px, 10vw, 160px);
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 12% 84%, rgba(117, 150, 131, .22), transparent 34%),
        var(--pastoral-night);
}

.pastoral-pathways__head {
    align-items: center;
}

.pastoral-pathways__track {
    width: min(1600px, calc(100% - 64px));
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(340px, 28vw);
    gap: 20px;
    margin: clamp(55px, 6vw, 88px) auto 0;
    padding: 3px 2px 28px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-behavior: smooth;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
}

.pastoral-pathways__track::-webkit-scrollbar {
    display: none;
}

.pastoral-pathway-card {
    position: relative;
    min-width: 0;
    min-height: 620px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 32px 6px 32px 6px;
    background: var(--pastoral-deep);
    box-shadow: 0 30px 70px rgba(2, 17, 22, .25);
    scroll-snap-align: start;
}

.pastoral-pathway-card__image,
.pastoral-pathway-card__veil {
    position: absolute;
    inset: 0;
}

.pastoral-pathway-card__image img {
    transition: transform .6s ease;
}

.pastoral-pathway-card:hover .pastoral-pathway-card__image img {
    transform: scale(1.035);
}

.pastoral-pathway-card__image::after {
    background: rgba(5, 28, 31, .06);
}

.pastoral-pathway-card__veil {
    z-index: 2;
    background: linear-gradient(0deg, rgba(5, 27, 30, .99) 5%, rgba(5, 27, 30, .83) 41%, rgba(5, 27, 30, .12) 80%);
}

.pastoral-pathway-card__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    padding: 38px;
}

.pastoral-pathway-card__content > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.pastoral-pathway-card__content span,
.pastoral-pathway-card__content small {
    color: var(--pastoral-gold);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.pastoral-pathway-card__content h3 {
    width: 100%;
    margin: 14px 0 16px;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.7rem, 2vw, 2.15rem);
    line-height: 1.02;
}

.pastoral-pathway-card__content p {
    margin: 0;
    color: rgba(255, 255, 255, .73);
    line-height: 1.68;
}

.pastoral-pathways__footer {
    color: rgba(255, 255, 255, .6);
}

.pastoral-pathways__footer [data-detail-status] {
    color: var(--pastoral-gold);
}

.pastoral-request {
    padding-block: clamp(100px, 11vw, 170px);
}

.pastoral-request__stage,
.pastoral-hope__stage {
    position: relative;
    min-height: 700px;
    margin-top: clamp(54px, 6vw, 86px);
    overflow: hidden;
    border-radius: 42px 8px 42px 8px;
    background: var(--pastoral-night);
    box-shadow: 0 38px 90px rgba(6, 35, 37, .17);
}

.pastoral-request__image,
.pastoral-hope__image {
    position: absolute;
    inset: 0;
}

.pastoral-request__image::after,
.pastoral-hope__image::after {
    background: rgba(5, 27, 31, .15);
}

.pastoral-request__veil,
.pastoral-hope__veil {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(5, 28, 32, .94), rgba(5, 28, 32, .55)),
        linear-gradient(0deg, rgba(5, 28, 32, .78), transparent 64%);
}

.pastoral-request__cards {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    padding: 54px;
}

.pastoral-request__cards article {
    min-height: 490px;
    display: flex;
    flex-direction: column;
    padding: 32px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 26px 5px 26px 5px;
    color: #fff;
    background: rgba(8, 35, 40, .64);
    backdrop-filter: blur(14px);
}

.pastoral-request__cards article > span,
.pastoral-hope__quotes blockquote > span {
    color: var(--pastoral-gold);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.pastoral-request__cards h3 {
    margin: auto 0 14px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 2vw, 2.2rem);
    line-height: 1.05;
}

.pastoral-request__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    line-height: 1.67;
}

.pastoral-request__cards .text-link {
    margin-top: 27px;
}

.pastoral-request__care-note {
    display: grid;
    grid-template-columns: minmax(280px, .68fr) minmax(0, 1fr);
    gap: clamp(34px, 6vw, 84px);
    margin-top: 34px;
    padding: clamp(34px, 5vw, 58px);
    border-left: 4px solid var(--pastoral-clay);
    background: var(--pastoral-ivory);
}

.pastoral-request__care-note span {
    display: block;
    margin-bottom: 14px;
    color: var(--pastoral-clay);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.pastoral-request__care-note h3 {
    margin: 0;
    color: var(--pastoral-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.65rem, 2.5vw, 2.7rem);
    line-height: 1.08;
}

.pastoral-request__care-note p {
    margin: 0;
    color: #5e7272;
    line-height: 1.8;
}

.pastoral-request__care-note p + p {
    margin-top: 14px;
}

.pastoral-hope {
    padding-block: clamp(100px, 10vw, 160px);
    color: #fff;
    background:
        radial-gradient(circle at 88% 14%, rgba(117, 150, 131, .21), transparent 34%),
        var(--pastoral-deep);
}

.pastoral-hope__stage {
    min-height: 670px;
}

.pastoral-hope__quotes {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    padding: 52px;
}

.pastoral-hope__quotes blockquote {
    min-height: 540px;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 35px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 27px 6px 27px 6px;
    background: rgba(8, 35, 40, .67);
    backdrop-filter: blur(14px);
}

.pastoral-hope__quotes p {
    margin: auto 0 28px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 1.65vw, 1.8rem);
    line-height: 1.36;
}

.pastoral-hope__quotes cite {
    color: rgba(255, 255, 255, .55);
    font-size: .7rem;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.pastoral-faq {
    padding-block: clamp(100px, 11vw, 170px);
}

.pastoral-faq__grid {
    align-items: start;
    grid-template-columns: minmax(300px, .68fr) minmax(0, 1fr);
}

.pastoral-faq__intro {
    position: sticky;
    top: 155px;
}

.pastoral-faq__intro > p:not(.eyebrow) {
    max-width: 540px;
    color: #617575;
    line-height: 1.8;
}

.pastoral-faq__list {
    border-top: 1px solid rgba(23, 56, 58, .14);
}

.pastoral-faq__list details {
    border-bottom: 1px solid rgba(23, 56, 58, .14);
}

.pastoral-faq__list summary {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 18px;
    padding: 29px 0;
    cursor: pointer;
    list-style: none;
}

.pastoral-faq__list summary::-webkit-details-marker {
    display: none;
}

.pastoral-faq__list summary > span {
    color: var(--pastoral-clay);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .1em;
}

.pastoral-faq__list summary strong {
    color: var(--pastoral-ink);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.3rem;
}

.pastoral-faq__list summary i {
    position: relative;
    width: 22px;
    height: 22px;
}

.pastoral-faq__list summary i::before,
.pastoral-faq__list summary i::after {
    position: absolute;
    top: 10px;
    left: 3px;
    width: 16px;
    height: 2px;
    background: var(--pastoral-teal);
    content: "";
    transition: transform .25s ease;
}

.pastoral-faq__list summary i::after {
    transform: rotate(90deg);
}

.pastoral-faq__list details[open] summary i::after {
    transform: rotate(0);
}

.pastoral-faq__list details > p {
    margin: -6px 40px 28px 62px;
    color: #607474;
    line-height: 1.82;
}

.pastoral-cta {
    position: relative;
    min-height: 800px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #fff;
    background: var(--pastoral-night);
}

.pastoral-cta__media,
.pastoral-cta__veil {
    position: absolute;
    inset: 0;
}

.pastoral-cta__media {
    z-index: 1;
}

.pastoral-cta__media::after {
    background: rgba(5, 25, 29, .12);
}

.pastoral-cta__veil {
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(5, 27, 31, .98) 0%, rgba(5, 27, 31, .9) 49%, rgba(5, 27, 31, .28) 82%),
        linear-gradient(0deg, rgba(5, 27, 31, .68), transparent 56%);
}

.pastoral-cta__inner {
    position: relative;
    z-index: 3;
    max-width: 980px;
    margin-left: max(32px, calc((100vw - var(--container)) / 2));
    padding-block: 110px;
}

.pastoral-cta__inner h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.5rem, 6vw, 6.8rem);
    line-height: .92;
    letter-spacing: -.045em;
}

.pastoral-cta__inner h2 em {
    display: block;
    color: var(--pastoral-gold);
    font-weight: 400;
}

.pastoral-cta__inner > p:not(.eyebrow) {
    max-width: 730px;
    color: rgba(255, 255, 255, .73);
    line-height: 1.8;
}

.pastoral-cta__inner .pastoral-cta__promise {
    margin-top: 26px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.3rem, 2vw, 1.85rem);
    line-height: 1.4;
}

.pastoral-cta__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px 22px;
    margin-top: 34px;
}

@media (max-width: 1180px) {
    .pastoral-request__cards {
        grid-template-columns: 1fr 1fr;
    }

    .pastoral-request__cards article {
        min-height: 350px;
    }

    .pastoral-hope__quotes {
        grid-template-columns: 1fr 1fr;
    }

    .pastoral-hope__quotes blockquote:last-child {
        grid-column: 1 / -1;
        min-height: 360px;
    }
}

@media (max-width: 1100px) {
    .page-pastoral-care .ministry-detail-hero h1 {
        font-size: clamp(4rem, 8vw, 7rem);
    }

    .pastoral-welcome__grid,
    .pastoral-mission__grid,
    .pastoral-faq__grid {
        grid-template-columns: 1fr;
    }

    .pastoral-welcome__visual,
    .pastoral-mission__visual {
        width: min(100%, 780px);
    }

    .pastoral-mission__content {
        order: -1;
    }

    .pastoral-vision__cards {
        grid-template-columns: 1fr 1fr;
    }

    .pastoral-vision__cards article:last-child {
        grid-column: 1 / -1;
        min-height: 300px;
    }

    .pastoral-faq__intro {
        position: static;
    }
}

@media (max-width: 720px) {
    .page-pastoral-care .ministry-detail-hero__veil {
        background:
            linear-gradient(0deg, rgba(5, 27, 31, .98) 0%, rgba(5, 27, 31, .8) 56%, rgba(5, 27, 31, .28) 100%),
            linear-gradient(90deg, rgba(5, 27, 31, .55), transparent);
    }

    .page-pastoral-care .ministry-detail-hero h1 {
        font-size: clamp(3.45rem, 16vw, 5.4rem);
        line-height: .88;
    }

    #pastoral-welcome,
    #pastoral-vision,
    #pastoral-care-pathways,
    #pastoral-request,
    #pastoral-hope,
    #pastoral-faq,
    #pastoral-connect {
        scroll-margin-top: 105px;
    }

    .pastoral-welcome__grid,
    .pastoral-mission__grid,
    .pastoral-faq__grid {
        gap: 58px;
    }

    .pastoral-welcome__image,
    .pastoral-mission__image {
        height: min(133vw, 650px);
        border-radius: 25px 5px 25px 5px;
    }

    .pastoral-welcome__mark {
        right: 16px;
        bottom: 16px;
        min-width: 215px;
        padding: 19px;
    }

    .pastoral-vision__head,
    .pastoral-pathways__head,
    .pastoral-request__head,
    .pastoral-hope__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .pastoral-vision__cards,
    .pastoral-request__cards,
    .pastoral-hope__quotes {
        grid-template-columns: 1fr;
    }

    .pastoral-vision__cards article,
    .pastoral-vision__cards article:last-child {
        grid-column: auto;
        min-height: 320px;
    }

    .pastoral-mission__visual blockquote {
        right: 16px;
        bottom: 16px;
        left: 16px;
        padding: 22px;
    }

    .pastoral-mission__content ol {
        grid-template-columns: 1fr;
    }

    .pastoral-pathways__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(282px, 86vw);
        margin-top: 46px;
    }

    .pastoral-pathway-card {
        min-height: 585px;
    }

    .pastoral-request__stage,
    .pastoral-hope__stage {
        min-height: auto;
        border-radius: 25px 5px 25px 5px;
    }

    .pastoral-request__image,
    .pastoral-hope__image {
        position: absolute;
    }

    .pastoral-request__cards,
    .pastoral-hope__quotes {
        width: 100%;
        padding: 28px;
    }

    .pastoral-request__cards article {
        min-height: 340px;
    }

    .pastoral-request__care-note {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 30px;
    }

    .pastoral-hope__quotes blockquote,
    .pastoral-hope__quotes blockquote:last-child {
        grid-column: auto;
        min-height: 390px;
    }

    .pastoral-faq__list summary {
        grid-template-columns: 36px minmax(0, 1fr) 22px;
        gap: 12px;
    }

    .pastoral-faq__list details > p {
        margin-right: 0;
        margin-left: 48px;
    }

    .pastoral-cta {
        min-height: 940px;
        align-items: flex-end;
    }

    .pastoral-cta__veil {
        background: linear-gradient(0deg, rgba(5, 27, 31, .99) 2%, rgba(5, 27, 31, .86) 61%, rgba(5, 27, 31, .27) 100%);
    }

    .pastoral-cta__inner {
        width: calc(100% - 32px);
        margin-inline: auto;
        padding-block: 95px 72px;
    }

    .pastoral-cta__inner h2 {
        font-size: clamp(2.75rem, 13vw, 4.7rem);
    }

    .pastoral-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .pastoral-cta__actions .button {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .pastoral-vision__cards article {
        padding: 28px;
    }

    .pastoral-pathway-card__content {
        padding: 30px 27px;
    }

    .pastoral-pathway-card__content h3 {
        font-size: 1.6rem;
    }

    .pastoral-mission__content li {
        grid-template-columns: 27px minmax(0, 1fr);
        gap: 9px;
    }

    .pastoral-request__cards,
    .pastoral-hope__quotes {
        padding: 20px;
    }

    .pastoral-request__cards article,
    .pastoral-hope__quotes blockquote {
        padding: 28px 26px;
    }

    .pastoral-faq__list summary strong {
        font-size: 1.13rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pastoral-vision__cards article,
    .pastoral-pathway-card__image img {
        transition: none;
    }
}

/* ================================================================
   Phase 1, Step 22 — Conferences & Events
   ================================================================ */

.page-conferences {
    --events-night: #071426;
    --events-navy: #0a2340;
    --events-blue: #173f68;
    --events-amber: #d9982e;
    --events-gold: #efc36d;
    --events-red: #a83832;
    --events-ivory: #fff9ed;
    --events-line: rgba(238, 195, 109, .24);
    background: var(--events-ivory);
}

.page-conferences main {
    overflow: clip;
}

.page-conferences .section-heading h2 {
    text-wrap: balance;
}

#conferences-welcome,
#conferences-pathways,
#conferences-experience,
#conferences-nations,
#conferences-upcoming,
#conferences-plan,
#conferences-faq {
    scroll-margin-top: 150px;
}

.conferences-hero {
    position: relative;
    min-height: min(890px, calc(100svh - 130px));
    display: flex;
    align-items: stretch;
    overflow: hidden;
    isolation: isolate;
    color: #fff;
    background:
        radial-gradient(circle at 78% 22%, rgba(217, 152, 46, .28), transparent 31%),
        linear-gradient(125deg, #071426 8%, #0c2948 62%, #181b29 100%);
}

.conferences-hero__media.site-image,
.conferences-hero__veil,
.conferences-hero__glow {
    position: absolute;
    inset: 0;
}

.conferences-hero__media.site-image {
    z-index: -4;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.conferences-hero__media.site-image--pending {
    display: none;
}

.conferences-hero__media picture,
.conferences-hero__media img {
    width: 100%;
    height: 100%;
}

.conferences-hero__media img {
    object-fit: cover;
    object-position: center;
}

.conferences-hero__veil {
    z-index: -3;
    background:
        linear-gradient(90deg, rgba(5, 17, 33, .96) 0%, rgba(5, 20, 37, .89) 35%, rgba(7, 22, 39, .38) 68%, rgba(6, 16, 29, .7) 100%),
        linear-gradient(0deg, rgba(5, 16, 30, .88), transparent 48%);
}

.conferences-hero__glow {
    z-index: -2;
    width: 520px;
    height: 520px;
    top: auto;
    right: -110px;
    bottom: -230px;
    left: auto;
    border: 1px solid rgba(239, 195, 109, .26);
    border-radius: 50%;
    box-shadow:
        0 0 0 74px rgba(239, 195, 109, .045),
        0 0 0 150px rgba(239, 195, 109, .025);
}

.conferences-hero__inner {
    position: relative;
    min-height: inherit;
    display: flex;
    align-items: center;
    padding-block: 116px 124px;
}

.conferences-breadcrumb {
    position: absolute;
    top: 34px;
    left: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, .62);
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.conferences-breadcrumb a {
    color: var(--events-gold);
    text-decoration: none;
}

.conferences-breadcrumb a:hover,
.conferences-breadcrumb a:focus-visible {
    text-decoration: underline;
}

.conferences-hero__content {
    width: min(760px, 72%);
}

.conferences-hero__content h1 {
    margin: 22px 0 16px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4.6rem, 8vw, 8.4rem);
    font-weight: 500;
    letter-spacing: -.055em;
    line-height: .83;
    text-wrap: balance;
}

.conferences-hero__content h1 em {
    display: block;
    color: var(--events-gold);
    font-weight: 400;
}

.conferences-hero__statement {
    margin: 0 0 18px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2.1vw, 1.75rem);
    font-style: italic;
}

.conferences-hero__intro {
    max-width: 660px;
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-size: clamp(1rem, 1.25vw, 1.16rem);
    line-height: 1.8;
}

.conferences-hero__actions,
.conferences-upcoming__actions,
.conferences-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.conferences-hero__actions {
    margin-top: 34px;
}

.conferences-hero__scroll {
    position: absolute;
    bottom: 34px;
    left: 0;
    display: inline-flex;
    align-items: center;
    gap: 13px;
    color: rgba(255, 255, 255, .64);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-decoration: none;
    text-transform: uppercase;
}

.conferences-hero__scroll span {
    position: relative;
    width: 31px;
    height: 31px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 50%;
}

.conferences-hero__scroll span::after {
    content: "";
    position: absolute;
    top: 9px;
    left: 12px;
    width: 5px;
    height: 8px;
    border-right: 1px solid var(--events-gold);
    border-bottom: 1px solid var(--events-gold);
    transform: rotate(45deg);
}

.conferences-nav {
    position: sticky;
    top: 0;
    z-index: 30;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    background: rgba(7, 20, 38, .96);
    box-shadow: 0 14px 35px rgba(5, 15, 30, .15);
    backdrop-filter: blur(14px);
}

.is-administrator-preview .conferences-nav {
    top: 43px;
}

.conferences-nav__inner {
    min-height: 66px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    overflow-x: auto;
    scrollbar-width: none;
}

.conferences-nav__inner::-webkit-scrollbar {
    display: none;
}

.conferences-nav a {
    min-width: max-content;
    display: flex;
    align-items: center;
    padding: 0 20px;
    border-bottom: 2px solid transparent;
    color: rgba(255, 255, 255, .63);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .2s ease, border-color .2s ease;
}

.conferences-nav a:hover,
.conferences-nav a:focus-visible {
    border-color: var(--events-gold);
    color: #fff;
}

.conferences-welcome {
    padding-block: 128px;
    background:
        radial-gradient(circle at 15% 20%, rgba(217, 152, 46, .09), transparent 27%),
        var(--events-ivory);
}

.conferences-welcome__grid,
.conferences-nations__grid,
.conferences-plan__grid {
    display: grid;
    align-items: center;
    grid-template-columns: minmax(0, .94fr) minmax(420px, .76fr);
    gap: clamp(70px, 9vw, 132px);
}

.conferences-welcome__content .section-heading h2,
.conferences-experience__head .section-heading h2,
.conferences-upcoming__head .section-heading h2,
.conferences-plan__content .section-heading h2 {
    font-size: clamp(3rem, 5vw, 5.35rem);
}

.conferences-welcome__content .rich-copy {
    max-width: 690px;
    color: #566578;
    font-size: 1.02rem;
    line-height: 1.86;
}

.conferences-welcome__promise {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 32px;
}

.conferences-welcome__promise span {
    padding: 10px 15px;
    border: 1px solid rgba(13, 48, 80, .13);
    border-radius: 999px;
    color: var(--events-navy);
    background: rgba(255, 255, 255, .65);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.conferences-welcome__visual,
.conferences-plan__visual {
    position: relative;
    min-height: 670px;
}

.conferences-welcome__visual::before {
    content: "";
    position: absolute;
    inset: 40px -24px -24px 44px;
    z-index: 0;
    border: 1px solid rgba(217, 152, 46, .28);
    border-radius: 46% 46% 24px 24px;
}

.conferences-welcome__image,
.conferences-plan__image {
    position: absolute;
    inset: 0;
    overflow: hidden;
    border-radius: 240px 240px 24px 24px;
    background: linear-gradient(145deg, #d9b87b, #0b2d50);
    box-shadow: 0 34px 80px rgba(7, 27, 49, .19);
}

.conferences-welcome__image picture,
.conferences-welcome__image img,
.conferences-plan__image picture,
.conferences-plan__image img {
    width: 100%;
    height: 100%;
}

.conferences-welcome__image img,
.conferences-plan__image img {
    object-fit: cover;
}

.conferences-welcome__mark {
    position: absolute;
    right: -28px;
    bottom: 48px;
    z-index: 2;
    width: 190px;
    min-height: 190px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 24px;
    border: 7px solid var(--events-ivory);
    border-radius: 50%;
    color: #fff;
    background: var(--events-red);
    text-align: center;
    box-shadow: 0 20px 55px rgba(81, 30, 29, .28);
}

.conferences-welcome__mark span {
    color: rgba(255, 255, 255, .7);
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.conferences-welcome__mark strong {
    margin-top: 6px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    font-weight: 500;
}

.conferences-pathways {
    padding-block: 122px 108px;
    color: #fff;
    background:
        radial-gradient(circle at 84% 10%, rgba(217, 152, 46, .18), transparent 28%),
        linear-gradient(135deg, var(--events-night), #0b2b4c 72%, #10243a);
}

.conferences-pathways__head,
.conferences-experience__head,
.conferences-upcoming__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 36px;
}

.conferences-pathways__head .section-heading {
    max-width: 850px;
}

.conferences-pathways__track {
    width: min(calc(100% - 64px), var(--container));
    display: grid;
    grid-auto-columns: minmax(360px, 31%);
    grid-auto-flow: column;
    gap: 20px;
    margin: 60px auto 0;
    padding: 0 0 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

.conferences-pathways__track::-webkit-scrollbar {
    display: none;
}

.conferences-pathway-card {
    position: relative;
    min-height: 630px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 28px;
    background: #102942;
    scroll-snap-align: start;
    box-shadow: 0 24px 65px rgba(0, 0, 0, .22);
}

.conferences-pathway-card__image,
.conferences-pathway-card__veil {
    position: absolute;
    inset: 0;
}

.conferences-pathway-card__image picture,
.conferences-pathway-card__image img {
    width: 100%;
    height: 100%;
}

.conferences-pathway-card__image img {
    object-fit: cover;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1);
}

.conferences-pathway-card:hover .conferences-pathway-card__image img {
    transform: scale(1.045);
}

.conferences-pathway-card__veil {
    background:
        linear-gradient(0deg, rgba(4, 16, 29, .98) 4%, rgba(5, 20, 37, .82) 48%, rgba(5, 17, 31, .16) 84%),
        linear-gradient(120deg, rgba(164, 56, 50, .18), transparent 52%);
}

.conferences-pathway-card__content {
    position: absolute;
    inset: auto 0 0;
    z-index: 2;
    padding: 38px 34px;
}

.conferences-pathway-card__content > div {
    display: flex;
    align-items: center;
    gap: 12px;
}

.conferences-pathway-card__content > div span,
.conferences-pathway-card__content > div small {
    color: var(--events-gold);
    font-size: .65rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.conferences-pathway-card__content > div span {
    width: 33px;
    height: 33px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(239, 195, 109, .42);
    border-radius: 50%;
}

.conferences-pathway-card__content h3 {
    margin: 18px 0 12px;
    overflow-wrap: normal;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 2.7vw, 2.75rem);
    font-weight: 500;
    letter-spacing: -.035em;
    line-height: 1.02;
    text-wrap: balance;
    word-break: normal;
}

.conferences-pathway-card__content p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    line-height: 1.7;
}

.conferences-pathway-card__content a {
    display: inline-flex;
    gap: 8px;
    margin-top: 21px;
    color: var(--events-gold);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .055em;
    text-decoration: none;
    text-transform: uppercase;
}

.conferences-pathways__footer {
    color: rgba(255, 255, 255, .58);
}

.conferences-pathways__footer [data-detail-status] {
    color: var(--events-gold);
}

.conferences-experience {
    padding-block: 126px;
    background: #fff;
}

.conferences-experience__head > p,
.conferences-upcoming__head > p {
    max-width: 470px;
    margin: 0 0 10px;
    color: #667487;
    line-height: 1.75;
}

.conferences-experience__stage,
.conferences-upcoming__stage {
    position: relative;
    min-height: 680px;
    margin-top: 58px;
    display: flex;
    align-items: end;
    overflow: hidden;
    border-radius: 34px;
    background: var(--events-navy);
    box-shadow: 0 34px 85px rgba(8, 31, 55, .16);
}

.conferences-experience__image,
.conferences-experience__veil,
.conferences-upcoming__image,
.conferences-upcoming__veil {
    position: absolute;
    inset: 0;
}

.conferences-experience__image picture,
.conferences-experience__image img,
.conferences-upcoming__image picture,
.conferences-upcoming__image img {
    width: 100%;
    height: 100%;
}

.conferences-experience__image img,
.conferences-upcoming__image img {
    object-fit: cover;
}

.conferences-experience__veil {
    background: linear-gradient(0deg, rgba(5, 20, 37, .98) 4%, rgba(5, 20, 37, .68) 52%, rgba(5, 20, 37, .18));
}

.conferences-experience__cards {
    position: relative;
    z-index: 2;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    padding: 0 44px 44px;
}

.conferences-experience__cards article {
    min-height: 300px;
    padding: 36px;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(7, 24, 42, .77);
    backdrop-filter: blur(14px);
}

.conferences-experience__cards article:first-child {
    border-radius: 22px 0 0 22px;
}

.conferences-experience__cards article:last-child {
    border-radius: 0 22px 22px 0;
}

.conferences-experience__cards span {
    color: var(--events-gold);
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .1em;
}

.conferences-experience__cards h3 {
    margin: 42px 0 12px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.8rem, 2.5vw, 2.5rem);
    font-weight: 500;
}

.conferences-experience__cards p {
    margin: 0;
    color: rgba(255, 255, 255, .68);
    line-height: 1.72;
}

.conferences-nations {
    padding-block: 124px;
    color: #fff;
    background:
        radial-gradient(circle at 20% 10%, rgba(217, 152, 46, .18), transparent 30%),
        var(--events-night);
}

.conferences-nations__grid {
    grid-template-columns: minmax(420px, .8fr) minmax(0, 1fr);
}

.conferences-nations__visual {
    position: relative;
    min-height: 650px;
}

.conferences-nations__visual::after {
    content: "";
    position: absolute;
    inset: 28px -24px -24px 28px;
    z-index: 0;
    border: 1px solid var(--events-line);
    border-radius: 26px;
}

.conferences-nations__image {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
    border-radius: 26px;
    background: #123451;
}

.conferences-nations__image picture,
.conferences-nations__image img {
    width: 100%;
    height: 100%;
}

.conferences-nations__image img {
    object-fit: cover;
}

.conferences-nations__content > p:not(.eyebrow) {
    max-width: 650px;
    color: rgba(255, 255, 255, .68);
    line-height: 1.8;
}

.conferences-nations__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 34px 0;
}

.conferences-nations__list article {
    min-height: 90px;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 16px;
    background: rgba(255, 255, 255, .045);
}

.conferences-nations__list span {
    color: var(--events-gold);
    font-size: .68rem;
    font-weight: 850;
}

.conferences-nations__list strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.1rem;
    font-weight: 500;
}

.conferences-upcoming {
    padding-block: 126px;
    background:
        linear-gradient(rgba(217, 152, 46, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(217, 152, 46, .035) 1px, transparent 1px),
        var(--events-ivory);
    background-size: 50px 50px;
}

.conferences-upcoming__stage {
    min-height: 610px;
    align-items: center;
}

.conferences-upcoming__veil {
    background: linear-gradient(90deg, rgba(5, 19, 35, .96), rgba(5, 19, 35, .77) 52%, rgba(5, 19, 35, .28));
}

.conferences-upcoming__panel {
    position: relative;
    z-index: 2;
    width: min(680px, 72%);
    margin: 60px;
    padding: clamp(34px, 5vw, 58px);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 24px;
    color: #fff;
    background: rgba(7, 23, 40, .82);
    box-shadow: 0 26px 60px rgba(0, 0, 0, .24);
    backdrop-filter: blur(18px);
}

.conferences-upcoming__status {
    display: inline-flex;
    padding: 9px 13px;
    border: 1px solid rgba(239, 195, 109, .38);
    border-radius: 999px;
    color: var(--events-gold);
    background: rgba(239, 195, 109, .07);
    font-size: .65rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.conferences-upcoming__panel h3 {
    max-width: 550px;
    margin: 23px 0 15px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.2rem, 4vw, 4.1rem);
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: 1.02;
    text-wrap: balance;
}

.conferences-upcoming__panel p {
    max-width: 560px;
    margin: 0;
    color: rgba(255, 255, 255, .68);
    line-height: 1.75;
}

.conferences-upcoming__actions {
    margin-top: 28px;
}

.conferences-plan {
    padding-block: 126px;
    background: #fff;
}

.conferences-plan__content > p:not(.eyebrow) {
    max-width: 650px;
    color: #657386;
    line-height: 1.8;
}

.conferences-plan__content ol {
    display: grid;
    gap: 0;
    margin: 38px 0 0;
    padding: 0;
    list-style: none;
}

.conferences-plan__content li {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 18px;
    padding: 23px 0;
    border-top: 1px solid rgba(13, 46, 77, .12);
}

.conferences-plan__content li:last-child {
    border-bottom: 1px solid rgba(13, 46, 77, .12);
}

.conferences-plan__content li > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: var(--events-red);
    font-size: .68rem;
    font-weight: 850;
}

.conferences-plan__content h3 {
    margin: 0 0 7px;
    color: var(--events-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
    font-weight: 500;
}

.conferences-plan__content li p {
    margin: 0;
    color: #667487;
    line-height: 1.65;
}

.conferences-plan__visual blockquote {
    position: absolute;
    right: -30px;
    bottom: 42px;
    z-index: 2;
    width: min(370px, 82%);
    margin: 0;
    padding: 30px;
    border: 7px solid #fff;
    border-radius: 20px;
    color: #fff;
    background: var(--events-navy);
    box-shadow: 0 25px 60px rgba(7, 31, 54, .23);
}

.conferences-plan__visual blockquote p {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.45rem;
    line-height: 1.35;
}

.conferences-plan__visual cite {
    display: block;
    margin-top: 13px;
    color: var(--events-gold);
    font-size: .63rem;
    font-style: normal;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.conferences-faq {
    padding-block: 126px;
    color: #fff;
    background:
        radial-gradient(circle at 80% 12%, rgba(217, 152, 46, .18), transparent 29%),
        linear-gradient(135deg, #071426, #0a2c4d);
}

.conferences-faq__grid {
    display: grid;
    align-items: start;
    grid-template-columns: minmax(0, .72fr) minmax(520px, 1fr);
    gap: clamp(60px, 8vw, 120px);
}

.conferences-faq__intro {
    position: sticky;
    top: 110px;
}

.conferences-faq__intro > p:not(.eyebrow) {
    max-width: 500px;
    color: rgba(255, 255, 255, .65);
    line-height: 1.8;
}

.conferences-faq__list details {
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.conferences-faq__list details:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.conferences-faq__list summary {
    display: grid;
    align-items: center;
    grid-template-columns: 42px minmax(0, 1fr) 28px;
    gap: 16px;
    padding: 29px 0;
    cursor: pointer;
    list-style: none;
}

.conferences-faq__list summary::-webkit-details-marker {
    display: none;
}

.conferences-faq__list summary > span {
    color: var(--events-gold);
    font-size: .67rem;
    font-weight: 850;
}

.conferences-faq__list summary strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    font-weight: 500;
}

.conferences-faq__list summary i {
    position: relative;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
}

.conferences-faq__list summary i::before,
.conferences-faq__list summary i::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 8px;
    width: 10px;
    height: 1px;
    background: var(--events-gold);
    transition: transform .2s ease;
}

.conferences-faq__list summary i::after {
    transform: rotate(90deg);
}

.conferences-faq__list details[open] summary i::after {
    transform: rotate(0deg);
}

.conferences-faq__list details > p {
    margin: -7px 38px 30px 58px;
    color: rgba(255, 255, 255, .64);
    line-height: 1.75;
}

.conferences-cta {
    position: relative;
    min-height: 720px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    color: #fff;
    background: linear-gradient(120deg, var(--events-night), var(--events-blue));
}

.conferences-cta__media.site-image,
.conferences-cta__veil {
    position: absolute;
    inset: 0;
}

.conferences-cta__media.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.conferences-cta__media.site-image--pending {
    display: none;
}

.conferences-cta__media picture,
.conferences-cta__media img {
    width: 100%;
    height: 100%;
}

.conferences-cta__media img {
    object-fit: cover;
}

.conferences-cta__veil {
    z-index: -2;
    background: linear-gradient(90deg, rgba(5, 17, 32, .97), rgba(5, 18, 34, .83) 50%, rgba(5, 18, 34, .35));
}

.conferences-cta__inner {
    padding-block: 100px;
}

.conferences-cta__inner h2 {
    max-width: 850px;
    margin: 20px 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.7rem, 7vw, 7rem);
    font-weight: 500;
    letter-spacing: -.055em;
    line-height: .92;
    text-wrap: balance;
}

.conferences-cta__inner h2 em {
    display: block;
    color: var(--events-gold);
    font-weight: 400;
}

.conferences-cta__inner > p:not(.eyebrow) {
    max-width: 650px;
    color: rgba(255, 255, 255, .72);
    font-size: 1.05rem;
    line-height: 1.8;
}

.conferences-cta__actions {
    margin-top: 31px;
}

@media (max-width: 1120px) {
    .conferences-hero__content {
        width: min(760px, 82%);
    }

    .conferences-welcome__grid,
    .conferences-nations__grid,
    .conferences-plan__grid {
        gap: 65px;
    }

    .conferences-pathways__track {
        grid-auto-columns: minmax(350px, 45%);
    }

    .conferences-faq__grid {
        grid-template-columns: minmax(0, .65fr) minmax(480px, 1fr);
        gap: 60px;
    }
}

@media (max-width: 900px) {
    .conferences-hero {
        min-height: 810px;
    }

    .conferences-hero__content {
        width: min(690px, 100%);
    }

    .conferences-hero__veil {
        background:
            linear-gradient(90deg, rgba(5, 17, 33, .94), rgba(5, 20, 37, .7)),
            linear-gradient(0deg, rgba(5, 16, 30, .9), transparent 60%);
    }

    .conferences-nav__inner {
        justify-content: start;
    }

    .conferences-welcome__grid,
    .conferences-nations__grid,
    .conferences-plan__grid,
    .conferences-faq__grid {
        grid-template-columns: 1fr;
    }

    .conferences-welcome__content,
    .conferences-nations__content,
    .conferences-plan__content {
        max-width: 740px;
    }

    .conferences-welcome__visual,
    .conferences-plan__visual,
    .conferences-nations__visual {
        width: min(620px, 90%);
        min-height: 690px;
        margin-inline: auto;
    }

    .conferences-experience__cards {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .conferences-experience__cards article {
        min-height: auto;
    }

    .conferences-experience__cards article:first-child,
    .conferences-experience__cards article:last-child {
        border-radius: 18px;
    }

    .conferences-experience__cards h3 {
        margin-top: 20px;
    }

    .conferences-upcoming__panel {
        width: calc(100% - 80px);
        margin: 40px;
    }

    .conferences-faq__intro {
        position: static;
    }
}

@media (max-width: 720px) {
    #conferences-welcome,
    #conferences-pathways,
    #conferences-experience,
    #conferences-nations,
    #conferences-upcoming,
    #conferences-plan,
    #conferences-faq {
        scroll-margin-top: 118px;
    }

    .conferences-hero {
        min-height: 860px;
        align-items: flex-end;
    }

    .conferences-hero__media img {
        object-position: center top;
    }

    .conferences-hero__veil {
        background: linear-gradient(0deg, rgba(5, 16, 30, .98) 5%, rgba(5, 17, 31, .9) 52%, rgba(5, 17, 31, .3) 100%);
    }

    .conferences-hero__inner {
        align-items: flex-end;
        padding-block: 90px 102px;
    }

    .conferences-breadcrumb {
        top: 24px;
    }

    .conferences-hero__content h1 {
        font-size: clamp(3.05rem, 14.2vw, 4.25rem);
    }

    .conferences-hero__intro {
        font-size: .98rem;
        line-height: 1.68;
    }

    .conferences-hero__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .conferences-hero__actions .button {
        justify-content: center;
    }

    .conferences-hero__scroll {
        bottom: 26px;
    }

    .conferences-nav a {
        padding-inline: 16px;
    }

    .conferences-welcome,
    .conferences-pathways,
    .conferences-experience,
    .conferences-nations,
    .conferences-upcoming,
    .conferences-plan,
    .conferences-faq {
        padding-block: 92px;
    }

    .conferences-pathways__head,
    .conferences-experience__head,
    .conferences-upcoming__head {
        align-items: start;
        flex-direction: column;
    }

    .conferences-pathways__track {
        width: calc(100% - 32px);
        grid-auto-columns: minmax(292px, 88%);
        margin-top: 42px;
    }

    .conferences-pathway-card {
        min-height: 590px;
    }

    .conferences-pathway-card__content {
        padding: 30px 27px;
    }

    .conferences-welcome__visual,
    .conferences-plan__visual,
    .conferences-nations__visual {
        width: calc(100% - 22px);
        min-height: 610px;
    }

    .conferences-welcome__mark {
        right: -11px;
        bottom: 28px;
        width: 156px;
        min-height: 156px;
        padding: 18px;
    }

    .conferences-welcome__mark strong {
        font-size: 1.05rem;
    }

    .conferences-experience__stage {
        min-height: 940px;
    }

    .conferences-experience__cards {
        padding: 20px;
    }

    .conferences-experience__cards article {
        padding: 28px;
    }

    .conferences-nations__list {
        grid-template-columns: 1fr;
    }

    .conferences-upcoming__stage {
        min-height: 760px;
        align-items: flex-end;
    }

    .conferences-upcoming__veil {
        background: linear-gradient(0deg, rgba(5, 19, 35, .98) 4%, rgba(5, 19, 35, .86) 61%, rgba(5, 19, 35, .25));
    }

    .conferences-upcoming__panel {
        width: calc(100% - 32px);
        margin: 16px;
        padding: 32px 26px;
    }

    .conferences-upcoming__actions,
    .conferences-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .conferences-upcoming__actions .button,
    .conferences-cta__actions .button {
        justify-content: center;
    }

    .conferences-plan__visual blockquote {
        right: -11px;
        bottom: 26px;
    }

    .conferences-faq__list details > p {
        margin-right: 0;
        margin-left: 58px;
    }

    .conferences-cta {
        min-height: 830px;
        align-items: flex-end;
    }

    .conferences-cta__veil {
        background: linear-gradient(0deg, rgba(5, 17, 32, .99) 4%, rgba(5, 18, 34, .86) 62%, rgba(5, 18, 34, .25));
    }

    .conferences-cta__inner {
        padding-block: 90px 72px;
    }

    .conferences-cta__inner h2 {
        font-size: clamp(3.15rem, 15vw, 5.2rem);
    }
}

@media (max-width: 480px) {
    .conferences-hero__content h1 {
        font-size: clamp(3.05rem, 14.2vw, 4.1rem);
    }

    .conferences-pathway-card__content h3 {
        font-size: 2rem;
    }

    .conferences-welcome__visual,
    .conferences-plan__visual,
    .conferences-nations__visual {
        min-height: 540px;
    }

    .conferences-welcome__image,
    .conferences-plan__image {
        border-radius: 180px 180px 22px 22px;
    }

    .conferences-experience__cards {
        padding: 14px;
    }

    .conferences-experience__cards article {
        padding: 25px 23px;
    }

    .conferences-faq__list summary {
        grid-template-columns: 34px minmax(0, 1fr) 28px;
        gap: 10px;
    }

    .conferences-faq__list summary strong {
        font-size: 1.08rem;
    }

    .conferences-faq__list details > p {
        margin-left: 44px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .conferences-pathway-card__image img {
        transition: none;
    }
}

/* ================================================================
   Phase 1, Step 23 — Watch
   ================================================================ */

.page-watch {
    --watch-night: #050914;
    --watch-navy: #081426;
    --watch-blue: #1b5cff;
    --watch-cyan: #68d8ff;
    --watch-violet: #6f4dff;
    --watch-live: #ea394f;
    --watch-gold: #efc36d;
    --watch-ivory: #f8f5ed;
    --watch-line: rgba(104, 216, 255, .2);
    background: var(--watch-ivory);
}

.page-watch main {
    overflow: clip;
}

.page-watch .section-heading h2 {
    text-wrap: balance;
}

.page-watch .button--dark {
    color: #fff;
    background: var(--watch-night);
    box-shadow: 0 15px 34px rgba(5, 9, 20, .2);
}

.page-watch .button--dark:hover,
.page-watch .button--dark:focus-visible {
    background: var(--watch-blue);
}

#media-watch-welcome,
#media-watch-pathways,
#media-watch-live,
#media-watch-study,
#media-watch-library,
#media-watch-tv,
#media-watch-faq {
    scroll-margin-top: 150px;
}

.media-watch-hero {
    position: relative;
    min-height: min(890px, calc(100svh - 130px));
    display: flex;
    align-items: stretch;
    overflow: hidden;
    isolation: isolate;
    color: #fff;
    background:
        radial-gradient(circle at 77% 22%, rgba(27, 92, 255, .34), transparent 31%),
        linear-gradient(125deg, #040811 8%, #0a1830 58%, #16102e 100%);
}

.media-watch-hero__media.site-image,
.media-watch-hero__veil,
.media-watch-hero__signal {
    position: absolute;
    inset: 0;
}

.media-watch-hero__media.site-image {
    z-index: -4;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.media-watch-hero__media.site-image--pending {
    display: none;
}

.media-watch-hero__media picture,
.media-watch-hero__media img {
    width: 100%;
    height: 100%;
}

.media-watch-hero__media img {
    object-fit: cover;
    object-position: center;
    animation: watch-hero-breathe 20s ease-in-out infinite alternate;
}

@keyframes watch-hero-breathe {
    to {
        transform: scale(1.035);
    }
}

.media-watch-hero__veil {
    z-index: -3;
    background:
        linear-gradient(90deg, rgba(3, 7, 16, .97) 0%, rgba(4, 11, 23, .9) 38%, rgba(5, 13, 28, .34) 71%, rgba(4, 8, 18, .75) 100%),
        linear-gradient(0deg, rgba(3, 7, 15, .92), transparent 52%);
}

.media-watch-hero__signal {
    z-index: -2;
    opacity: .7;
    background:
        linear-gradient(90deg, transparent 0 77%, rgba(104, 216, 255, .12) 77% 77.08%, transparent 77.08%),
        linear-gradient(0deg, transparent 0 74%, rgba(111, 77, 255, .1) 74% 74.1%, transparent 74.1%);
}

.media-watch-hero__signal::before,
.media-watch-hero__signal::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(104, 216, 255, .16);
    border-radius: 50%;
}

.media-watch-hero__signal::before {
    width: 500px;
    height: 500px;
    right: -170px;
    bottom: -180px;
    box-shadow:
        0 0 0 70px rgba(27, 92, 255, .04),
        0 0 0 145px rgba(111, 77, 255, .025);
}

.media-watch-hero__signal::after {
    width: 12px;
    height: 12px;
    right: 21%;
    top: 23%;
    border: 0;
    background: var(--watch-live);
    box-shadow:
        0 0 0 8px rgba(234, 57, 79, .1),
        0 0 32px rgba(234, 57, 79, .8);
}

.media-watch-hero__inner {
    position: relative;
    min-height: inherit;
    display: flex;
    align-items: center;
    padding-block: 116px 138px;
}

.media-watch-breadcrumb {
    position: absolute;
    top: 34px;
    left: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, .6);
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.media-watch-breadcrumb a {
    color: var(--watch-cyan);
    text-decoration: none;
}

.media-watch-breadcrumb a:hover,
.media-watch-breadcrumb a:focus-visible {
    text-decoration: underline;
}

.media-watch-hero__content {
    width: min(810px, 72%);
}

.media-watch-hero__content h1 {
    margin: 22px 0 18px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4.8rem, 8.6vw, 9rem);
    font-weight: 500;
    letter-spacing: -.06em;
    line-height: .81;
    text-wrap: balance;
}

.media-watch-hero__content h1 em {
    display: block;
    color: var(--watch-cyan);
    font-weight: 400;
}

.media-watch-hero__statement {
    margin: 0 0 18px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2.2vw, 1.8rem);
    font-style: italic;
}

.media-watch-hero__intro {
    max-width: 690px;
    margin: 0;
    color: rgba(255, 255, 255, .76);
    font-size: clamp(1rem, 1.25vw, 1.16rem);
    line-height: 1.8;
}

.media-watch-hero__actions,
.media-watch-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.media-watch-hero__actions {
    margin-top: 34px;
}

.media-watch-hero__channels {
    position: absolute;
    right: 0;
    bottom: 38px;
    display: flex;
    align-items: center;
    gap: 18px;
    color: rgba(255, 255, 255, .58);
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.media-watch-hero__channels span {
    display: inline-flex;
    align-items: center;
    gap: 18px;
}

.media-watch-hero__channels span:not(:last-child)::after {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--watch-cyan);
}

.media-watch-nav {
    position: sticky;
    top: 0;
    z-index: 35;
    border-bottom: 1px solid rgba(104, 216, 255, .13);
    color: rgba(255, 255, 255, .66);
    background: rgba(5, 9, 20, .96);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .12);
    backdrop-filter: blur(18px);
}

.media-watch-nav__inner {
    min-height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(20px, 3.3vw, 48px);
    overflow-x: auto;
    scrollbar-width: none;
}

.media-watch-nav__inner::-webkit-scrollbar {
    display: none;
}

.media-watch-nav a {
    position: relative;
    flex: 0 0 auto;
    padding-block: 23px 20px;
    color: inherit;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .2s ease;
}

.media-watch-nav a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    background: var(--watch-cyan);
    transform: scaleX(0);
    transition: transform .2s ease;
}

.media-watch-nav a:hover,
.media-watch-nav a:focus-visible {
    color: #fff;
}

.media-watch-nav a:hover::after,
.media-watch-nav a:focus-visible::after {
    transform: scaleX(1);
}

.media-watch-welcome {
    position: relative;
    padding-block: clamp(92px, 10vw, 150px);
    background:
        radial-gradient(circle at 80% 22%, rgba(27, 92, 255, .08), transparent 28%),
        var(--watch-ivory);
}

.media-watch-welcome__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
    align-items: center;
    gap: clamp(54px, 9vw, 130px);
}

.media-watch-welcome__content .rich-copy {
    max-width: 690px;
    color: #586579;
}

.media-watch-welcome__console {
    position: relative;
    min-height: 520px;
    display: grid;
    align-content: center;
    padding: clamp(28px, 4vw, 54px);
    overflow: hidden;
    border: 1px solid rgba(104, 216, 255, .18);
    border-radius: 38px;
    color: #fff;
    background:
        radial-gradient(circle at 83% 17%, rgba(104, 216, 255, .19), transparent 26%),
        linear-gradient(145deg, #07101f, #0d1e38 66%, #1b1240);
    box-shadow: 0 35px 90px rgba(5, 9, 20, .2);
}

.media-watch-welcome__console::before {
    content: "";
    position: absolute;
    inset: 16px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 28px;
    pointer-events: none;
}

.media-watch-welcome__screen {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 10px;
    padding-bottom: 34px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.media-watch-welcome__screen span {
    color: var(--watch-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4.8rem, 8vw, 7.3rem);
    line-height: .8;
}

.media-watch-welcome__screen strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.7rem, 3vw, 2.7rem);
    font-weight: 400;
}

.media-watch-welcome__screen p {
    max-width: 420px;
    margin: 0;
    color: rgba(255, 255, 255, .65);
    line-height: 1.7;
}

.media-watch-welcome__signals {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-top: 26px;
}

.media-watch-welcome__signals span {
    padding: 9px 13px;
    border: 1px solid rgba(104, 216, 255, .22);
    border-radius: 999px;
    color: rgba(255, 255, 255, .72);
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.media-watch-pathways {
    padding-block: clamp(96px, 10vw, 150px);
    color: #fff;
    background:
        radial-gradient(circle at 15% 12%, rgba(111, 77, 255, .15), transparent 27%),
        linear-gradient(145deg, #050914, #08162b 60%, #0b1230);
}

.media-watch-pathways__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 48px;
}

.media-watch-pathways__head .section-heading {
    max-width: 790px;
}

.media-watch-pathways .section-heading--light h2 em,
.media-watch-faq .section-heading--light h2 em,
.media-watch-library .section-heading--light h2 em {
    color: var(--watch-cyan);
}

.media-watch-pathways__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: min(430px, calc(100vw - 64px));
    gap: 22px;
    padding-inline: max(32px, calc((100vw - var(--container)) / 2));
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-padding-inline: max(32px, calc((100vw - var(--container)) / 2));
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.media-watch-pathways__track::-webkit-scrollbar {
    display: none;
}

.media-watch-pathway-card {
    position: relative;
    min-width: 0;
    height: 790px;
    overflow: hidden;
    border: 1px solid rgba(104, 216, 255, .16);
    border-radius: 28px;
    isolation: isolate;
    scroll-snap-align: start;
    background: #0b1830;
    box-shadow: 0 26px 64px rgba(0, 0, 0, .24);
}

.media-watch-pathway-card__image.site-image,
.media-watch-pathway-card__veil {
    position: absolute;
    inset: 0;
}

.media-watch-pathway-card__image.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.media-watch-pathway-card__image picture,
.media-watch-pathway-card__image img {
    width: 100%;
    height: 100%;
}

.media-watch-pathway-card__image img {
    object-fit: cover;
    transition: transform .8s ease;
}

.media-watch-pathway-card:hover .media-watch-pathway-card__image img {
    transform: scale(1.035);
}

.media-watch-pathway-card__veil {
    z-index: -2;
    background:
        linear-gradient(180deg, rgba(5, 9, 20, .1) 0%, rgba(5, 9, 20, .55) 31%, rgba(5, 9, 20, .98) 74%),
        linear-gradient(90deg, rgba(5, 9, 20, .46), transparent);
}

.media-watch-pathway-card__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-width: 0;
    padding: 32px;
}

.media-watch-pathway-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.media-watch-pathway-card__meta span {
    color: var(--watch-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.55rem;
}

.media-watch-pathway-card__meta small {
    color: rgba(255, 255, 255, .58);
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.media-watch-pathway-card h3 {
    max-width: 100%;
    margin: 0;
    overflow-wrap: break-word;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3vw, 2.75rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: .98;
}

.media-watch-pathway-card__content > strong {
    display: block;
    margin-top: 11px;
    color: var(--watch-gold);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .93rem;
    font-style: italic;
    font-weight: 400;
    line-height: 1.45;
}

.media-watch-pathway-card__content > p {
    margin: 13px 0 15px;
    color: rgba(255, 255, 255, .68);
    font-size: .84rem;
    line-height: 1.58;
}

.media-watch-pathway-card ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 10px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.media-watch-pathway-card li {
    position: relative;
    min-width: 0;
    padding-left: 12px;
    color: rgba(255, 255, 255, .63);
    font-size: .68rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.media-watch-pathway-card li::before {
    content: "";
    position: absolute;
    top: .5em;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--watch-cyan);
}

.media-watch-pathway-card__content > a {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 10px;
    color: #fff;
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-decoration: none;
    text-transform: uppercase;
}

.media-watch-pathway-card__content > a span {
    color: var(--watch-cyan);
    font-size: 1rem;
    transition: transform .2s ease;
}

.media-watch-pathway-card__content > a:hover span,
.media-watch-pathway-card__content > a:focus-visible span {
    transform: translateX(4px);
}

.media-watch-pathways__footer {
    color: rgba(255, 255, 255, .54);
}

.media-watch-pathways__footer [data-detail-status] {
    color: var(--watch-cyan);
}

.media-watch-live {
    padding-block: clamp(92px, 10vw, 150px);
    background: #edf1f8;
}

.media-watch-live__stage {
    position: relative;
    min-height: 680px;
    display: flex;
    align-items: center;
    overflow: hidden;
    border-radius: 38px;
    isolation: isolate;
    color: #fff;
    background: var(--watch-night);
    box-shadow: 0 38px 90px rgba(5, 9, 20, .19);
}

.media-watch-live__image.site-image,
.media-watch-live__veil {
    position: absolute;
    inset: 0;
}

.media-watch-live__image.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.media-watch-live__image picture,
.media-watch-live__image img {
    width: 100%;
    height: 100%;
}

.media-watch-live__image img {
    object-fit: cover;
}

.media-watch-live__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 8, 17, .95) 0%, rgba(4, 10, 21, .83) 49%, rgba(4, 9, 18, .32) 100%),
        linear-gradient(0deg, rgba(4, 8, 17, .6), transparent);
}

.media-watch-live__panel {
    width: min(710px, 65%);
    padding: clamp(46px, 7vw, 86px);
}

.media-watch-live__status {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 24px;
    padding: 9px 13px;
    border: 1px solid rgba(234, 57, 79, .35);
    border-radius: 999px;
    color: #ffd5da;
    background: rgba(234, 57, 79, .13);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.media-watch-live__status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--watch-live);
}

.media-watch-live h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.1rem, 6vw, 6rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .88;
    text-wrap: balance;
}

.media-watch-live h2 em {
    display: block;
    color: var(--watch-cyan);
    font-weight: 400;
}

.media-watch-live__panel > p:not(.eyebrow) {
    max-width: 620px;
    margin: 24px 0 0;
    color: rgba(255, 255, 255, .72);
    line-height: 1.75;
}

.media-watch-live__notice {
    padding-top: 17px;
    border-top: 1px solid rgba(255, 255, 255, .13);
    font-size: .82rem;
}

.media-watch-live .button {
    margin-top: 28px;
}

.media-watch-study {
    padding-block: clamp(96px, 11vw, 160px);
    background: var(--watch-ivory);
}

.media-watch-study__grid {
    display: grid;
    grid-template-columns: minmax(390px, .93fr) minmax(0, 1.07fr);
    align-items: center;
    gap: clamp(58px, 9vw, 130px);
}

.media-watch-study__visual {
    position: relative;
    min-height: 680px;
}

.media-watch-study__image.site-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 38px 38px 140px 38px;
    background: #0d1d36;
    box-shadow: 0 34px 80px rgba(5, 9, 20, .16);
}

.media-watch-study__image picture,
.media-watch-study__image img {
    width: 100%;
    height: 100%;
}

.media-watch-study__image img {
    object-fit: cover;
}

.media-watch-study__time {
    position: absolute;
    right: -26px;
    bottom: 38px;
    display: grid;
    gap: 4px;
    min-width: 220px;
    padding: 22px 25px;
    border: 1px solid rgba(104, 216, 255, .22);
    border-radius: 20px;
    color: #fff;
    background: rgba(5, 9, 20, .94);
    box-shadow: 0 24px 54px rgba(5, 9, 20, .24);
}

.media-watch-study__time span {
    color: rgba(255, 255, 255, .58);
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.media-watch-study__time strong {
    color: var(--watch-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.75rem;
    font-weight: 400;
}

.media-watch-study__content > p:not(.eyebrow) {
    max-width: 650px;
    color: #586579;
    line-height: 1.8;
}

.media-watch-study__elements {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-block: 30px;
}

.media-watch-study__elements article {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 76px;
    padding: 16px;
    border: 1px solid rgba(8, 20, 38, .1);
    border-radius: 16px;
    background: rgba(255, 255, 255, .58);
}

.media-watch-study__elements span {
    color: var(--watch-blue);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
}

.media-watch-study__elements strong {
    color: #122740;
    font-size: .82rem;
    line-height: 1.4;
}

.media-watch-library {
    padding-block: clamp(96px, 10vw, 150px);
    color: #fff;
    background:
        radial-gradient(circle at 82% 18%, rgba(27, 92, 255, .18), transparent 28%),
        var(--watch-night);
}

.media-watch-library__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(330px, .65fr);
    align-items: end;
    gap: 70px;
    margin-bottom: 48px;
}

.media-watch-library__head > p {
    margin: 0 0 7px;
    color: rgba(255, 255, 255, .62);
    line-height: 1.75;
}

.media-watch-library__stage {
    position: relative;
    min-height: 620px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    overflow: hidden;
    padding: clamp(38px, 6vw, 78px);
    border: 1px solid rgba(104, 216, 255, .16);
    border-radius: 38px;
    isolation: isolate;
    background: #0c1a31;
}

.media-watch-library__image.site-image,
.media-watch-library__veil {
    position: absolute;
    inset: 0;
}

.media-watch-library__image.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.media-watch-library__image picture,
.media-watch-library__image img {
    width: 100%;
    height: 100%;
}

.media-watch-library__image img {
    object-fit: cover;
}

.media-watch-library__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 8, 18, .93), rgba(4, 9, 20, .5) 68%, rgba(4, 8, 18, .74)),
        linear-gradient(0deg, rgba(4, 8, 18, .93), transparent 64%);
}

.media-watch-library__categories {
    width: min(810px, 86%);
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 26px;
}

.media-watch-library__categories span {
    padding: 10px 14px;
    border: 1px solid rgba(104, 216, 255, .22);
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    background: rgba(5, 9, 20, .4);
    font-size: .7rem;
    font-weight: 700;
    backdrop-filter: blur(8px);
}

.media-watch-tv {
    padding-block: clamp(96px, 11vw, 160px);
    background:
        radial-gradient(circle at 12% 84%, rgba(111, 77, 255, .08), transparent 28%),
        #edf1f8;
}

.media-watch-tv__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(400px, .95fr);
    align-items: center;
    gap: clamp(58px, 8vw, 115px);
}

.media-watch-tv__content > p:not(.eyebrow) {
    max-width: 680px;
    color: #59667a;
    line-height: 1.78;
}

.media-watch-tv__programming {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 20px;
    margin-block: 29px 32px;
}

.media-watch-tv__programming span {
    position: relative;
    min-width: 0;
    padding: 9px 0 9px 16px;
    border-bottom: 1px solid rgba(8, 20, 38, .1);
    color: #273c55;
    font-size: .77rem;
    line-height: 1.35;
}

.media-watch-tv__programming span::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--watch-blue);
}

.media-watch-tv__visual {
    position: relative;
    min-height: 720px;
}

.media-watch-tv__image.site-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 140px 38px 38px 38px;
    background: #0b1930;
    box-shadow: 0 36px 90px rgba(5, 9, 20, .18);
}

.media-watch-tv__image picture,
.media-watch-tv__image img {
    width: 100%;
    height: 100%;
}

.media-watch-tv__image img {
    object-fit: cover;
}

.media-watch-tv__badge {
    position: absolute;
    right: -24px;
    bottom: 40px;
    display: flex;
    align-items: baseline;
    gap: 8px;
    padding: 20px 24px;
    border: 1px solid rgba(104, 216, 255, .25);
    border-radius: 18px;
    color: #fff;
    background: rgba(5, 9, 20, .95);
    box-shadow: 0 22px 54px rgba(5, 9, 20, .28);
}

.media-watch-tv__badge span {
    color: var(--watch-cyan);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .13em;
}

.media-watch-tv__badge strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2rem;
    font-weight: 400;
}

.media-watch-faq {
    padding-block: clamp(96px, 10vw, 150px);
    color: #fff;
    background:
        radial-gradient(circle at 13% 12%, rgba(111, 77, 255, .18), transparent 28%),
        linear-gradient(150deg, #050914, #091a30);
}

.media-watch-faq__grid {
    display: grid;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr);
    align-items: start;
    gap: clamp(60px, 9vw, 130px);
}

.media-watch-faq__intro {
    position: sticky;
    top: 114px;
}

.media-watch-faq__intro > p:last-child {
    color: rgba(255, 255, 255, .6);
    line-height: 1.75;
}

.media-watch-faq__list {
    border-top: 1px solid rgba(104, 216, 255, .17);
}

.media-watch-faq details {
    border-bottom: 1px solid rgba(104, 216, 255, .17);
}

.media-watch-faq summary {
    min-height: 104px;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 18px;
    cursor: pointer;
    list-style: none;
}

.media-watch-faq summary::-webkit-details-marker {
    display: none;
}

.media-watch-faq summary > span {
    color: var(--watch-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
}

.media-watch-faq summary strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1rem, 1.4vw, 1.22rem);
    font-weight: 400;
    line-height: 1.45;
}

.media-watch-faq summary i {
    position: relative;
    width: 22px;
    height: 22px;
}

.media-watch-faq summary i::before,
.media-watch-faq summary i::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 3px;
    width: 16px;
    height: 1px;
    background: var(--watch-cyan);
    transition: transform .25s ease;
}

.media-watch-faq summary i::after {
    transform: rotate(90deg);
}

.media-watch-faq details[open] summary i::after {
    transform: rotate(0);
}

.media-watch-faq details > p {
    max-width: 730px;
    margin: -5px 0 0 56px;
    padding: 0 46px 32px 0;
    color: rgba(255, 255, 255, .64);
    line-height: 1.78;
}

.media-watch-cta {
    position: relative;
    min-height: 720px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    color: #fff;
    background: var(--watch-night);
}

.media-watch-cta__media.site-image,
.media-watch-cta__veil {
    position: absolute;
    inset: 0;
}

.media-watch-cta__media.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.media-watch-cta__media.site-image--pending {
    display: none;
}

.media-watch-cta__media picture,
.media-watch-cta__media img {
    width: 100%;
    height: 100%;
}

.media-watch-cta__media img {
    object-fit: cover;
}

.media-watch-cta__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(3, 7, 16, .96), rgba(4, 10, 22, .72) 57%, rgba(5, 9, 19, .46)),
        linear-gradient(0deg, rgba(3, 7, 16, .72), transparent);
}

.media-watch-cta__inner {
    padding-block: 110px;
}

.media-watch-cta h2 {
    max-width: 920px;
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.7rem, 7vw, 7.2rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .88;
    text-wrap: balance;
}

.media-watch-cta h2 em {
    display: block;
    color: var(--watch-cyan);
    font-weight: 400;
}

.media-watch-cta__inner > p:not(.eyebrow) {
    max-width: 650px;
    margin: 27px 0 0;
    color: rgba(255, 255, 255, .7);
    font-size: 1.04rem;
    line-height: 1.75;
}

.media-watch-cta__actions {
    margin-top: 33px;
}

@media (max-width: 1100px) {
    .media-watch-welcome__grid,
    .media-watch-study__grid,
    .media-watch-tv__grid {
        gap: 56px;
    }

    .media-watch-welcome__grid {
        grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr);
    }

    .media-watch-pathways__track {
        grid-auto-columns: min(400px, calc(100vw - 64px));
    }

    .media-watch-study__grid {
        grid-template-columns: minmax(330px, .82fr) minmax(0, 1.18fr);
    }

    .media-watch-tv__grid {
        grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr);
    }

    .media-watch-tv__programming {
        gap-inline: 14px;
    }
}

@media (max-width: 900px) {
    .media-watch-hero__content {
        width: min(760px, 86%);
    }

    .media-watch-hero__channels {
        left: 0;
        right: auto;
    }

    .media-watch-welcome__grid,
    .media-watch-study__grid,
    .media-watch-tv__grid,
    .media-watch-library__head,
    .media-watch-faq__grid {
        grid-template-columns: 1fr;
    }

    .media-watch-welcome__console {
        min-height: 440px;
    }

    .media-watch-pathways__head {
        align-items: center;
    }

    .media-watch-live__panel {
        width: min(760px, 82%);
    }

    .media-watch-study__visual,
    .media-watch-tv__visual {
        width: min(620px, 94%);
        min-height: 650px;
    }

    .media-watch-study__visual {
        order: 2;
    }

    .media-watch-library__head {
        gap: 22px;
    }

    .media-watch-library__head > p {
        max-width: 650px;
    }

    .media-watch-faq__grid {
        gap: 48px;
    }

    .media-watch-faq__intro {
        position: static;
    }
}

@media (max-width: 700px) {
    .media-watch-hero {
        min-height: 790px;
    }

    .media-watch-hero__inner {
        align-items: flex-start;
        padding-block: 92px 124px;
    }

    .media-watch-breadcrumb {
        top: 24px;
    }

    .media-watch-hero__content {
        width: 100%;
    }

    .media-watch-hero__content h1 {
        font-size: clamp(3.75rem, 17vw, 5.7rem);
        line-height: .84;
    }

    .media-watch-hero__channels {
        width: 100%;
        gap: 10px;
        overflow: hidden;
    }

    .media-watch-hero__channels span {
        gap: 10px;
    }

    .media-watch-nav__inner {
        justify-content: flex-start;
        gap: 26px;
        padding-inline: 0;
    }

    .media-watch-welcome,
    .media-watch-pathways,
    .media-watch-live,
    .media-watch-study,
    .media-watch-library,
    .media-watch-tv,
    .media-watch-faq {
        padding-block: 84px;
    }

    .media-watch-welcome__grid,
    .media-watch-study__grid,
    .media-watch-tv__grid {
        gap: 44px;
    }

    .media-watch-welcome__console {
        min-height: 410px;
        border-radius: 28px;
    }

    .media-watch-pathways__head {
        align-items: flex-end;
        gap: 16px;
        margin-bottom: 34px;
    }

    .media-watch-pathways__head .detail-carousel__controls {
        flex: 0 0 auto;
    }

    .media-watch-pathways__track {
        grid-auto-columns: calc(100vw - 40px);
        gap: 14px;
        padding-inline: 20px;
        scroll-padding-inline: 20px;
    }

    .media-watch-pathway-card {
        height: 800px;
        border-radius: 22px;
    }

    .media-watch-pathway-card__content {
        padding: 25px;
    }

    .media-watch-pathway-card h3 {
        font-size: clamp(1.9rem, 9vw, 2.55rem);
    }

    .media-watch-live__stage {
        min-height: 730px;
        align-items: flex-end;
        border-radius: 28px;
    }

    .media-watch-live__veil {
        background:
            linear-gradient(0deg, rgba(4, 8, 17, .98) 0%, rgba(4, 9, 18, .87) 58%, rgba(4, 9, 18, .35) 100%);
    }

    .media-watch-live__panel {
        width: 100%;
        padding: 34px 26px;
    }

    .media-watch-live h2 {
        font-size: clamp(3rem, 13.5vw, 4.6rem);
    }

    .media-watch-study__visual,
    .media-watch-tv__visual {
        width: calc(100% - 10px);
        min-height: 560px;
    }

    .media-watch-study__image.site-image {
        border-radius: 28px 28px 90px 28px;
    }

    .media-watch-study__time,
    .media-watch-tv__badge {
        right: -10px;
        bottom: 24px;
    }

    .media-watch-library__stage {
        min-height: 650px;
        padding: 28px 24px;
        border-radius: 28px;
    }

    .media-watch-library__categories {
        width: 100%;
    }

    .media-watch-tv__programming {
        grid-template-columns: 1fr;
    }

    .media-watch-tv__image.site-image {
        border-radius: 90px 28px 28px 28px;
    }

    .media-watch-faq summary {
        min-height: 92px;
        grid-template-columns: 30px minmax(0, 1fr) 24px;
        gap: 12px;
    }

    .media-watch-faq details > p {
        margin-left: 42px;
        padding-right: 4px;
    }

    .media-watch-cta {
        min-height: 680px;
    }

    .media-watch-cta__inner {
        padding-block: 90px;
    }

    .media-watch-cta h2 {
        font-size: clamp(3.25rem, 15vw, 5.3rem);
    }
}

@media (max-width: 430px) {
    .media-watch-hero {
        min-height: 820px;
    }

    .media-watch-hero__content h1 {
        font-size: clamp(3.5rem, 16.2vw, 4.35rem);
        letter-spacing: -.055em;
    }

    .media-watch-hero__intro {
        font-size: .95rem;
        line-height: 1.67;
    }

    .media-watch-hero__actions,
    .media-watch-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .media-watch-hero__actions .button,
    .media-watch-cta__actions .button {
        width: 100%;
        justify-content: center;
    }

    .media-watch-hero__channels span:nth-child(4) {
        display: none;
    }

    .media-watch-welcome__console {
        min-height: 390px;
        padding: 26px;
    }

    .media-watch-welcome__console::before {
        inset: 10px;
    }

    .media-watch-pathways__head h2 {
        font-size: clamp(2.6rem, 12vw, 3.4rem);
    }

    .media-watch-pathways__head .detail-carousel__controls button {
        width: 42px;
        height: 42px;
    }

    .media-watch-pathway-card {
        height: 820px;
    }

    .media-watch-pathway-card__content > p {
        font-size: .8rem;
    }

    .media-watch-pathway-card li {
        font-size: .65rem;
    }

    .media-watch-study__elements {
        grid-template-columns: 1fr;
    }

    .media-watch-study__visual,
    .media-watch-tv__visual {
        min-height: 510px;
    }

    .media-watch-study__time {
        min-width: 190px;
        padding: 18px;
    }

    .media-watch-library__categories span {
        padding: 8px 10px;
        font-size: .64rem;
    }

    .media-watch-faq summary strong {
        font-size: .94rem;
    }

    .media-watch-cta h2 {
        font-size: clamp(3rem, 14.5vw, 4.2rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    .media-watch-hero__media img,
    .media-watch-pathway-card__image img {
        animation: none;
        transition: none;
    }
}

/* ================================================================
   Phase 1, Step 24 — KTFM Resource Centre
   ================================================================ */

.page-resources {
    --resource-night: #0d201b;
    --resource-navy: #17362f;
    --resource-blue: #2d745d;
    --resource-cyan: #91d0b5;
    --resource-violet: #8a5b3a;
    --resource-live: #c67a42;
    --resource-gold: #e1b66f;
    --resource-ivory: #f6f1e6;
    --resource-line: rgba(145, 208, 181, .2);
    background: var(--resource-ivory);
}

.page-resources main {
    overflow: clip;
}

.page-resources .section-heading h2 {
    text-wrap: balance;
}

.page-resources .button--dark {
    color: #fff;
    background: var(--resource-night);
    box-shadow: 0 15px 34px rgba(5, 9, 20, .2);
}

.page-resources .button--dark:hover,
.page-resources .button--dark:focus-visible {
    background: var(--resource-blue);
}

#resource-centre-welcome,
#resource-centre-pathways,
#resource-centre-devotionals,
#resource-centre-training,
#resource-centre-discipleship,
#resource-centre-downloads,
#resource-centre-faq {
    scroll-margin-top: 150px;
}

.resource-centre-hero {
    position: relative;
    min-height: min(890px, calc(100svh - 130px));
    display: flex;
    align-items: stretch;
    overflow: hidden;
    isolation: isolate;
    color: #fff;
    background:
        radial-gradient(circle at 77% 22%, rgba(45, 116, 93, .34), transparent 31%),
        linear-gradient(125deg, #040811 8%, #0a1830 58%, #16102e 100%);
}

.resource-centre-hero__media.site-image,
.resource-centre-hero__veil,
.resource-centre-hero__signal {
    position: absolute;
    inset: 0;
}

.resource-centre-hero__media.site-image {
    z-index: -4;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.resource-centre-hero__media.site-image--pending {
    display: none;
}

.resource-centre-hero__media picture,
.resource-centre-hero__media img {
    width: 100%;
    height: 100%;
}

.resource-centre-hero__media img {
    object-fit: cover;
    object-position: center;
    animation: resource-hero-breathe 20s ease-in-out infinite alternate;
}

@keyframes resource-hero-breathe {
    to {
        transform: scale(1.035);
    }
}

.resource-centre-hero__veil {
    z-index: -3;
    background:
        linear-gradient(90deg, rgba(3, 7, 16, .97) 0%, rgba(4, 11, 23, .9) 38%, rgba(5, 13, 28, .34) 71%, rgba(4, 8, 18, .75) 100%),
        linear-gradient(0deg, rgba(3, 7, 15, .92), transparent 52%);
}

.resource-centre-hero__signal {
    z-index: -2;
    opacity: .7;
    background:
        linear-gradient(90deg, transparent 0 77%, rgba(145, 208, 181, .12) 77% 77.08%, transparent 77.08%),
        linear-gradient(0deg, transparent 0 74%, rgba(138, 91, 58, .1) 74% 74.1%, transparent 74.1%);
}

.resource-centre-hero__signal::before,
.resource-centre-hero__signal::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(145, 208, 181, .16);
    border-radius: 50%;
}

.resource-centre-hero__signal::before {
    width: 500px;
    height: 500px;
    right: -170px;
    bottom: -180px;
    box-shadow:
        0 0 0 70px rgba(45, 116, 93, .04),
        0 0 0 145px rgba(138, 91, 58, .025);
}

.resource-centre-hero__signal::after {
    width: 12px;
    height: 12px;
    right: 21%;
    top: 23%;
    border: 0;
    background: var(--resource-live);
    box-shadow:
        0 0 0 8px rgba(198, 122, 66, .1),
        0 0 32px rgba(198, 122, 66, .8);
}

.resource-centre-hero__inner {
    position: relative;
    min-height: inherit;
    display: flex;
    align-items: center;
    padding-block: 116px 138px;
}

.resource-centre-breadcrumb {
    position: absolute;
    top: 34px;
    left: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, .6);
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.resource-centre-breadcrumb a {
    color: var(--resource-cyan);
    text-decoration: none;
}

.resource-centre-breadcrumb a:hover,
.resource-centre-breadcrumb a:focus-visible {
    text-decoration: underline;
}

.resource-centre-hero__content {
    width: min(810px, 72%);
}

.resource-centre-hero__content h1 {
    margin: 22px 0 18px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4.8rem, 8.6vw, 9rem);
    font-weight: 500;
    letter-spacing: -.06em;
    line-height: .81;
    text-wrap: balance;
}

.resource-centre-hero__content h1 em {
    display: block;
    color: var(--resource-cyan);
    font-weight: 400;
}

.resource-centre-hero__statement {
    margin: 0 0 18px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2.2vw, 1.8rem);
    font-style: italic;
}

.resource-centre-hero__intro {
    max-width: 690px;
    margin: 0;
    color: rgba(255, 255, 255, .76);
    font-size: clamp(1rem, 1.25vw, 1.16rem);
    line-height: 1.8;
}

.resource-centre-hero__actions,
.resource-centre-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.resource-centre-hero__actions {
    margin-top: 34px;
}

.resource-centre-hero__channels {
    position: absolute;
    right: 0;
    bottom: 38px;
    display: flex;
    align-items: center;
    gap: 18px;
    color: rgba(255, 255, 255, .58);
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.resource-centre-hero__channels span {
    display: inline-flex;
    align-items: center;
    gap: 18px;
}

.resource-centre-hero__channels span:not(:last-child)::after {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--resource-cyan);
}

.resource-centre-nav {
    position: sticky;
    top: 0;
    z-index: 35;
    border-bottom: 1px solid rgba(145, 208, 181, .13);
    color: rgba(255, 255, 255, .66);
    background: rgba(5, 9, 20, .96);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .12);
    backdrop-filter: blur(18px);
}

.resource-centre-nav__inner {
    min-height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(20px, 3.3vw, 48px);
    overflow-x: auto;
    scrollbar-width: none;
}

.resource-centre-nav__inner::-webkit-scrollbar {
    display: none;
}

.resource-centre-nav a {
    position: relative;
    flex: 0 0 auto;
    padding-block: 23px 20px;
    color: inherit;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-decoration: none;
    text-transform: uppercase;
    transition: color .2s ease;
}

.resource-centre-nav a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    background: var(--resource-cyan);
    transform: scaleX(0);
    transition: transform .2s ease;
}

.resource-centre-nav a:hover,
.resource-centre-nav a:focus-visible {
    color: #fff;
}

.resource-centre-nav a:hover::after,
.resource-centre-nav a:focus-visible::after {
    transform: scaleX(1);
}

.resource-centre-welcome {
    position: relative;
    padding-block: clamp(92px, 10vw, 150px);
    background:
        radial-gradient(circle at 80% 22%, rgba(45, 116, 93, .08), transparent 28%),
        var(--resource-ivory);
}

.resource-centre-welcome__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
    align-items: center;
    gap: clamp(54px, 9vw, 130px);
}

.resource-centre-welcome__content .rich-copy {
    max-width: 690px;
    color: #586579;
}

.resource-centre-welcome__console {
    position: relative;
    min-height: 520px;
    display: grid;
    align-content: center;
    padding: clamp(28px, 4vw, 54px);
    overflow: hidden;
    border: 1px solid rgba(145, 208, 181, .18);
    border-radius: 38px;
    color: #fff;
    background:
        radial-gradient(circle at 83% 17%, rgba(145, 208, 181, .19), transparent 26%),
        linear-gradient(145deg, #07101f, #0d1e38 66%, #1b1240);
    box-shadow: 0 35px 90px rgba(5, 9, 20, .2);
}

.resource-centre-welcome__console::before {
    content: "";
    position: absolute;
    inset: 16px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 28px;
    pointer-events: none;
}

.resource-centre-welcome__screen {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 10px;
    padding-bottom: 34px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.resource-centre-welcome__screen span {
    color: var(--resource-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4.8rem, 8vw, 7.3rem);
    line-height: .8;
}

.resource-centre-welcome__screen strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.7rem, 3vw, 2.7rem);
    font-weight: 400;
}

.resource-centre-welcome__screen p {
    max-width: 420px;
    margin: 0;
    color: rgba(255, 255, 255, .65);
    line-height: 1.7;
}

.resource-centre-welcome__signals {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-top: 26px;
}

.resource-centre-welcome__signals span {
    padding: 9px 13px;
    border: 1px solid rgba(145, 208, 181, .22);
    border-radius: 999px;
    color: rgba(255, 255, 255, .72);
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.resource-centre-pathways {
    padding-block: clamp(96px, 10vw, 150px);
    color: #fff;
    background:
        radial-gradient(circle at 15% 12%, rgba(138, 91, 58, .15), transparent 27%),
        linear-gradient(145deg, #0d201b, #08162b 60%, #0b1230);
}

.resource-centre-pathways__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 48px;
}

.resource-centre-pathways__head .section-heading {
    max-width: 790px;
}

.resource-centre-pathways .section-heading--light h2 em,
.resource-centre-faq .section-heading--light h2 em,
.resource-centre-discipleship .section-heading--light h2 em {
    color: var(--resource-cyan);
}

.resource-centre-pathways__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: min(430px, calc(100vw - 64px));
    gap: 22px;
    padding-inline: max(32px, calc((100vw - var(--container)) / 2));
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-padding-inline: max(32px, calc((100vw - var(--container)) / 2));
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.resource-centre-pathways__track::-webkit-scrollbar {
    display: none;
}

.resource-centre-pathway-card {
    position: relative;
    min-width: 0;
    height: 790px;
    overflow: hidden;
    border: 1px solid rgba(145, 208, 181, .16);
    border-radius: 28px;
    isolation: isolate;
    scroll-snap-align: start;
    background: #0b1830;
    box-shadow: 0 26px 64px rgba(0, 0, 0, .24);
}

.resource-centre-pathway-card__image.site-image,
.resource-centre-pathway-card__veil {
    position: absolute;
    inset: 0;
}

.resource-centre-pathway-card__image.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.resource-centre-pathway-card__image picture,
.resource-centre-pathway-card__image img {
    width: 100%;
    height: 100%;
}

.resource-centre-pathway-card__image img {
    object-fit: cover;
    transition: transform .8s ease;
}

.resource-centre-pathway-card:hover .resource-centre-pathway-card__image img {
    transform: scale(1.035);
}

.resource-centre-pathway-card__veil {
    z-index: -2;
    background:
        linear-gradient(180deg, rgba(5, 9, 20, .1) 0%, rgba(5, 9, 20, .55) 31%, rgba(5, 9, 20, .98) 74%),
        linear-gradient(90deg, rgba(5, 9, 20, .46), transparent);
}

.resource-centre-pathway-card__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-width: 0;
    padding: 32px;
}

.resource-centre-pathway-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.resource-centre-pathway-card__meta span {
    color: var(--resource-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.55rem;
}

.resource-centre-pathway-card__meta small {
    color: rgba(255, 255, 255, .58);
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.resource-centre-pathway-card h3 {
    max-width: 100%;
    margin: 0;
    overflow-wrap: break-word;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3vw, 2.75rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: .98;
}

.resource-centre-pathway-card__content > strong {
    display: block;
    margin-top: 11px;
    color: var(--resource-gold);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .93rem;
    font-style: italic;
    font-weight: 400;
    line-height: 1.45;
}

.resource-centre-pathway-card__content > p {
    margin: 13px 0 15px;
    color: rgba(255, 255, 255, .68);
    font-size: .84rem;
    line-height: 1.58;
}

.resource-centre-pathway-card ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 10px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.resource-centre-pathway-card li {
    position: relative;
    min-width: 0;
    padding-left: 12px;
    color: rgba(255, 255, 255, .63);
    font-size: .68rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.resource-centre-pathway-card li::before {
    content: "";
    position: absolute;
    top: .5em;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--resource-cyan);
}

.resource-centre-pathway-card__content > a {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 10px;
    color: #fff;
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-decoration: none;
    text-transform: uppercase;
}

.resource-centre-pathway-card__content > a span {
    color: var(--resource-cyan);
    font-size: 1rem;
    transition: transform .2s ease;
}

.resource-centre-pathway-card__content > a:hover span,
.resource-centre-pathway-card__content > a:focus-visible span {
    transform: translateX(4px);
}

.resource-centre-pathways__footer {
    color: rgba(255, 255, 255, .54);
}

.resource-centre-pathways__footer [data-detail-status] {
    color: var(--resource-cyan);
}

.resource-centre-devotionals {
    padding-block: clamp(92px, 10vw, 150px);
    background: #e9efe9;
}

.resource-centre-devotionals__stage {
    position: relative;
    min-height: 680px;
    display: flex;
    align-items: center;
    overflow: hidden;
    border-radius: 38px;
    isolation: isolate;
    color: #fff;
    background: var(--resource-night);
    box-shadow: 0 38px 90px rgba(5, 9, 20, .19);
}

.resource-centre-devotionals__image.site-image,
.resource-centre-devotionals__veil {
    position: absolute;
    inset: 0;
}

.resource-centre-devotionals__image.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.resource-centre-devotionals__image picture,
.resource-centre-devotionals__image img {
    width: 100%;
    height: 100%;
}

.resource-centre-devotionals__image img {
    object-fit: cover;
}

.resource-centre-devotionals__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 8, 17, .95) 0%, rgba(4, 10, 21, .83) 49%, rgba(4, 9, 18, .32) 100%),
        linear-gradient(0deg, rgba(4, 8, 17, .6), transparent);
}

.resource-centre-devotionals__panel {
    width: min(710px, 65%);
    padding: clamp(46px, 7vw, 86px);
}

.resource-centre-devotionals__status {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 24px;
    padding: 9px 13px;
    border: 1px solid rgba(198, 122, 66, .35);
    border-radius: 999px;
    color: #ffd5da;
    background: rgba(198, 122, 66, .13);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.resource-centre-devotionals__status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--resource-live);
}

.resource-centre-devotionals h2 {
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.1rem, 6vw, 6rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .88;
    text-wrap: balance;
}

.resource-centre-devotionals h2 em {
    display: block;
    color: var(--resource-cyan);
    font-weight: 400;
}

.resource-centre-devotionals__panel > p:not(.eyebrow) {
    max-width: 620px;
    margin: 24px 0 0;
    color: rgba(255, 255, 255, .72);
    line-height: 1.75;
}

.resource-centre-devotionals__notice {
    padding-top: 17px;
    border-top: 1px solid rgba(255, 255, 255, .13);
    font-size: .82rem;
}

.resource-centre-devotionals .button {
    margin-top: 28px;
}

.resource-centre-training {
    padding-block: clamp(96px, 11vw, 160px);
    background: var(--resource-ivory);
}

.resource-centre-training__grid {
    display: grid;
    grid-template-columns: minmax(390px, .93fr) minmax(0, 1.07fr);
    align-items: center;
    gap: clamp(58px, 9vw, 130px);
}

.resource-centre-training__visual {
    position: relative;
    min-height: 680px;
}

.resource-centre-training__image.site-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 38px 38px 140px 38px;
    background: #0d1d36;
    box-shadow: 0 34px 80px rgba(5, 9, 20, .16);
}

.resource-centre-training__image picture,
.resource-centre-training__image img {
    width: 100%;
    height: 100%;
}

.resource-centre-training__image img {
    object-fit: cover;
}

.resource-centre-training__time {
    position: absolute;
    right: -26px;
    bottom: 38px;
    display: grid;
    gap: 4px;
    min-width: 220px;
    padding: 22px 25px;
    border: 1px solid rgba(145, 208, 181, .22);
    border-radius: 20px;
    color: #fff;
    background: rgba(5, 9, 20, .94);
    box-shadow: 0 24px 54px rgba(5, 9, 20, .24);
}

.resource-centre-training__time span {
    color: rgba(255, 255, 255, .58);
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.resource-centre-training__time strong {
    color: var(--resource-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.75rem;
    font-weight: 400;
}

.resource-centre-training__content > p:not(.eyebrow) {
    max-width: 650px;
    color: #586579;
    line-height: 1.8;
}

.resource-centre-training__elements {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-block: 30px;
}

.resource-centre-training__elements article {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 76px;
    padding: 16px;
    border: 1px solid rgba(8, 20, 38, .1);
    border-radius: 16px;
    background: rgba(255, 255, 255, .58);
}

.resource-centre-training__elements span {
    color: var(--resource-blue);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
}

.resource-centre-training__elements strong {
    color: #122740;
    font-size: .82rem;
    line-height: 1.4;
}

.resource-centre-discipleship {
    padding-block: clamp(96px, 10vw, 150px);
    color: #fff;
    background:
        radial-gradient(circle at 82% 18%, rgba(45, 116, 93, .18), transparent 28%),
        var(--resource-night);
}

.resource-centre-discipleship__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(330px, .65fr);
    align-items: end;
    gap: 70px;
    margin-bottom: 48px;
}

.resource-centre-discipleship__head > p {
    margin: 0 0 7px;
    color: rgba(255, 255, 255, .62);
    line-height: 1.75;
}

.resource-centre-discipleship__stage {
    position: relative;
    min-height: 620px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    overflow: hidden;
    padding: clamp(38px, 6vw, 78px);
    border: 1px solid rgba(145, 208, 181, .16);
    border-radius: 38px;
    isolation: isolate;
    background: #0c1a31;
}

.resource-centre-discipleship__image.site-image,
.resource-centre-discipleship__veil {
    position: absolute;
    inset: 0;
}

.resource-centre-discipleship__image.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.resource-centre-discipleship__image picture,
.resource-centre-discipleship__image img {
    width: 100%;
    height: 100%;
}

.resource-centre-discipleship__image img {
    object-fit: cover;
}

.resource-centre-discipleship__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(4, 8, 18, .93), rgba(4, 9, 20, .5) 68%, rgba(4, 8, 18, .74)),
        linear-gradient(0deg, rgba(4, 8, 18, .93), transparent 64%);
}

.resource-centre-discipleship__categories {
    width: min(810px, 86%);
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 26px;
}

.resource-centre-discipleship__categories span {
    padding: 10px 14px;
    border: 1px solid rgba(145, 208, 181, .22);
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    background: rgba(5, 9, 20, .4);
    font-size: .7rem;
    font-weight: 700;
    backdrop-filter: blur(8px);
}

.resource-centre-downloads {
    padding-block: clamp(96px, 11vw, 160px);
    background:
        radial-gradient(circle at 12% 84%, rgba(138, 91, 58, .08), transparent 28%),
        #e9efe9;
}

.resource-centre-downloads__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(400px, .95fr);
    align-items: center;
    gap: clamp(58px, 8vw, 115px);
}

.resource-centre-downloads__content > p:not(.eyebrow) {
    max-width: 680px;
    color: #59667a;
    line-height: 1.78;
}

.resource-centre-downloads__programming {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 20px;
    margin-block: 29px 32px;
}

.resource-centre-downloads__programming span {
    position: relative;
    min-width: 0;
    padding: 9px 0 9px 16px;
    border-bottom: 1px solid rgba(8, 20, 38, .1);
    color: #273c55;
    font-size: .77rem;
    line-height: 1.35;
}

.resource-centre-downloads__programming span::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--resource-blue);
}

.resource-centre-downloads__visual {
    position: relative;
    min-height: 720px;
}

.resource-centre-downloads__image.site-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 140px 38px 38px 38px;
    background: #0b1930;
    box-shadow: 0 36px 90px rgba(5, 9, 20, .18);
}

.resource-centre-downloads__image picture,
.resource-centre-downloads__image img {
    width: 100%;
    height: 100%;
}

.resource-centre-downloads__image img {
    object-fit: cover;
}

.resource-centre-downloads__badge {
    position: absolute;
    right: -24px;
    bottom: 40px;
    display: flex;
    align-items: baseline;
    gap: 8px;
    padding: 20px 24px;
    border: 1px solid rgba(145, 208, 181, .25);
    border-radius: 18px;
    color: #fff;
    background: rgba(5, 9, 20, .95);
    box-shadow: 0 22px 54px rgba(5, 9, 20, .28);
}

.resource-centre-downloads__badge span {
    color: var(--resource-cyan);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .13em;
}

.resource-centre-downloads__badge strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2rem;
    font-weight: 400;
}

.resource-centre-faq {
    padding-block: clamp(96px, 10vw, 150px);
    color: #fff;
    background:
        radial-gradient(circle at 13% 12%, rgba(138, 91, 58, .18), transparent 28%),
        linear-gradient(150deg, #0d201b, #091a30);
}

.resource-centre-faq__grid {
    display: grid;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr);
    align-items: start;
    gap: clamp(60px, 9vw, 130px);
}

.resource-centre-faq__intro {
    position: sticky;
    top: 114px;
}

.resource-centre-faq__intro > p:last-child {
    color: rgba(255, 255, 255, .6);
    line-height: 1.75;
}

.resource-centre-faq__list {
    border-top: 1px solid rgba(145, 208, 181, .17);
}

.resource-centre-faq details {
    border-bottom: 1px solid rgba(145, 208, 181, .17);
}

.resource-centre-faq summary {
    min-height: 104px;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 18px;
    cursor: pointer;
    list-style: none;
}

.resource-centre-faq summary::-webkit-details-marker {
    display: none;
}

.resource-centre-faq summary > span {
    color: var(--resource-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
}

.resource-centre-faq summary strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1rem, 1.4vw, 1.22rem);
    font-weight: 400;
    line-height: 1.45;
}

.resource-centre-faq summary i {
    position: relative;
    width: 22px;
    height: 22px;
}

.resource-centre-faq summary i::before,
.resource-centre-faq summary i::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 3px;
    width: 16px;
    height: 1px;
    background: var(--resource-cyan);
    transition: transform .25s ease;
}

.resource-centre-faq summary i::after {
    transform: rotate(90deg);
}

.resource-centre-faq details[open] summary i::after {
    transform: rotate(0);
}

.resource-centre-faq details > p {
    max-width: 730px;
    margin: -5px 0 0 56px;
    padding: 0 46px 32px 0;
    color: rgba(255, 255, 255, .64);
    line-height: 1.78;
}

.resource-centre-cta {
    position: relative;
    min-height: 720px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
    color: #fff;
    background: var(--resource-night);
}

.resource-centre-cta__media.site-image,
.resource-centre-cta__veil {
    position: absolute;
    inset: 0;
}

.resource-centre-cta__media.site-image {
    z-index: -3;
    width: 100%;
    height: 100%;
    border-radius: 0;
}

.resource-centre-cta__media.site-image--pending {
    display: none;
}

.resource-centre-cta__media picture,
.resource-centre-cta__media img {
    width: 100%;
    height: 100%;
}

.resource-centre-cta__media img {
    object-fit: cover;
}

.resource-centre-cta__veil {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(3, 7, 16, .96), rgba(4, 10, 22, .72) 57%, rgba(5, 9, 19, .46)),
        linear-gradient(0deg, rgba(3, 7, 16, .72), transparent);
}

.resource-centre-cta__inner {
    padding-block: 110px;
}

.resource-centre-cta h2 {
    max-width: 920px;
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.7rem, 7vw, 7.2rem);
    font-weight: 400;
    letter-spacing: -.055em;
    line-height: .88;
    text-wrap: balance;
}

.resource-centre-cta h2 em {
    display: block;
    color: var(--resource-cyan);
    font-weight: 400;
}

.resource-centre-cta__inner > p:not(.eyebrow) {
    max-width: 650px;
    margin: 27px 0 0;
    color: rgba(255, 255, 255, .7);
    font-size: 1.04rem;
    line-height: 1.75;
}

.resource-centre-cta__actions {
    margin-top: 33px;
}

@media (max-width: 1100px) {
    .resource-centre-welcome__grid,
    .resource-centre-training__grid,
    .resource-centre-downloads__grid {
        gap: 56px;
    }

    .resource-centre-welcome__grid {
        grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr);
    }

    .resource-centre-pathways__track {
        grid-auto-columns: min(400px, calc(100vw - 64px));
    }

    .resource-centre-training__grid {
        grid-template-columns: minmax(330px, .82fr) minmax(0, 1.18fr);
    }

    .resource-centre-downloads__grid {
        grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr);
    }

    .resource-centre-downloads__programming {
        gap-inline: 14px;
    }
}

@media (max-width: 900px) {
    .resource-centre-hero__content {
        width: min(760px, 86%);
    }

    .resource-centre-hero__channels {
        left: 0;
        right: auto;
    }

    .resource-centre-welcome__grid,
    .resource-centre-training__grid,
    .resource-centre-downloads__grid,
    .resource-centre-discipleship__head,
    .resource-centre-faq__grid {
        grid-template-columns: 1fr;
    }

    .resource-centre-welcome__console {
        min-height: 440px;
    }

    .resource-centre-pathways__head {
        align-items: center;
    }

    .resource-centre-devotionals__panel {
        width: min(760px, 82%);
    }

    .resource-centre-training__visual,
    .resource-centre-downloads__visual {
        width: min(620px, 94%);
        min-height: 650px;
    }

    .resource-centre-training__visual {
        order: 2;
    }

    .resource-centre-discipleship__head {
        gap: 22px;
    }

    .resource-centre-discipleship__head > p {
        max-width: 650px;
    }

    .resource-centre-faq__grid {
        gap: 48px;
    }

    .resource-centre-faq__intro {
        position: static;
    }
}

@media (max-width: 700px) {
    .resource-centre-hero {
        min-height: 790px;
    }

    .resource-centre-hero__inner {
        align-items: flex-start;
        padding-block: 92px 124px;
    }

    .resource-centre-breadcrumb {
        top: 24px;
    }

    .resource-centre-hero__content {
        width: 100%;
    }

    .resource-centre-hero__content h1 {
        font-size: clamp(3.75rem, 17vw, 5.7rem);
        line-height: .84;
    }

    .resource-centre-hero__channels {
        width: 100%;
        gap: 10px;
        overflow: hidden;
    }

    .resource-centre-hero__channels span {
        gap: 10px;
    }

    .resource-centre-nav__inner {
        justify-content: flex-start;
        gap: 26px;
        padding-inline: 0;
    }

    .resource-centre-welcome,
    .resource-centre-pathways,
    .resource-centre-devotionals,
    .resource-centre-training,
    .resource-centre-discipleship,
    .resource-centre-downloads,
    .resource-centre-faq {
        padding-block: 84px;
    }

    .resource-centre-welcome__grid,
    .resource-centre-training__grid,
    .resource-centre-downloads__grid {
        gap: 44px;
    }

    .resource-centre-welcome__console {
        min-height: 410px;
        border-radius: 28px;
    }

    .resource-centre-pathways__head {
        align-items: flex-end;
        gap: 16px;
        margin-bottom: 34px;
    }

    .resource-centre-pathways__head .detail-carousel__controls {
        flex: 0 0 auto;
    }

    .resource-centre-pathways__track {
        grid-auto-columns: calc(100vw - 40px);
        gap: 14px;
        padding-inline: 20px;
        scroll-padding-inline: 20px;
    }

    .resource-centre-pathway-card {
        height: 800px;
        border-radius: 22px;
    }

    .resource-centre-pathway-card__content {
        padding: 25px;
    }

    .resource-centre-pathway-card h3 {
        font-size: clamp(1.9rem, 9vw, 2.55rem);
    }

    .resource-centre-devotionals__stage {
        min-height: 730px;
        align-items: flex-end;
        border-radius: 28px;
    }

    .resource-centre-devotionals__veil {
        background:
            linear-gradient(0deg, rgba(4, 8, 17, .98) 0%, rgba(4, 9, 18, .87) 58%, rgba(4, 9, 18, .35) 100%);
    }

    .resource-centre-devotionals__panel {
        width: 100%;
        padding: 34px 26px;
    }

    .resource-centre-devotionals h2 {
        font-size: clamp(3rem, 13.5vw, 4.6rem);
    }

    .resource-centre-training__visual,
    .resource-centre-downloads__visual {
        width: calc(100% - 10px);
        min-height: 560px;
    }

    .resource-centre-training__image.site-image {
        border-radius: 28px 28px 90px 28px;
    }

    .resource-centre-training__time,
    .resource-centre-downloads__badge {
        right: -10px;
        bottom: 24px;
    }

    .resource-centre-discipleship__stage {
        min-height: 650px;
        padding: 28px 24px;
        border-radius: 28px;
    }

    .resource-centre-discipleship__categories {
        width: 100%;
    }

    .resource-centre-downloads__programming {
        grid-template-columns: 1fr;
    }

    .resource-centre-downloads__image.site-image {
        border-radius: 90px 28px 28px 28px;
    }

    .resource-centre-faq summary {
        min-height: 92px;
        grid-template-columns: 30px minmax(0, 1fr) 24px;
        gap: 12px;
    }

    .resource-centre-faq details > p {
        margin-left: 42px;
        padding-right: 4px;
    }

    .resource-centre-cta {
        min-height: 680px;
    }

    .resource-centre-cta__inner {
        padding-block: 90px;
    }

    .resource-centre-cta h2 {
        font-size: clamp(3.25rem, 15vw, 5.3rem);
    }
}

@media (max-width: 430px) {
    .resource-centre-hero {
        min-height: 820px;
    }

    .resource-centre-hero__content h1 {
        font-size: clamp(3.5rem, 16.2vw, 4.35rem);
        letter-spacing: -.055em;
    }

    .resource-centre-hero__intro {
        font-size: .95rem;
        line-height: 1.67;
    }

    .resource-centre-hero__actions,
    .resource-centre-cta__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .resource-centre-hero__actions .button,
    .resource-centre-cta__actions .button {
        width: 100%;
        justify-content: center;
    }

    .resource-centre-hero__channels span:nth-child(4) {
        display: none;
    }

    .resource-centre-welcome__console {
        min-height: 390px;
        padding: 26px;
    }

    .resource-centre-welcome__console::before {
        inset: 10px;
    }

    .resource-centre-pathways__head h2 {
        font-size: clamp(2.6rem, 12vw, 3.4rem);
    }

    .resource-centre-pathways__head .detail-carousel__controls button {
        width: 42px;
        height: 42px;
    }

    .resource-centre-pathway-card {
        height: 820px;
    }

    .resource-centre-pathway-card__content > p {
        font-size: .8rem;
    }

    .resource-centre-pathway-card li {
        font-size: .65rem;
    }

    .resource-centre-training__elements {
        grid-template-columns: 1fr;
    }

    .resource-centre-training__visual,
    .resource-centre-downloads__visual {
        min-height: 510px;
    }

    .resource-centre-training__time {
        min-width: 190px;
        padding: 18px;
    }

    .resource-centre-discipleship__categories span {
        padding: 8px 10px;
        font-size: .64rem;
    }

    .resource-centre-faq summary strong {
        font-size: .94rem;
    }

    .resource-centre-cta h2 {
        font-size: clamp(3rem, 14.5vw, 4.2rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    .resource-centre-hero__media img,
    .resource-centre-pathway-card__image img {
        animation: none;
        transition: none;
    }
}

+

/* Resource Centre extensions for the supplied featured pathways and journey. */
.resource-centre-welcome__features {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: clamp(46px, 6vw, 76px);
}

.resource-centre-welcome__features article {
    position: relative;
    min-height: 185px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid rgba(23, 55, 47, .1);
    border-radius: 22px;
    background: rgba(255, 255, 255, .64);
}

.resource-centre-welcome__features article::after {
    content: "";
    position: absolute;
    right: -32px;
    bottom: -42px;
    width: 110px;
    height: 110px;
    border: 1px solid rgba(45, 116, 93, .14);
    border-radius: 50%;
}

.resource-centre-welcome__features span {
    color: var(--resource-blue);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.15rem;
}

.resource-centre-welcome__features h3 {
    margin: 26px 0 8px;
    color: #15362e;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.55rem;
    font-weight: 400;
}

.resource-centre-welcome__features p {
    margin: 0;
    color: #66756e;
    font-size: .8rem;
    line-height: 1.65;
}

.resource-centre-devotionals__types {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 24px;
}

.resource-centre-devotionals__types span {
    padding: 8px 11px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    background: rgba(255, 255, 255, .06);
    font-size: .64rem;
    font-weight: 750;
    letter-spacing: .04em;
}

.resource-centre-downloads__notice {
    max-width: 620px;
    margin-top: 20px;
    padding: 15px 17px;
    border-left: 3px solid var(--resource-gold);
    color: #53675f;
    background: rgba(45, 116, 93, .07);
    font-size: .8rem;
    font-weight: 700;
}

.resource-centre-downloads__journey {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    gap: clamp(32px, 6vw, 80px);
    align-items: stretch;
    margin-top: clamp(72px, 9vw, 120px);
    padding: clamp(24px, 4vw, 48px);
    border-radius: 34px;
    color: #fff;
    background: var(--resource-night);
}

.resource-centre-downloads__journey-media {
    position: relative;
    min-height: 480px;
    overflow: hidden;
    border-radius: 24px 24px 90px 24px;
}

.resource-centre-downloads__journey-image.site-image,
.resource-centre-downloads__journey-image picture,
.resource-centre-downloads__journey-image img {
    width: 100%;
    height: 100%;
}

.resource-centre-downloads__journey-image.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.resource-centre-downloads__journey-image img {
    object-fit: cover;
}

.resource-centre-downloads__journey-copy {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: center;
    gap: 12px;
}

.resource-centre-downloads__journey-copy article {
    display: flex;
    gap: 14px;
    min-height: 150px;
    padding: 22px;
    border: 1px solid rgba(145, 208, 181, .16);
    border-radius: 18px;
    background: rgba(255, 255, 255, .045);
}

.resource-centre-downloads__journey-copy article > span {
    color: var(--resource-cyan);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.1rem;
}

.resource-centre-downloads__journey-copy h3 {
    margin: 0 0 9px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.55rem;
    font-weight: 400;
}

.resource-centre-downloads__journey-copy p {
    margin: 0;
    color: rgba(255, 255, 255, .6);
    font-size: .76rem;
    line-height: 1.6;
}

@media (max-width: 900px) {
    .resource-centre-welcome__features {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .resource-centre-downloads__journey {
        grid-template-columns: 1fr;
    }

    .resource-centre-downloads__journey-media {
        min-height: 390px;
    }
}

@media (max-width: 560px) {
    .resource-centre-welcome__features,
    .resource-centre-downloads__journey-copy {
        grid-template-columns: 1fr;
    }

    .resource-centre-welcome__features article {
        min-height: 160px;
    }

    .resource-centre-downloads__journey {
        padding: 15px;
        border-radius: 24px;
    }

    .resource-centre-downloads__journey-media {
        min-height: 320px;
        border-radius: 18px 18px 58px 18px;
    }

    .resource-centre-downloads__journey-copy article {
        min-height: 130px;
    }
}

/* ========================================================================== 
   Phase 1, Step 25 — Give
   ========================================================================== */

body.page-give {
    --give-night: #07181c;
    --give-forest: #12362f;
    --give-emerald: #1c6955;
    --give-mint: #8ed2b7;
    --give-gold: #d6ad5b;
    --give-copper: #a76d3e;
    --give-ivory: #f8f3e8;
    --give-ink: #182a28;
    overflow-x: clip;
    color: var(--give-ink);
    background: var(--give-ivory);
}

.give-hero {
    position: relative;
    min-height: min(940px, 100svh);
    overflow: hidden;
    color: #fff;
    background: var(--give-night);
}

.give-hero__media.site-image,
.give-hero__media picture,
.give-hero__media img {
    width: 100%;
    height: 100%;
}

.give-hero__media.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.give-hero__media img {
    object-fit: cover;
    object-position: center;
    animation: giveHeroDrift 18s ease-out both;
}

.give-hero__media.site-image--pending {
    background:
        linear-gradient(135deg, rgba(214, 173, 91, .09), transparent 38%),
        repeating-linear-gradient(135deg, transparent 0 34px, rgba(142, 210, 183, .025) 34px 35px),
        linear-gradient(120deg, #061619 0%, #11352f 58%, #0a2023 100%);
}

.give-hero__veil {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(4, 14, 16, .95) 0%, rgba(4, 14, 16, .78) 43%, rgba(4, 14, 16, .3) 75%, rgba(4, 14, 16, .58) 100%),
        linear-gradient(0deg, rgba(4, 14, 16, .8), transparent 54%);
}

.give-hero__glow {
    position: absolute;
    top: -20%;
    right: 4%;
    width: min(54vw, 760px);
    aspect-ratio: 1;
    border: 1px solid rgba(214, 173, 91, .15);
    border-radius: 50%;
    box-shadow:
        0 0 0 70px rgba(214, 173, 91, .025),
        0 0 0 140px rgba(214, 173, 91, .018);
    pointer-events: none;
}

.give-hero__inner {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: min(940px, 100svh);
    padding-top: clamp(124px, 15vh, 180px);
    padding-bottom: clamp(94px, 12vh, 140px);
    flex-direction: column;
    justify-content: center;
}

.give-breadcrumb {
    position: absolute;
    top: clamp(90px, 10vw, 128px);
    left: var(--container-gutter);
    display: flex;
    gap: 10px;
    align-items: center;
    color: rgba(255, 255, 255, .55);
    font-size: .68rem;
    font-weight: 750;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.give-breadcrumb a {
    color: #fff;
}

.give-hero__content {
    width: min(760px, 70%);
}

.give-hero h1,
.give-purposes h2,
.give-partnership h2,
.give-bank h2,
.give-faq h2,
.give-cta h2 {
    text-wrap: balance;
}

.give-hero h1 {
    max-width: 920px;
    margin: 18px 0 24px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4.6rem, 8.6vw, 8.8rem);
    font-weight: 400;
    letter-spacing: -.075em;
    line-height: .82;
}

.give-hero h1 em {
    display: block;
    margin-top: .16em;
    color: var(--give-gold);
    font-weight: 400;
}

.give-hero__statement {
    max-width: 680px;
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.18rem, 2vw, 1.62rem);
    line-height: 1.45;
}

.give-hero__intro {
    max-width: 670px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .68);
    font-size: .9rem;
    line-height: 1.85;
}

.give-hero__actions,
.give-cta__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 34px;
}

.give-hero__promise {
    position: absolute;
    right: var(--container-gutter);
    bottom: 54px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.give-hero__promise span {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    color: rgba(255, 255, 255, .76);
    background: rgba(6, 23, 26, .54);
    backdrop-filter: blur(10px);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

@keyframes giveHeroDrift {
    from { transform: scale(1.06); }
    to { transform: scale(1); }
}

.give-nav {
    position: sticky;
    z-index: 20;
    top: 0;
    overflow-x: auto;
    border-bottom: 1px solid rgba(24, 42, 40, .09);
    background: rgba(248, 243, 232, .94);
    backdrop-filter: blur(18px);
    scrollbar-width: none;
}

.give-nav::-webkit-scrollbar {
    display: none;
}

.give-nav__inner {
    display: flex;
    width: max-content;
    min-width: 100%;
    justify-content: center;
}

.give-nav a {
    position: relative;
    padding: 19px clamp(14px, 2vw, 27px);
    color: #526460;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.give-nav a::after {
    content: "";
    position: absolute;
    right: 50%;
    bottom: 0;
    left: 50%;
    height: 2px;
    background: var(--give-gold);
    transition: right .25s ease, left .25s ease;
}

.give-nav a:hover::after,
.give-nav a:focus-visible::after {
    right: 16px;
    left: 16px;
}

.give-global {
    background:
        radial-gradient(circle at 10% 22%, rgba(214, 173, 91, .12), transparent 27%),
        var(--give-ivory);
}

.give-global__grid,
.give-confidence__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(350px, .92fr);
    gap: clamp(48px, 8vw, 120px);
    align-items: center;
}

.give-global__content > p,
.give-confidence__content > p {
    max-width: 700px;
    color: #61706c;
    font-size: .92rem;
    line-height: 1.85;
}

.give-global__countries {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 34px;
}

.give-global__countries a {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 14px;
    min-height: 138px;
    padding: 22px;
    align-items: start;
    border: 1px solid rgba(24, 42, 40, .09);
    border-radius: 20px;
    color: var(--give-ink);
    background: rgba(255, 255, 255, .58);
    transition: transform .25s ease, border-color .25s ease, background .25s ease;
}

.give-global__countries a:hover,
.give-global__countries a:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(28, 105, 85, .25);
    background: #fff;
}

.give-global__countries a > span {
    font-size: 1.55rem;
}

.give-global__countries strong,
.give-global__countries small,
.give-global__countries p {
    display: block;
}

.give-global__countries strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.12rem;
    font-weight: 400;
}

.give-global__countries small {
    margin-top: 4px;
    color: var(--give-emerald);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .12em;
}

.give-global__countries p {
    margin: 10px 0 0;
    color: #76827f;
    font-size: .7rem;
    line-height: 1.55;
}

.give-global__countries i {
    color: var(--give-copper);
    font-style: normal;
}

.give-global__visual,
.give-confidence__visual {
    position: relative;
    min-height: 680px;
    overflow: hidden;
    border-radius: 180px 28px 28px 28px;
    background: var(--give-forest);
    box-shadow: 0 34px 76px rgba(7, 24, 28, .18);
}

.give-global__image.site-image,
.give-global__image picture,
.give-global__image img,
.give-confidence__image.site-image,
.give-confidence__image picture,
.give-confidence__image img {
    width: 100%;
    height: 100%;
}

.give-global__image.site-image,
.give-confidence__image.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.give-global__image img,
.give-confidence__image img {
    object-fit: cover;
}

.give-global__seal,
.give-confidence__mark {
    position: absolute;
    right: 24px;
    bottom: 24px;
    width: min(310px, calc(100% - 48px));
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 18px;
    color: #fff;
    background: rgba(7, 24, 28, .84);
    backdrop-filter: blur(14px);
}

.give-global__seal span,
.give-confidence__mark span {
    display: block;
    color: var(--give-gold);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .18em;
}

.give-global__seal strong,
.give-confidence__mark strong {
    display: block;
    margin-top: 5px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2.2rem;
    font-weight: 400;
}

.give-global__seal small {
    display: block;
    margin-top: 10px;
    color: rgba(255, 255, 255, .6);
    font-size: .62rem;
    line-height: 1.6;
}

.give-purposes {
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 80% 20%, rgba(214, 173, 91, .11), transparent 25%),
        var(--give-night);
}

.give-purposes__head {
    display: flex;
    gap: 28px;
    align-items: flex-end;
    justify-content: space-between;
}

.give-purposes__head h2 {
    max-width: 940px;
    font-size: clamp(3.2rem, 6vw, 6.2rem);
}

.give-purposes__head .detail-carousel__controls button {
    border-color: rgba(255, 255, 255, .2);
    color: #fff;
}

.give-purposes__track {
    display: flex;
    gap: clamp(16px, 2.4vw, 28px);
    margin-top: clamp(48px, 6vw, 74px);
    padding: 0 max(var(--container-gutter), calc((100vw - var(--container-width)) / 2));
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.give-purposes__track::-webkit-scrollbar {
    display: none;
}

.give-purpose-card {
    position: relative;
    width: min(390px, 84vw);
    min-width: min(390px, 84vw);
    height: 690px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 26px;
    background: #14322f;
    scroll-snap-align: start;
}

.give-purpose-card__image.site-image,
.give-purpose-card__image picture,
.give-purpose-card__image img {
    width: 100%;
    height: 100%;
}

.give-purpose-card__image.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.give-purpose-card__image img {
    object-fit: cover;
    transition: transform .65s ease;
}

.give-purpose-card:hover .give-purpose-card__image img {
    transform: scale(1.04);
}

.give-purpose-card__veil {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(3, 13, 15, .97) 0%, rgba(3, 13, 15, .74) 47%, rgba(3, 13, 15, .08) 100%);
}

.give-purpose-card__content {
    position: absolute;
    z-index: 2;
    inset: auto 0 0;
    padding: 30px;
}

.give-purpose-card__meta {
    display: flex;
    gap: 12px;
    align-items: center;
    color: var(--give-gold);
}

.give-purpose-card__meta span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2rem;
}

.give-purpose-card__meta small {
    font-size: .6rem;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.give-purpose-card h3 {
    margin: 18px 0 7px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.2rem, 3.3vw, 3.15rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: .95;
}

.give-purpose-card__content > strong {
    display: block;
    color: var(--give-mint);
    font-size: .72rem;
    letter-spacing: .04em;
}

.give-purpose-card__content > p {
    margin: 17px 0 22px;
    color: rgba(255, 255, 255, .67);
    font-size: .78rem;
    line-height: 1.65;
}

.give-purpose-card__content > a {
    display: inline-flex;
    gap: 12px;
    align-items: center;
    color: #fff;
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.give-purpose-card__content > a span {
    color: var(--give-gold);
    font-size: 1rem;
}

.give-purposes__footer {
    color: rgba(255, 255, 255, .5);
}

.give-purposes__footer span {
    color: var(--give-mint);
}

.give-online {
    background:
        linear-gradient(rgba(255, 255, 255, .72), rgba(255, 255, 255, .72)),
        repeating-linear-gradient(90deg, rgba(18, 54, 47, .035) 0 1px, transparent 1px 120px),
        #f2ede2;
}

.give-online__head {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    gap: clamp(38px, 7vw, 110px);
    align-items: end;
}

.give-online__head > p {
    margin: 0 0 12px;
    color: #64736f;
    font-size: .9rem;
    line-height: 1.85;
}

.give-online__layout {
    display: grid;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr);
    gap: clamp(28px, 5vw, 74px);
    align-items: start;
    margin-top: clamp(48px, 7vw, 86px);
}

.give-online__visual {
    position: sticky;
    top: 92px;
    min-height: 790px;
    overflow: hidden;
    border-radius: 28px 28px 120px 28px;
    background: var(--give-forest);
}

.give-online__image.site-image,
.give-online__image picture,
.give-online__image img {
    width: 100%;
    height: 100%;
}

.give-online__image.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.give-online__image img {
    object-fit: cover;
}

.give-online__visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(5, 20, 22, .9), transparent 56%);
}

.give-online__visual-copy {
    position: absolute;
    z-index: 2;
    right: 26px;
    bottom: 30px;
    left: 26px;
    padding: 22px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 18px;
    color: #fff;
    background: rgba(5, 20, 22, .76);
    backdrop-filter: blur(12px);
}

.give-online__visual-copy span {
    display: block;
    color: var(--give-gold);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .16em;
}

.give-online__visual-copy strong {
    display: block;
    margin-top: 8px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.45;
}

.give-flow {
    padding: clamp(22px, 4vw, 44px);
    border: 1px solid rgba(24, 42, 40, .1);
    border-radius: 30px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 30px 80px rgba(24, 42, 40, .08);
}

.give-flow__notice {
    margin-bottom: 28px;
    padding: 18px 20px;
    border-left: 3px solid var(--give-gold);
    border-radius: 0 14px 14px 0;
    background: rgba(214, 173, 91, .12);
}

.give-flow__notice strong {
    color: var(--give-forest);
    font-size: .7rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.give-flow__notice p {
    margin: 7px 0 0;
    color: #65736f;
    font-size: .76rem;
    line-height: 1.65;
}

.give-flow__step {
    min-width: 0;
    margin: 0;
    padding: 28px 0;
    border: 0;
    border-top: 1px solid rgba(24, 42, 40, .09);
}

.give-flow__step legend {
    display: grid;
    grid-template-columns: 44px 1fr;
    column-gap: 12px;
    width: 100%;
    padding: 0;
}

.give-flow__step legend > span {
    grid-row: span 2;
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: var(--give-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .8rem;
}

.give-flow__step legend strong {
    color: var(--give-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2rem;
    font-weight: 400;
}

.give-flow__step legend small {
    margin-top: 3px;
    color: #75817e;
    font-size: .67rem;
}

.give-flow__options {
    display: grid;
    gap: 8px;
    margin-top: 20px;
}

.give-flow__options--countries,
.give-flow__options--purposes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.give-flow__options--methods,
.give-flow__options--frequency {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.give-flow__options--frequency {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
}

.give-flow__options label {
    position: relative;
    display: flex;
    gap: 8px;
    min-width: 0;
    min-height: 56px;
    padding: 12px;
    align-items: center;
    border: 1px solid rgba(24, 42, 40, .1);
    border-radius: 13px;
    color: #3d514c;
    background: #fff;
    cursor: pointer;
}

.give-flow__options label:has(input:checked) {
    border-color: var(--give-emerald);
    box-shadow: inset 0 0 0 1px var(--give-emerald);
    background: rgba(28, 105, 85, .06);
}

.give-flow__options input {
    flex: 0 0 auto;
    accent-color: var(--give-emerald);
}

.give-flow__options label > span {
    font-size: 1.1rem;
}

.give-flow__options label > strong {
    min-width: 0;
    font-size: .7rem;
    line-height: 1.35;
}

.give-flow__options label > small {
    margin-left: auto;
    color: var(--give-copper);
    font-size: .58rem;
    font-weight: 850;
}

.give-flow__gift-row {
    display: grid;
    grid-template-columns: minmax(150px, .7fr) minmax(0, 1.3fr);
    gap: 10px;
    margin-top: 20px;
}

.give-flow__gift-row > label {
    display: grid;
    gap: 6px;
}

.give-flow__gift-row > label span {
    color: #5d6d69;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.give-flow__gift-row input[type="number"] {
    width: 100%;
    min-height: 56px;
    padding: 0 15px;
    border: 1px solid rgba(24, 42, 40, .14);
    border-radius: 13px;
    color: var(--give-ink);
    background: #fff;
    font: inherit;
}

.give-flow__fees {
    display: flex;
    gap: 10px;
    margin-top: 16px;
    align-items: center;
    color: #63716e;
    font-size: .7rem;
}

.give-flow__fees input {
    accent-color: var(--give-emerald);
}

.give-flow__fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 20px;
}

.give-flow__fields span {
    min-height: 48px;
    padding: 15px;
    border: 1px dashed rgba(24, 42, 40, .18);
    border-radius: 12px;
    color: #7d8986;
    background: rgba(248, 243, 232, .55);
    font-size: .68rem;
}

.give-flow__button {
    width: 100%;
    margin-top: 6px;
    opacity: .64;
    cursor: not-allowed;
}

.give-flow__privacy {
    margin: 12px 0 0;
    color: #7b8884;
    font-size: .66rem;
    line-height: 1.6;
    text-align: center;
}

.give-partnership {
    background: #f9f5ed;
}

.give-partnership__stage {
    position: relative;
    min-height: 720px;
    overflow: hidden;
    border-radius: 34px;
    color: #fff;
    background: var(--give-forest);
}

.give-partnership__image.site-image,
.give-partnership__image picture,
.give-partnership__image img {
    width: 100%;
    height: 100%;
}

.give-partnership__image.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.give-partnership__image img {
    object-fit: cover;
}

.give-partnership__veil {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(4, 17, 18, .95), rgba(4, 17, 18, .68) 56%, rgba(4, 17, 18, .18));
}

.give-partnership__content {
    position: relative;
    z-index: 2;
    width: min(720px, 68%);
    padding: clamp(50px, 8vw, 110px);
}

.give-partnership h2 {
    margin: 14px 0 24px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(3.8rem, 7vw, 7.4rem);
    font-weight: 400;
    letter-spacing: -.065em;
    line-height: .88;
}

.give-partnership h2 em {
    display: block;
    color: var(--give-gold);
    font-weight: 400;
}

.give-partnership__content > p {
    max-width: 620px;
    color: rgba(255, 255, 255, .68);
    font-size: .9rem;
    line-height: 1.8;
}

.give-partnership__amounts {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 26px 0 30px;
}

.give-partnership__amounts span {
    padding: 10px 13px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 999px;
    color: #fff;
    background: rgba(255, 255, 255, .06);
    font-size: .68rem;
    font-weight: 800;
}

.give-foundation {
    display: grid;
    grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
    gap: clamp(34px, 6vw, 88px);
    margin-top: clamp(52px, 7vw, 86px);
    padding: clamp(30px, 5vw, 60px);
    border: 1px solid rgba(24, 42, 40, .08);
    border-radius: 26px;
    background: #fff;
}

.give-foundation__intro > span {
    color: var(--give-copper);
    font-size: .63rem;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.give-foundation h3 {
    margin: 12px 0;
    color: var(--give-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 4vw, 3.3rem);
    font-weight: 400;
    line-height: 1;
}

.give-foundation__intro p {
    color: #697773;
    font-size: .8rem;
    line-height: 1.75;
}

.give-foundation__areas {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.give-foundation__areas span {
    display: flex;
    gap: 12px;
    min-height: 58px;
    padding: 14px;
    align-items: center;
    border-radius: 12px;
    color: #3b504b;
    background: rgba(18, 54, 47, .055);
    font-size: .72rem;
    font-weight: 750;
}

.give-foundation__areas small {
    color: var(--give-copper);
    font-family: Georgia, "Times New Roman", serif;
}

.give-bank {
    color: #fff;
    background:
        radial-gradient(circle at 20% 20%, rgba(214, 173, 91, .08), transparent 27%),
        var(--give-night);
}

.give-bank__head {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
    gap: clamp(36px, 8vw, 120px);
    align-items: end;
}

.give-bank__head > p {
    margin: 0 0 10px;
    color: rgba(255, 255, 255, .58);
    font-size: .84rem;
    line-height: 1.8;
}

.give-bank__head > p strong {
    color: var(--give-gold);
}

.give-bank__layout {
    display: grid;
    grid-template-columns: minmax(320px, .76fr) minmax(0, 1.24fr);
    gap: clamp(30px, 6vw, 80px);
    align-items: start;
    margin-top: clamp(48px, 7vw, 86px);
}

.give-bank__visual {
    position: relative;
    min-height: 680px;
    overflow: hidden;
    border-radius: 24px 24px 100px 24px;
    background: var(--give-forest);
}

.give-bank__image.site-image,
.give-bank__image picture,
.give-bank__image img {
    width: 100%;
    height: 100%;
}

.give-bank__image.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.give-bank__image img {
    object-fit: cover;
}

.give-bank__visual-note {
    position: absolute;
    right: 22px;
    bottom: 24px;
    left: 22px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 16px;
    background: rgba(4, 17, 18, .82);
    backdrop-filter: blur(12px);
}

.give-bank__visual-note span {
    display: block;
    color: var(--give-gold);
    font-size: .59rem;
    font-weight: 850;
    letter-spacing: .16em;
}

.give-bank__visual-note strong {
    display: block;
    margin-top: 8px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
    font-weight: 400;
}

.give-bank__accounts {
    display: grid;
    gap: 10px;
}

.give-bank__accounts details {
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 18px;
    background: rgba(255, 255, 255, .045);
}

.give-bank__accounts summary {
    display: grid;
    grid-template-columns: auto 1fr auto auto;
    gap: 13px;
    padding: 22px;
    align-items: center;
    cursor: pointer;
    list-style: none;
}

.give-bank__accounts summary::-webkit-details-marker {
    display: none;
}

.give-bank__accounts summary > span {
    font-size: 1.4rem;
}

.give-bank__accounts summary strong {
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2rem;
    font-weight: 400;
}

.give-bank__accounts summary small {
    color: var(--give-mint);
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.give-bank__accounts summary i {
    position: relative;
    width: 20px;
    height: 20px;
}

.give-bank__accounts summary i::before,
.give-bank__accounts summary i::after {
    content: "";
    position: absolute;
    top: 9px;
    left: 4px;
    width: 12px;
    height: 1px;
    background: var(--give-gold);
}

.give-bank__accounts summary i::after {
    transform: rotate(90deg);
    transition: transform .2s ease;
}

.give-bank__accounts details[open] summary i::after {
    transform: rotate(0);
}

.give-bank__accounts dl,
.give-bank__accounts details > p {
    margin: 0 22px 22px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, .09);
}

.give-bank__accounts dl > div {
    display: grid;
    grid-template-columns: minmax(120px, .65fr) minmax(0, 1.35fr);
    gap: 18px;
    padding: 9px 0;
}

.give-bank__accounts dt {
    color: rgba(255, 255, 255, .43);
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.give-bank__accounts dd {
    margin: 0;
    color: #fff;
    font-size: .76rem;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.give-bank__accounts details > p {
    color: rgba(255, 255, 255, .56);
    font-size: .76rem;
    line-height: 1.7;
}

.give-confidence {
    background: #f8f3e8;
}

.give-confidence__visual {
    min-height: 630px;
    border-radius: 28px 160px 28px 28px;
}

.give-confidence__values {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 30px;
}

.give-confidence__values span {
    padding: 9px 12px;
    border: 1px solid rgba(28, 105, 85, .14);
    border-radius: 999px;
    color: var(--give-emerald);
    background: rgba(28, 105, 85, .06);
    font-size: .61rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.give-confidence__vision {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 8px;
    margin-top: clamp(56px, 8vw, 100px);
}

.give-confidence__vision article {
    min-height: 190px;
    padding: 20px;
    border: 1px solid rgba(24, 42, 40, .08);
    border-radius: 16px;
    background: rgba(255, 255, 255, .62);
}

.give-confidence__vision article > span {
    color: var(--give-copper);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .86rem;
}

.give-confidence__vision h3 {
    margin: 32px 0 8px;
    color: var(--give-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
    font-weight: 400;
    line-height: 1.05;
}

.give-confidence__vision p {
    margin: 0;
    color: #72807c;
    font-size: .65rem;
    line-height: 1.55;
}

.give-confidence__entity-note {
    display: grid;
    grid-template-columns: minmax(220px, .4fr) minmax(0, 1.6fr);
    gap: 30px;
    margin-top: 24px;
    padding: 26px 30px;
    border-left: 3px solid var(--give-gold);
    background: rgba(18, 54, 47, .06);
}

.give-confidence__entity-note strong {
    color: var(--give-forest);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.15rem;
    font-weight: 400;
}

.give-confidence__entity-note p {
    margin: 0;
    color: #64736f;
    font-size: .75rem;
    line-height: 1.7;
}

.give-faq {
    color: #fff;
    background: var(--give-forest);
}

.give-faq__grid {
    display: grid;
    grid-template-columns: minmax(280px, .7fr) minmax(0, 1.3fr);
    gap: clamp(42px, 8vw, 120px);
    align-items: start;
}

.give-faq__intro {
    position: sticky;
    top: 100px;
}

.give-faq__intro > p:last-child {
    color: rgba(255, 255, 255, .56);
    font-size: .82rem;
    line-height: 1.8;
}

.give-faq__list {
    display: grid;
    gap: 10px;
}

.give-faq details {
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 17px;
    background: rgba(255, 255, 255, .045);
}

.give-faq summary {
    display: grid;
    grid-template-columns: 40px 1fr 22px;
    gap: 14px;
    padding: 22px;
    align-items: center;
    cursor: pointer;
    list-style: none;
}

.give-faq summary::-webkit-details-marker {
    display: none;
}

.give-faq summary > span {
    color: var(--give-gold);
    font-family: Georgia, "Times New Roman", serif;
}

.give-faq summary strong {
    color: #fff;
    font-size: .92rem;
    font-weight: 700;
}

.give-faq summary i {
    position: relative;
    width: 20px;
    height: 20px;
}

.give-faq summary i::before,
.give-faq summary i::after {
    content: "";
    position: absolute;
    top: 9px;
    left: 4px;
    width: 12px;
    height: 1px;
    background: var(--give-mint);
}

.give-faq summary i::after {
    transform: rotate(90deg);
    transition: transform .2s ease;
}

.give-faq details[open] summary i::after {
    transform: rotate(0);
}

.give-faq details > p {
    margin: 0 22px 24px 76px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .09);
    color: rgba(255, 255, 255, .62);
    font-size: .78rem;
    line-height: 1.75;
}

.give-cta {
    position: relative;
    min-height: 760px;
    overflow: hidden;
    color: #fff;
    background: var(--give-night);
}

.give-cta__media.site-image,
.give-cta__media picture,
.give-cta__media img {
    width: 100%;
    height: 100%;
}

.give-cta__media.site-image {
    position: absolute;
    inset: 0;
    border-radius: 0;
}

.give-cta__media img {
    object-fit: cover;
}

.give-cta__media.site-image--pending {
    background:
        radial-gradient(circle at 75% 35%, rgba(214, 173, 91, .14), transparent 30%),
        linear-gradient(120deg, #061619, #153a32);
}

.give-cta__veil {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(3, 13, 15, .96), rgba(3, 13, 15, .7) 54%, rgba(3, 13, 15, .25));
}

.give-cta__inner {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: 760px;
    padding-top: 100px;
    padding-bottom: 100px;
    flex-direction: column;
    justify-content: center;
}

.give-cta h2 {
    max-width: 980px;
    margin: 14px 0 24px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(4rem, 7.4vw, 7.8rem);
    font-weight: 400;
    letter-spacing: -.07em;
    line-height: .86;
}

.give-cta h2 em {
    display: block;
    color: var(--give-gold);
    font-weight: 400;
}

.give-cta__inner > p {
    max-width: 650px;
    color: rgba(255, 255, 255, .66);
    font-size: .9rem;
    line-height: 1.8;
}

@media (max-width: 1120px) {
    .give-confidence__vision {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .give-global__grid,
    .give-confidence__grid {
        gap: 52px;
    }
}

@media (max-width: 900px) {
    .give-hero__content {
        width: min(720px, 92%);
    }

    .give-global__grid,
    .give-confidence__grid,
    .give-online__head,
    .give-online__layout,
    .give-foundation,
    .give-bank__head,
    .give-bank__layout,
    .give-faq__grid {
        grid-template-columns: 1fr;
    }

    .give-global__visual,
    .give-confidence__visual {
        min-height: 590px;
    }

    .give-online__visual,
    .give-faq__intro {
        position: relative;
        top: auto;
    }

    .give-online__visual {
        min-height: 620px;
    }

    .give-partnership__content {
        width: min(760px, 86%);
    }

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

    .give-bank__visual {
        min-height: 560px;
    }

    .give-confidence__entity-note {
        grid-template-columns: 1fr;
        gap: 10px;
    }
}

@media (max-width: 720px) {
    .give-hero {
        min-height: 860px;
    }

    .give-hero__inner {
        min-height: 860px;
        padding-top: 140px;
        padding-bottom: 130px;
    }

    .give-breadcrumb {
        top: 96px;
    }

    .give-hero h1 {
        font-size: clamp(3.7rem, 17vw, 5.6rem);
    }

    .give-hero__promise {
        right: auto;
        bottom: 40px;
        left: var(--container-gutter);
        justify-content: flex-start;
    }

    .give-nav__inner {
        justify-content: flex-start;
    }

    .give-global__countries,
    .give-flow__options--countries,
    .give-flow__options--purposes,
    .give-flow__gift-row,
    .give-foundation__areas {
        grid-template-columns: 1fr;
    }

    .give-global__visual,
    .give-confidence__visual {
        min-height: 520px;
        border-radius: 90px 22px 22px 22px;
    }

    .give-purposes__head {
        align-items: center;
    }

    .give-purposes__head h2 {
        font-size: clamp(2.8rem, 12vw, 4.2rem);
    }

    .give-purpose-card {
        height: 650px;
    }

    .give-online__visual {
        min-height: 520px;
        border-radius: 22px 22px 76px 22px;
    }

    .give-flow__options--methods {
        grid-template-columns: 1fr;
    }

    .give-partnership__stage {
        min-height: 700px;
    }

    .give-partnership__content {
        width: 100%;
        padding: 48px 28px;
    }

    .give-partnership h2 {
        font-size: clamp(3.5rem, 15vw, 5.2rem);
    }

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

    .give-faq details > p {
        margin-left: 22px;
    }

    .give-cta,
    .give-cta__inner {
        min-height: 700px;
    }

    .give-cta h2 {
        font-size: clamp(3.5rem, 14vw, 5.4rem);
    }
}

@media (max-width: 480px) {
    .give-hero__actions .button,
    .give-cta__actions .button {
        width: 100%;
    }

    .give-hero__promise span {
        padding: 7px 9px;
        font-size: .55rem;
    }

    .give-global__countries a {
        min-height: 126px;
        padding: 18px;
    }

    .give-purpose-card {
        height: 630px;
    }

    .give-purpose-card__content {
        padding: 24px;
    }

    .give-flow {
        padding: 18px;
        border-radius: 22px;
    }

    .give-flow__options--frequency,
    .give-flow__fields {
        grid-template-columns: 1fr;
    }

    .give-bank__accounts summary {
        grid-template-columns: auto 1fr auto;
        padding: 18px;
    }

    .give-bank__accounts summary small {
        grid-column: 2;
    }

    .give-bank__accounts summary i {
        grid-column: 3;
        grid-row: 1 / span 2;
    }

    .give-bank__accounts dl > div {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .give-confidence__vision {
        grid-template-columns: 1fr;
    }

    .give-confidence__vision article {
        min-height: 150px;
    }

    .give-faq summary {
        grid-template-columns: 30px 1fr 18px;
        gap: 10px;
        padding: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .give-hero__media img,
    .give-purpose-card__image img {
        animation: none;
        transition: none;
    }
}

/* ========================================================================== 
   Phase 1, Step 26 — Connect
   ========================================================================== */

body.page-connect {
    --connect-ink: #101227;
    --connect-indigo: #242253;
    --connect-blue: #3268ad;
    --connect-coral: #ee6a58;
    --connect-gold: #edbd61;
    --connect-ivory: #fbf7ef;
    --connect-mist: #edf2f6;
    background: var(--connect-ivory);
    color: var(--connect-ink);
}

.page-connect main {
    overflow: hidden;
}

.connect-hero {
    position: relative;
    min-height: min(920px, calc(100svh - 32px));
    isolation: isolate;
    overflow: hidden;
    background:
        radial-gradient(circle at 76% 20%, rgba(238, 106, 88, .24), transparent 35%),
        linear-gradient(135deg, #141630 0%, #25234f 54%, #315989 100%);
    color: #fff;
}

.connect-hero__media.site-image,
.connect-hero__media picture,
.connect-hero__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.connect-hero__media.site-image {
    z-index: -4;
    overflow: hidden;
    border-radius: 0;
}

.connect-hero__media img {
    object-fit: cover;
    object-position: center 36%;
    animation: connectHeroDrift 18s ease-out both;
}

.connect-hero__media.site-image--pending {
    background:
        radial-gradient(circle at 77% 28%, rgba(237, 189, 97, .32), transparent 24%),
        radial-gradient(circle at 70% 62%, rgba(238, 106, 88, .24), transparent 38%),
        linear-gradient(135deg, #12152f, #2a2859 56%, #396f9f);
}

.connect-hero__media .site-image__ambient {
    background:
        linear-gradient(115deg, rgba(255, 255, 255, .04), transparent 40%),
        repeating-linear-gradient(125deg, transparent 0 60px, rgba(255, 255, 255, .025) 61px 62px);
}

.connect-hero__veil {
    position: absolute;
    z-index: -3;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(10, 12, 30, .96) 0%, rgba(15, 17, 39, .84) 42%, rgba(17, 22, 42, .36) 78%, rgba(17, 22, 42, .54) 100%),
        linear-gradient(0deg, rgba(12, 13, 29, .84), transparent 42%);
}

.connect-hero__threads {
    position: absolute;
    z-index: -2;
    inset: 0;
    pointer-events: none;
    opacity: .75;
    background:
        linear-gradient(103deg, transparent 69%, rgba(237, 189, 97, .35) 69.1%, transparent 69.3%),
        linear-gradient(75deg, transparent 80%, rgba(238, 106, 88, .3) 80.1%, transparent 80.3%);
}

.connect-hero__threads::before,
.connect-hero__threads::after {
    content: "";
    position: absolute;
    right: clamp(30px, 8vw, 140px);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
}

.connect-hero__threads::before {
    top: 20%;
    width: clamp(230px, 27vw, 480px);
    aspect-ratio: 1;
}

.connect-hero__threads::after {
    top: 28%;
    right: clamp(80px, 13vw, 230px);
    width: clamp(130px, 16vw, 280px);
    aspect-ratio: 1;
}

.connect-hero__inner {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    min-height: min(920px, calc(100svh - 32px));
    padding-top: clamp(44px, 7vh, 86px);
    padding-bottom: clamp(34px, 6vh, 68px);
}

.connect-breadcrumb {
    display: flex;
    align-items: center;
    gap: 11px;
    width: max-content;
    margin-bottom: clamp(50px, 9vh, 106px);
    color: rgba(255, 255, 255, .68);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.connect-breadcrumb a {
    color: #fff;
}

.connect-hero__content {
    width: min(820px, 72%);
}

.connect-hero h1,
.connect-visit h2,
.connect-cta h2 {
    margin: 0;
    font-family: var(--font-display);
    font-weight: 500;
    letter-spacing: -.045em;
    line-height: .88;
}

.connect-hero h1 {
    max-width: 820px;
    font-size: clamp(4.8rem, 7.2vw, 8.4rem);
}

.connect-hero h1 em,
.connect-visit h2 em,
.connect-cta h2 em {
    display: block;
    color: var(--connect-gold);
    font-weight: 400;
}

.connect-hero__statement {
    margin: 30px 0 0;
    color: #fff;
    font-size: clamp(1.15rem, 1.7vw, 1.55rem);
    font-weight: 800;
}

.connect-hero__intro {
    max-width: 670px;
    margin: 16px 0 0;
    color: rgba(255, 255, 255, .78);
    font-size: clamp(1rem, 1.3vw, 1.16rem);
    line-height: 1.8;
}

.connect-hero__actions,
.connect-serve__actions,
.connect-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 32px;
}

.connect-hero__promise {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: auto;
    padding-top: 42px;
}

.connect-hero__promise span {
    padding: 9px 13px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(14, 16, 36, .28);
    color: rgba(255, 255, 255, .8);
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.connect-hero__mobile-path {
    position: absolute;
    z-index: 9;
    top: 24%;
    right: max(16px, calc((100vw - 1320px) / 2));
    display: grid;
    gap: 4px;
    max-width: min(320px, 42vw);
    padding: 12px 15px;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 12px;
    background: rgba(13, 15, 34, .74);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .2);
    color: #fff;
    backdrop-filter: blur(12px);
}

.connect-hero__mobile-path strong {
    color: var(--connect-gold);
    font-size: .62rem;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.connect-hero__mobile-path small {
    overflow-wrap: anywhere;
    color: rgba(255, 255, 255, .82);
    font-size: .7rem;
}

.connect-nav {
    position: sticky;
    z-index: 30;
    top: var(--header-height, 0px);
    border-bottom: 1px solid rgba(16, 18, 39, .09);
    background: rgba(251, 247, 239, .92);
    box-shadow: 0 12px 32px rgba(16, 18, 39, .06);
    backdrop-filter: blur(18px);
}

.connect-nav__inner {
    display: flex;
    align-items: center;
    gap: clamp(20px, 3vw, 46px);
    min-height: 62px;
    overflow-x: auto;
    scrollbar-width: none;
}

.connect-nav__inner::-webkit-scrollbar {
    display: none;
}

.connect-nav a {
    flex: 0 0 auto;
    position: relative;
    color: rgba(16, 18, 39, .68);
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.connect-nav a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -21px;
    left: 0;
    height: 2px;
    background: var(--connect-coral);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .25s ease;
}

.connect-nav a:hover::after,
.connect-nav a:focus-visible::after {
    transform: scaleX(1);
}

.connect-welcome {
    position: relative;
    padding-block: clamp(90px, 11vw, 158px);
    background:
        radial-gradient(circle at 95% 15%, rgba(238, 106, 88, .09), transparent 28%),
        var(--connect-ivory);
}

.connect-welcome__grid {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: clamp(52px, 8vw, 118px);
    align-items: center;
}

.connect-welcome__visual,
.connect-serve__visual,
.connect-next__visual {
    position: relative;
}

.connect-welcome__image.site-image,
.connect-next__image.site-image {
    min-height: clamp(570px, 58vw, 760px);
    overflow: hidden;
    border-radius: 220px 220px 28px 28px;
    background: linear-gradient(155deg, #e7d7c4, #e9eef3);
    box-shadow: 0 42px 88px rgba(16, 18, 39, .16);
}

.connect-welcome__image img,
.connect-next__image img,
.connect-serve__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.connect-welcome__seal {
    position: absolute;
    right: clamp(-32px, -2vw, -12px);
    bottom: 46px;
    display: grid;
    place-content: center;
    width: clamp(138px, 13vw, 190px);
    aspect-ratio: 1;
    border: 1px solid rgba(255, 255, 255, .46);
    border-radius: 50%;
    background: rgba(36, 34, 83, .94);
    box-shadow: 0 24px 48px rgba(16, 18, 39, .22);
    color: #fff;
    text-align: center;
    backdrop-filter: blur(10px);
}

.connect-welcome__seal span,
.connect-welcome__seal small {
    color: rgba(255, 255, 255, .7);
    font-size: .57rem;
    font-weight: 900;
    letter-spacing: .18em;
}

.connect-welcome__seal strong {
    margin: 3px 0;
    color: var(--connect-gold);
    font-family: var(--font-display);
    font-size: clamp(1.35rem, 2vw, 2rem);
    font-weight: 500;
}

.connect-welcome__content > p:not(.eyebrow) {
    max-width: 670px;
    color: rgba(16, 18, 39, .7);
    font-size: 1.07rem;
    line-height: 1.85;
}

.connect-welcome__pillars {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 38px;
}

.connect-welcome__pillars article {
    min-height: 224px;
    padding: 24px 20px;
    border: 1px solid rgba(16, 18, 39, .09);
    border-radius: 20px;
    background: rgba(255, 255, 255, .64);
    box-shadow: 0 18px 40px rgba(16, 18, 39, .05);
}

.connect-welcome__pillars span,
.connect-community__number,
.connect-faith__grid > article > span {
    color: var(--connect-coral);
    font-family: var(--font-display);
    font-size: 1.55rem;
}

.connect-welcome__pillars h3 {
    margin: 20px 0 9px;
    font-size: 1.02rem;
}

.connect-welcome__pillars p {
    margin: 0;
    color: rgba(16, 18, 39, .62);
    font-size: .82rem;
    line-height: 1.65;
}

.connect-pathways {
    position: relative;
    padding-block: clamp(88px, 10vw, 148px);
    background:
        radial-gradient(circle at 88% 4%, rgba(50, 104, 173, .32), transparent 27%),
        radial-gradient(circle at 15% 92%, rgba(238, 106, 88, .19), transparent 29%),
        #12142c;
    color: #fff;
}

.connect-pathways::before {
    content: "CONNECT";
    position: absolute;
    top: 22px;
    right: -12px;
    color: rgba(255, 255, 255, .025);
    font-family: var(--font-display);
    font-size: clamp(7rem, 18vw, 17rem);
    line-height: 1;
}

.connect-pathways__head {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40px;
}

.connect-pathways__track {
    display: flex;
    gap: 20px;
    margin-top: 52px;
    padding: 0 max(20px, calc((100vw - 1320px) / 2)) 24px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.connect-pathways__track::-webkit-scrollbar {
    display: none;
}

.connect-pathway-card {
    flex: 0 0 clamp(350px, 34vw, 495px);
    position: relative;
    min-height: 720px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 28px;
    background: #24274c;
    box-shadow: 0 32px 70px rgba(0, 0, 0, .24);
    scroll-snap-align: center;
}

.connect-pathway-card__image.site-image,
.connect-pathway-card__image picture,
.connect-pathway-card__image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.connect-pathway-card__image.site-image {
    overflow: hidden;
    border-radius: 0;
}

.connect-pathway-card__image img {
    object-fit: cover;
    transition: transform .7s ease;
}

.connect-pathway-card:hover .connect-pathway-card__image img {
    transform: scale(1.045);
}

.connect-pathway-card__veil {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(12, 14, 33, .04) 12%, rgba(13, 15, 35, .58) 42%, rgba(10, 12, 30, .98) 76%),
        linear-gradient(120deg, rgba(36, 34, 83, .32), transparent 58%);
}

.connect-pathway-card__content {
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 34px;
}

.connect-pathway-card__meta {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.connect-pathway-card__meta span {
    color: var(--connect-gold);
    font-family: var(--font-display);
    font-size: 2rem;
}

.connect-pathway-card__meta small {
    color: rgba(255, 255, 255, .62);
    font-size: .61rem;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.connect-pathway-card h3 {
    margin: 0;
    overflow-wrap: anywhere;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(2.45rem, 4vw, 4.2rem);
    font-weight: 500;
    letter-spacing: -.035em;
    line-height: .95;
}

.connect-pathway-card__content > strong {
    display: block;
    margin-top: 13px;
    color: var(--connect-gold);
    font-size: .77rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.connect-pathway-card__content > p {
    margin: 14px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: .9rem;
    line-height: 1.66;
}

.connect-pathway-card__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 17px;
}

.connect-pathway-card__chips span {
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    color: rgba(255, 255, 255, .66);
    font-size: .59rem;
    font-weight: 800;
}

.connect-pathway-card__content > a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 20px;
    color: #fff;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.connect-pathway-card__content > a span {
    color: var(--connect-coral);
    font-size: 1.15rem;
}

.connect-pathways__footer {
    color: rgba(255, 255, 255, .6);
}

.connect-visit {
    padding-block: clamp(90px, 11vw, 160px);
    background: #e9edf1;
}

.connect-visit__stage {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(450px, 1.18fr);
    gap: clamp(50px, 7vw, 110px);
    min-height: 760px;
    padding: clamp(48px, 7vw, 98px);
    overflow: hidden;
    border-radius: 36px;
    background: #20234c;
    color: #fff;
    box-shadow: 0 42px 90px rgba(16, 18, 39, .2);
}

.connect-visit__image.site-image,
.connect-visit__image picture,
.connect-visit__image img,
.connect-cta__media.site-image,
.connect-cta__media picture,
.connect-cta__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.connect-visit__image.site-image,
.connect-cta__media.site-image {
    overflow: hidden;
    border-radius: 0;
}

.connect-visit__image img,
.connect-cta__media img {
    object-fit: cover;
}

.connect-visit__veil {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(17, 19, 42, .96), rgba(20, 23, 50, .74) 54%, rgba(20, 23, 50, .5)),
        linear-gradient(0deg, rgba(17, 19, 42, .7), transparent 55%);
}

.connect-visit__content,
.connect-visit__campuses {
    position: relative;
    z-index: 3;
}

.connect-visit__content {
    align-self: center;
}

.connect-visit h2 {
    font-size: clamp(4rem, 6vw, 7rem);
}

.connect-visit__content > p:not(.eyebrow) {
    max-width: 570px;
    margin-top: 24px;
    color: rgba(255, 255, 255, .74);
    line-height: 1.8;
}

.connect-visit__campuses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: center;
    gap: 12px;
}

.connect-visit__campuses a {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 14px;
    align-items: center;
    min-height: 86px;
    padding: 18px 20px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 16px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    backdrop-filter: blur(12px);
    transition: transform .2s ease, background .2s ease;
}

.connect-visit__campuses a:hover,
.connect-visit__campuses a:focus-visible {
    background: rgba(255, 255, 255, .15);
    transform: translateY(-2px);
}

.connect-visit__campuses small {
    color: var(--connect-gold);
    font-family: var(--font-display);
    font-size: 1.2rem;
}

.connect-visit__campuses strong {
    font-size: .85rem;
}

.connect-visit__campuses span {
    color: var(--connect-coral);
}

.connect-community {
    padding-block: clamp(90px, 11vw, 158px);
    background:
        radial-gradient(circle at 5% 10%, rgba(50, 104, 173, .09), transparent 28%),
        #fffdf9;
}

.connect-community__head,
.connect-faith__head {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .65fr);
    gap: clamp(40px, 7vw, 110px);
    align-items: end;
}

.connect-community__head > p,
.connect-faith__head > p {
    margin: 0 0 8px;
    color: rgba(16, 18, 39, .66);
    font-size: 1rem;
    line-height: 1.8;
}

.connect-community__grid {
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    gap: 18px;
    margin-top: 58px;
}

.connect-community__grid article {
    position: relative;
    min-height: 610px;
    padding: clamp(34px, 5vw, 62px);
    overflow: hidden;
    border-radius: 28px;
}

.connect-membership {
    background:
        radial-gradient(circle at 100% 0, rgba(237, 189, 97, .28), transparent 28%),
        #edf1f5;
}

.connect-groups {
    background:
        radial-gradient(circle at 90% 10%, rgba(238, 106, 88, .2), transparent 28%),
        var(--connect-indigo);
    color: #fff;
}

.connect-community__grid h3 {
    max-width: 540px;
    margin: 22px 0 14px;
    font-family: var(--font-display);
    font-size: clamp(2.8rem, 4.6vw, 5.2rem);
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: .96;
}

.connect-community__grid article > p:not(.eyebrow) {
    max-width: 610px;
    color: rgba(16, 18, 39, .65);
    line-height: 1.75;
}

.connect-groups > p:not(.eyebrow) {
    color: rgba(255, 255, 255, .7) !important;
}

.connect-membership__journey {
    display: grid;
    gap: 8px;
    margin: 34px 0;
}

.connect-membership__journey span {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 50px;
    padding: 10px 14px;
    border-bottom: 1px solid rgba(16, 18, 39, .09);
    font-weight: 800;
}

.connect-membership__journey small {
    color: var(--connect-coral);
    font-family: var(--font-display);
    font-size: 1.15rem;
}

.connect-groups__types,
.connect-serve__areas,
.connect-next__options {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 34px 0;
}

.connect-groups__types span {
    padding: 9px 12px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    background: rgba(255, 255, 255, .06);
    color: rgba(255, 255, 255, .78);
    font-size: .69rem;
    font-weight: 800;
}

.connect-groups .text-link {
    color: #fff;
}

.connect-serve {
    padding-block: clamp(90px, 11vw, 158px);
    background:
        linear-gradient(120deg, rgba(50, 104, 173, .14), transparent 45%),
        #11142d;
    color: #fff;
}

.connect-serve__grid {
    display: grid;
    grid-template-columns: minmax(360px, .78fr) minmax(0, 1.22fr);
    gap: clamp(56px, 8vw, 120px);
    align-items: center;
}

.connect-serve__image.site-image {
    min-height: 750px;
    overflow: hidden;
    border-radius: 28px 220px 28px 28px;
    background: linear-gradient(150deg, #292d56, #355f87);
    box-shadow: 0 38px 80px rgba(0, 0, 0, .3);
}

.connect-serve__mark {
    position: absolute;
    right: -22px;
    bottom: 46px;
    display: grid;
    gap: 2px;
    padding: 22px 26px;
    border-radius: 18px;
    background: var(--connect-coral);
    box-shadow: 0 24px 48px rgba(0, 0, 0, .25);
    color: #fff;
}

.connect-serve__mark span {
    font-size: .57rem;
    font-weight: 900;
    letter-spacing: .16em;
}

.connect-serve__mark strong {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 500;
}

.connect-serve__content > p:not(.eyebrow) {
    max-width: 720px;
    color: rgba(255, 255, 255, .72);
    font-size: 1.03rem;
    line-height: 1.8;
}

.connect-serve__areas span {
    padding: 9px 12px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 10px;
    background: rgba(255, 255, 255, .05);
    color: rgba(255, 255, 255, .75);
    font-size: .68rem;
    font-weight: 800;
}

.connect-faith {
    padding-block: clamp(90px, 11vw, 158px);
    background: #eef1f5;
}

.connect-faith__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 58px;
}

.connect-faith__grid > article {
    min-height: 510px;
    padding: clamp(38px, 5vw, 68px);
    border-radius: 30px;
}

.connect-faith__salvation {
    background:
        radial-gradient(circle at 100% 0, rgba(237, 189, 97, .32), transparent 30%),
        #fffdf8;
    box-shadow: 0 24px 58px rgba(16, 18, 39, .07);
}

.connect-faith__prayer {
    background:
        radial-gradient(circle at 90% 10%, rgba(50, 104, 173, .32), transparent 30%),
        #23214e;
    color: #fff;
}

.connect-faith__grid h3 {
    max-width: 580px;
    margin: 22px 0 16px;
    font-family: var(--font-display);
    font-size: clamp(3rem, 4.8vw, 5.4rem);
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: .95;
}

.connect-faith__grid article > p:not(.eyebrow) {
    max-width: 610px;
    color: rgba(16, 18, 39, .66);
    line-height: 1.8;
}

.connect-faith__prayer > p:not(.eyebrow) {
    color: rgba(255, 255, 255, .72) !important;
}

.connect-faith__steps {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 30px 0;
}

.connect-faith__steps strong {
    padding: 8px 11px;
    border-radius: 999px;
    background: rgba(36, 34, 83, .08);
    color: var(--connect-indigo);
    font-size: .67rem;
}

.connect-faith__prayer .button {
    margin-top: 24px;
}

.connect-next {
    padding-block: clamp(90px, 11vw, 158px);
    background: #fffdf9;
}

.connect-next__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr);
    gap: clamp(58px, 8vw, 118px);
    align-items: center;
}

.connect-next__content > p:not(.eyebrow) {
    max-width: 700px;
    color: rgba(16, 18, 39, .67);
    line-height: 1.8;
}

.connect-next__options {
    margin-block: 34px;
}

.connect-next__options span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    border: 1px solid rgba(16, 18, 39, .09);
    border-radius: 10px;
    background: #f0f2f4;
    color: rgba(16, 18, 39, .72);
    font-size: .69rem;
    font-weight: 800;
}

.connect-next__options small {
    color: var(--connect-coral);
    font-family: var(--font-display);
    font-size: .9rem;
}

.connect-next__path {
    position: absolute;
    right: 24px;
    bottom: 28px;
    left: 24px;
    display: grid;
    gap: 7px;
}

.connect-next__path span {
    padding: 12px 15px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 10px;
    background: rgba(17, 19, 42, .7);
    color: #fff;
    font-size: .62rem;
    font-weight: 900;
    letter-spacing: .12em;
    backdrop-filter: blur(10px);
}

.connect-cta {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 760px;
    overflow: hidden;
    background: #171937;
    color: #fff;
}

.connect-cta__media.site-image--pending {
    background:
        radial-gradient(circle at 78% 35%, rgba(238, 106, 88, .28), transparent 30%),
        linear-gradient(130deg, #171937, #2b285b 60%, #315d88);
}

.connect-cta__veil {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(12, 14, 31, .96), rgba(16, 18, 40, .8) 50%, rgba(16, 18, 40, .35)),
        linear-gradient(0deg, rgba(12, 14, 31, .7), transparent 52%);
}

.connect-cta__inner {
    position: relative;
    z-index: 3;
    padding-block: clamp(90px, 12vw, 160px);
}

.connect-cta h2 {
    max-width: 1050px;
    font-size: clamp(4.2rem, 7vw, 8rem);
}

.connect-cta__inner > p:not(.eyebrow) {
    max-width: 720px;
    margin-top: 28px;
    color: rgba(255, 255, 255, .74);
    font-size: 1.05rem;
    line-height: 1.8;
}

.page-connect .site-image__status {
    z-index: 8;
}

@keyframes connectHeroDrift {
    from { transform: scale(1.05); }
    to { transform: scale(1); }
}

@media (max-width: 1100px) {
    .connect-hero__content {
        width: min(820px, 82%);
    }

    .connect-welcome__grid,
    .connect-serve__grid,
    .connect-next__grid {
        grid-template-columns: 1fr;
    }

    .connect-welcome__visual,
    .connect-serve__visual,
    .connect-next__visual {
        width: min(720px, 100%);
        margin-inline: auto;
    }

    .connect-welcome__visual {
        order: 2;
    }

    .connect-visit__stage {
        grid-template-columns: 1fr;
    }

    .connect-visit__campuses {
        max-width: 760px;
    }

    .connect-community__grid {
        grid-template-columns: 1fr;
    }

    .connect-community__grid article {
        min-height: auto;
    }

    .connect-serve__image.site-image {
        min-height: 680px;
    }

    .connect-next__content {
        order: 2;
    }
}

@media (max-width: 760px) {
    .connect-hero {
        min-height: 920px;
    }

    .connect-hero__media img {
        object-position: center top;
    }

    .connect-hero__veil {
        background:
            linear-gradient(0deg, rgba(10, 12, 30, .98) 0%, rgba(11, 13, 31, .9) 53%, rgba(13, 16, 34, .48) 100%),
            linear-gradient(90deg, rgba(11, 13, 31, .56), transparent);
    }

    .connect-hero__inner {
        min-height: 920px;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .connect-breadcrumb {
        margin-bottom: auto;
    }

    .connect-hero__content {
        width: 100%;
        padding-top: 140px;
    }

    .connect-hero h1 {
        max-width: 100%;
        font-size: clamp(3.65rem, 15.4vw, 6rem);
        line-height: .91;
    }

    .connect-hero__statement {
        margin-top: 24px;
    }

    .connect-hero__mobile-path {
        top: 105px;
        right: 16px;
        left: 16px;
        max-width: none;
    }

    .connect-hero__promise {
        padding-top: 30px;
    }

    .connect-nav__inner {
        min-height: 56px;
    }

    .connect-welcome__pillars,
    .connect-faith__grid,
    .connect-community__head,
    .connect-faith__head {
        grid-template-columns: 1fr;
    }

    .connect-welcome__image.site-image,
    .connect-next__image.site-image {
        min-height: 560px;
        border-radius: 150px 150px 24px 24px;
    }

    .connect-welcome__seal {
        right: 10px;
        bottom: 24px;
    }

    .connect-pathways__head {
        align-items: start;
        flex-direction: column;
    }

    .connect-pathways__track {
        margin-top: 36px;
        padding-inline: 16px;
    }

    .connect-pathway-card {
        flex-basis: min(88vw, 410px);
        min-height: 720px;
    }

    .connect-pathway-card__content {
        padding: 28px;
    }

    .connect-pathway-card h3 {
        font-size: clamp(2.75rem, 12vw, 4rem);
    }

    .connect-visit__stage {
        min-height: 900px;
        padding: 34px 22px;
        border-radius: 26px;
    }

    .connect-visit h2 {
        font-size: clamp(3.8rem, 15vw, 5.6rem);
    }

    .connect-visit__campuses {
        grid-template-columns: 1fr;
    }

    .connect-community__grid h3,
    .connect-faith__grid h3 {
        font-size: clamp(2.8rem, 13vw, 4.7rem);
    }

    .connect-community__grid article,
    .connect-faith__grid > article {
        padding: 34px 26px;
        border-radius: 24px;
    }

    .connect-serve__image.site-image {
        min-height: 610px;
        border-radius: 24px 140px 24px 24px;
    }

    .connect-serve__mark {
        right: 12px;
        bottom: 24px;
    }

    .connect-next__grid {
        gap: 48px;
    }

    .connect-cta {
        min-height: 760px;
    }

    .connect-cta h2 {
        font-size: clamp(3.65rem, 15vw, 5.8rem);
    }
}

@media (max-width: 480px) {
    .connect-hero__actions .button,
    .connect-serve__actions .button,
    .connect-cta__actions .button {
        width: 100%;
    }

    .connect-hero__content {
        padding-top: 128px;
    }

    .connect-hero h1 {
        font-size: clamp(3.45rem, 15vw, 4.8rem);
    }

    .connect-hero__promise span {
        padding: 7px 9px;
        font-size: .53rem;
    }

    .connect-welcome__pillars article {
        min-height: auto;
    }

    .connect-pathway-card {
        min-height: 730px;
    }

    .connect-pathway-card__content {
        padding: 24px;
    }

    .connect-pathway-card__content > p {
        font-size: .84rem;
    }

    .connect-pathway-card__chips span:nth-child(n + 4) {
        display: none;
    }

    .connect-visit__campuses a {
        min-height: 72px;
    }

    .connect-next__path {
        right: 16px;
        bottom: 18px;
        left: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .connect-hero__media img,
    .connect-pathway-card__image img {
        animation: none;
        transition: none;
    }
}

/* ========================================================================== 
   Phase 1, Step 27 — KTFM Member Portal gateway
   ========================================================================== */

body.page-member-portal {
    --portal-ink: #10152d;
    --portal-navy: #141b3d;
    --portal-blue: #2e5f98;
    --portal-teal: #2d827b;
    --portal-gold: #e5b45d;
    --portal-coral: #e97361;
    --portal-ivory: #fbf8f1;
    --portal-mist: #eef2f5;
    background: var(--portal-ivory);
    color: var(--portal-ink);
}

.page-member-portal main { overflow: hidden; }

.portal-hero {
    position: relative;
    min-height: min(940px, calc(100svh - 32px));
    isolation: isolate;
    overflow: hidden;
    background:
        radial-gradient(circle at 76% 20%, rgba(45, 130, 123, .25), transparent 34%),
        linear-gradient(135deg, #0e1532 0%, #18264c 54%, #2e5f78 100%);
    color: #fff;
}

.portal-hero__media.site-image,
.portal-hero__media picture,
.portal-hero__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.portal-hero__media.site-image {
    z-index: -4;
    overflow: hidden;
    border-radius: 0;
}

.portal-hero__media img {
    object-fit: cover;
    object-position: center 35%;
    animation: portalHeroDrift 18s ease-out both;
}

.portal-hero__media.site-image--pending {
    background:
        radial-gradient(circle at 78% 27%, rgba(229, 180, 93, .28), transparent 24%),
        radial-gradient(circle at 66% 62%, rgba(45, 130, 123, .26), transparent 38%),
        linear-gradient(135deg, #101631, #1e3155 56%, #3e7386);
}

.portal-hero__veil {
    position: absolute;
    z-index: -2;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(8, 13, 33, .96) 0%, rgba(10, 18, 40, .82) 47%, rgba(9, 20, 40, .31) 79%, rgba(9, 20, 40, .18) 100%),
        linear-gradient(0deg, rgba(8, 13, 33, .74), transparent 60%);
}

.portal-hero__grid {
    position: absolute;
    z-index: -1;
    inset: 0;
    opacity: .18;
    background-image:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(90deg, #000, transparent 72%);
}

.portal-hero__inner {
    display: flex;
    min-height: min(940px, calc(100svh - 32px));
    flex-direction: column;
    padding-top: clamp(30px, 4vw, 54px);
    padding-bottom: clamp(30px, 5vw, 58px);
}

.portal-breadcrumb {
    display: flex;
    gap: 10px;
    align-items: center;
    color: rgba(255,255,255,.58);
    font-size: .69rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.portal-breadcrumb a { color: #fff; }

.portal-hero__content {
    width: min(850px, 70%);
    margin-block: auto;
    padding-block: clamp(90px, 10vw, 150px) 50px;
}

.portal-hero h1 {
    max-width: 1050px;
    margin: 12px 0 0;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(4.2rem, 7.5vw, 8.1rem);
    font-weight: 500;
    letter-spacing: -.055em;
    line-height: .86;
}

.portal-hero h1 em {
    display: block;
    color: var(--portal-gold);
    font-style: normal;
}

.portal-hero__statement {
    margin: 30px 0 0;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(1.55rem, 2.1vw, 2.25rem);
    line-height: 1.1;
}

.portal-hero__intro {
    max-width: 720px;
    margin: 22px 0 0;
    color: rgba(255,255,255,.74);
    font-size: 1.03rem;
    line-height: 1.8;
}

.portal-hero__actions,
.portal-cta__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    margin-top: 30px;
}

.portal-status-button {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: 0 21px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: rgba(255,255,255,.74);
    font-size: .69rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    backdrop-filter: blur(12px);
    cursor: not-allowed;
}

.portal-hero__notice {
    max-width: 630px;
    margin: 21px 0 0;
    padding-left: 15px;
    border-left: 2px solid var(--portal-teal);
    color: rgba(255,255,255,.56);
    font-size: .75rem;
    line-height: 1.65;
}

.portal-hero__promise {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: auto;
}

.portal-hero__promise span {
    padding: 8px 11px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    background: rgba(8,13,33,.35);
    color: rgba(255,255,255,.66);
    font-size: .59rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.portal-hero__mobile-path {
    position: absolute;
    z-index: 9;
    top: 96px;
    right: max(18px, calc((100vw - var(--container)) / 2));
    display: grid;
    gap: 2px;
    max-width: min(430px, calc(100vw - 36px));
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 10px;
    background: rgba(7,13,31,.82);
    color: #fff;
    font-size: .65rem;
    backdrop-filter: blur(10px);
}

.portal-hero__mobile-path strong { color: var(--portal-gold); text-transform: uppercase; }
.portal-hero__mobile-path small { overflow-wrap: anywhere; color: rgba(255,255,255,.7); }

.portal-nav {
    position: sticky;
    z-index: 20;
    top: 0;
    overflow-x: auto;
    border-bottom: 1px solid rgba(16,21,45,.08);
    background: rgba(251,248,241,.94);
    backdrop-filter: blur(18px);
    scrollbar-width: none;
}
.portal-nav::-webkit-scrollbar { display: none; }
.portal-nav__inner {
    display: flex;
    gap: 28px;
    align-items: center;
    min-height: 64px;
    white-space: nowrap;
}
.portal-nav a {
    color: rgba(16,21,45,.64);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.portal-nav a:hover,
.portal-nav a:focus-visible { color: var(--portal-teal); }

.portal-overview,
.portal-roles,
.portal-next { padding-block: clamp(90px, 11vw, 160px); }

.portal-overview { background: #fffdf8; }

.portal-overview__grid,
.portal-roles__grid,
.portal-next__grid,
.portal-security__grid {
    display: grid;
    grid-template-columns: minmax(340px, .82fr) minmax(0, 1.18fr);
    gap: clamp(54px, 8vw, 120px);
    align-items: center;
}

.portal-overview__visual,
.portal-roles__visual,
.portal-next__visual,
.portal-security__visual { position: relative; }

.portal-overview__image.site-image {
    min-height: 760px;
    overflow: hidden;
    border-radius: 230px 28px 28px 28px;
    background: linear-gradient(145deg, #d9e5e5, #1d5572);
    box-shadow: 0 36px 80px rgba(20,27,61,.18);
}

.portal-overview__seal {
    position: absolute;
    right: -28px;
    bottom: 48px;
    display: grid;
    width: 150px;
    height: 150px;
    place-content: center;
    border-radius: 50%;
    background: var(--portal-coral);
    color: #fff;
    text-align: center;
    box-shadow: 0 26px 46px rgba(16,21,45,.25);
}
.portal-overview__seal small,
.portal-overview__seal span { font-size: .56rem; font-weight: 900; letter-spacing: .15em; }
.portal-overview__seal strong { font-family: var(--font-display); font-size: 2rem; font-weight: 500; line-height: 1; }

.portal-overview__content > p:not(.eyebrow),
.portal-roles__content > p:not(.eyebrow),
.portal-next__content > p:not(.eyebrow) {
    max-width: 680px;
    color: rgba(16,21,45,.67);
    font-size: 1rem;
    line-height: 1.82;
}

.portal-overview__pillars {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 10px;
    margin-top: 38px;
}
.portal-overview__pillars article {
    min-height: 176px;
    padding: 24px;
    border: 1px solid rgba(16,21,45,.08);
    border-radius: 18px;
    background: #fff;
}
.portal-overview__pillars span { color: var(--portal-coral); font-family: var(--font-display); font-size: 1.5rem; }
.portal-overview__pillars strong { display: block; margin-top: 12px; font-size: .88rem; text-transform: uppercase; letter-spacing: .08em; }
.portal-overview__pillars p { margin: 8px 0 0; color: rgba(16,21,45,.58); font-size: .78rem; line-height: 1.6; }

.portal-pathways {
    padding-block: clamp(90px, 11vw, 150px);
    background:
        radial-gradient(circle at 8% 4%, rgba(45,130,123,.16), transparent 28%),
        #111833;
    color: #fff;
}
.portal-pathways__head {
    display: flex;
    gap: 30px;
    align-items: end;
    justify-content: space-between;
}
.portal-pathways h2,
.portal-global h2,
.portal-security h2,
.portal-cta h2 {
    color: #fff;
    font-size: clamp(3.8rem, 6.3vw, 7.1rem);
}
.portal-pathways h2 em,
.portal-global h2 em,
.portal-security h2 em,
.portal-cta h2 em { display: block; color: var(--portal-gold); font-style: normal; }
.portal-pathways__controls { display: flex; gap: 10px; align-items: center; }
.portal-pathways__controls button {
    width: 48px;
    height: 48px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50%;
    background: rgba(255,255,255,.08);
    color: #fff;
    font-size: 1.2rem;
    cursor: pointer;
}
.portal-pathways__controls span {
    min-width: 72px;
    color: rgba(255,255,255,.62);
    font-family: var(--font-display);
    text-align: center;
}
.portal-pathways__track {
    display: flex;
    gap: 18px;
    margin-top: 48px;
    padding: 0 max(20px, calc((100vw - var(--container)) / 2)) 24px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: max(20px, calc((100vw - var(--container)) / 2));
    scrollbar-width: thin;
    scrollbar-color: rgba(229,180,93,.55) rgba(255,255,255,.08);
}
.portal-pathway-card {
    position: relative;
    flex: 0 0 min(430px, 82vw);
    min-height: 720px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 24px;
    background: #1d2747;
    scroll-snap-align: start;
    isolation: isolate;
}
.portal-pathway-card__image.site-image,
.portal-pathway-card__image picture,
.portal-pathway-card__image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.portal-pathway-card__image.site-image { z-index: -3; overflow: hidden; border-radius: 0; }
.portal-pathway-card__image img { object-fit: cover; transition: transform .6s ease; }
.portal-pathway-card:hover .portal-pathway-card__image img { transform: scale(1.035); }
.portal-pathway-card__veil {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(0deg, rgba(7,11,27,.98) 4%, rgba(7,11,27,.83) 45%, rgba(7,11,27,.15) 82%);
}
.portal-pathway-card__content { position: absolute; right: 0; bottom: 0; left: 0; padding: 32px; }
.portal-pathway-card__meta { display: flex; gap: 13px; align-items: center; }
.portal-pathway-card__meta span { color: var(--portal-gold); font-family: var(--font-display); font-size: 1.85rem; }
.portal-pathway-card__meta small { color: rgba(255,255,255,.58); font-size: .59rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.portal-pathway-card h3 { margin: 16px 0 0; color: #fff; font-family: var(--font-display); font-size: clamp(2.8rem,4vw,4.1rem); font-weight: 500; line-height: .96; letter-spacing: -.035em; }
.portal-pathway-card__content > p { margin: 15px 0 0; color: rgba(255,255,255,.69); font-size: .86rem; line-height: 1.65; }
.portal-pathway-card__chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 17px; }
.portal-pathway-card__chips span { padding: 6px 8px; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; color: rgba(255,255,255,.62); font-size: .57rem; font-weight: 800; }
.portal-pathway-card__status { display: block; margin-top: 20px; color: var(--portal-gold); font-size: .62rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.portal-pathways__footer { margin-top: 22px; color: rgba(255,255,255,.54); font-size: .8rem; line-height: 1.7; }

.portal-global {
    padding-block: clamp(90px, 11vw, 160px);
    background: #e9eff1;
}
.portal-global__stage {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0,.85fr) minmax(430px,1.15fr);
    gap: clamp(50px,7vw,100px);
    min-height: 760px;
    align-items: center;
    overflow: hidden;
    padding: clamp(48px,7vw,96px);
    border-radius: 36px;
    background: #172440;
    color: #fff;
    box-shadow: 0 42px 90px rgba(16,21,45,.2);
}
.portal-global__image.site-image,
.portal-global__image picture,
.portal-global__image img { position:absolute; inset:0; width:100%; height:100%; }
.portal-global__image.site-image { overflow:hidden; border-radius:0; }
.portal-global__image img { object-fit:cover; }
.portal-global__veil { position:absolute; z-index:1; inset:0; background: linear-gradient(90deg, rgba(10,17,37,.96), rgba(13,28,49,.78) 52%, rgba(12,30,49,.52)); }
.portal-global__content,
.portal-global__flow { position:relative; z-index:3; }
.portal-global__content > p:not(.eyebrow) { max-width:590px; color:rgba(255,255,255,.72); line-height:1.8; }
.portal-global__flow { display:grid; gap:10px; }
.portal-global__flow article { display:grid; grid-template-columns:46px 1fr auto; gap:14px; align-items:center; min-height:86px; padding:18px 20px; border:1px solid rgba(255,255,255,.14); border-radius:15px; background:rgba(255,255,255,.08); backdrop-filter:blur(12px); }
.portal-global__flow small { color:var(--portal-gold); font-family:var(--font-display); font-size:1.1rem; }
.portal-global__flow strong { color:#fff; font-size:.83rem; }
.portal-global__flow span { color:rgba(255,255,255,.56); font-size:.66rem; font-weight:800; text-align:right; }

.portal-roles { background:#fffdf8; }
.portal-roles__image.site-image { min-height:780px; overflow:hidden; border-radius:28px 210px 28px 28px; background:linear-gradient(145deg,#d9e5e5,#254b6e); box-shadow:0 36px 80px rgba(20,27,61,.17); }
.portal-roles__tag { position:absolute; right:-18px; bottom:48px; padding:15px 18px; border-radius:12px; background:var(--portal-teal); color:#fff; font-size:.62rem; font-weight:900; letter-spacing:.12em; box-shadow:0 20px 40px rgba(16,21,45,.2); }
.portal-role-list { display:grid; gap:8px; margin-top:36px; }
.portal-role-list article { display:grid; grid-template-columns:52px 1fr; gap:16px; align-items:start; padding:18px 0; border-bottom:1px solid rgba(16,21,45,.09); }
.portal-role-list > article > span { color:var(--portal-coral); font-family:var(--font-display); font-size:1.3rem; }
.portal-role-list h3 { margin:0; font-size:.9rem; text-transform:uppercase; letter-spacing:.08em; }
.portal-role-list p { margin:6px 0 0; color:rgba(16,21,45,.58); font-size:.76rem; line-height:1.6; }

.portal-security {
    padding-block:clamp(90px,11vw,160px);
    background:#111833;
    color:#fff;
}
.portal-security__head { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.65fr); gap:clamp(40px,7vw,100px); align-items:end; }
.portal-security__head > p { color:rgba(255,255,255,.62); line-height:1.8; }
.portal-security__grid { margin-top:58px; }
.portal-security__image.site-image { min-height:650px; overflow:hidden; border-radius:180px 28px 28px 28px; background:linear-gradient(145deg,#1f3150,#2f7a77); }
.portal-security__principles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.portal-security__principles article { min-height:220px; padding:28px; border:1px solid rgba(255,255,255,.12); border-radius:20px; background:rgba(255,255,255,.06); }
.portal-security__principles span { color:var(--portal-gold); font-family:var(--font-display); font-size:1.5rem; }
.portal-security__principles h3 { margin:20px 0 0; color:#fff; font-size:.9rem; text-transform:uppercase; letter-spacing:.07em; }
.portal-security__principles p { margin:10px 0 0; color:rgba(255,255,255,.6); font-size:.78rem; line-height:1.65; }

.portal-next { background:#f6f1e7; }
.portal-next__sequence { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:34px 0; }
.portal-next__sequence span { display:flex; gap:11px; align-items:center; min-height:58px; padding:13px 15px; border:1px solid rgba(16,21,45,.08); border-radius:12px; background:#fff; font-size:.72rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.portal-next__sequence small { color:var(--portal-coral); font-family:var(--font-display); font-size:1rem; }
.portal-next__image.site-image { min-height:750px; overflow:hidden; border-radius:28px 220px 28px 28px; background:linear-gradient(145deg,#d8e2e0,#315d7a); box-shadow:0 36px 80px rgba(20,27,61,.17); }
.portal-next__mark { position:absolute; right:-20px; bottom:48px; display:grid; gap:2px; padding:20px 24px; border-radius:16px; background:var(--portal-coral); color:#fff; box-shadow:0 24px 44px rgba(16,21,45,.22); }
.portal-next__mark span { font-size:.56rem; font-weight:900; letter-spacing:.14em; }
.portal-next__mark strong { font-family:var(--font-display); font-size:1.9rem; font-weight:500; }

.portal-cta { position:relative; display:flex; align-items:center; min-height:760px; overflow:hidden; background:#151d3d; color:#fff; }
.portal-cta__media.site-image,
.portal-cta__media picture,
.portal-cta__media img { position:absolute; inset:0; width:100%; height:100%; }
.portal-cta__media.site-image { overflow:hidden; border-radius:0; }
.portal-cta__media img { object-fit:cover; }
.portal-cta__media.site-image--pending { background:radial-gradient(circle at 78% 35%,rgba(45,130,123,.28),transparent 30%),linear-gradient(130deg,#151d3d,#20395b 60%,#3f7682); }
.portal-cta__veil { position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,rgba(8,13,31,.97),rgba(12,21,43,.8) 52%,rgba(12,21,43,.35)),linear-gradient(0deg,rgba(8,13,31,.68),transparent 52%); }
.portal-cta__inner { position:relative; z-index:3; padding-block:clamp(90px,12vw,160px); }
.portal-cta__inner > p:not(.eyebrow) { max-width:720px; margin-top:26px; color:rgba(255,255,255,.72); font-size:1.03rem; line-height:1.8; }
.portal-status-button--light { border-color:rgba(255,255,255,.19); }
.page-member-portal .site-image__status { z-index:8; }

@keyframes portalHeroDrift { from { transform:scale(1.05); } to { transform:scale(1); } }

@media (max-width: 1100px) {
    .portal-hero__content { width:min(830px,82%); }
    .portal-overview__grid,
    .portal-roles__grid,
    .portal-next__grid,
    .portal-security__grid { grid-template-columns:1fr; }
    .portal-overview__visual,
    .portal-roles__visual,
    .portal-next__visual,
    .portal-security__visual { width:min(720px,100%); margin-inline:auto; }
    .portal-overview__visual { order:2; }
    .portal-global__stage { grid-template-columns:1fr; }
    .portal-global__flow { max-width:760px; }
}

@media (max-width: 760px) {
    .portal-hero { min-height:940px; }
    .portal-hero__media img { object-position:center top; }
    .portal-hero__veil { background:linear-gradient(0deg,rgba(7,11,29,.98) 0%,rgba(8,14,32,.91) 53%,rgba(10,24,39,.48) 100%),linear-gradient(90deg,rgba(7,11,29,.56),transparent); }
    .portal-hero__inner { min-height:940px; padding-top:30px; padding-bottom:30px; }
    .portal-breadcrumb { margin-bottom:auto; }
    .portal-hero__content { width:100%; padding-top:130px; }
    .portal-hero h1 { max-width:100%; font-size:clamp(3.5rem,15vw,5.8rem); line-height:.91; }
    .portal-hero__mobile-path { top:104px; right:16px; left:16px; max-width:none; }
    .portal-nav__inner { min-height:56px; }
    .portal-overview__image.site-image,
    .portal-roles__image.site-image,
    .portal-next__image.site-image,
    .portal-security__image.site-image { min-height:560px; border-radius:130px 24px 24px 24px; }
    .portal-overview__seal { right:8px; bottom:24px; width:126px; height:126px; }
    .portal-overview__pillars,
    .portal-security__principles,
    .portal-next__sequence,
    .portal-security__head { grid-template-columns:1fr; }
    .portal-pathways__head { align-items:start; flex-direction:column; }
    .portal-pathways__track { padding-inline:16px; scroll-padding-inline:16px; }
    .portal-pathway-card { flex-basis:min(88vw,410px); min-height:720px; }
    .portal-pathway-card__content { padding:27px; }
    .portal-global__stage { min-height:900px; padding:34px 22px; border-radius:26px; }
    .portal-global h2,
    .portal-security h2 { font-size:clamp(3.7rem,15vw,5.6rem); }
    .portal-global__flow article { grid-template-columns:38px 1fr; }
    .portal-global__flow span { grid-column:2; text-align:left; }
    .portal-roles__tag,
    .portal-next__mark { right:10px; bottom:24px; }
    .portal-cta { min-height:760px; }
    .portal-cta h2 { font-size:clamp(3.6rem,15vw,5.7rem); }
}

@media (max-width: 480px) {
    .portal-hero__actions .button,
    .portal-status-button,
    .portal-cta__actions .button { width:100%; }
    .portal-hero__content { padding-top:122px; }
    .portal-hero h1 { font-size:clamp(3.3rem,14.8vw,4.7rem); }
    .portal-hero__promise span { padding:7px 9px; font-size:.52rem; }
    .portal-pathway-card { min-height:730px; }
    .portal-pathway-card__content { padding:23px; }
    .portal-pathway-card__chips span:nth-child(n + 4) { display:none; }
    .portal-overview__pillars article,
    .portal-security__principles article { min-height:auto; }
}

@media (prefers-reduced-motion: reduce) {
    .portal-hero__media img,
    .portal-pathway-card__image img { animation:none; transition:none; }
}


/* ============================================================
   KTFM MEMBER AUTHENTICATION — STEP 28B
   ============================================================ */
.page-member-auth { background: #f7f4ee; }
.member-auth { --auth-navy:#091329; --auth-gold:#ddb15e; position:relative; min-height:calc(100vh - 80px); overflow:hidden; padding:clamp(90px,10vw,150px) 0 80px; background:radial-gradient(circle at 18% 22%,rgba(221,177,94,.16),transparent 30%),linear-gradient(135deg,#071126 0%,#101d39 48%,#f8f5ef 48.1%,#f8f5ef 100%); }
.member-auth__glow { position:absolute; width:44vw; height:44vw; left:-18vw; bottom:-22vw; border-radius:50%; background:rgba(221,177,94,.12); filter:blur(30px); pointer-events:none; }
.member-auth__shell { position:relative; display:grid; grid-template-columns:minmax(0,.92fr) minmax(520px,.78fr); gap:clamp(48px,7vw,110px); align-items:center; }
.member-auth__story { color:#fff; max-width:700px; }
.member-auth__back { display:inline-flex; margin-bottom:40px; color:rgba(255,255,255,.72); text-decoration:none; font-weight:700; }
.member-auth__story h1 { margin:12px 0 28px; color:#fff; font-family:var(--font-display); font-size:clamp(3.5rem,6vw,7rem); line-height:.92; letter-spacing:-.05em; }
.member-auth__story h1 em { display:block; color:var(--auth-gold); font-style:normal; }
.member-auth__story>p { max-width:620px; color:rgba(255,255,255,.76); font-size:1.08rem; line-height:1.8; }
.member-auth__principles { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:38px 0 32px; }
.member-auth__principles span { padding:17px 14px; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(255,255,255,.06); color:#fff; font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.member-auth__principles strong { display:block; margin-bottom:7px; color:var(--auth-gold); font-size:.72rem; }
.member-auth__admin-note { padding-top:22px; border-top:1px solid rgba(255,255,255,.12); font-size:.86rem!important; }
.member-auth__panel { width:100%; max-width:650px; justify-self:end; padding:clamp(28px,4vw,52px); border:1px solid rgba(9,19,41,.08); border-radius:30px; background:rgba(255,255,255,.96); box-shadow:0 32px 90px rgba(5,14,31,.18); }
.member-auth__switch { display:grid; grid-template-columns:1fr 1fr; gap:6px; padding:6px; border-radius:16px; background:#f1ede5; }
.member-auth__switch a { padding:13px 18px; border-radius:12px; color:#596173; text-align:center; text-decoration:none; font-weight:800; }
.member-auth__switch a.is-active { background:#fff; color:var(--auth-navy); box-shadow:0 6px 22px rgba(9,19,41,.09); }
.member-auth__form-head { margin:34px 0 26px; }
.member-auth__form-head>span { color:#9a7232; font-size:.72rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.member-auth__form-head h2 { margin:7px 0 8px; color:var(--auth-navy); font-family:var(--font-display); font-size:clamp(2.1rem,3vw,3.2rem); }
.member-auth__form-head p { margin:0; color:#6a7180; line-height:1.65; }
.member-auth__alert { margin:0 0 20px; padding:14px 16px; border:1px solid #e8b5b5; border-radius:13px; background:#fff3f3; color:#8e2e2e; font-size:.9rem; }
.member-auth__alert--success { border-color:#b9dbc3; background:#f1fbf4; color:#23643a; }
.member-auth__form { display:grid; gap:17px; }
.member-auth__two { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.member-auth__form label>span { display:flex; justify-content:space-between; margin-bottom:8px; color:#253047; font-size:.78rem; font-weight:850; letter-spacing:.025em; }
.member-auth__form label>span i { color:#8d94a1; font-size:.68rem; font-style:normal; font-weight:600; }
.member-auth__form input:not([type=checkbox]) { width:100%; min-height:52px; padding:0 15px; border:1px solid #d8dce3; border-radius:12px; outline:none; background:#fff; color:#111a2d; font:inherit; transition:border-color .2s,box-shadow .2s; }
.member-auth__form input:focus { border-color:#b98b3f; box-shadow:0 0 0 4px rgba(221,177,94,.15); }
.member-auth__form label>small,.member-auth__standalone-error { display:block; margin-top:7px; color:#a23c3c; font-size:.74rem; line-height:1.4; }
.member-auth__hint { color:#777f8d!important; }
.member-auth__password { position:relative; }
.member-auth__password input { padding-right:64px!important; }
.member-auth__password button { position:absolute; top:50%; right:8px; transform:translateY(-50%); padding:8px; border:0; background:transparent; color:#775925; font-weight:800; cursor:pointer; }
.member-auth__check { display:flex!important; gap:10px; align-items:flex-start; }
.member-auth__check input { width:18px; height:18px; margin-top:2px; accent-color:#b98b3f; }
.member-auth__check span { display:block!important; margin:0!important; color:#555f72!important; font-size:.82rem!important; font-weight:600!important; }
.member-auth__form-row { display:flex; justify-content:space-between; gap:15px; color:#7a8290; font-size:.72rem; }
.member-auth__submit { width:100%; justify-content:center; min-height:54px; border:0; cursor:pointer; }
.member-auth__verification { margin:0; padding:13px 14px; border-radius:12px; background:#f7f2e9; color:#74644c; font-size:.74rem; line-height:1.55; }
.member-auth__foot { margin:24px 0 0; color:#707786; text-align:center; font-size:.86rem; }
.member-auth__foot a { color:#805d25; font-weight:850; text-decoration:none; }
.member-dashboard-placeholder { min-height:72vh; display:grid; place-items:center; padding:130px 0 80px; background:linear-gradient(145deg,#f8f5ef,#fff); }
.member-dashboard-placeholder__inner { max-width:860px; padding:clamp(34px,6vw,72px); border:1px solid #e7e1d7; border-radius:30px; background:#fff; box-shadow:0 25px 70px rgba(9,19,41,.08); }
.member-dashboard-placeholder h1 { margin:10px 0 20px; font-family:var(--font-display); font-size:clamp(3rem,6vw,6rem); color:#0b1730; }
.member-dashboard-placeholder p { max-width:680px; color:#657083; font-size:1.05rem; line-height:1.75; }
.member-dashboard-placeholder__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.member-dashboard-placeholder__actions form { margin:0; }
@media (max-width:1100px) { .member-auth { background:linear-gradient(180deg,#081329 0 43%,#f8f5ef 43.1%); } .member-auth__shell { grid-template-columns:1fr; } .member-auth__story { max-width:820px; } .member-auth__panel { justify-self:center; max-width:760px; } }
@media (max-width:680px) { .member-auth { padding:95px 0 45px; background:linear-gradient(180deg,#081329 0 36%,#f8f5ef 36.1%); } .member-auth__story h1 { font-size:clamp(3rem,15vw,4.7rem); } .member-auth__principles { grid-template-columns:1fr; } .member-auth__panel { padding:22px 18px 28px; border-radius:22px; } .member-auth__two { grid-template-columns:1fr; } .member-auth__form-row { flex-direction:column; gap:4px; } }

/* ================================================================
   KTFM MEMBER PORTAL APP — PHASE 1 / STEP 28D
   Authenticated member experience. No photographic asset required.
   ================================================================ */
:root {
    --member-ink: #0b1327;
    --member-navy: #111b35;
    --member-panel: #f7f4ee;
    --member-gold: #d6a756;
    --member-gold-deep: #a97829;
    --member-line: rgba(16, 28, 53, .11);
    --member-muted: #667086;
}
.page-member-app { background: #f3f1ec; }
.page-member-app .site-header,
.page-member-app .site-footer,
.page-member-app .mobile-bottom-nav { display: none !important; }
.page-member-app main { padding: 0 !important; }
.member-app { min-height: 100svh; background: #f3f1ec; color: var(--member-ink); }
.member-app__rail {
    position: fixed; z-index: 80; inset: 0 auto 0 0; width: 292px; display: flex;
    flex-direction: column; padding: 28px 20px 22px; overflow-y: auto;
    background: radial-gradient(circle at 20% 0%, rgba(214,167,86,.16), transparent 30%), #0d1730;
    color: #fff; border-right: 1px solid rgba(255,255,255,.08);
}
.member-app__brand { display: flex; gap: 10px; align-items: baseline; padding: 4px 8px 24px; color: #fff; text-decoration: none; }
.member-app__brand span { color: var(--member-gold); font-family: var(--font-display); font-size: 1.45rem; letter-spacing: .06em; }
.member-app__brand strong { font-size: .78rem; text-transform: uppercase; letter-spacing: .14em; opacity: .7; }
.member-app__identity { display: flex; gap: 12px; align-items: center; padding: 17px; border: 1px solid rgba(255,255,255,.09); border-radius: 20px; background: rgba(255,255,255,.055); }
.member-app__avatar { display: grid; place-items: center; width: 46px; height: 46px; flex: 0 0 46px; border-radius: 15px; background: linear-gradient(145deg,#f1c979,#b87d2c); color: #11192b; font-weight: 900; letter-spacing: .04em; }
.member-app__identity div { min-width: 0; }
.member-app__identity strong, .member-app__identity small { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.member-app__identity strong { font-size: .91rem; }
.member-app__identity small { margin-top: 3px; color: rgba(255,255,255,.57); font-size: .75rem; }
.member-app__nav { display: grid; gap: 6px; margin-top: 24px; }
.member-app__nav a { display: flex; gap: 12px; align-items: center; min-height: 48px; padding: 10px 13px; border-radius: 15px; color: rgba(255,255,255,.69); text-decoration: none; font-weight: 700; font-size: .86rem; transition: .2s ease; }
.member-app__nav a:hover { background: rgba(255,255,255,.07); color: #fff; transform: translateX(2px); }
.member-app__nav a.is-active { background: linear-gradient(135deg,rgba(214,167,86,.2),rgba(214,167,86,.08)); color: #fff; box-shadow: inset 0 0 0 1px rgba(214,167,86,.24); }
.member-app__nav-icon { display: grid; place-items: center; width: 29px; height: 29px; color: var(--member-gold); }
.member-app__nav-icon svg { width: 19px; height: 19px; }
.member-app__rail-foot { display: grid; gap: 8px; margin-top: auto; padding-top: 24px; }
.member-app__rail-foot a, .member-app__rail-foot button { width: 100%; border: 0; padding: 10px 12px; background: transparent; color: rgba(255,255,255,.55); text-align: left; text-decoration: none; font: inherit; font-size: .78rem; cursor: pointer; }
.member-app__rail-foot a:hover, .member-app__rail-foot button:hover { color: #fff; }
.member-app__main { min-height: 100svh; margin-left: 292px; }
.member-app__topbar { position: sticky; z-index: 60; top: 0; min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 12px clamp(24px,3.5vw,56px); border-bottom: 1px solid var(--member-line); background: rgba(247,245,240,.91); backdrop-filter: blur(18px); }
.member-app__topbar > div:first-child { display: grid; gap: 2px; }
.member-app__top-kicker { color: var(--member-muted); font-size: .66rem; text-transform: uppercase; letter-spacing: .15em; }
.member-app__topbar strong { font-size: .95rem; }
.member-app__top-actions { display: flex; gap: 14px; align-items: center; }
.member-app__secure { display: inline-flex; gap: 7px; align-items: center; color: #49715f; font-size: .74rem; font-weight: 800; }
.member-app__secure i { width: 7px; height: 7px; border-radius: 50%; background: #4d9b72; box-shadow: 0 0 0 4px rgba(77,155,114,.12); }
.member-app__logout { border: 1px solid var(--member-line); border-radius: 999px; padding: 8px 13px; background: #fff; color: var(--member-ink); font: inherit; font-size: .76rem; font-weight: 800; cursor: pointer; }
.member-app__content { width: min(1280px, calc(100% - 48px)); margin: 0 auto; padding: clamp(38px,5vw,76px) 0 84px; }
.member-app__eyebrow { margin: 0 0 12px; color: var(--member-gold-deep); font-size: .67rem; font-weight: 900; text-transform: uppercase; letter-spacing: .17em; }
.member-app__welcome { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0,1.55fr) minmax(250px,.45fr); gap: 40px; align-items: end; padding: clamp(30px,4vw,56px); border-radius: 32px; background: radial-gradient(circle at 88% 10%,rgba(214,167,86,.16),transparent 25%), linear-gradient(135deg,#101a34,#18274a); color: #fff; box-shadow: 0 28px 70px rgba(15,24,45,.15); }
.member-app__welcome:after { content:""; position:absolute; width:360px; height:360px; right:-140px; bottom:-180px; border:1px solid rgba(255,255,255,.08); border-radius:50%; box-shadow:0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.018); }
.member-app__welcome > * { position: relative; z-index: 1; }
.member-app__welcome h1 { max-width: 850px; margin: 0; color: #fff; font-size: clamp(2.6rem,5vw,5.65rem); line-height: .96; letter-spacing: -.045em; }
.member-app__welcome h1 em { display: block; margin-top: 8px; color: var(--member-gold); font-style: normal; }
.member-app__welcome > div:first-child > p:last-child { max-width: 760px; margin: 24px 0 0; color: rgba(255,255,255,.67); line-height: 1.75; }
.member-app__role-card { padding: 22px; border: 1px solid rgba(255,255,255,.12); border-radius: 22px; background: rgba(255,255,255,.06); backdrop-filter: blur(8px); }
.member-app__role-card span, .member-app__role-card strong, .member-app__role-card small { display: block; }
.member-app__role-card span { color: rgba(255,255,255,.5); font-size: .66rem; text-transform: uppercase; letter-spacing: .14em; }
.member-app__role-card strong { margin-top: 8px; color: #fff; font-size: 1.45rem; }
.member-app__role-card small { margin-top: 8px; color: rgba(255,255,255,.57); line-height: 1.5; }
.member-app__status-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.member-app__status-grid article { min-width: 0; padding: 20px 21px; border: 1px solid var(--member-line); border-radius: 20px; background: rgba(255,255,255,.72); }
.member-app__status-grid span, .member-app__status-grid strong, .member-app__status-grid small { display: block; }
.member-app__status-grid span { color: var(--member-muted); font-size: .65rem; text-transform: uppercase; letter-spacing: .13em; }
.member-app__status-grid strong { margin-top: 8px; font-size: 1rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.member-app__status-grid small { margin-top: 5px; color: #8a91a0; font-size: .72rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.member-app__access, .member-app__account-grid { margin-top: clamp(48px,6vw,82px); }
.member-app__section-head { display: flex; justify-content: space-between; gap: 30px; align-items: end; margin-bottom: 25px; }
.member-app__section-head h2 { max-width: 760px; margin: 0; color: var(--member-ink); font-size: clamp(2rem,3.6vw,4.2rem); line-height: 1; letter-spacing: -.04em; }
.member-app__section-head > p { max-width: 370px; margin: 0; color: var(--member-muted); font-size: .88rem; line-height: 1.7; }
.member-app__module-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.member-module-card { position: relative; min-height: 300px; display: flex; flex-direction: column; padding: 25px; overflow: hidden; border: 1px solid var(--member-line); border-radius: 25px; background: rgba(255,255,255,.8); transition: transform .25s ease, box-shadow .25s ease; }
.member-module-card:not(.is-locked):hover { transform: translateY(-4px); box-shadow: 0 20px 44px rgba(20,30,50,.1); }
.member-module-card__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 16px; background: #f2e8d6; color: #9e6b22; }
.member-module-card__icon svg { width: 22px; height: 22px; }
.member-module-card__body { margin-top: 30px; }
.member-module-card__body > span { color: var(--member-gold-deep); font-size: .64rem; font-weight: 900; text-transform: uppercase; letter-spacing: .13em; }
.member-module-card h3 { margin: 8px 0 10px; color: var(--member-ink); font-size: 1.45rem; }
.member-module-card p { margin: 0; color: var(--member-muted); font-size: .82rem; line-height: 1.7; }
.member-module-card > a, .member-module-card__locked { margin-top: auto; padding-top: 22px; color: var(--member-ink); font-size: .77rem; font-weight: 900; text-decoration: none; }
.member-module-card > a span { color: var(--member-gold-deep); }
.member-module-card.is-locked { opacity: .52; filter: saturate(.55); }
.member-module-card__locked { color: #848a95; }
.member-module-card--sage .member-module-card__icon { background:#e6efe8;color:#52715c; }
.member-module-card--sky .member-module-card__icon { background:#e5edf5;color:#52718f; }
.member-module-card--rose .member-module-card__icon { background:#f4e7e7;color:#9a5b64; }
.member-module-card--violet .member-module-card__icon { background:#ece7f5;color:#705a91; }
.member-app__account-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 18px; }
.member-app__profile-card, .member-app__security-card { padding: clamp(25px,3vw,38px); border: 1px solid var(--member-line); border-radius: 28px; background: rgba(255,255,255,.78); }
.member-app__section-head--compact { align-items: start; margin-bottom: 18px; }
.member-app__section-head--compact h2 { font-size: clamp(1.8rem,2.6vw,3rem); }
.member-app__completion { display:grid;place-items:center; width:56px;height:56px;border-radius:50%;background:#101a34;color:var(--member-gold);font-weight:900;font-size:.78rem; }
.member-app__progress { height: 7px; overflow: hidden; margin: 20px 0 24px; border-radius: 999px; background: #e8e5de; }
.member-app__progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#b98032,#e0bd78); }
.member-app__profile-card dl { margin: 0; }
.member-app__profile-card dl div { display: grid; grid-template-columns: 130px minmax(0,1fr); gap: 20px; padding: 13px 0; border-top: 1px solid var(--member-line); }
.member-app__profile-card dt { color: var(--member-muted); font-size: .75rem; }
.member-app__profile-card dd { margin: 0; overflow-wrap: anywhere; font-size: .8rem; font-weight: 800; text-align: right; }
.member-app__profile-note { margin: 20px 0 0; color: #888e9b; font-size: .73rem; line-height: 1.6; }
.member-app__security-card { position: relative; overflow: hidden; background: linear-gradient(145deg,#121d39,#0d152b); color: #fff; }
.member-app__security-card:before { content:""; position:absolute; width:260px;height:260px;top:-150px;right:-100px;border-radius:50%;background:rgba(214,167,86,.13);filter:blur(3px); }
.member-app__security-card > * { position: relative; z-index: 1; }
.member-app__security-mark { display:grid;place-items:center;width:50px;height:50px;border-radius:17px;background:rgba(214,167,86,.13);color:var(--member-gold); }
.member-app__security-mark svg { width:24px;height:24px; }
.member-app__security-card h2 { margin: 11px 0 14px; color: #fff; font-size: clamp(1.9rem,2.7vw,3.1rem); line-height: 1.02; }
.member-app__security-card > p:not(.member-app__eyebrow) { color: rgba(255,255,255,.62); font-size: .84rem; line-height: 1.75; }
.member-app__security-list { display:grid; gap:10px; margin-top:24px; }
.member-app__security-list span { display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.76);font-size:.77rem;font-weight:700; }
.member-app__security-list i { width:7px;height:7px;border-radius:50%;background:var(--member-gold); }
.member-module-page__hero { display: grid; grid-template-columns: 80px minmax(0,1fr); gap: 24px; align-items: start; padding-bottom: 42px; border-bottom: 1px solid var(--member-line); }
.member-module-page__icon { display:grid;place-items:center;width:76px;height:76px;border-radius:23px;background:#101a34;color:var(--member-gold); }
.member-module-page__icon svg { width:30px;height:30px; }
.member-module-page__hero h1 { margin: 0; color: var(--member-ink); font-size: clamp(3rem,6vw,6.3rem); line-height: .92; letter-spacing: -.05em; }
.member-module-page__hero > div:last-child > p:last-child { max-width: 760px; margin: 20px 0 0; color: var(--member-muted); line-height: 1.75; }
.member-module-page__empty { display: grid; justify-items: start; max-width: 760px; margin: 70px auto 0; padding: clamp(30px,5vw,58px); border: 1px solid var(--member-line); border-radius: 30px; background: rgba(255,255,255,.78); text-align: left; }
.member-module-page__empty-icon { display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#f0e7d8;color:#95641f; }
.member-module-page__empty-icon svg { width:25px;height:25px; }
.member-module-page__empty h2 { margin: 24px 0 12px; color: var(--member-ink); font-size: clamp(2rem,3.5vw,3.7rem); line-height: 1; }
.member-module-page__empty > p { margin: 0; color: var(--member-muted); line-height: 1.75; }
.member-module-page__empty > div { display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:28px; }
.member-app__text-link { color: var(--member-ink); font-size: .8rem; font-weight: 900; text-decoration: none; }
.member-module-page__privacy { display:flex;gap:12px;justify-content:center;align-items:baseline;margin:28px auto 0;color:#858b97;font-size:.72rem; }
.member-module-page__privacy strong { color:#555d6d; }
.member-app__restricted { max-width: 830px; margin: 40px auto; padding: clamp(32px,5vw,60px); border: 1px solid var(--member-line); border-radius: 32px; background: #fff; box-shadow: 0 30px 70px rgba(13,23,48,.08); }
.member-app__restricted-icon { display:grid;place-items:center;width:62px;height:62px;border-radius:20px;background:#f0e7d8;color:#95641f;margin-bottom:24px; }
.member-app__restricted-icon svg { width:28px;height:28px; }
.member-app__restricted h1 { margin:0;color:var(--member-ink);font-size:clamp(2.5rem,5vw,5rem);line-height:.97;letter-spacing:-.045em; }
.member-app__restricted > p:not(.member-app__eyebrow) { max-width:690px;margin:22px 0 0;color:var(--member-muted);line-height:1.75; }
.member-app__restricted-actions { display:flex;gap:18px;align-items:center;margin-top:30px; }
.member-app__mobile-nav { display:none; }
@media (max-width: 1180px) {
    .member-app__rail { width: 250px; }
    .member-app__main { margin-left: 250px; }
    .member-app__module-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .member-app__status-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 860px) {
    .member-app__rail { display:none; }
    .member-app__main { margin-left:0; }
    .member-app__topbar { min-height:66px;padding-inline:20px; }
    .member-app__top-actions .member-app__secure { display:none; }
    .member-app__content { width:min(100% - 28px,740px);padding:28px 0 calc(104px + env(safe-area-inset-bottom)); }
    .member-app__welcome { grid-template-columns:1fr;padding:28px;border-radius:25px; }
    .member-app__welcome h1 { font-size:clamp(2.6rem,11vw,4.7rem); }
    .member-app__role-card { max-width:380px; }
    .member-app__section-head { display:grid;gap:12px; }
    .member-app__section-head > p { max-width:620px; }
    .member-app__account-grid { grid-template-columns:1fr; }
    .member-module-page__hero { grid-template-columns:1fr; }
    .member-module-page__privacy { display:grid;text-align:center; }
    .member-app__mobile-nav {
        position:fixed;z-index:90;right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;
        display:flex;justify-content:space-around;gap:2px;min-height:66px;padding:7px;
        border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(13,23,48,.95);
        box-shadow:0 20px 50px rgba(10,16,33,.3);backdrop-filter:blur(20px);
    }
    .member-app__mobile-nav a { min-width:0; flex:1; display:grid;justify-items:center;align-content:center;gap:3px;padding:5px 2px;border-radius:15px;color:rgba(255,255,255,.57);text-decoration:none;font-size:.59rem;font-weight:800; }
    .member-app__mobile-nav a.is-active { background:rgba(214,167,86,.14);color:var(--member-gold); }
    .member-app__mobile-nav svg { width:18px;height:18px; }
}
@media (max-width: 600px) {
    .member-app__top-kicker { display:none; }
    .member-app__topbar { min-height:60px; }
    .member-app__logout { padding:7px 10px; }
    .member-app__welcome { padding:25px 21px; }
    .member-app__welcome > div:first-child > p:last-child { font-size:.83rem; }
    .member-app__status-grid { grid-template-columns:1fr 1fr;gap:9px;margin-top:10px; }
    .member-app__status-grid article { padding:15px;border-radius:16px; }
    .member-app__status-grid small { white-space:normal;line-height:1.4; }
    .member-app__module-grid { grid-template-columns:1fr; }
    .member-module-card { min-height:260px;padding:22px;border-radius:21px; }
    .member-app__profile-card, .member-app__security-card { padding:23px;border-radius:23px; }
    .member-app__profile-card dl div { grid-template-columns:90px minmax(0,1fr);gap:10px; }
    .member-module-page__empty { margin-top:36px;padding:25px 21px;border-radius:23px; }
    .member-module-page__empty > div, .member-app__restricted-actions { align-items:stretch;flex-direction:column; }
    .member-module-page__empty .button, .member-app__restricted-actions .button { width:100%;justify-content:center; }
}

/* Phase 1 — Step 28E: Member Giving History */
.giving-head{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;padding:42px 0 28px}.giving-head>div{max-width:760px}.giving-head h1{margin:.25rem 0 1rem;font-size:clamp(2.7rem,5vw,5.7rem);line-height:.94}.giving-head h1 em{display:block;color:#b98332;font-style:normal}.giving-head p{max-width:700px}.giving-privacy{display:flex;gap:18px;align-items:center;padding:18px 22px;border:1px solid rgba(27,37,61,.1);border-radius:18px;background:#fff}.giving-privacy strong{white-space:nowrap}.giving-privacy span{color:#667085}.giving-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0 46px}.giving-total-card{min-height:190px;padding:26px;border:1px solid rgba(27,37,61,.1);border-radius:24px;background:linear-gradient(145deg,#fff,#f7f3ea);box-shadow:0 20px 60px rgba(30,38,58,.06)}.giving-total-card small,.giving-total-card span{display:block;color:#667085}.giving-total-card strong{display:block;margin:22px 0 10px;font-size:clamp(1.7rem,3vw,2.7rem)}.giving-history{padding:36px;border:1px solid rgba(27,37,61,.1);border-radius:28px;background:#fff}.giving-history__head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:26px}.giving-history__head h2{margin:.2rem 0 0}.giving-history__head form{display:flex;gap:10px;align-items:center}.giving-history__head select{min-width:130px;padding:11px 14px;border:1px solid #d8dce5;border-radius:12px;background:#fff}.giving-table-wrap{overflow-x:auto}.giving-table{width:100%;border-collapse:collapse}.giving-table th{padding:13px 16px;border-bottom:1px solid #e7e9ee;color:#72798a;font-size:.78rem;text-align:left;text-transform:uppercase;letter-spacing:.08em}.giving-table td{padding:20px 16px;border-bottom:1px solid #eef0f4;vertical-align:top}.giving-table td small{display:block;margin-top:4px;color:#858b98}.giving-receipt{display:inline-flex;padding:6px 10px;border-radius:999px;background:#edf7ef;color:#2f6e3f;font-size:.78rem;font-weight:700}.giving-receipt--muted{background:#f2f3f5;color:#777d89}.giving-empty{margin:12px 0 4px}.giving-footnote{margin:28px 0 120px;padding:28px 30px;border-radius:24px;background:#10182c;color:#fff}.giving-footnote h2{color:#fff}.giving-footnote p{max-width:820px;color:rgba(255,255,255,.74)}.giving-footnote a{color:#efc46f;font-weight:700}
@media(max-width:900px){.giving-head{align-items:flex-start;flex-direction:column}.giving-summary{grid-template-columns:1fr 1fr}.giving-history{padding:24px}.giving-history__head{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.giving-head{padding-top:24px}.giving-summary{grid-template-columns:1fr}.giving-privacy{align-items:flex-start;flex-direction:column}.giving-history{padding:18px;border-radius:20px}.giving-history__head form{width:100%;justify-content:space-between}.giving-history__head select{flex:1}.giving-table thead{display:none}.giving-table,.giving-table tbody,.giving-table tr,.giving-table td{display:block;width:100%}.giving-table tr{padding:12px 0;border-bottom:1px solid #e8ebf0}.giving-table td{display:grid;grid-template-columns:94px 1fr;gap:12px;padding:8px 0;border:0}.giving-table td:before{content:attr(data-label);color:#858b98;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.giving-footnote{margin-bottom:96px}}

/* Phase 1 Step 28F — KTFM Course Portal */
.course-portal,.course-detail{padding-bottom:120px}.course-hero{padding:46px 0 34px;max-width:900px}.course-hero h1,.course-detail__hero h1{margin:.2rem 0 1rem;font-size:clamp(2.8rem,5.5vw,6rem);line-height:.93;letter-spacing:-.045em}.course-hero h1 em{display:block;color:#6f8661;font-style:normal}.course-hero>p:last-child,.course-detail__hero>p{max-width:760px;color:var(--member-muted);line-height:1.75}.course-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:10px 0 44px}.course-stats article{padding:22px;border:1px solid rgba(26,37,58,.09);border-radius:20px;background:#fff}.course-stats small{display:block;color:var(--member-muted)}.course-stats strong{display:block;margin-top:10px;font-size:2rem;color:var(--member-ink)}.course-list{padding:34px;border:1px solid rgba(26,37,58,.09);border-radius:28px;background:#fff}.course-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:25px}.course-section-head h2{margin:.15rem 0 0}.course-section-head a{font-weight:800;color:#607653}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.course-card{display:flex;flex-direction:column;min-height:310px;padding:26px;border:1px solid #e8ebe6;border-radius:24px;background:linear-gradient(145deg,#fff,#f6f8f3)}.course-card__meta{display:flex;justify-content:space-between;gap:12px;color:#71806a;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.course-card h3{margin:24px 0 10px;font-size:1.55rem}.course-card p{color:var(--member-muted);line-height:1.65}.course-progress{margin-top:auto;padding-top:20px}.course-progress>div{display:flex;justify-content:space-between;font-size:.82rem}.course-progress i,.course-detail__progress i{display:block;height:8px;margin-top:8px;overflow:hidden;border-radius:999px;background:#e5e9e2}.course-progress b,.course-detail__progress b{display:block;height:100%;border-radius:inherit;background:#708b61}.course-card__foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.course-card__foot small{color:var(--member-muted)}.course-card__foot a{font-weight:800;color:#526d48;white-space:nowrap}.course-pathways{margin-top:24px;padding:28px 30px;border-radius:24px;background:#111a2e;color:#fff}.course-pathways h2{color:#fff}.course-pathways p{max-width:920px;color:rgba(255,255,255,.72);line-height:1.75}.course-detail__hero{padding:45px 0 36px}.course-detail__progress{max-width:620px;margin-top:26px}.course-detail__progress span{font-weight:800}.course-outline{padding:34px;border:1px solid rgba(26,37,58,.09);border-radius:28px;background:#fff}.course-module{margin-top:18px;border:1px solid #e8ebe6;border-radius:20px;overflow:hidden}.course-module>header{display:flex;align-items:center;gap:15px;padding:18px 20px;background:#f6f8f3}.course-module>header span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#18223a;color:#fff;font-size:.75rem}.course-module>header h3{margin:0}.course-module ol{list-style:none;margin:0;padding:0}.course-module li{display:flex;justify-content:space-between;gap:20px;padding:17px 20px;border-top:1px solid #edf0eb}.course-module li small{display:block;margin-top:5px;color:var(--member-muted)}.course-module li>span{align-self:center;color:#8b9288;font-size:.78rem;font-weight:800}.course-module li.is-complete>span{color:#55764b}.course-module__empty{padding:18px 20px;color:var(--member-muted)}.course-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.course-work-grid>section{padding:28px;border:1px solid rgba(26,37,58,.09);border-radius:24px;background:#fff}.course-work-item{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #edf0eb}.course-work-item span{color:var(--member-muted);font-size:.82rem}.course-security-note{margin-top:22px;padding:24px 28px;border-radius:20px;background:#f4f7f1}.course-security-note p{margin-bottom:0;color:var(--member-muted)}
@media(max-width:900px){.course-stats{grid-template-columns:1fr 1fr}.course-grid,.course-work-grid{grid-template-columns:1fr}.course-list,.course-outline{padding:24px}}
@media(max-width:640px){.course-hero,.course-detail__hero{padding-top:25px}.course-stats{gap:9px}.course-stats article{padding:17px}.course-stats strong{font-size:1.55rem}.course-list,.course-outline{padding:18px;border-radius:21px}.course-section-head,.course-card__foot,.course-module li,.course-work-item{align-items:flex-start;flex-direction:column}.course-card{min-height:0}.course-work-grid>section{padding:21px}.course-pathways{margin-bottom:90px}}

/* =========================================================
   Phase 1 — Step 28G: KTFM Member Events / Event Registration
   ========================================================= */
.event-portal,.event-detail{padding-bottom:120px}.event-notice{margin:20px 0 0;padding:15px 18px;border:1px solid rgba(88,116,78,.22);border-radius:16px;background:#f2f7ef;color:#34472e;font-weight:750}.event-hero{max-width:920px;padding:48px 0 34px}.event-hero h1,.event-detail__hero h1{margin:.18rem 0 1rem;font-size:clamp(2.8rem,5.5vw,6rem);line-height:.93;letter-spacing:-.046em}.event-hero h1 em{display:block;color:#657e9a;font-style:normal}.event-hero>p:last-child,.event-detail__hero>div>p{max-width:780px;color:var(--member-muted);line-height:1.75}.event-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:8px 0 36px}.event-stats article{padding:22px;border:1px solid rgba(26,37,58,.09);border-radius:20px;background:#fff}.event-stats small{display:block;color:var(--member-muted)}.event-stats strong{display:block;margin-top:10px;font-size:2rem;color:var(--member-ink)}.event-panel{margin-top:22px;padding:32px;border:1px solid rgba(26,37,58,.09);border-radius:28px;background:#fff}.event-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.event-section-head h2{margin:.15rem 0 0}.event-section-head>a{font-weight:800;color:#536f85}.event-registration-list{display:grid;gap:13px}.event-registration-card{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px;border:1px solid #e7ebee;border-radius:21px;background:#fbfcfd}.event-registration-card__date{display:grid;place-items:center;min-height:76px;border-radius:17px;background:#14213a;color:#fff}.event-registration-card__date strong{font-size:1.65rem;line-height:1}.event-registration-card__date span{font-size:.7rem;font-weight:850;letter-spacing:.12em}.event-registration-card__meta,.event-card__meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:7px;color:#6d7885;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.event-registration-card h3{margin:0 0 7px}.event-registration-card p{margin:0 0 6px;color:var(--member-muted)}.event-registration-card small{color:#7d8792}.event-card-link,.event-card>a{font-weight:850;color:#536f85;white-space:nowrap}.event-status{padding:5px 8px;border-radius:999px;background:#edf2f5}.event-status--registered,.event-status--attended{background:#edf6eb;color:#4a6e42}.event-status--waitlisted{background:#fff4df;color:#8b650e}.event-status--pending_payment{background:#f3eefb;color:#6d4e99}.event-discover{background:linear-gradient(145deg,#fff,#f7f9fb)}.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.event-card{display:flex;flex-direction:column;padding:25px;border:1px solid #e6eaee;border-radius:23px;background:#fff}.event-card h3{margin:16px 0 9px;font-size:1.5rem}.event-card>p{color:var(--member-muted);line-height:1.65}.event-card dl{display:grid;gap:10px;margin:17px 0 20px}.event-card dl div{display:grid;grid-template-columns:85px 1fr;gap:10px}.event-card dt{color:#7b8590;font-size:.78rem}.event-card dd{margin:0;font-weight:700}.event-payment-note{margin:12px 0 18px;padding:12px 14px;border-radius:13px;background:#fff4df;color:#725716;font-size:.84rem;line-height:1.55}.event-history{display:grid}.event-history>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-top:1px solid #edf0f2;color:inherit}.event-history>a:first-child{border-top:0}.event-history strong,.event-history small{display:block}.event-history small{margin-top:4px;color:var(--member-muted)}.event-history>a>span{color:#637c91;font-size:.82rem;font-weight:800}.event-security-note{margin-top:22px;padding:24px 28px;border-radius:20px;background:#f2f6f8}.event-security-note p{margin-bottom:0;color:var(--member-muted)}.event-detail__hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:36px;padding:45px 0 32px}.event-detail__facts{display:grid;align-self:end;gap:12px;padding:23px;border:1px solid rgba(26,37,58,.09);border-radius:23px;background:#fff}.event-detail__facts div{padding-bottom:12px;border-bottom:1px solid #edf0f2}.event-detail__facts div:last-child{padding-bottom:0;border-bottom:0}.event-detail__facts small{display:block;margin-bottom:5px;color:var(--member-muted)}.event-detail__facts strong{font-size:.95rem}.event-confirmation,.event-registration-action{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:12px 0 22px;padding:27px;border-radius:24px;background:#15213a;color:#fff}.event-confirmation h2,.event-registration-action h2{margin:.1rem 0 .5rem;color:#fff}.event-confirmation p,.event-registration-action p{margin:0;color:rgba(255,255,255,.68)}.event-confirmation__code{min-width:245px;padding:18px 20px;border:1px solid rgba(255,255,255,.14);border-radius:17px;background:rgba(255,255,255,.06)}.event-confirmation__code small{display:block;margin-bottom:6px;color:rgba(255,255,255,.62)}.event-confirmation__code strong{font-size:1.05rem;letter-spacing:.05em}.event-registration-action form button{border:0;border-radius:999px;padding:14px 20px;background:#fff;color:#15213a;font-weight:850;cursor:pointer}.event-detail__section{padding:29px;border:1px solid rgba(26,37,58,.09);border-radius:25px;background:#fff}.event-detail__section h2{margin:.2rem 0 1rem}.event-rich-text,.event-detail__section>p{color:var(--member-muted);line-height:1.75}.event-private-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.event-updates{display:grid;gap:14px}.event-updates article{padding:15px 0;border-top:1px solid #edf0f2}.event-updates article:first-child{border-top:0}.event-updates small,.event-updates strong{display:block}.event-updates small{margin-bottom:5px;color:#7b8590}.event-updates p{margin:.5rem 0 0;color:var(--member-muted);line-height:1.55}.event-cancel-zone{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:22px 25px;border:1px solid #f0d9d9;border-radius:20px;background:#fffafa}.event-cancel-zone p{margin:.3rem 0 0;color:var(--member-muted)}.event-cancel-zone button{border:1px solid #c88989;border-radius:999px;padding:12px 17px;background:#fff;color:#8d4040;font-weight:800;cursor:pointer}.event-alert{margin:8px 0 20px;padding:20px 22px;border-radius:18px}.event-alert--critical{border:1px solid #efcaca;background:#fff4f4;color:#813d3d}.event-alert p{margin:.4rem 0 0}.event-empty{min-height:220px}
@media(max-width:980px){.event-detail__hero{grid-template-columns:1fr}.event-detail__facts{align-self:auto}.event-grid,.event-private-grid{grid-template-columns:1fr}.event-registration-card{grid-template-columns:70px minmax(0,1fr)}.event-card-link{grid-column:2}}
@media(max-width:720px){.event-hero,.event-detail__hero{padding-top:26px}.event-stats{grid-template-columns:1fr 1fr;gap:9px}.event-stats article{padding:17px}.event-stats strong{font-size:1.55rem}.event-panel,.event-detail__section{padding:19px;border-radius:21px}.event-section-head,.event-confirmation,.event-registration-action,.event-cancel-zone{align-items:flex-start;flex-direction:column}.event-registration-card{grid-template-columns:60px minmax(0,1fr);gap:13px;padding:13px}.event-registration-card__date{min-height:62px}.event-registration-card__date strong{font-size:1.35rem}.event-card-link{grid-column:1/-1}.event-grid{grid-template-columns:1fr}.event-card{padding:20px}.event-history>a{align-items:flex-start;flex-direction:column}.event-confirmation__code{min-width:0;width:100%}.event-registration-action form,.event-registration-action form button,.event-cancel-zone form,.event-cancel-zone button{width:100%}}

/* =========================================================
   Phase 1 — Step 28H: KTFM Volunteer / Serving Portal
   ========================================================= */
.serving-portal{padding-bottom:120px}
.serving-notice{margin:20px 0 0;padding:15px 18px;border:1px solid rgba(92,123,85,.22);border-radius:16px;background:#f0f6ed;color:#35512f;font-weight:750}
.serving-hero{max-width:940px;padding:48px 0 34px}
.serving-hero h1{margin:.18rem 0 1rem;font-size:clamp(2.8rem,5.5vw,6rem);line-height:.93;letter-spacing:-.046em}
.serving-hero h1 em{display:block;color:#63855d;font-style:normal}
.serving-hero>p:last-child{max-width:790px;color:var(--member-muted);line-height:1.75}
.serving-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:8px 0 36px}
.serving-stats article{padding:22px;border:1px solid rgba(26,37,58,.09);border-radius:20px;background:#fff}
.serving-stats small{display:block;color:var(--member-muted)}
.serving-stats strong{display:block;margin-top:10px;font-size:2rem;color:var(--member-ink)}
.serving-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.serving-grid--teams{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}
.serving-panel{margin-top:20px;padding:30px;border:1px solid rgba(26,37,58,.09);border-radius:27px;background:#fff}
.serving-grid>.serving-panel{margin-top:0}
.serving-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}
.serving-section-head h2{margin:.15rem 0 0}
.serving-empty{padding:22px;border:1px dashed #d9ded6;border-radius:18px;background:#fafbf9}
.serving-empty h3{margin:0 0 8px}
.serving-empty p,.serving-muted{margin:0;color:var(--member-muted);line-height:1.65}
.serving-team-list{display:grid;gap:13px}
.serving-team-list article{padding:20px;border:1px solid #e8ebe5;border-radius:20px;background:linear-gradient(145deg,#fff,#f7f9f5)}
.serving-team-list article>span,.serving-opportunity-list article>span{color:#688060;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.serving-team-list h3,.serving-opportunity-list h3{margin:9px 0 7px}
.serving-team-list p,.serving-opportunity-list p{color:var(--member-muted);line-height:1.6}
.serving-team-list article>div{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:15px;padding-top:14px;border-top:1px solid #e8ebe5}
.serving-team-list small{color:var(--member-muted)}
.serving-availability-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.serving-availability-form label{display:grid;gap:6px}
.serving-availability-form label span{color:#687381;font-size:.75rem;font-weight:800}
.serving-availability-form input,.serving-availability-form select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d9dee2;border-radius:12px;background:#fff;font:inherit}
.serving-availability-form button,.serving-opportunity-list button{grid-column:1/-1;border:0;border-radius:999px;padding:13px 18px;background:#14213a;color:#fff;font-weight:850;cursor:pointer}
.serving-availability-list{display:grid;gap:7px;margin-top:18px}
.serving-availability-list div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid #edf0ec}
.serving-availability-list strong{font-size:.78rem}
.serving-availability-list .is-available{color:#3e7142}.serving-availability-list .is-preferred{color:#8b681e}.serving-availability-list .is-unavailable{color:#934747}
.serving-assignment-list{display:grid;gap:14px}
.serving-assignment-list>article{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:18px;align-items:start;padding:18px;border:1px solid #e6eae5;border-radius:21px;background:#fbfcfa}
.serving-assignment-date{display:grid;place-items:center;min-height:72px;border-radius:17px;background:#14213a;color:#fff}
.serving-assignment-date strong{font-size:1.55rem;line-height:1}.serving-assignment-date span{font-size:.68rem;font-weight:850;letter-spacing:.1em}
.serving-assignment-body>div:first-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#73806f;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.serving-assignment-body h3{margin:8px 0 6px}.serving-assignment-body>p{margin:0;color:var(--member-muted)}
.serving-assignment-status{padding:4px 8px;border-radius:999px;background:#eef1ed}
.serving-assignment-status.is-confirmed{background:#edf6eb;color:#4b7044}.serving-assignment-status.is-declined{background:#fff0f0;color:#934747}.serving-assignment-status.is-assigned{background:#fff5df;color:#856215}
.serving-instructions{margin-top:15px;padding:14px;border-radius:14px;background:#f3f6ef}
.serving-instructions p{margin:.4rem 0 0;color:#5d695b;line-height:1.55}
.serving-assignment-actions{display:grid;gap:8px;min-width:112px}
.serving-assignment-actions button{border-radius:999px;padding:10px 13px;background:#fff;font-weight:800;cursor:pointer}
.serving-assignment-actions .is-confirm{border:1px solid #83a47b;color:#476c41}.serving-assignment-actions .is-decline{border:1px solid #d6a0a0;color:#8e4444}
.serving-opportunity-list,.serving-training-list,.serving-update-list,.serving-resource-list{display:grid;gap:12px}
.serving-opportunity-list article{padding:18px;border:1px solid #e8ebe5;border-radius:18px;background:#fafbf9}
.serving-opportunity-list article form{margin-top:14px}.serving-interest-state{margin-top:13px;padding:10px 12px;border-radius:12px;background:#eef4eb;color:#4d6648;font-size:.82rem}
.serving-training-list article,.serving-resource-list article,.serving-history-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #edf0ec}
.serving-training-list article:first-child,.serving-resource-list article:first-child,.serving-history-list article:first-child{border-top:0}
.serving-training-list strong,.serving-training-list small,.serving-resource-list strong,.serving-resource-list small,.serving-history-list strong,.serving-history-list small{display:block}
.serving-training-list small,.serving-resource-list small,.serving-history-list small{margin-top:4px;color:var(--member-muted)}
.serving-training-list>article>span{font-size:.76rem;font-weight:800;color:#7b827a}.serving-training-list>article>span.is-completed{color:#477342}.serving-training-list>article>span.is-in_progress{color:#84671d}
.serving-training-list a,.serving-resource-list a{font-weight:800;color:#5b7856;white-space:nowrap}.serving-resource-list>article>span{font-size:.78rem;color:var(--member-muted)}
.serving-update-list article{padding:15px 0;border-top:1px solid #edf0ec}.serving-update-list article:first-child{border-top:0}.serving-update-list small,.serving-update-list strong{display:block}.serving-update-list small{margin-bottom:5px;color:#7b8678}.serving-update-list p{margin:.45rem 0 0;color:var(--member-muted);line-height:1.6}
.serving-history-list{display:grid}
.serving-history-list>article>span{color:#687d64;font-size:.78rem;font-weight:800}
.serving-security-note{margin-top:22px;padding:24px 28px;border-radius:20px;background:#f1f5ef}
.serving-security-note p{margin-bottom:0;color:var(--member-muted);line-height:1.65}
@media(max-width:1050px){.serving-grid,.serving-grid--teams{grid-template-columns:1fr}.serving-assignment-list>article{grid-template-columns:68px minmax(0,1fr)}.serving-assignment-actions{grid-column:2;grid-template-columns:1fr 1fr}}
@media(max-width:720px){.serving-hero{padding-top:26px}.serving-stats{grid-template-columns:1fr 1fr;gap:9px}.serving-stats article{padding:17px}.serving-stats strong{font-size:1.55rem}.serving-panel{padding:19px;border-radius:21px}.serving-availability-form{grid-template-columns:1fr}.serving-assignment-list>article{grid-template-columns:58px minmax(0,1fr);gap:12px;padding:13px}.serving-assignment-date{min-height:60px}.serving-assignment-date strong{font-size:1.3rem}.serving-assignment-actions{grid-column:1/-1}.serving-training-list article,.serving-resource-list article,.serving-history-list article,.serving-team-list article>div{align-items:flex-start;flex-direction:column}.serving-security-note{margin-bottom:90px}}

/* =========================================================
   Phase 1 — Step 28I: KTFM Leaders Portal
   ========================================================= */
.leadership-portal{padding-bottom:120px}
.leadership-hero{max-width:980px;padding:48px 0 34px}
.leadership-hero h1{margin:.18rem 0 1rem;font-size:clamp(2.8rem,5.5vw,6rem);line-height:.93;letter-spacing:-.046em}
.leadership-hero h1 em{display:block;color:#9d7a38;font-style:normal}
.leadership-hero>p:last-child{max-width:800px;color:var(--member-muted);line-height:1.75}
.leadership-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:8px 0 36px}
.leadership-stats article{padding:22px;border:1px solid rgba(26,37,58,.09);border-radius:20px;background:#fff}
.leadership-stats small{display:block;color:var(--member-muted)}
.leadership-stats strong{display:block;margin-top:10px;font-size:2rem;color:var(--member-ink)}
.leadership-panel{margin-top:20px;padding:30px;border:1px solid rgba(26,37,58,.09);border-radius:27px;background:#fff}
.leadership-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.leadership-grid>.leadership-panel{margin-top:0}
.leadership-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}
.leadership-section-head h2{margin:.15rem 0 0}
.leadership-empty{padding:22px;border:1px dashed #ddd8cc;border-radius:18px;background:#fbfaf6}
.leadership-empty h3{margin:0 0 8px}
.leadership-empty p,.leadership-muted{margin:0;color:var(--member-muted);line-height:1.65}
.leadership-assignment-grid,.leadership-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.leadership-assignment-grid article,.leadership-resource-grid article{padding:20px;border:1px solid #e9e5da;border-radius:20px;background:linear-gradient(145deg,#fff,#fbf8f1)}
.leadership-assignment-grid article>span,.leadership-resource-grid article>span{color:#98743a;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.leadership-assignment-grid h3,.leadership-resource-grid h3{margin:9px 0 7px}
.leadership-assignment-grid p,.leadership-resource-grid p{color:var(--member-muted);line-height:1.6}
.leadership-assignment-grid article>div{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:15px;padding-top:14px;border-top:1px solid #e9e5da}
.leadership-assignment-grid small{color:var(--member-muted)}
.leadership-resource-grid a{display:inline-block;margin-top:10px;font-weight:850;color:#806229}
.leadership-resource-grid small{display:block;margin-top:10px;color:var(--member-muted)}
.leadership-list,.leadership-update-list,.leadership-schedule-list,.leadership-form-list{display:grid}
.leadership-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid #edf0ec}
.leadership-list article:first-child{border-top:0}
.leadership-list strong,.leadership-list small{display:block}
.leadership-list small{margin-top:4px;color:var(--member-muted)}
.leadership-list>article>span,.leadership-list a{color:#86682d;font-size:.78rem;font-weight:800}
.leadership-status{padding:5px 9px;border-radius:999px;background:#f0f1f2}
.leadership-status.is-returned{background:#fff0f0;color:#914545}
.leadership-status.is-draft{background:#fff5df;color:#806017}
.leadership-status.is-submitted{background:#edf2f8;color:#48627e}
.leadership-status.is-reviewed{background:#edf6eb;color:#4c7047}
.leadership-schedule-list>article{padding:16px 0;border-top:1px solid #edf0ec}
.leadership-schedule-list>article:first-child{border-top:0}
.leadership-schedule-list article>div:first-child>span{color:#92723d;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.leadership-schedule-list h3{margin:6px 0}.leadership-schedule-list p{margin:0;color:var(--member-muted)}
.leadership-private-note{margin-top:13px;padding:14px;border-radius:14px;background:#f6f1e5}
.leadership-private-note p{margin:.4rem 0 0;color:#655b47;line-height:1.55}
.leadership-update-list article{padding:15px 0;border-top:1px solid #edf0ec}
.leadership-update-list article:first-child{border-top:0}
.leadership-update-list small,.leadership-update-list strong{display:block}
.leadership-update-list small{margin-bottom:5px;color:#8b816e}
.leadership-update-list p{margin:.45rem 0 0;color:var(--member-muted);line-height:1.6}
.leadership-form-list article{padding:15px 0;border-top:1px solid #edf0ec}
.leadership-form-list article:first-child{border-top:0}
.leadership-form-list p{margin:.35rem 0;color:var(--member-muted)}
.leadership-form-list span{font-family:monospace;font-size:.75rem;color:#847962}
.leadership-security-note{margin-top:22px;padding:24px 28px;border-radius:20px;background:#f5f1e8}
.leadership-security-note p{margin-bottom:0;color:var(--member-muted);line-height:1.65}
@media(max-width:1050px){.leadership-grid{grid-template-columns:1fr}.leadership-assignment-grid,.leadership-resource-grid{grid-template-columns:1fr}}
@media(max-width:720px){.leadership-hero{padding-top:26px}.leadership-stats{grid-template-columns:1fr 1fr;gap:9px}.leadership-stats article{padding:17px}.leadership-stats strong{font-size:1.55rem}.leadership-panel{padding:19px;border-radius:21px}.leadership-list article,.leadership-assignment-grid article>div{align-items:flex-start;flex-direction:column}.leadership-security-note{margin-bottom:90px}}

/* Phase 1 — Step 28J: Global Account Profile & Security */
.member-app__profile-manage{display:inline-flex;margin-top:14px;font-weight:850;color:#836425}.member-profile{padding-bottom:120px}.member-profile__identity-link{text-decoration:none}.member-profile__back{font-weight:800;color:#6b7480}.member-profile__notice{margin:20px 0 0;padding:15px 18px;border:1px solid #cfe0c9;border-radius:16px;background:#f0f7ed;color:#3f6338;font-weight:750}.member-profile__notice--error{border-color:#efcdcd;background:#fff4f4;color:#8b4242}.member-profile__hero{max-width:950px;padding:48px 0 34px}.member-profile__hero h1{margin:.18rem 0 1rem;font-size:clamp(2.8rem,5.4vw,5.8rem);line-height:.94;letter-spacing:-.045em}.member-profile__hero h1 em{display:block;color:#8e6d32;font-style:normal}.member-profile__hero>p:last-child{max-width:790px;color:var(--member-muted);line-height:1.75}.member-profile__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.member-profile__panel{padding:30px;border:1px solid rgba(26,37,58,.09);border-radius:27px;background:#fff}.member-profile__panel-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:24px}.member-profile__panel-head h2{margin:.15rem 0 0}.member-profile__panel-head>span{padding:6px 10px;border-radius:999px;background:#f2f0e8;color:#796536;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.member-profile__form{display:grid;gap:16px}.member-profile__two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.member-profile__form label{display:grid;gap:7px}.member-profile__form label>span{font-size:.78rem;font-weight:800;color:#697584}.member-profile__form label i{font-weight:500;color:#9098a0}.member-profile__form input{width:100%;min-height:48px;padding:11px 13px;border:1px solid #d8dde1;border-radius:13px;background:#fff;font:inherit}.member-profile__form input:focus{outline:2px solid rgba(159,124,57,.2);border-color:#a5864e}.member-profile__form label small{color:#a34848}.member-profile__form button{border:0;border-radius:999px;padding:14px 18px;background:#14213a;color:#fff;font-weight:850;cursor:pointer}.member-profile__hint{margin:0;color:var(--member-muted);font-size:.85rem;line-height:1.6}.member-profile__protected dl{display:grid;gap:0;margin:0}.member-profile__protected dl div{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid #edf0ec}.member-profile__protected dl div:first-child{border-top:0}.member-profile__protected dt{color:var(--member-muted)}.member-profile__protected dd{margin:0;text-align:right;font-weight:750}.member-profile__protected>p,.member-profile__security-overview>p{margin:20px 0 0;padding:15px;border-radius:14px;background:#f7f5ee;color:var(--member-muted);line-height:1.6}.member-profile__security-overview ul{list-style:none;margin:0;padding:0}.member-profile__security-overview li{display:flex;justify-content:space-between;gap:18px;padding:15px 0;border-top:1px solid #edf0ec}.member-profile__security-overview li:first-child{border-top:0}.member-profile__security-overview li span{color:var(--member-muted);text-align:right}
@media(max-width:960px){.member-profile__grid{grid-template-columns:1fr}}
@media(max-width:640px){.member-profile__hero{padding-top:26px}.member-profile__panel{padding:20px;border-radius:21px}.member-profile__two{grid-template-columns:1fr}.member-profile__panel-head,.member-profile__protected dl div,.member-profile__security-overview li{align-items:flex-start;flex-direction:column}.member-profile__protected dd,.member-profile__security-overview li span{text-align:left}.member-profile{padding-bottom:100px}}


/* =========================================================
   Home Premium Upgrade + Dynamic Programmes
   ========================================================= */

.page-home .hero-slider + .welcome.section {
    padding-top: clamp(54px, 6.4vw, 92px);
}

.page-home .home-events + .welcome.section {
    padding-top: clamp(70px, 7.5vw, 110px);
}

.page-home .welcome__grid {
    gap: clamp(48px, 8vw, 118px);
}

.page-home .welcome__image {
    overflow: hidden;
    border-radius: clamp(22px, 2.4vw, 34px);
    box-shadow:
        0 34px 90px rgba(10, 33, 60, .12),
        0 1px 0 rgba(255, 255, 255, .75) inset;
}

.page-home .welcome__copy {
    padding-top: 3px;
}

.page-home .hero-slider__navigation {
    backdrop-filter: blur(14px);
}

.page-home .hero-slide--campaign {
    background: var(--navy-950);
}

.hero-slide__media--campaign img {
    object-position: center;
}

.hero-slide__veil--campaign {
    background:
        linear-gradient(
            90deg,
            rgba(4, 18, 35, .96) 0%,
            rgba(4, 18, 35, .78) 48%,
            rgba(4, 18, 35, .24) 78%,
            rgba(4, 18, 35, .48) 100%
        ),
        linear-gradient(
            180deg,
            rgba(4, 18, 35, .08),
            rgba(4, 18, 35, .7)
        );
}

.hero-slide__content--campaign {
    max-width: 820px;
}

.hero-slide__content--campaign h2 {
    max-width: 820px;
}

.home-campaign-badge {
    display: inline-flex;
    align-items: center;
    min-height: 31px;
    margin: 0 0 19px;
    padding: 7px 12px;
    border: 1px solid rgba(240, 205, 133, .38);
    border-radius: 999px;
    color: var(--gold-300);
    background: rgba(4, 18, 35, .34);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.home-campaign-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 24px;
}

.home-campaign-meta span {
    padding: 8px 11px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    color: rgba(255, 255, 255, .83);
    background: rgba(4, 18, 35, .42);
    font-size: .73rem;
    font-weight: 720;
    backdrop-filter: blur(12px);
}

.hero-slide__feature--campaign small {
    display: block;
    margin-top: 11px;
    color: rgba(255, 255, 255, .6);
    font-size: .75rem;
    line-height: 1.6;
}

.home-events {
    position: relative;
    overflow: hidden;
    padding: clamp(60px, 7.5vw, 106px) 0;
    background:
        radial-gradient(
            circle at 12% 0%,
            rgba(228, 193, 117, .15),
            transparent 28rem
        ),
        linear-gradient(
            180deg,
            #f8f4ea 0%,
            #fbfaf6 100%
        );
    border-bottom: 1px solid rgba(10, 33, 60, .08);
}

.home-events::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, .5),
            transparent
        );
    opacity: .42;
}

.home-events__head,
.home-events__grid {
    position: relative;
    z-index: 1;
}

.home-events__head {
    display: grid;
    grid-template-columns:
        minmax(0, 1.1fr)
        minmax(260px, .65fr);
    align-items: end;
    gap: 48px;
    margin-bottom: clamp(30px, 4vw, 50px);
}

.home-events__head h2 {
    margin: 3px 0 0;
    color: var(--navy-950);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2.7rem, 5vw, 5.2rem);
    font-weight: 400;
    letter-spacing: -.048em;
    line-height: .96;
}

.home-events__head h2 em {
    display: block;
    color: var(--gold-600);
    font-style: normal;
    font-weight: 400;
}

.home-events__head > p {
    max-width: 520px;
    margin: 0;
    color: var(--muted);
    line-height: 1.75;
}

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

.home-event-card {
    position: relative;
    min-height: 410px;
    overflow: hidden;
    border-radius: clamp(22px, 2.1vw, 32px);
    isolation: isolate;
    box-shadow: 0 26px 70px rgba(10, 33, 60, .12);
}

.home-event-card--featured {
    grid-column: 1 / -1;
    min-height: min(620px, 60vw);
}

.home-event-card__media,
.home-event-card__veil {
    position: absolute;
    inset: 0;
}

.home-event-card__media {
    z-index: -3;
}

.home-event-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s cubic-bezier(.2, .75, .2, 1);
}

.home-event-card:hover .home-event-card__media img {
    transform: scale(1.035);
}

.home-event-card__veil {
    z-index: -2;
    background:
        linear-gradient(
            180deg,
            rgba(4, 18, 35, .08) 18%,
            rgba(4, 18, 35, .92) 100%
        ),
        linear-gradient(
            90deg,
            rgba(4, 18, 35, .68),
            transparent 68%
        );
}

.home-event-card__content {
    min-height: inherit;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: clamp(26px, 4vw, 52px);
    color: #fff;
}

.home-event-card__content > p:first-child {
    margin: 0 0 12px;
    color: var(--gold-300);
    font-size: .69rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.home-event-card__content h3 {
    max-width: 880px;
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 4.2vw, 4.5rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1;
}

.home-event-card:not(.home-event-card--featured)
.home-event-card__content h3 {
    font-size: clamp(1.8rem, 3vw, 2.8rem);
}

.home-event-card__date,
.home-event-card__location {
    display: inline-flex;
    margin-top: 13px;
    color: rgba(255, 255, 255, .75);
    font-size: .78rem;
    font-weight: 720;
}

.home-event-card__location {
    margin-top: 5px;
}

.home-event-card__description {
    max-width: 720px;
    margin: 17px 0 0;
    color: rgba(255, 255, 255, .72);
    line-height: 1.65;
}

.home-event-card__content > a {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-top: 23px;
    color: #fff;
    font-size: .82rem;
    font-weight: 850;
    text-decoration: none;
}

.home-event-card__content > a span {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    color: var(--navy-950);
    background: var(--gold-300);
    transition: transform .22s ease;
}

.home-event-card__content > a:hover span {
    transform: translateX(4px);
}

@media (max-width: 900px) {
    .home-events__head {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .home-events__grid {
        grid-template-columns: 1fr;
    }

    .home-event-card--featured {
        grid-column: auto;
        min-height: 520px;
    }
}

@media (max-width: 700px) {
    .page-home .hero-slider + .welcome.section,
    .page-home .home-events + .welcome.section {
        padding-top: 54px;
    }

    .hero-slide__veil--campaign {
        background:
            linear-gradient(
                180deg,
                rgba(4, 18, 35, .12),
                rgba(4, 18, 35, .94) 52%,
                rgba(4, 18, 35, .99)
            );
    }

    .home-events {
        padding: 54px 0 68px;
    }

    .home-event-card,
    .home-event-card--featured {
        min-height: 470px;
    }

    .home-event-card__content {
        padding: 24px;
    }
}
