/* =========================================================
   v1.18 — critical contrast patch
   Loaded after main.css as a separate versioned stylesheet so
   stale/CDN-cached copies of main.css cannot keep the Donate
   or Social Media page text unreadable.
   ========================================================= */

/* Donate: the generic alternating inner-page section background has a more
   specific selector than older donation-final-panel rules. Override it with
   an equally explicit page/section selector and literal palette colors. */
.inner-page.inner-page-donate > section.section.donation-final-panel {
    position: relative;
    isolation: isolate;
    color: #ffffff !important;
    background: #A71B1C !important;
    background-image: none !important;
}
.inner-page.inner-page-donate > section.section.donation-final-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: .14;
    background:
        radial-gradient(circle at 12% 18%, rgba(255,255,255,.40), transparent 25%),
        radial-gradient(circle at 88% 82%, rgba(97,167,27,.32), transparent 23%),
        url('../images/pattern-mission-love.svg') right -70px center / min(470px,38vw) auto no-repeat !important;
}
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid {
    position: relative;
    z-index: 2;
    color: #ffffff !important;
}
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid .eyebrow,
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid .eyebrow-light,
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid h2,
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid p,
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid strong {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
}
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid p {
    color: #FFF4F2 !important;
}
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid .button-white {
    color: #7E1112 !important;
    background: #ffffff !important;
    border-color: #ffffff !important;
}
.inner-page.inner-page-donate > section.section.donation-final-panel .donation-final-grid .button-white:hover {
    color: #7E1112 !important;
    background: #FFF8F1 !important;
}

/* Keep the closing copy visible even if a stale motion stylesheet leaves a
   reveal element at opacity:0. */
html.has-motion-js .inner-page.inner-page-donate > section.section.donation-final-panel [data-reveal],
html.has-motion-js .inner-page.inner-page-donate > section.section.donation-final-panel .reveal-on-scroll {
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
}

/* Social Media: define the surface AND its text color together. This avoids
   light-on-light combinations from the generic inner-page nth-of-type rules. */
.inner-page.inner-page-social-media {
    color: #171516 !important;
    background: #FFFDF9 !important;
}

.inner-page.inner-page-social-media > header.inner-hero.social-media-hero {
    color: #171516 !important;
    background:
        url('../images/pattern-community-voices.svg') right 3% center / clamp(320px,34vw,520px) auto no-repeat,
        linear-gradient(135deg,#FFF7F2 0%,#FFFFFF 52%,#EEF9F7 100%) !important;
}
.inner-page.inner-page-social-media > header.inner-hero.social-media-hero .inner-hero-copy,
.inner-page.inner-page-social-media > header.inner-hero.social-media-hero h1,
.inner-page.inner-page-social-media > header.inner-hero.social-media-hero h2,
.inner-page.inner-page-social-media > header.inner-hero.social-media-hero h3 {
    color: #171516 !important;
}
.inner-page.inner-page-social-media > header.inner-hero.social-media-hero p {
    color: #4F494B !important;
}
.inner-page.inner-page-social-media > header.inner-hero.social-media-hero .eyebrow {
    color: #A71B1C !important;
}
.inner-page.inner-page-social-media > header.inner-hero.social-media-hero .social-hero-chips a {
    color: #171516 !important;
    background: rgba(255,255,255,.94) !important;
}

.inner-page.inner-page-social-media > section.section.social-platform-section {
    color: #171516 !important;
    background:
        radial-gradient(circle at 8% 16%, rgba(97,27,167,.07), transparent 24%),
        radial-gradient(circle at 92% 84%, rgba(27,167,167,.08), transparent 24%),
        linear-gradient(180deg,#FFFFFF 0%,#FBF8F4 100%) !important;
}
.inner-page.inner-page-social-media > section.section.social-platform-section .section-heading,
.inner-page.inner-page-social-media > section.section.social-platform-section .section-heading h2 {
    color: #171516 !important;
}
.inner-page.inner-page-social-media > section.section.social-platform-section .section-heading p {
    color: #4F494B !important;
}
.inner-page.inner-page-social-media > section.section.social-platform-section .social-platform-card {
    color: #171516 !important;
    background: rgba(255,255,255,.98) !important;
}
.inner-page.inner-page-social-media > section.section.social-platform-section .social-platform-card strong {
    color: #171516 !important;
}
.inner-page.inner-page-social-media > section.section.social-platform-section .social-platform-card__copy span {
    color: #51484A !important;
}

.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-facebook {
    color: #171516 !important;
    background:
        radial-gradient(circle at 90% 10%, rgba(24,119,242,.12), transparent 28%),
        linear-gradient(145deg,#F2F7FF 0%,#FFFFFF 56%,#F2FAF8 100%) !important;
}
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-instagram {
    color: #171516 !important;
    background:
        radial-gradient(circle at 8% 16%, rgba(97,27,167,.12), transparent 28%),
        radial-gradient(circle at 94% 86%, rgba(167,27,28,.08), transparent 25%),
        linear-gradient(145deg,#FBF5FF 0%,#FFFFFF 54%,#FFF7F3 100%) !important;
}
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-youtube {
    color: #171516 !important;
    background:
        radial-gradient(circle at 92% 12%, rgba(167,27,28,.11), transparent 27%),
        radial-gradient(circle at 8% 88%, rgba(97,167,27,.10), transparent 25%),
        linear-gradient(145deg,#FFF5F4 0%,#FFFFFF 56%,#F7FAF1 100%) !important;
}
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-facebook .social-feed-copy,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-instagram .social-feed-copy,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-youtube .social-feed-copy,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-facebook h2,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-instagram h2,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-youtube h2 {
    color: #171516 !important;
}
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-facebook .social-feed-copy p,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-instagram .social-feed-copy p,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-youtube .social-feed-copy p {
    color: #4F494B !important;
}

/* TikTok is deliberately dark; all editorial copy is explicitly light. */
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok {
    color: #FFFFFF !important;
    background:
        radial-gradient(circle at 10% 18%, rgba(27,167,167,.18), transparent 26%),
        radial-gradient(circle at 90% 82%, rgba(167,27,28,.18), transparent 27%),
        linear-gradient(135deg,#1D1819 0%,#272123 55%,#151213 100%) !important;
}
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-copy,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-copy h2,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-copy p,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-badge {
    color: #FFFFFF !important;
}
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-copy p {
    color: #F2E9EB !important;
}
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-frame,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-frame__top,
.inner-page.inner-page-social-media > section.section.social-feed-section.social-feed-tiktok .social-feed-fallback {
    color: #171516 !important;
}

/* Embedded-feed shells always stay white with dark chrome/fallback text. */
.inner-page.inner-page-social-media .social-feed-frame {
    color: #171516 !important;
    background: #FFFFFF !important;
}
.inner-page.inner-page-social-media .social-feed-frame__top {
    color: #171516 !important;
}
.inner-page.inner-page-social-media .social-feed-fallback {
    color: #51484A !important;
}
.inner-page.inner-page-social-media .social-feed-fallback a {
    color: #A71B1C !important;
}

.inner-page.inner-page-social-media > section.section.social-share-cta {
    color: #FFFFFF !important;
    background: linear-gradient(120deg,#A71B1C 0%,#72155A 60%,#351529 100%) !important;
}
.inner-page.inner-page-social-media > section.section.social-share-cta h2,
.inner-page.inner-page-social-media > section.section.social-share-cta p,
.inner-page.inner-page-social-media > section.section.social-share-cta .eyebrow,
.inner-page.inner-page-social-media > section.section.social-share-cta .eyebrow-light {
    color: #FFFFFF !important;
}
.inner-page.inner-page-social-media > section.section.social-share-cta p {
    color: #FFF5F6 !important;
}

/* If any reveal class gets attached by an older/cached JS build, never allow
   it to make Social Media editorial copy permanently invisible. */
html.has-motion-js .inner-page.inner-page-social-media [data-reveal],
html.has-motion-js .inner-page.inner-page-social-media .reveal-on-scroll {
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
}

@media (max-width: 620px) {
    .inner-page.inner-page-donate > section.section.donation-final-panel::before {
        opacity: .10;
        background-size: 250px auto !important;
        background-position: right -80px bottom -20px !important;
    }
}
