/* =====================================
   CSS VARIABLES
===================================== */

@font-face {
  font-family: 'Recoleta';
  src: url('../fonts/Recoleta-Medium.woff2') format('woff2'),
      url('../fonts/Recoleta-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
    font-family: 'RecoletaRegular';
    src: url('../fonts/Recoleta-RegularDEMO.woff2') format('woff2'),
        url('../fonts/Recoleta-RegularDEMO.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
:root {
--primary: #12a36e;
--dark: #0F1A17;
--light: #ffffff;
--muted: #6b7280;

--navbar-bg: rgba(15, 23, 42, 0.6);
--overlay: rgba(0, 0, 0, 0.1);

--section-bg: #f2f1ef;
--resources-bg: #f3f2ef;

--lime: #C1BC2F;
--orange: #EB7C24;
--coral: #F3623F;
--yellow: #f2cf5b;

--impact-green: #5aa98a;
--resource-green: #63c7a6;
--footer-cta-bg: #3cbf88;
--footer-cta-hover: #34a777;
--border-light: rgba(255, 255, 255, 0.19);

/* Accordion Colors */
--accordion-bg: #F8F6F2;
--accordion-bg-transparent: #ffffff45;
--accordion-text: #2E2E2E;
--accordion-text-muted: #6B6B6B;
--accordion-arrow-bg: #51CFB6;
--accordion-arrow-bg-hover: #3DA896;
--accordion-arrow-icon: #000000;
--accordion-shadow: rgba(0, 0, 0, 0.04);
--accordion-shadow-hover: rgba(0, 0, 0, 0.08);
--accordion-nested-bg: #ffffff9b;
--accordion-nested-shadow: rgba(0, 0, 0, 0.05);
--accordion-badge-green: #B9DED7;
--accordion-badge-beige: #EDD0A5;
--accordion-badge-orange: #FABDA1;
--accordion-badge-text: #000000;

/* Page & UI */
--page-bg-alt: #F3F1EC;
--resource-btn-bg: #E6E0D3;
--ink: #1D2423;
--resource-icon-yellow: #FBD565;
--resource-icon-red: #B23628;
--resource-icon-orange: #E4863C;
--resource-icon-blue-gray: #618493;

--radius-lg: 32px;
--radius-full: 999px;

--transition: all 0.3s ease;

--logo-width: 186px;

/* Typography - Semantic Font Sizes */
--fs-h1: clamp(2.8rem, 5vw, 5.5rem);    /* h1 - Hero headings */
--fs-h2: clamp(2rem, 4vw, 3.2rem);     /* h2 - Section titles */
--fs-h3: 2.1rem;                        /* h3 - Subsection headings */
--fs-h4: 1.5rem;                        /* h4 - Card headings */
--fs-h5: 1.25rem;                       /* h5 - Smaller headings */
--fs-h6: 1.2rem;                       /* h6 - Smallest headings */
--fs-p: 1.4rem;                           /* p - Body text */
--fs-small: 0.9rem;                    /* small - Small text */
--fs-button: 19px;                      /* button - Button text */
}


/* =====================================
 GLOBAL
===================================== */
body {
color: var(--dark);
font-family: 'Geist', 'RecoletaRegular' ,'Recoleta';
font-optical-sizing: auto;
font-style: normal;
}

a {
text-decoration: none;
}
h1, h2, h3, h4, h5, h6{
  font-family:  'RecoletaRegular';
	
}
h1{	
    font-size: var(--fs-h1);
   
}
h2{	
    font-size: var(--fs-h2);
}
h3{	
    font-size: var(--fs-h3);
}
h4{	
    font-size: var(--fs-h4);
}
h5{	
    font-size: var(--fs-h5);
}
h6{	
    font-size: var(--fs-h6);
}
nav a:focus{
	outline:none !important;
	box-shadow:none !important;
}
/* =====================================
 HEADER / NAVBAR
===================================== */
/* Default (top of page) - Taller header */
.custom-navbar {
position: fixed;
top: 0;
width: 100%;
z-index: 999;
background: transparent;
transition: all 0.3s ease;
padding: 0;
}

/* Container padding - taller at top */
nav .container{    
  border-bottom: 1px solid #ffffff30;
  padding-top: 18px;
  padding-bottom: 18px;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Right side group for button and toggler - hidden on desktop */
.custom-navbar .navbar-header-right {
  display: none;
}

/* On scroll - reduced height */
.custom-navbar.scrolled .container{
  border-bottom: 1px solid transparent;
  padding-top: 12px;
  padding-bottom: 12px;
}

.custom-navbar.scrolled {
background: var(--navbar-bg); /* uses your variable */
backdrop-filter: blur(12px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}
.navbar-nav .nav-link.show{
	color:#ffffff !important;
}
/* Logo size transition */
.custom-navbar .navbar-brand img {
transition: all 0.3s ease;
}

.custom-navbar.scrolled .navbar-brand img {
transform: scale(0.9);
}
.custom-navbar .nav-link {
color: var(--light);
font-weight: 400;
transition: var(--transition);
font-size: var(--fs-button);
letter-spacing: 1px;
font-family: 'Geist';
}
.site-logo img,
.navbar-brand img {
width: var(--logo-width);
height: auto;
max-width: 100%;
}
.custom-navbar .nav-link:hover,
.current-menu-parent > a.nav-link,
.custom-navbar .nav-link:hover, .current_page_item .nav-link{
color: var(--primary);
}

/* =====================================
 DROPDOWN MENU (DESKTOP)
===================================== */
/* Dropdown toggle arrow - Desktop default Bootstrap caret */
.custom-navbar .dropdown-toggle::after {
margin-left: 0.5em;
vertical-align: middle;
border-top: 0.3em solid;
border-right: 0.3em solid transparent;
border-bottom: 0;
border-left: 0.3em solid transparent;
transition: transform 0.3s ease;
}

/* Mobile: Hide Bootstrap caret and add custom + / − arrow */
@media (max-width: 991px) {
.custom-navbar .dropdown-toggle::after {
  display: none;
}

.custom-navbar .dropdown-toggle {
  position: relative;
  padding-right: 2rem;
  display: flex;
  align-items: center;
}

.custom-navbar .dropdown-toggle::before {
  content: '+';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: var(--fs-p);
  font-weight: 300;
  line-height: 1;
  height: 1em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  color: var(--light);
}

/* Change to − when dropdown is open */
.custom-navbar .dropdown.show .dropdown-toggle::before,
.custom-navbar .dropdown-toggle[aria-expanded="true"]::before {
  content: '−';
}
}

/* Dropdown menu container */
.custom-navbar .dropdown-menu {
background: #1a3e3d;
border: 1px solid var(--border-light);
border-radius: 8px;
padding: 0.5rem 0;
margin-top: 0.5rem;
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
min-width: 200px;
opacity: 0;
visibility: hidden;
transform: translateY(-10px);
transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
pointer-events: none;
}

/* Enable pointer events when visible */
.custom-navbar .dropdown:hover .dropdown-menu,
.custom-navbar .dropdown:focus-within .dropdown-menu,
.custom-navbar .dropdown.show .dropdown-menu {
pointer-events: auto;
}

/* Show dropdown on hover (desktop only) */
@media (min-width: 992px) {
.custom-navbar .dropdown:hover .dropdown-menu,
.custom-navbar .dropdown:focus-within .dropdown-menu,
.custom-navbar .dropdown.show .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  display: block;
  pointer-events: auto;
}

/* Rotate arrow on hover */
.custom-navbar .dropdown:hover .dropdown-toggle::after,
.custom-navbar .dropdown:focus-within .dropdown-toggle::after,
.custom-navbar .dropdown.show .dropdown-toggle::after {
  transform: rotate(180deg);
}

/* Ensure dropdown menu is positioned correctly */
.custom-navbar .dropdown {
  position: relative;
}

.custom-navbar .dropdown-menu {
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 0;
  z-index: 1000;
}

/* Bridge the gap between parent and menu with invisible padding */
.custom-navbar .dropdown::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 0.5rem;
  background: transparent;
}
}

/* Dropdown items */
.custom-navbar .dropdown-item {
color: var(--light);
padding: 0.75rem 1.25rem;
font-size: var(--fs-button);
font-family: 'Geist';
transition: var(--transition);
display: block;
text-decoration: none;
cursor: pointer;
}

.custom-navbar .dropdown-item:hover,
.custom-navbar .dropdown-item:focus {
background: rgba(255, 255, 255, 0.1);
color: var(--primary);
outline: none;
}

/* Ensure dropdown items are clickable */
.custom-navbar .dropdown-item:active {
background: rgba(255, 255, 255, 0.15);
color: var(--primary);
}

/* Dropdown divider */
.custom-navbar .dropdown-divider {
border-color: var(--border-light);
margin: 0.5rem 0;
}

/* Desktop CTA button in nav */
.desktop-cta-btn {
display: block;
}

/* Mobile CTA Button - hidden on desktop */
.mobile-cta-btn {
display: none !important;
}

/* Navbar Toggler (Hamburger Menu) */
.custom-navbar .navbar-toggler {
padding: 0.5rem 0.75rem;
border-radius: 4px;
transition: var(--transition);
border:none;
}

.custom-navbar .navbar-toggler:hover,
.custom-navbar .navbar-toggler:focus {
outline: none;
box-shadow:none;
}

/* Default: hamburger icon (menu closed - collapsed state) */
.custom-navbar .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
width: 1.5em;
height: 1.5em;
transition: var(--transition);
}

/* When navbar is scrolled, keep hamburger icon white */
.custom-navbar.scrolled .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* When menu is open (NOT collapsed), show X icon */
.custom-navbar .navbar-toggler:not(.collapsed) .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M6 6L24 24M6 24L24 6'/%3e%3c/svg%3e");
}

/* When navbar is scrolled and menu is open, keep X icon white */
.custom-navbar.scrolled .navbar-toggler:not(.collapsed) .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M6 6L24 24M6 24L24 6'/%3e%3c/svg%3e");
}

.btn-theme,
.event-card-register-btn {
background: var(--primary);
color: var(--light);
border-radius: var(--radius-full);
padding: 8px 24px;
font-weight: 600;
}

.btn-theme:hover,
.event-card-register-btn:hover {
background: var(--btn-bg);
color: var(--light);
}
/* =====================================
 3D PILL BUTTON (GLOBAL)
===================================== */
.btn-pill-3d,
.wp-block-button a,
.event-card-register-btn{
--btn-bg: #4BCEA1;
--btn-shadow: #147F46;
--btn-text: #193E3C;

display: inline-flex;
align-items: center;
justify-content: center;

padding: 6px 16px;
font-size: var(--fs-button);
font-weight: 400;
color: var(--btn-text);

background: var(--btn-bg);
border-radius: 999px;

text-decoration: none;
position: relative;
letter-spacing: 1px;
font-family: 'Geist';
/* Bottom layer effect */
box-shadow: 0 6px 0 var(--btn-shadow);

transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Hover */
.btn-pill-3d:hover,
.wp-block-button a:hover,
.event-card-register-btn:hover{
transform: translateY(4px);
color: var(--btn-text);
}


/* =====================================
 HERO / BANNER
===================================== */
.hero-section {
position: relative;
height: 100vh;
overflow: hidden;
padding: 0 80px; /* Space for arrows */
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
}

.hero-bg {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(var(--overlay), var(--overlay)),
    url('../images/children-grass.webp') center/cover no-repeat;
  z-index: 1;
  
  transition: opacity 0.5s ease;
}

.hero-bg.hero-bg-fade-out {
  opacity: 0.35;
}

/* Container wrapper for hero content */
.hero-section .container {
position: relative;
height: 100%;
z-index: 2;
}

/* Swiper container */
.heroTextSwiper {
height: 100%;
position: relative;
z-index: 2;
max-width: 100%;
margin: 0 auto;
padding: 0;
}

/* IMPORTANT: center each slide */
.heroTextSwiper .swiper-slide {
display: flex;
align-items: center;   /* vertical center */
justify-content: center; /* horizontal center */
height: 100%;
}

/* Content */
.hero-content {
max-width: 850px;
padding: 0 16px;
text-align: center;
color: var(--light);
margin: 0 auto;
position: relative;
width: 100%;
}

/* Text */
.hero-content h1 {
font-size: var(--fs-h1);
font-weight: 200;
}

.hero-content p {
font-size: var(--fs-p);
margin:0 auto 20px auto;
color: #e5e7eb;
max-width: 540px;
width: 100%;
}
.hero-section .swiper-button-next,
.hero-section .swiper-button-prev {
width: 88px;
height: 88px;
background: rgba(255, 255, 255, 0.18);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.25s ease;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
margin: 0;  
backdrop-filter: blur(10px);
}

/* REMOVE default swiper arrow */
.hero-section .swiper-button-next::after,
.hero-section .swiper-button-prev::after {
display: none;
}

/* Font Awesome icon */
.hero-section .swiper-button-next i,
.hero-section .swiper-button-prev i {
color: #ffffff;
font-size: var(--fs-h4);
}

/* Hover effect */
.hero-section .swiper-button-next:hover,
.hero-section .swiper-button-prev:hover {
background: rgba(0, 0, 0, 0.75);
transform: translateY(-50%) scale(1.05);
}

/* Position - within container padding */
.hero-section .swiper-button-prev {
left: 20px;
}

.hero-section .swiper-button-next {
right: 20px;
}

/* =====================================
 MISSION SECTION
===================================== */
.mission-section {
background: var(--section-bg);
padding: 6rem 0;
}

.mission-section .row.justify-content-center p:first-of-type {
font-size: var(--fs-h3);
line-height: 1.2;
color: var(--dark);
margin-bottom: 1rem;
    font-family: "Recoleta";
	font-weight:400;
	
}
.icon-circle.bg-coral{
	padding:32px !important;
}
.resource-icon.bg-green{
	background:var(--accordion-arrow-bg);
}
.icon-circle.bg-yellow{
	padding:50px !important;
}
.mission-section .row.justify-content-center p:last-of-type {
font-size: var(--fs-h3);
font-weight: 400;
color: #007D64;
margin-bottom: 3.5rem;
	font-family:"RecoletaRegular";
}

/* =====================================
 FEATURE CARDS
===================================== */
.feature-card {
border-radius: 44px;
padding: 3rem 4rem;
text-align: center;
height: 100%;
}

.feature-card h3 {
font-size: var(--fs-h2);
	line-height:1;
font-weight: 500;
color: var(--light);
margin-bottom: 0;
}
.feature-card.bg-lime h3{	
    max-width: 460px;
	line-height:1;
	width:100%;	
    margin-left: auto;
    margin-right: auto;
}
.feature-card p {
color: var(--light);
margin-bottom: 2.5rem;
font-size: var(--fs-p);
	margin:10px auto 14px auto;
}
.feature-card.bg-lime .btn {
	background:#FFA056;
	box-shadow: 0 6px 0 #2B1606;
}
/* Card colors */
.bg-lime { background:var(--resource-icon-orange); }
.bg-orange { background:var(--resource-icon-blue-gray); }
.feature-card.bg-orange .btn {
	background:#75A5B9;
	box-shadow: 0 6px 0 #2B1606;

}
.feature-card.bg-lime .bg-coral{
	background:#CE6C20;
}
/* Icon circle */
.icon-circle {
width: 190px;
height: 190px;
border-radius: 50%;
margin: 0 auto 2.5rem;
display: flex;
align-items: center;
justify-content: center;
}

.icon-circle i {
font-size: var(--fs-h1);
color: #000;
}

.bg-coral { background:#CE6C20; }
.bg-yellow { background: #4F7382; }


/* =====================================
 RESOURCES & TOOLS SECTION
===================================== */
.resources-section {
background: var(--section-bg);
padding: 0 0 8rem 0;
margin-top: -1px;
}

.section-title {
font-size: var(--fs-h2);
font-weight: 500;
margin-bottom: 1rem;
}

.resources-section .row.justify-content-center .col-lg-8 p {
font-size: var(--fs-p);
line-height: 1.5;
color: #150832;
letter-spacing: 0.5px;
}

/* Resource Card */
.resource-card {
background: var(--section-bg);
border-radius: 50% 50% 4px 4px;
padding: 4rem 2rem 5rem 2.5rem;
text-align: center;
height: 100%;
box-shadow: -1px 14px 40px rgba(0, 0, 0, 0.1);
transition: var(--transition);
position: relative;
}

.resource-card:hover {
transform: translateY(-6px);
}

/* Icon */
.resource-icon {
width: 190px;
height: 190px;
border-radius: 50%;
margin: 0 auto 2rem;
display: flex;
align-items: center;
justify-content: center;
}

.resource-icon i {
font-size: var(--fs-h2);
color: #1f2937;
}

/* Icon Colors */
.bg-green { 
background: var(--resource-green); 
padding: 20px 30px 0 30px;
}
.bg-yellow { background:#4F7382; }
.bg-coral { background: var(--coral); }

/* Text */
.resource-card h4 {
font-size: var(--fs-h3);
font-weight: 400;
color: var(--dark);
line-height: 1.2;
}
.resource-card .bg-yellow{
	background:#FF9644;
}
.resource-card .bg-coral {
    background:#92B4C3;
}
.resource-card .bg-green img{	
    max-width: 64px;
	width:100%;
}
/* =====================================
 IMPACT SECTION
===================================== */
.impact-section {
background:#DAC9B3;
padding: 6rem 0;
color: #000000;
overflow: hidden;
}

.impact-title {
font-size: var(--fs-h2);
font-weight: 500;
margin-bottom: 1.5rem;
}

.impact-title span {
text-transform: uppercase;
}

.impact-section .col-lg-7 p:first-of-type {
font-size: var(--fs-p);
font-weight: 400;
margin-bottom: 1.5rem;
}

.impact-section .col-lg-7 p:last-of-type {
font-size: var(--fs-p);
line-height: 1.3;
opacity: 0.95;
}

/* =====================================
 POLAROID IMAGES
===================================== */
.impact-images {
position: relative;
}
.polaroid{
  display: flex;
  align-items: center;
  justify-content: center;
  
}
.polaroid img {
display: block;
width: 100%;
height: auto; 
max-height: 470px;
}


/* =====================================
 EXPLAINER SECTION
===================================== */

.explainer-section {
background: #F3F2ED;
padding:3rem 0 6rem 0;
}
.home .explainer-section{
	padding-bottom:0;
}
/* Row container - ensure equal height columns */
.explainer-section .row {
display: flex;
align-items: stretch;
}

/* Bootstrap columns - ensure they stretch to full height */
.explainer-section .row > [class*="col-"] {
display: flex;
flex-direction: column;
}

/* Card container - flexbox column */
.explainer-card {
display: flex;
flex-direction: column;
width: 100%;
}

.explainer-media {
position: relative;
background: #F3EFE9;
padding: 24px 44px 10px 44px;
border-radius: 4px; 
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.10);
margin-bottom: 0.3rem;
display: flex;
flex-direction:column;
align-items: center;
justify-content: center;
}

/* Green panel */
.explainer-media .bg-green {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
padding: 0;
}

.explainer-media.bg-green {
background: var(--impact-green);
}

/* Speaker image */
.speaker-img {
width: 100%;
height: auto;
max-height: 100%;
border-radius: 0px;
display: block;
object-fit: contain;
}

/* Polaroid style */
.explainer-media .polaroid {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}

.explainer-media .polaroid img {
max-width: 100%;
max-height: 100%;
object-fit: cover;
}

/* Text */
.explainer-card p {
font-size: var(--fs-p);
line-height: 1.6;
color: #1A1D1D;
flex-shrink: 0;
}
.home .explainer-card p{
	font-size:var(--fs-button);
	margin-top:10px;
}
.donate-media-mentions-section,
.impact-join {
	background:#F3F2ED;
}
.impact-join{
	padding-bottom:100px !important;
}
.home .about-quote-box h4{
	font-family: 'Recoleta';
	font-size: var(--fs-h4);
}
/* =====================================
 FOOTER CTA SECTION
===================================== */

.footer-cta {
background: #419182;
padding: 4rem 0 2rem 0;
color: #ffffff !important;
text-align: center;
}

/* Three Column Layout */
.footer-main-content {
margin-bottom: 3rem;
}

/* Left Column - Logo */
.footer-logo-column {
display: flex;
align-items:center;
justify-content: center;
}

.footer-logo-section {
width: 100%;
}

.footer-main-logo {
width: 100%;
max-width: 300px;
height: auto;
}

/* Middle Column - Navigation */
.footer-nav-column {
display: flex;
align-items: center;
justify-content: center;
border-left: 1px solid #ffffff26;
border-right: 1px solid #ffffff26;
}

.footer-navigation {
width: 100%;
}

.footer-nav-links {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 0.4rem;
}

.footer-nav-links li {
margin: 0;
}

.footer-nav-links a {
color: #ffffff !important;
font-size: var(--fs-button);
text-decoration: none;
transition: color 0.2s ease;
font-weight: 400;
}

.footer-nav-links a:hover {
color: var(--primary);
text-decoration: underline;
}

/* Right Column - Mailing List & Social */
.footer-form-column {
display: flex;
align-items: flex-start;
justify-content: center;
}

.footer-mailing-section {
width: 100%;
max-width: 350px;
}

.footer-mailing-title {
font-size: var(--fs-h5);
font-weight: 500;
color: #ffffff !important;
margin-bottom: 1.5rem;
font-family: 'Recoleta', serif;
}

/* Form */
.footer-form {
display: flex;
flex-direction: column;
gap: 0.55rem;
margin-bottom:0rem;
	max-width:278px;
	width:100%;
	margin-left:auto;
	margin-right:auto;
}

.footer-form input,
.footer-form select{
width: 100%;
border: none;
border-radius: var(--radius-full);
padding: 0.55rem 1rem;
font-size: var(--fs-small);
background: rgba(0, 0, 0, 0.080);
color: #ffffff;
transition: background 0.2s ease;
text-align: center;
	border:none !important;
}

.footer-form input::placeholder {
color: #ffffff;
}

.footer-form input:focus,
select:focus{
outline:none !important;
box-shadow: none !important;
border: none !important;

}
.footer-form  select option {
  background: #ffffff;
  color: #000000;
}
select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 12px 40px 12px 16px; /* space for arrow */
  background-position: right 15px center; /* move arrow near text */
  background-repeat: no-repeat;
  background-size: 14px;
}
/* Sign Up Button */
.btn-footer-signup,
form .btn-cta{
width: 100%;
background:var(--accordion-arrow-bg) ;
color: var(--dark);
border-radius: var(--radius-full);
padding: 0.875rem 1.5rem;
font-weight: 400;
font-size: var(--fs-button);
border: none;
transition: var(--transition);
box-shadow: 0px 6px 0px 0 #071916;
cursor: pointer;
height: 44px;
display: flex;
align-items: center;
justify-content: center;
	padding:0;
}


.btn-footer-donate, form .btn-cta{	
    display: flex;
	align-items:center;
	justify-content:center;
}

/* Social Media Icons */
.footer-social-icons {
display: flex;
gap: 1rem;
justify-content:center;
}

.footer-social-icons .social-icon {
color: #ffffff;
font-size: 1.75rem;
text-decoration: none;
transition: color 0.2s ease;
display: inline-flex;
align-items: center;
justify-content: center;
width: 2rem;
height: 2rem;
}

.footer-social-icons .social-icon:hover {
color: #000000;
}

/* Bottom CTA Section */
.footer-cta-section {
text-align: center;
padding:1.5rem 0 1rem 0;
margin-top: 2rem;
}

.footer-cta-section p {
font-size: var(--fs-h3);
font-weight: 400;
color: var(--dark);
margin-bottom: 1.5rem;
font-family: 'Recoleta', serif;
color: #FFFFFF;
}

.btn-footer-donate {
display: inline-block;
background: var(--footer-cta-bg);
color: var(--dark);
border-radius: var(--radius-full);
padding: 1.25rem 4rem;
font-weight: 600;
font-size: var(--fs-h4);
border: none;
transition: var(--transition);
box-shadow:0 6px 0 #071916;
text-decoration: none;
min-width: 100%;
height: 64px;
background: var(--accordion-arrow-bg);
color: #193E3C;
	display:flex;
	align-items:center;
	justify-content:center;
}

.btn-footer-donate:hover,
footer .btn-cta:hover{
background:var(--accordion-arrow-bg);
}

/* Footer Info */
.footer-info {
text-align: center;
color: #ffffff;
}

.footer-info p {
font-size: var(--fs-small);
color: #ffffff;
margin: 0;
opacity: 0.8;
}

/* Form validation styles */
.footer-form .form-group {
margin-bottom: 0;
position: relative;
}

.footer-form input[aria-invalid="true"] {
border: 1px solid #ef4444;
}

.footer-form input[aria-invalid="false"] {
border: 2px solid #10b981;

}

.error-message {
display: none;
color: #ef4444;
font-size: var(--fs-small);
margin-top: 4px;
text-align: center;
padding-left: 4px;
}

.success-message {
display: none;
color: #86efac;
font-size: var(--fs-small);
margin-top: 1rem;
padding: 12px;
background-color: rgba(16, 185, 129, 0.1);
border-radius: 8px;
border: 1px solid rgba(16, 185, 129, 0.3);
}

.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}

.inner_page_hero_banner{	
    background: #4ccea2;
	min-height:400px;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	color:#ffffff;	
    position: relative;
    overflow: hidden;
    padding: 0 80px;
    box-sizing: border-box;
    background-color: rgba(0, 0, 0, 0.75);

}
.inner_page_hero-bg{
    position: absolute;
    inset: 0;
    background: linear-gradient(var(--overlay), var(--overlay)), url(../images/children-grass.webp) center / cover no-repeat;
    z-index: 1;
    transition: opacity 0.5s ease;	
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
}
.inner_page_hero-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5); /* change color & opacity here */
  z-index: 1;
}
.inner_page_hero_content{
    height: 100%;
    position: relative;
    z-index: 2;
    max-width: 100%;
    margin: 0 auto;
    padding:6% 0 0 0;
}
section p a{
	color:#169A6C;
	text-decoration:none;
}
section p a:hover{
	color:#147F46;
	text-decoration:underline;
}
.wp-block-quote {
    border-left: .45em solid #4bcea1;
    margin: 1.75em 0;
    padding: 2em;
}
.quote-author{
  font-size: var(--fs-button) !important;
  font-weight: 500 !important;
  color: #000000 !important;
  margin: 1rem 0 1rem 0 !important;
  display: block;
}
.inner_page section p a{	
    color: #169A6C;
}
.wp-block-pullquote {
	border-bottom: 4px solid #4bcea1;	
    border-top: 4px solid #4bcea1;
	padding:1em 0;
}
.inner_page section p a:hover{
	color:#147f46;
	text-decoration:underline;
}
.inner_page section p{
	font-size:1.2rem;
}
.inner_page .wp-block-buttons>.wp-block-button{
	margin:14px 0 24px 0;
}
.inner_page section ul li::marker,
.inner_page section ol li::marker{
  color: #4bcea1;
}
/*.inner_page section h1,
.inner_page section h2,
.inner_page section h3,
.inner_page section h4,
.inner_page section h5,
.inner_page section h5{
	font-weight:700;
}*/
.inner_page .wp-block-media-text__media img{
	margin-bottom:28px;
}
.no-inner-banner .custom-navbar{
    /*background: var(--navbar-bg);*/
	background:rgb(0,0,0,0.75);
    backdrop-filter: blur(12px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}
.no-inner-banner .inner_page_content{
	padding-top:150px !important;
}
.entry-header h1{
	display:none;
}
.no-inner-banner .entry-header h1{
	display:block;
}
.inner_page_content  table td a{
color:var(--dark) !important;
	text-decoration:none;
}
.inner_page_content  table a[href^="mailto:"],
.inner_page_content  table a[href^="tel:"] {
 color:var(--dark) !important;
  text-decoration: none;
}
.inner_page_content table td a:hover{
	    color: #4ccea2 !important;
}
.admin-bar .custom-navbar {
	top:15px;
}

/* =====================================
   ABOUT PAGE STYLES
   All styles scoped under .about-page
   DO NOT modify global styles
===================================== */

/* 1) Hero Section */
.about-page .about-hero {
  position: relative;
  width: 100%;
  height: 473px;
  background-image: url('../images/learn_abouts_us_banner.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}

.about-page .about-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  z-index: 1;
}

.about-page .about-hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  color: var(--light);
}

.about-page .about-hero-content h1 {
  color: var(--light);
  margin:100px 0 0 0;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

/* 2) Our Mission Section */
.about-page .about-section {
  padding:3rem 0 5rem 0;
}
.about-page .about-section{
	background:#f3f2ed;
}
.about-page .about-mission-content {
  text-align: center;
  max-width: 100%;
}

.about-page .about-mission-content h2 {
  margin-bottom: 1.875rem;
  color: var(--dark);
}

.about-page .about-mission-content > p {
  margin-bottom: 2.5rem;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}

.about-page .about-mission-box {
  background-color: #cfe5e0;
  border-radius: 2.5rem;
  padding: 2rem 3rem;
  max-width:800px;
  margin:40px auto 0 auto;
  text-align: center;
}

.about-page .about-mission-box p {
  margin: 0;
  font-weight: 500;  
  font-family: 'Recoleta';
}

/* 3) Our Purpose Section */
.about-page .about-purpose {
  background-color:#f3f2ed;
	padding-top:5rem;
}

.about-page .about-purpose-content {
  text-align: center;
}

.about-page .about-purpose-content h2 {
  margin-bottom: 1.875rem;
}

.about-page .about-purpose-content > p {  
  margin-bottom: 3.125rem;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}

.about-page .about-features {
  
  margin-bottom: 0rem;
  max-width: 62.5rem;
  margin-left: auto;
  margin-right: auto;
}

.about-page .about-feature-item {
  display: flex;
    align-items: flex-start;
    gap: 1.25rem;   
    text-align: left;
    margin-bottom: 4rem;
}

.about-features-tight .about-feature-item {
  margin-bottom: 1.5rem;
	align-items:start;
}

.about-page .about-feature-icon {
  width: 2.625rem;
  height: 2.625rem;
  min-width: 2.625rem;
  background-color: var(--accordion-arrow-bg);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--light);
  font-size: 1rem;
}
.about-feature-icon i{
  color: #000000;
  display: inline-block;
  line-height: 1;
 
  font-style: normal;
}
.about-page .about-feature-content h4 {
  margin-bottom: 0.625rem;
  font-weight: 600;
}

.about-page .about-feature-content p {
  margin: 0;
  line-height: 1.6;
}
.about-page .about-feature-content p span{  
  font-weight: 600;
}

.about-page .about-quote-box {
  background-color: #f3d1c3;
  border-radius: 2.5rem;
  padding:4rem 3.5rem 2.5rem 3.5rem;
	width:100%;
  margin: 3.125rem auto 0;
  text-align: center;
}

.about-page .about-quote-box p {
  margin: 0;
  font-style: italic;
  line-height: 1.6;
}
.about-quote-box h4{
	line-height:1.4;
}
.inner-page section .about-quote-box h4{	
    font-size: var(--fs-h3);
}
/* 4) Our Commitment to Independence Section */
.about-page .about-section.about-commitment{
  padding-top: 1rem;
}
.about-page .about-commitment-content {
  text-align: center;
  max-width: 50rem;
  margin: 0 auto;
}

.about-page .about-commitment-content h2 {
  margin-bottom: 1.875rem;
}

.about-page .about-commitment-content > p {
  margin-bottom: 1.5625rem;
  text-align: justify;
  line-height: 1.7;
  text-align: center;
}
.quote-mark{
  display: block;
  color: #EE8541;
  font-size: var(--fs-h2);
  font-weight: 700;  
  
}
.about-commitment-content p:last-of-type { 
  margin-top: 2.875rem;
  margin-bottom: 0;
}
.about-features-bottom {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
}
.about-commitment-body p{
	margin-bottom:34px;
}
/* =====================================
   GLOBAL INNER PAGE TYPOGRAPHY SCALE
   Applies to ALL inner pages (.inner-page)
   DO NOT modify header, footer, or home page styles
===================================== */

.inner-page {
  color: var(--dark);
  font-family: 'Geist', sans-serif;
}

.inner-page  section h1 {
  font-size: var(--fs-h1);
  font-family: 'RecoletaRegular', serif;
  color: #000000;
  margin-top:110px;
  margin-bottom: 0px;
  font-weight: 300;
}

.inner-page  section h2 {
  font-size: var(--fs-h2);
  font-family: 'Recoleta', serif;
  color: #000000;
  margin-bottom: 1.5625rem;
  margin-top: 0;
  font-weight: 500;
}

.inner-page  section h3 {
  font-size: var(--fs-h3);
  font-family: 'Recoleta', serif;
  color: #000000;
  margin-bottom: 1.25rem;
  margin-top: 0;
  font-weight: 500;
}

.inner-page  section h4 {
  font-size: var(--fs-h4);
  font-family: 'Recoleta', serif;
  color: #000000;
  margin: 0;
  font-weight: 400;
}

.inner-page  section h5 {
  font-size: var(--fs-h5);
  line-height: 2.25rem;
  font-family: 'Recoleta', serif;
  color: #000000;
  margin: 0;
  font-weight: 500;
}

.inner-page  section p {
  font-size: var(--fs-p);
  color: var(--dark); 
  line-height: 1.6;
}

.about-mission-content > p,
.about-purpose-content > p,
.about-commitment-content > p,
.about-features-bottom > p,
.take-action .about-mission-content > p {
  font-size: var(--fs-h4);
  color: var(--dark);
  font-family: 'Geist', sans-serif;
  line-height: 1.6;
}

.inner-page  section .p-small {
  font-size: var(--fs-small);
  line-height: 1.6;
  color: #555555;
  font-family: 'Geist', sans-serif;
}

/* =====================================
   LEADERSHIP COUNCIL PAGE STYLES
   All styles scoped under .leadership-council
   DO NOT modify global styles
===================================== */

/* 1) Hero Section */
.leadership-council-hero {
  position: relative;
  width: 100%;
  min-height:485px;
  background-image: url('../images/leader_ship_banner.webp');
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}

.leadership-council-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  z-index: 1;
}

.leadership-council-hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  color: var(--light);
}

.leadership-council-hero-content h1 {
  color: var(--light);
  margin: 100px  0 0;
  text-shadow: 0.125rem 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
}

/* 2) Intro Section */
.leadership-council-intro {
  padding: 3.125rem 0 0 0;
  background-color: var(--resource-icon-blue-gray);
}

.leadership-council-intro p {  
  color: #ffffff !important;
  line-height: 1.7;
  text-align: center; 
  max-width: 720px;
  margin: auto !important;
  width: 100%;
}

/* 3) Leaders Grid Section */
.leadership-council {
  padding: 5rem 0;
  background-color: var(--resource-icon-blue-gray);
}

/* Member Card */
.leadership-council .member-card { 
  border-radius: 0rem; 
  height: 100%;
  display: flex;
  flex-direction: column;
}

.leadership-council .member-image {
  width: 100%;
  overflow: hidden;
  background-color: #F2F0EB;  
  padding: 1.5rem;
}
.inner-page-leadership-council .member-image {
  box-shadow: 0 0 10px -5px #000000;
}

.leadership-council .member-image img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  display: block;
  filter: grayscale(100%);
  transition: filter 0.3s ease;
  margin-bottom: 10px;
}

.leadership-council .member-card:hover .member-image img {
  filter: grayscale(0%);
}
.inner-page section .member-image h5{	
    font-size: var(--fs-h4);
	font-family: 'RecoletaRegular';
}
.leadership-council .member-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  text-align: left;  padding: 1.5rem;
}

.leadership-council .member-info h4 {
  font-size: 1.5rem;
  font-family: 'RecoletaRegular', serif;
  color: var(--dark);
  margin: 0 0 0.5rem 0;
  font-weight: 600;
}

.leadership-council .member-info .role {
  font-size: 0.875rem;
  color: var(--muted);
  font-family: 'Geist', sans-serif;
  margin-bottom: 0.75rem;
  display: block;
  font-weight: 500;
}

.leadership-council .member-info p {
  font-size: 0.9375rem;
  color: #ffffff;
  line-height: 1.6;
  margin: 0;
  flex: 1;
}

.leadership-council .member-info p a {
  color: #ffffff;
  text-decoration: underline;
  transition: color 0.3s ease;
}

.leadership-council .member-info p a:hover {
  color: #ffffff;
  text-decoration: underline;
}

.leadership-council-grid{
  max-width: 1000px;
  margin: 0 auto 3.125rem auto;
  width: 100%;
}
.leadership-council-grid-full{
	  max-width: 100%;
}
.leadership-council-grid .row:first-child{
	margin-bottom:50px;
}
.leadership-contact-section {  
  padding: 4rem 0 6rem 0;
  position: relative;
  text-align: center;
  font-weight: 500;
  line-height: 1.6;
  font-family: 'Geist', sans-serif;
}
.leadership-council.advisory-board .member-info{
	display:block !important;
}
.leadership-contact-section-content {
  margin: 0 auto;
  width: 100%;
  background: url('../images/bottom_img.webp') center center / cover no-repeat;
  border-radius: 1.25rem;
  padding: 3.125rem;
	min-height:429px;
	display:flex;
	align-items:center;
	justify-content:center;
}
.leadership-contact-section-content h2{
	margin-bottom:8px !important;
}
.inner-page section .leadership-contact-section-content h4,
.inner-page section .leadership-contact-section-content h5 {
color: #ffffff !important;
}
.inner-page section .leadership-contact-section-content h5 {
 font-size: var(--fs-button) !important;
 font-weight: 300 !important;
	font-family: 'RecoletaRegular';
  }
.inner-page section .leadership-contact-section-content h4{
	font-family: 'Recoleta';
	font-size:var(--fs-h3);
}

.inner-page section .leadership-contact-section-content a.btn.btn-theme {
color: #000000 !important;
background: var(--accordion-arrow-bg) !important;
font-weight: 400;
box-shadow: 0 4px 0 #1C2420 !important;
}

.leadership-council-intro.advisory-board-intro,
.leadership-council.advisory-board{
  background-color: #f3f2ed;
}
.advisory-board-intro p,
.leadership-council .advisory-board-member-card .member-info p{
  color: #000000 !important;
}
.leadership-council-grid.advisory-board-grid{
  background-color: #ffffff;
}
.member-card.advisory-board-member-card{
  background-color: #f3f2ed;
}
.member-card.advisory-board-member-card .member-image{
background: transparent !important;
padding: 0 !important;
}
.member-card.advisory-board-member-card .member-image img{
  border-radius: 10px !important;
  margin-bottom: 10px !important;
	min-height:425px;
}
.advisory-board-member-card .member-info{
  padding: 0 0 117px 0 !important;
}
.leadership-contact-section.advisory-board-contact-section{
	background:#f3f2ed;
}
.leadership-council .advisory-board-member-card .member-info p a{
  color: #000000 !important;
  text-decoration: underline;
  transition: color 0.3s ease;
}
.leadership-council .advisory-board-member-card .member-info p a:hover {
  color: #000000 !important;
  text-decoration: underline;
}
.leadership-council .advisory-board-contact-section{
  background-color: #ffffff;
}
.distraction-free-schools-policy-project-link a{
  color: #FF0000 !important;
  text-decoration: none;
  transition: color 0.3s ease;
  margin:50px auto 80px auto;
  display: block;
}
.distraction-free-schools-policy-project-link a:hover {
 text-decoration: underline;
}
.take-action-purpose-section .about-quote-box{
  padding: 4rem 4.5rem 2.5rem 4.5rem;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.take-action-purpose-section h4{
	
    font-size: var(--fs-h3);
}
.quote-author{
	font-family: 'Recoleta';
}
.take-action-graphic{
  background-color: #E5E4DD;
  padding: 8px 80px; 
	max-width:420px;
  width: 100%;
  margin:20px auto;
  display: block;
  text-align: center;
	min-height:92px;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50px;
}
.take-action-graphic:hover{
	background-color: #51cfb6;
}
.take-action-graphic h4{	
    color: #000000;
	margin-bottom:0;
}
.take-action-logo-section{
  padding-bottom: 120px;
	background:#f3f2ed;
}
.take-action-logo-section-content{
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
}
.take-action-logo-section-content .row .col-6:first-child{
	max-width:100% !important;
	width:100% !important;
}

.take-action-logo-section .row .col-6:first-child img {
	max-width: 400px;
	padding:20px 30px;
	border-bottom:1px solid #00000030;
	margin-bottom:30px;
}

.take-action-logo-section img{ 
  max-width: 192px;
  width: 100%;
  margin: auto;
   }
   .about-section.about-mission.take-action-mission-section{
padding-top: 6rem;
   }
   .news-section{
    padding: 129px 0;
    background: #F7F6F1;
   }
   .news-card{  background: #F7F6F1;
    padding: 2.5rem 2.5rem 3.25rem 2.5rem;
    border-radius: 1.25rem;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    margin-bottom: 1.25rem;
    text-align: center;
    height: 100%;
    position: relative;
   }
   .news-card h2{
    color: #000000;
    font-size: var(--fs-h3) !important;	   
    max-width: 270px;
    width: 100%;
    margin: 20px auto 50px auto;
   }
   .news-card a{
    position: absolute;
    bottom: 15%;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    color: #1C2420;
    text-decoration: none;
   }
 
.leadership-council.advisory-board{
padding:5rem 0 3rem 0;
}
/* =====================================
   EVENTS PAGE STYLES
===================================== */

/* Hero Background Update */
.events-page .events-hero {
  background-image: url('../images/events-banner.webp');
}

/* Events Grid Section */
.events-grid-section {
  background-color: var(--page-bg-alt);
  padding: 60px 0;
  min-height: 100vh;
}

.events-container {
 width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.events-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  width: 100%;
	margin-bottom:22px;
}

/* Event Card Base Styles */
.event-card {
  background: #FBFAF5;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  padding: 28px;
  display: flex;
  flex-direction: column;
  text-align: center;
  position: relative;
  overflow: hidden;
	height:100%;
}

/* Text Cards */
.event-card-text {
  justify-content: space-between;
}

.event-heading-serif {
  font-family: 'Playfair Display', 'Recoleta', serif;
  font-size: var(--fs-h3);
  font-weight: 500;
  color: #1F3C3A;
  margin: 0 0 16px 0;
  line-height: 1.3;
}

/* Card 1 specific - large heading */
.event-card-text:first-child .event-heading-serif {
  font-size: var(--fs-h3);
}

.event-card-text h3.event-heading-serif {
  font-size: var(--fs-h4);
}

.event-card-text h2.event-heading-serif {
  font-size: var(--fs-h3);
}

.event-card p {
  font-family: 'Inter', 'Geist', sans-serif;
  font-size: var(--fs-small) !important;
  color: var(--accordion-text-muted);
  line-height: 1.6;
  margin: 0 0 24px 0;
}

/* Date Pill Button */
.event-date-pill {
  background: #EAE6DC;
  padding: 10px 18px;
  border-radius: 5px;
  font-size: var(--fs-small);
  font-family: 'Inter', 'Geist', sans-serif;
  color: #1F3C3A;
  display: inline-block;
  font-weight: 500;	
    max-width: 250px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.event-date-pill-small {
  background: #EAE6DC;
  padding: 8px 16px;
  border-radius: 20px;
  font-size: var(--fs-small);
  font-family: 'Inter', 'Geist', sans-serif;
  color: #1F3C3A;
  display: inline-block;
  margin-top: 16px;
  font-weight: 500;
}

/* Image Cards */
.event-card-image {
  padding: 0;
  overflow: hidden;
  display: block;
}

.event-card-image .event-image {
  width: 100%;
  height: 100%; 
  display: block;
  border-radius: 16px;
}

/* Speaker Panel Card */
.event-card-panel {
  background: #FFFFFF;
}

/* Invitation Card (Card 7) */
.event-card-invitation {
  background: linear-gradient(135deg, #E8F4F0 0%, #D4E8E0 50%, #C8E0D4 100%);
  position: relative;
  overflow: hidden;
}

.invitation-diagonal-accent {
  position: absolute;
  top: -50px;
  right: -50px;
  width: 200px;
  height: 200px;
  background: rgba(46, 125, 97, 0.15);
  border-radius: 50%;
  z-index: 0;
}

.invitation-diagonal-accent::before {
  content: '';
  position: absolute;
  bottom: -30px;
  left: -30px;
  width: 150px;
  height: 150px;
  background: rgba(31, 60, 58, 0.08);
  border-radius: 50%;
}

.invitation-content {
  position: relative;
  z-index: 1;
}

.invitation-heading {
  font-family: 'Inter', 'Geist', sans-serif;
  font-size: var(--fs-h5);
  font-weight: 700;
  color: #2E7D61;
  margin: 0 0 16px 0;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.invitation-text {
  font-family: 'Inter', 'Geist', sans-serif;
  font-size: var(--fs-small);
  color: #1F3C3A;
  line-height: 1.6;
  margin: 0 0 24px 0;
}

/* Editorial Card (Card 8) */
.event-card-editorial {
  background: #FBFAF5;
}

.event-card-editorial .event-heading-serif {
  font-size: var(--fs-h4);
  font-weight: 500;
}

/* Image Overlay Card (Card 9) */
.event-card-image-overlay {
  padding: 0;
  position: relative;
  overflow: hidden;
}

.event-card-image-overlay .event-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 350px;
  border-radius: 16px;
}

.event-overlay-gradient {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 60%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
  z-index: 1;
}

.event-overlay-content {
  position: absolute;
  bottom: 60px;
  left: 0;
  right: 0;
  z-index: 2;
  padding: 0 28px;
  text-align: center;
}

.event-overlay-heading {
  font-family: 'RecoletaRegular', serif;
  font-size: var(--fs-h3);
  font-weight: 600;
  color: #FFFFFF;
  margin: 0 0 12px 0;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.event-badge {
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
  padding: 8px 16px;
  border-radius: 20px;
  font-size: var(--fs-small);
  font-family: 'Inter', 'Geist', sans-serif;
  color: #FFFFFF;
  display: inline-block;
  font-weight: 500;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.event-green-strip {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 6px;
  background: #2E7D61;
  z-index: 3;
}

/* Responsive Design */
@media (max-width: 991px) {
  .events-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .event-heading-serif {
    font-size: var(--fs-h4);
  }
  
  .event-card-text h2.event-heading-serif {
    font-size: var(--fs-h4);
  }
  
  .event-card-text h3.event-heading-serif {
    font-size: var(--fs-h4);
  }
}

@media (max-width: 767px) {
  .events-grid {
    grid-template-columns: 1fr;
  }
  
  .events-grid-section {
    padding: 40px 0;
  }
  
  .events-container {
    padding: 0 16px;
  }
  
  .event-card {
    padding: 24px;
  }
  
  .event-heading-serif {
    font-size: var(--fs-h4);
  }
  
  .event-card-text h2.event-heading-serif {
    font-size: var(--fs-h4);
  }
  
  .event-card-text h3.event-heading-serif {
    font-size: var(--fs-h5);
  }
  
  .event-overlay-heading {
    font-size: var(--fs-h4);
  }
	.events-embed-section iframe {
		height:1200px !important;
	}
}

/* =====================================
   RESOURCES PAGE STYLES
===================================== */

.resources-page {
  background-color: var(--page-bg-alt);
}
.about-page .about-hero.resources-hero{
  background-image: url('../images/resource-banner.webp');
}
.about-page-section{
	padding-top:90px !important; 
}
/* Resources Container */
.resources-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Intro Text Section */
.resources-intro-section {
  padding: 80px 0 0 0;
  background-color: var(--page-bg-alt);
}

.resources-intro-section p {
  max-width: 720px;
  margin: 0 auto;
  text-align: center; 
  align-items: center;
  justify-content: center;
  font-family: 'Inter', 'Geist', sans-serif;
  font-size: var(--fs-p);
  color: var(--accordion-text-muted);
  line-height: 1.7;
}
.inner-page section .resources-intro-section p {
  margin: 0 auto 0px auto;
}
/* Resources Grid Section */
.resources-grid-section {
  padding: 50px 0 100px 0;
  background-color: var(--page-bg-alt);
}

.resources-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  width: 100%;
}

/* Resource Card */
.resource-grid-card {
  background: #FFFFFF;
  border-radius: 16px;
  padding: 32px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
}

.resource-grid-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
}
.resource-grid-card p.resource-card-text,
.resources-intro-section p.resources-intro-text,
.resource-list-content p{
	color:#000000 !important;
}
/* Icon Circles */
.resource-icon-circle {
  width: 74px;
  height: 74px;
  border-radius: 50%;
  margin-bottom: 20px;
}

.resource-icon-teal {
  background: var(--accordion-arrow-bg);
}

.resource-icon-yellow {
  background: var(--resource-icon-yellow);
}

.resource-icon-red {
  background: var(--resource-icon-red);
}

.resource-icon-orange {
  background: var(--resource-icon-orange);
}

.resource-icon-teal-variant {
  background: var(--accordion-arrow-bg);
}

.resource-icon-blue-gray {
  background: var(--resource-icon-blue-gray);
}

/* Card Text */
.resource-card-title {
  
  font-weight: 500;
  color: var(--accordion-text);
  margin: 0 0 12px 0;
  line-height: 1.3;
}

.resource-grid-card p {
  color: var(--accordion-text-muted);
  line-height: 1.6;
  margin: 0 0 20px 0 !important;
  flex: 1;
}

/* Explore Button */
.resource-explore-btn {
  color: var(--accordion-text);
  background: transparent;
  border: 1px solid var(--ink);
  background-color: var(--resource-btn-bg);
  color: var(--ink);
  padding: 8px 16px;
  border-radius: 20px;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
  display: inline-block;
  margin-top: auto;
  
  box-shadow: 0 5px 0px rgba(230, 224, 211, 1);
}

.resource-explore-btn:hover {
  transform: translateY(4px);
}

/* =====================================
   TECH & SCHOOLS PAGE STYLES
===================================== */

.tech-and-school-page {
  background-color: var(--page-bg-alt);
}

.about-page .about-hero.tech-and-school-hero {
  background-image: url('../images/tech-school-bg.webp');
}

/* =====================================
   SFC NEWS TEMPLATE
===================================== */

.sfc-news-template .about-hero.sfc-news-hero {
  background-image: url('../images/children-grass.webp');
}

.sfc-news-main {
  background-color: var(--section-bg);
  padding: 4rem 0 5rem;
}

.sfc-news-section {
  padding: 100px 0;
	background:#f3f2ed;
}
.sfc-news-section .container{
position: relative;
}
.sfc-news-section:last-child {
  margin-bottom: 0;
}

.sfc-news-section-title {
  text-align: center;
  color: var(--dark);
  font-size: var(--fs-h2);
  font-weight: 600;
  margin-bottom: 2.5rem;
}

.sfc-news-swiper {
  overflow: hidden;
  position: relative;
}

.sfc-news-section .swiper-button-prev,
.sfc-news-section .swiper-button-next,
.quote-section .swiper-button-prev,
.quote-section .swiper-button-next{
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--accordion-arrow-bg);
  color: var(--dark);
  border: none;
  top: 50%;
  margin-top: -24px;
  transition: var(--transition);
}
.quote-section{
	position:relative;
}
.sfc-news-section .swiper-button-prev::after,
.sfc-news-section .swiper-button-next::after
{
  display: none;
}

.sfc-news-section .swiper-button-prev i,
.sfc-news-section .swiper-button-next i,
.quote-section .swiper-button-prev i,
.quote-section .swiper-button-next i{
  font-size: var(--fs-h5);
  color: var(--dark);
}

.sfc-news-section .swiper-button-prev:hover,
.sfc-news-section .swiper-button-next:hover,
.quote-section .swiper-button-prev:hover,
.quote-section .swiper-button-next:hover{
  background: var(--accordion-arrow-bg-hover);
  color: var(--dark);
}

.sfc-news-section .swiper-button-prev{
  left: -60px;
}

.sfc-news-section .swiper-button-next{
  right: -60px;
}

.sfc-news-slide-card {
  background-color: var(--accordion-bg);
  border-radius: 0rem;
  overflow: hidden;
  aspect-ratio: 3 / 4;
  width: 100%;
	height:450px;
  object-fit: cover;
  display: block;
}

.sfc-news-slide-card img {
  width: 100%;
  height: 450px;
  object-fit: cover;
	object-position:top;
  display: block;
}

.sfc-news-section .swiper-pagination {
  position: relative;
  margin-top: 1.5rem;
  display: none;
}

.sfc-news-section .swiper-pagination-bullet {
  background: var(--accordion-text-muted);
  opacity: 0.5;
  width: 10px;
  height: 10px;
  transition: var(--transition);
}

.sfc-news-section .swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--accordion-arrow-bg);
}

.sfc-news-newsletter .sfc-news-newsletter-field {
  max-width:100%;
  margin: 0 auto;
}

.sfc-news-newsletter .sfc-news-newsletter-field input {
  width: 100%;
  padding: 1rem 1.25rem;
  font-size: var(--fs-p);
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: var(--radius-lg);
  background: var(--light);
  color: var(--dark);
  font-family: inherit;
  transition: var(--transition);
}

.sfc-news-newsletter .sfc-news-newsletter-field input::placeholder {
  color: var(--accordion-text-muted);
}

.sfc-news-newsletter .sfc-news-newsletter-field input:focus {
  outline: none;
  border-color: var(--accordion-arrow-bg);
  box-shadow: 0 0 0 3px rgba(81, 207, 182, 0.15);
}

/* Content Section */
.tech-and-school-content-section {
  padding-top: 60px;
  padding-bottom: 100px;
  background-color: var(--page-bg-alt);
}

.tech-and-school-container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Back to Resources Link */
.back-to-resources-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  margin-bottom: 30px;
  transition: all 0.2s ease;
}

.back-icon-circle {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background: var(--accordion-arrow-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #000000 !important;
}

.back-icon-circle i {
  color: #000000;
  font-size: var(--fs-small);
  display: inline-block;
  line-height: 1;
 
  font-style: normal;
}

.back-link-text {
  color: #000000;
}
.back-to-resources-link:hover .back-link-text {
  text-decoration: underline;
}

/* Resource List Container */
.resource-list-container {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Resource List Card */
.resource-list-card {
  background: var(--accordion-bg);
  border-radius: 1rem;
  padding: 1.75rem 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 0.5rem 1.5625rem var(--accordion-shadow);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.resource-list-card:hover {
  transform: translateY(-0.1875rem);
  box-shadow: 0 0.75rem 2.1875rem var(--accordion-shadow-hover);
}
.inner-page section .resource-grid-card p{
  font-size: var(--fs-button) !important;
  
}
/* Left Side - Text Block */
.resource-list-content {
  flex: 1;
}

.resource-list-title {
  font-weight: 500;
  color: var(--accordion-text);
  margin: 0 0 0px 0 !important;
  line-height: 1.3;
}

.resource-list-content p {
  font-size: var(--fs-small) !important;
  color: var(--accordion-text-muted);
  margin: 0;
  line-height: 1.6;
}

/* Right Side - Arrow Button */
.resource-list-arrow-btn {
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: var(--accordion-arrow-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  flex-shrink: 0;
  transition: all 0.2s ease;
  margin-left: 1.25rem;
}

.resource-list-arrow-btn i {
  color: var(--accordion-arrow-icon);
  font-size: 1.5rem;
  display: inline-block;
  line-height: 1;
 
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}

.resource-list-arrow-btn:hover {
  background: var(--accordion-arrow-bg-hover);
}

/* =====================================
   ACCORDION STYLING FOR RESOURCE LIST
===================================== */

/* Remove Bootstrap default accordion styling */
.accordion-item.resource-list-card {
  border: none;
  background: var(--accordion-bg-transparent);
  margin-bottom: 0;
  border-radius: 1rem;
 /* padding: 0;*/
	padding-left:0;
	padding-right:0;
}

.accordion-item.resource-list-card:not(:first-of-type) {
  border-top: none;
}

.accordion-item.resource-list-card:not(:last-of-type) {
  border-bottom: none;
}

/* Accordion button styling - match existing card */
.resource-list-card-header {
  background: var(--accordion-bg);
  border-radius: 1rem;
  padding: 1rem 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 0.5rem 1.5625rem var(--accordion-shadow);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: none;
  width: 100%;
  text-align: left;
  position: relative;
}

.resource-list-card-header:not(.collapsed),
.resource-list-card-header,
.accordion-header {
  background: transparent !important;
  box-shadow: none;
  transform: translateY(-0.1875rem);
}

.accordion-header {
 padding-bottom:0;
margin-bottom: 0 !important;
}
.nested-resource-link{
	margin-bottom:0;
	color:#000000 !important;
	font-size:19px !important;
}
a.nested-resource-link{
	display:none;
}
.resource-list-card-header:focus {
  box-shadow:none;
  border: none;
  outline: none;
}

/* Remove Bootstrap accordion button default styles */
.resource-list-card-header::after {
  display: none;
}

/* Accordion body styling */
.accordion-item.resource-list-card .accordion-body {
  background: transparent;
  border-radius: 0 0 1rem 1rem;
 padding:0 2rem 1rem 2rem !important;
	
}

/* Nested Resource Cards */
.nested-resource-cards {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding-top:0rem;
}

.nested-resource-card {
  background:#F7F6F1;
  border-radius: 1rem;
  padding: 1.5rem;
  box-shadow: 0 0.625rem 1.875rem var(--accordion-nested-shadow);
}

.resource-badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border-radius: 1.25rem;
  font-size: 0.75rem;
  font-weight: 500;
  font-family: 'Inter', 'Geist', sans-serif;
  margin-bottom: 0.75rem;
  line-height: 1.4;
}

.resource-badge-green {
  background: var(--accordion-badge-green);
  color: var(--accordion-badge-text);
}

.resource-badge-beige {
  background: var(--accordion-badge-beige);
  color: var(--accordion-badge-text);
}

.resource-badge-orange {
  background: var(--accordion-badge-orange);
  color: var(--accordion-badge-text);
}

.nested-resource-title {
  font-family: 'Playfair Display', 'RecoletaRegular', serif;
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--accordion-text);
  margin: 0 0 0.5rem 0;
  line-height: 1.3;
}
.nested-resource-title a{
	font-size: var(--fs-h4);
}
.nested-resource-card p {
  font-family: 'Inter', 'Geist', sans-serif;
  font-size: var(--fs-small) !important;
  color: var(--accordion-text-muted);
  line-height: 1.6;
  margin: 0;
}

/* Ensure arrow button maintains styling in accordion */
.resource-list-card-header .resource-list-arrow-btn {
  margin-left: 1.25rem;
  pointer-events: none;
}

/* Smooth icon transition */
.accordion-icon {
  transition: transform 0.3s ease;
}
.accordion-item.resource-list-card{
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
margin-bottom: 1.375rem;
}
.accordion-header,
.accordion-collapse{
  width: 100%;
}

/* Evidence portal page: accordion body link styles only */
.page-template-evidence-portal .accordion-body a {
  color: var(--accordion-arrow-bg);
  text-decoration: none;
  transition: color 0.2s ease;
}
.page-template-evidence-portal .accordion-body a:hover {
  color: var(--accordion-arrow-bg-hover);
  text-decoration: underline;
}

/* =====================================
   DONATE PAGE STYLES
===================================== */

/* Hero Section */
.donate-hero-section {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 7.5rem 0 9rem 0;
  overflow: hidden;
}

.donate-hero-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient( rgba(0, 0, 0, 0.1)),
              url('../images/help-banner.webp') center/cover no-repeat;
  z-index: 1;
}

.donate-hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  color: #FFFFFF !important;
  max-width: 68.75rem;
  margin: 0 auto;
  padding: 0 0;
}

.donate-hero-title {
  font-size: clamp(2.5rem, 5vw, 4rem);
  color: #FFFFFF !important;
  margin: 0 0 1.25rem 0;
}

.donate-hero-subtitle {
  line-height: 1.6;
  color: #FFFFFF !important;
  margin: 0 0 2.5rem 0;
	font-family: 'RecoletaRegular' !important;
}

/* Donation Form Card */
.donation-form-card {
  background: #FFFFFF;
  border-radius: 1rem;
  padding:3rem 2rem 4rem 2rem;
  box-shadow: 0.5rem 0.5rem 0px rgba(28, 36, 32, 1);
  margin: 1.25rem auto 1.875rem auto;
  max-width: 37.5rem;
}

.donation-form-card > p:first-of-type {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--accordion-text);
  margin: 0 0 1.5rem 0;
  text-align: center;
  text-transform: none;
}

/* Payment Frequency Buttons */
.donation-frequency-buttons {
  display: flex;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
  justify-content: center;
  border: 0.0625rem solid #E5E7EB;
  border-radius: 0.5rem;
  background: #EEEDE9;
  padding: 0.25rem;
}

.donation-frequency-btn {
  flex: 1; 
  padding: 0.75rem 1.5rem;
 border-color: transparent;
  border-radius: 0.5rem;
  
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--accordion-text);
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}

.donation-frequency-btn:hover {
  background: #E5E7EB;
}

.donation-frequency-btn.active {
  background: #E8F5E9;
  border-color: var(--accordion-arrow-bg);
  color: var(--accordion-text);
  border:1px solid var(--accordion-arrow-bg);
}

/* Donation Amount Grid */
.donation-amount-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.donation-amount-btn {
  background: #F5F5F5;
  border: 0.0625rem solid #EEEDE9;
  border-radius: 0.5rem;
  padding: 1rem;
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--accordion-text);
  cursor: pointer;
  transition: all 0.2s ease;
}

.donation-amount-btn:hover {
  background: #E5E7EB;
  border-color: #D1D5DB;
}

.donation-amount-btn.active {
  background: var(--accordion-arrow-bg);
  border-color: var(--accordion-arrow-bg);
  color: #FFFFFF;
}

/* Other Amount Input */
.donation-other-amount {
  margin-bottom: 1.25rem;
}

.donation-other-amount label {
  display: block;
  font-size: 0.875rem;
  color: var(--accordion-text);
  margin-bottom: 0.5rem;
  font-weight: 500;
}

.donation-other-amount input {
  width: 100%;
  padding: 1rem;
  border: 0.0625rem solid #EEEDE9;
  border-radius: 0.5rem;
  background: #F5F5F5;
  color: #000000 !important;
  font-size: 1rem;
  transition: border-color 0.2s ease;
  font-weight: 500;
}
.donation-other-amount input::placeholder {
  color: #000000 !important;
  font-weight: 500;
}
.donation-other-amount input:focus {
  outline: none;
  border-color: #2E7D61;
}

/* Dedication Checkbox */
.donation-dedication {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-bottom: 1.5rem;
}

.donation-dedication input[type="checkbox"] {  
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer;
  border-radius: 0.35rem;
  border: 0.0625rem solid #B3B3B3;
  background: transparent;
}

.donation-dedication label {
  font-size: 0.875rem;
  color: var(--accordion-text);
  cursor: pointer;
  line-height: 1.5;
}

/* Continue Button */
.donation-continue-btn {
  width: 100%;
  background: #A1E0D3;
  color: #000000;
  border: none;
  box-shadow: 0 0.375rem 0 rgba(28, 36, 32, 1);
  height: 2.9375rem;
}

.donation-continue-btn:hover {
  background: #4DB6AC;
}

/* Disclaimer */
.donate-hero-content > p:last-of-type {
  color: #FFFFFF !important;
  line-height: 1.6;
  max-width: 37.5rem;
  width: 100%;
  margin: 0 auto;
  text-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.3);
font-size: var(--fs-button) !important;
}

/* Impact Section */
.donate-impact-section {
  padding: 5rem 0;
  background: #f3f2ed;
}

.donate-impact-title {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 600;
  color: #0A3428 !important;
  text-align: center;
  margin: 0 0 1rem 0;
}

.donate-impact-section > .container > p {
  color: var(--dark) !important;
  text-align: center;
  margin: 0 0 2.5rem 0;
  max-width: 43.75rem;
  margin-left: auto;
  margin-right: auto;
}

.donate-accomplishments-title {
  color: #0A3428 !important;
  margin: 6rem 0 1.5rem 0 !important;
  text-align: center;
}

.accomplishments-list {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 1.25rem;
}

.accomplishments-list li {
  color: var(--accordion-text) !important;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.accomplishments-list .about-feature-icon {
  width: 2.625rem;
  height: 2.625rem;
  min-width: 2.625rem;
  background-color: #CCE9E3;
  color: #1F6F5F;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--light);
  font-size: 1rem;
  flex-shrink: 0;
}

.accomplishments-list .about-feature-icon i {
  color: #000000;
  font-weight: 900;
  display: inline-block;
  line-height: 1;
  font-style: normal;
}

.accomplishments-list .accomplishment-content {
  flex: 1;
  padding-top: 0.25rem;
}

.accomplishments-list li a,
.accomplishment-link {
  color: #54A696;
  text-decoration: none;
  transition: color 0.2s ease;
}

.accomplishments-list li a:hover,
.accomplishment-link:hover {
  color: #256B52;
}
.accomplishment-content p strong{
	font-weight:500;
}
/* Media Mentions */
.donate-media-mentions {
  margin-top: 3.75rem;
  text-align: center;
  padding: 2.5rem 0;
}

.donate-media-mentions > p {
  color: var(--dark);
  margin: 0 0 1.5rem 0;
	font-size:var(--fs-h5);
}

.media-logos {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
}

.media-logo{
  height: 14.125rem;
  padding: 2.5rem 6.25rem;
  background: #ffffff;
  border-radius: 2.5rem;
  box-shadow: 0 0 3.125rem rgba(28, 36, 32, 0.1);
}
.home .media-logo{
	background:var(--section-bg);
}
.media-logo img{
  height: 100%;
  max-width: 11.25rem;
  width: 100%;
  object-fit: contain;
}
.media-logo:hover{	
    box-shadow: 0px 0px 47px -22px #000000;
}
/* About Our Organization Section */
.donate-about-section {
  padding: 5rem 0;
  background: var(--resource-icon-orange); /* Orange background */
}

.donate-about-title {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 600;
  color: #FFFFFF !important;
  margin: 0 0 3.75rem 0 !important;
}
.donate-hero-section p a{
	color:#ffffff !important;
}
.donate-about-content {
  color: #FFFFFF !important;
}

.donate-about-content p {
  font-size: var(--fs-button) !important;
  line-height: 1.8;
  margin-bottom: 1.25rem;
  color: #FFFFFF !important;
}

.donate-about-content a {
  color: #FFFFFF !important;
  text-decoration: underline;
}

.donate-about-content a:hover {
  color: #147F46 !important;
}

.donate-about-image {
  text-align: center;
}

.donate-about-image img {
  border-radius: 1rem;
  max-width: 100%;
  max-height: 37rem;  
  box-shadow: 0 0.625rem 2.5rem rgba(0, 0, 0, 0.2);
}
.quote-section.about-page{
	padding:80px 0;
	background:#F3F2ED;
}
.quote-section.about-page .about-quote-box{
	padding:2rem 3rem 1rem 3rem;
}
.quote-section.about-page .quote-mark {
    line-height: 48px;
}
.footer-form p{
	margin-bottom:0;
}
.take-action-graphic a{
	color:#000000;
}
.take-action-graphic a:hover{
	color:#147F46;
}
.take-action-map-section{
	background:#ffffff;
	padding: 52px 0 100px 0;
}
.take-action-map-section h2{
	margin-bottom:28px;
}
.about-purpose-intro{
	max-width:850px;	
    width: 100%;
    margin: 10px auto 50px auto;
}
.nested-resource-title a,
.nested-resource-card a{
	color:#000000;
}
.donate-hero-content iframe{
	margin-left:auto !important;
	margin-right:auto !important;
}
.key_initiatives .about-mission-box{
	margin:60px auto 46px auto;
	max-width:940px;

}
givebutter-widget{	
    max-width: 440px !important;
    width: 100%;
    margin:30px auto;
    display: block !important;
}

.events-four-grid .event-card-text h2.event-heading-serif {
    font-size: var(--fs-h4);
}
.inner-page .events-grid-section h2{
	margin:0px auto 50px auto;
}
.events-grid-section .about-mission-content h2{
	margin:130px auto 50px auto;
}
.events-grid-section .about-mission-content{
	max-width:890px;
	width:100%;
	margin:10px auto 80px auto;
}
.events-grid-section  .take-action-graphic {
	min-height: 46px;
}
.events-button-section{
	margin-top:40px;
	margin-bottom:120px;
}
.page-key-initiatives{
	max-width:900px;
	width:100%;
	margin-left:auto;
	margin-right:auto;
}
.projects-activities-page-content {	
    padding-top: 30px;
    background: #f3f2ed;
}
.take-action-map-iframe-wrapper {
  overflow: hidden;
}
.take-action-map-iframe-wrapper iframe {
  overflow: hidden;
  display: block;
}
.about-page .about-section.key-init-section{
	padding-top:5rem;
}
.about-page .parent-group-locator{
  max-width: 770px;
}
.parent-group-locator-logos{
  max-width: 600px;
  margin: 0 auto 50px auto;
  width: 100%;
  display: block;
}
.parent-group-locator-content p a,
.about-feature-content a{
  color: #4BCEA1;
  text-decoration: none;
  transition: color 0.2s ease;
}
.parent-group-locator-content p a:hover,
.about-feature-content a:hover{
  color: #34a777;
  text-decoration: underline;
}
.starting-a-local-parent-group-section .about-mission-box{
	background:#CCE9E3;
	padding-top:60px;
	padding-bottom:60px;
}
.starting-a-local-parent-group-section .about-mission-box p{
	
  font-family: 'Geist';
}

.starting-a-local-parent-group-section .about-mission-box img{
	max-width:200px;
	width:100%;
	margin:0 auto;
}
.event-card-register-btn{
	margin:20px auto;
}
.event-card-wrapper{
	height:100%;	
    display: flex;
    flex-direction: column;
    align-items: center;
	margin-bottom:22px;
}
.starting-a-local-parent-group-section .about-mission-box .about-features.row.about-features-tight:first-child{
	margin-top:40px;
}
.starting-a-local-parent-group-section .about-mission-box p + .about-features{
  margin-top: 1.5rem;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active{
	background: #147f46;
}
.swiper-pagination-bullet{
	background:#4bcea1;
	opacity:0.8;
	height:16px;
	width:16px;
	margin-top:12px;
	margin-bottom:12px;
}
.quote-section  .swiper {
    padding-bottom: 56px;
}
.quote-section .container{
	position:relative;
}

.quote-section .swiper-button-next:after,
.quote-section .swiper-button-prev:after,
.quote-section .swiper-pagination{
	display:none;
}

.about-feature-content_list_buttons a{
	margin:0 12px;
	color:#1b4440;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.about-feature-content_list_buttons a:hover {
    color: #1b4440;
    text-decoration: none;
	opacity:1;
}
.about-page .smartphones-social-media-problem-section .about-features { 
  max-width:800px !important; 
  margin:0 auto 50px auto  !important;
  width: 100% !important;
 }
 .smartphones-social-media-problem .resource-grid-card{
align-items: center !important;
text-align: center !important;
 }
 .smartphones-social-media-problem .resource-grid-card p{
	text-align: center !important;
 }
 .smartphones-social-media-problem .resource-grid-card h3{
	text-align: center !important;
 }
 .smartphones-social-media-problem .resource-grid-card a{
	text-align: center !important;
 }
 .smartphones-social-media-problem .resource-icon-circle {
  width: 300px;
  height: 300px;
}
.smartphones-social-media-problem  .resource-explore-btn:hover{
	    transform: translateY(4px);
}
.smartphones-social-media-problem{
	padding-top:80px;
}
.smartphones-social-media-problem .resource-grid-card{
	padding:40px;
}
.home .mission-section .feature-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.quote-slide-inner {
	display:flex;
	align-items:center;
	justify-content:center;
}
.quote-person-image{
	width:40%;	
}
.quote-person-image img{
	min-width:300px;
	width:300px;
	height:300px;	
	border-radius:50%;
	object-fit:cover;
	margin-right:1rem;
	margin:auto;
	overflow:hidden;
}
.quote-with-image{
	width:60%;
	text-align:center !important;
	padding-left:22px;
}
.page-template-evidence-portal h2{
	margin-top:50px !important;
}
.home .feature-card .btn{	   
    max-width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
	.quote-section .swiper-button-next{
	right:0;
}
.quote-section .swiper-button-prev{
	left:0;
}

.wpsl-search.wpsl-clearfix.wpsl-no-filters,
#wpsl-result-list{
	display:none !important;
}
.take-action-map-section #wpsl-gmap{
	float:unset;
	height:700px !important;
	width:100% !important;
}
.page-template-page-parent-group-locator .pgl-wpsl-map.pgl-wpsl-map--map-only{
	min-height:unset !important;
}
section #newsletterForm{
  width: 100%;
  max-width: 100%;flex-direction: row;
  justify-content: center;
  align-items: self-start;
  margin-bottom: 50px;
}


section #newsletterForm input {
  width: 100%;
  border: none;
  border-radius: var(--radius-full);
  padding: 0.8rem 1rem;
  color: #193e3c;
  border: 1px solid #193e3c !important;
}
section #newsletterForm input::placeholder {
  color: #193e3c;
}
.key-init-section .about-mission-content {
    text-align: center;
    max-width: 900px;
	margin-left:auto;
	margin-right:auto;
}
.Declaration-cta{
  background: #cfe5e0;
  padding: 80px 0;
}
.page-template-page-declaration .about-page .about-purpose-content h2{
	width:100%;
    max-width: 900px;
	margin-left:auto;
	margin-right:auto;
}
#mc_embed_shell,
#mc_embed_signup{
	max-width:1000px !important;
	width:100% !important;
	margin-left:auto;
	margin-right:auto;
}
#mc_embed_signup .button{	
    --btn-bg: #4BCEA1 !important;
    --btn-shadow: #147F46 !important;
    --btn-text: #193E3C !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 16px !important;
    font-size: var(--fs-button) !important;
    font-weight: 400 !important;
    color: var(--btn-text) !important;
    background: var(--btn-bg) !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    position: relative !important;
    letter-spacing: 1px !important;
    font-family: 'Geist' !important;
    box-shadow: 0 6px 0 var(--btn-shadow) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
	height:auto !important;
	border:none !important;
}
#mc_embed_signup .button:hover, {
    transform: translateY(4px) !important;
    color: var(--btn-text) !important;
}
#mc_embed_signup .mc-field-group input,
#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error{
	background:#f3f2ed !important;
}
#mc_embed_signup_scroll h2,
#mc_embed_signup_scroll .indicates-required,
#mc_embed_signup_scroll label,
#mce-responses{
	display:none !important;
}
#mc_embed_signup_scroll{
	display:flex !important;
}
#mc_embed_signup_scroll input{
    border-radius: var(--radius-full) !important;
    padding: 0.8rem 1rem !important;
    color: #193e3c !important;
    border: 1px solid #193e3c !important;
	height:48px;		
    font-size: 14px !important;
}
#mc_embed_signup_scroll  .mc-field-group{
	margin:0 5px;	
}
#mc_embed_signup .mc-field-group input:focus-visible{
	 border: 1px solid #193E3C !important;
	outline:none !important;
}
#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error{
	margin-bottom:0 !important;
}
page-template-page-newsletter .about-page .about-purpose-content > p{	
     margin-bottom: 1rem;
}
#mc_embed_signup {
	background: #f3f2ed !important;
}
.page-template-page-about .quote-section .swiper {
	padding-bottom: 0px;
}
.Connect-with-SFCxUS-Members-section{
	padding-top:60px;
}
.Connect-with-SFCxUS-Members-section .resource-grid-card{
	text-align: center !important;
	justify-content:space-between;
}
.Connect-with-SFCxUS-Members-section .resource-grid-card p{
	text-align: center !important;
}
.Connect-with-SFCxUS-Members-section .resource-grid-card h3{
	text-align: center !important;
}
.Connect-with-SFCxUS-Members-section .resource-grid-card a{
	text-align: center !important;
}
.Connect-with-SFCxUS-Members-section .resource-grid-card .resource-icon-circle ,
.Connect-with-SFCxUS-Members-section .resource-grid-card h3{
	text-align: center !important;
	margin-left: auto;
	margin-right: auto;
}
.Connect-with-SFCxUS-Members-section .social-media-icons a{
	color: #193e3c !important;
	font-size: 24px !important;
	transition: color 0.2s ease;
}
.Connect-with-SFCxUS-Members-section .social-media-icons a:hover{
	color: #4BCEA1 !important;
	text-decoration: none !important;
}
.Connect-with-SFCxUS-Members-section .resource-grid-card .resource-icon-circle i{
	font-size:38px;
}
.page-template-page-projects-activities .sfc-news-section{
display:none;
}
.explainer-video-trigger{
	width:100%;
	height:100%;
	display:flex;
	flex-wrap:wrap;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
	top:50%;
	left:50%;
	padding:0;	
    background: #00000070;	
    transform: translate(-50%, -50%);
}
.explainer-video-trigger p{
	color:#ffffff;
}
.explainer-section .modal-content{
	padding:20px;
}
.explainer-section .modal-header{
	position:absolute;
    top: 8px;
	left:unset;
    right: 8px;
    z-index: 9;
    padding: 0;
    background: #256750;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    color: #fff;
    justify-content: center;

}
.explainer-section .modal-header .btn-close{
	padding:0;
	margin:0;	
    opacity: 1;
}
.explainer-section .modal-header  .btn-close:hover{
	opacity:0.6;
}
#resources .resource-card{
	position:relative;
}
#resources .resource-card a.btn {	
    position: absolute;
    bottom: 45px;
    left: 50%;
    transform: translateX(-50%);
}
#resources .resource-card{
	padding-bottom:6.5rem;
}
.explainer-section .btn-close{
    background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='white' stroke-linecap='round' stroke-miterlimit='10' stroke-width='5' d='M6 6L24 24M6 24L24 6'/%3e%3c/svg%3e");
  background-repeat:no-repeat;
  background-size:contain;
}
#resources .resource-card a.btn:hover,
.news-card a:hover{	
    transform: translate(-50% , 4px);
}
.page-template-page-parent-group-locator .take-action-map-section{  
    padding-bottom: 0;
}
.events-embed-section {
	background-color: var(--page-bg-alt);
    padding: 60px 0 0px 0px;
}
.events-embed-section iframe {
	height:700px;
}
