/* ===== IWEHA SHARED STYLES ===== */
:root {
  --blue: #1456A3;
  --dark: #0E3E78;
  --gold: #E8BC49;
  --white: #FBFCFA;
  --black: #020202;
  --bg: #f7f8fa;
  --bg2: #eef0f4;
  --text: #1a1a2e;
  --text-muted: #6b7280;
  --radius: 16px;
  --shadow: 0 2px 20px rgba(14,62,120,0.08);
  --shadow-lg: 0 8px 40px rgba(14,62,120,0.15);
  --transition: 0.3s cubic-bezier(.4,0,.2,1);
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'DM Sans', sans-serif; color: var(--text); background: var(--bg); overflow-x: hidden; }
h1,h2,h3,h4,h5 { font-family: 'Poppins', sans-serif; line-height: 1.2; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }

/* NAV */
nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 5%; height: 68px;
  background: rgba(14,62,120,0.97); backdrop-filter: blur(14px);
  box-shadow: 0 2px 20px rgba(0,0,0,0.18);
}
.nav-logo { display: flex; align-items: center; gap: 10px; }
.nav-logo-img {
  width: 42px; height: 42px; border-radius: 10px;
  background: var(--white); display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.nav-logo-img img { width: 38px; height: 38px; object-fit: contain; }
.nav-logo-placeholder {
  width: 42px; height: 42px; border-radius: 10px; background: var(--gold);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Poppins',sans-serif; font-weight: 900; font-size: 0.85rem; color: var(--dark);
}
.nav-logo span { color: var(--white); font-family: 'Poppins',sans-serif; font-weight: 700; font-size: 1.1rem; }
.nav-logo span em { color: var(--gold); font-style: normal; }
.nav-links { display: flex; align-items: center; gap: 26px; list-style: none; }
.nav-links a { color: rgba(255,255,255,0.82); font-size: 0.86rem; font-weight: 500; transition: color var(--transition); }
.nav-links a:hover, .nav-links a.active-page { color: var(--gold); }
.nav-donate { background: var(--gold); color: var(--dark) !important; font-weight: 700 !important; padding: 7px 18px; border-radius: 30px; }
.nav-donate:hover { background: #f5cc60 !important; }
.hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 5px; background: none; border: none; }
.hamburger span { display: block; width: 24px; height: 2px; background: var(--white); border-radius: 2px; }
.mobile-menu { display: none; position: fixed; top: 68px; left: 0; right: 0; bottom: 0; background: var(--dark); z-index: 999; flex-direction: column; align-items: center; justify-content: center; gap: 28px; }
.mobile-menu.open { display: flex; }
.mobile-menu a { color: var(--white); font-size: 1.25rem; font-family: 'Poppins',sans-serif; font-weight: 600; }
.mobile-menu a:hover { color: var(--gold); }
.mobile-donate { background: var(--gold); color: var(--dark) !important; padding: 10px 32px; border-radius: 30px; }

/* PAGE HERO */
.page-hero {
  padding: 120px 5% 70px; background: linear-gradient(135deg,var(--dark) 0%,var(--blue) 100%);
  text-align: center; position: relative; overflow: hidden;
}
.page-hero::before { content:''; position:absolute; top:-60px; right:-60px; width:320px; height:320px; border-radius:50%; background:rgba(232,188,73,0.08); }
.page-hero-badge { display:inline-block; background:rgba(232,188,73,0.18); border:1px solid rgba(232,188,73,0.55); color:var(--gold); font-size:0.72rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; padding:5px 18px; border-radius:30px; margin-bottom:16px; }
.page-hero h1 { font-size:clamp(1.9rem,4.5vw,3rem); color:var(--white); margin-bottom:14px; }
.page-hero p { color:rgba(255,255,255,0.78); max-width:540px; margin:0 auto; line-height:1.75; }

/* SECTIONS */
.section { padding: 88px 5%; }
.section-alt { background: var(--bg2); }
.section-white { background: var(--white); }
.section-label { display:inline-block; color:var(--blue); font-size:0.72rem; font-weight:700; letter-spacing:3px; text-transform:uppercase; margin-bottom:12px; }
.section-title { font-size:clamp(1.7rem,3.5vw,2.5rem); color:var(--dark); margin-bottom:14px; }
.section-desc { color:var(--text-muted); max-width:580px; line-height:1.78; font-size:0.97rem; }
.section-header { margin-bottom:50px; }
.section-header.center { text-align:center; }
.section-header.center .section-desc { margin:0 auto; }

/* BUTTONS */
.btn { display:inline-flex; align-items:center; gap:8px; padding:12px 26px; border-radius:50px; font-family:'Poppins',sans-serif; font-size:0.88rem; font-weight:600; cursor:pointer; transition:var(--transition); border:2px solid transparent; }
.btn-gold { background:var(--gold); color:var(--dark); }
.btn-gold:hover { background:#f5cc60; transform:translateY(-2px); box-shadow:0 6px 20px rgba(232,188,73,0.38); }
.btn-blue { background:var(--blue); color:var(--white); }
.btn-blue:hover { background:var(--dark); transform:translateY(-2px); }
.btn-outline-white { background:transparent; border-color:rgba(255,255,255,0.55); color:var(--white); }
.btn-outline-white:hover { background:rgba(255,255,255,0.1); border-color:var(--white); }
.btn-outline-blue { background:transparent; border-color:var(--blue); color:var(--blue); }
.btn-outline-blue:hover { background:var(--blue); color:var(--white); }

/* CARDS */
.card { background:var(--white); border-radius:20px; box-shadow:var(--shadow); transition:var(--transition); }
.card:hover { transform:translateY(-5px); box-shadow:var(--shadow-lg); }

/*  MOBILE-FIRST BASE  */

    /* HERO */
    .hero { position:relative; min-height:100svh; display:flex; align-items:center; overflow:hidden; padding-bottom:60px; }
    .hero-slides { position:absolute; inset:0; }
    .hero-slide { position:absolute; inset:0; opacity:0; background-size:cover; background-position:center top; transition:opacity 1.2s ease; }
    .hero-slide.active { opacity:1; }
    .hero-slide::after { content:''; position:absolute; inset:0; background:linear-gradient(to top, rgba(14,62,120,0.92) 0%, rgba(14,62,120,0.55) 50%, rgba(20,86,163,0.18) 100%); }
    .slide-1 { background-color:#c4d5e9; background-image:url("photos/iweha_one.jpeg"); }
    .slide-2 { background-color:#c4d5e9; background-image:url("photos/iweha_two.jpeg"); }
    .slide-3 { background-color:#c4d5e9; background-image:url("photos/iweha_three.jpeg"); }
    .slide-4 { background-color:#c4d5e9; background-image:url("photos/iweha_4.jpeg"); }

    .hero-content { position:relative; z-index:2; width:100%; padding:100px 5% 0; }
    .hero-copy { display:flex; flex-direction:column; align-items:center; text-align:center; }
    .hero-badge { display:inline-block; background:rgba(232,188,73,0.18); border:1px solid rgba(232,188,73,0.65); color:var(--gold); font-size:0.68rem; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; padding:5px 16px; border-radius:30px; margin-bottom:18px; }
    .hero h1 { font-size:clamp(1.7rem,6vw,3.8rem); color:var(--white); font-weight:900; line-height:1.15; margin-bottom:14px; text-shadow:0 2px 24px rgba(0,0,0,0.3); max-width:700px; }
    .hero h1 em { color:var(--gold); font-style:normal; }
    .hero-subtitle { color:rgba(255,255,255,0.82); font-size:clamp(0.9rem,2vw,1.05rem); margin-bottom:28px; line-height:1.75; max-width:500px; }
    .hero-ctas { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:32px; }

    .hero-dots { display:flex; gap:8px; margin-top:4px; }
    .hero-dot { width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,0.35); cursor:pointer; transition:var(--transition); border:none; flex-shrink:0; }
    .hero-dot.active { background:var(--gold); transform:scale(1.4); }

    /*  METRICS  */
    .metrics { background:var(--dark); display:grid; grid-template-columns:repeat(3,1fr); }
    .metric { text-align:center; padding:36px 16px; border-right:1px solid rgba(255,255,255,0.08); }
    .metric:last-child { border-right:none; }
    .metric-num { font-family:'Poppins',sans-serif; font-size:clamp(2rem,5vw,3.8rem); font-weight:900; color:var(--gold); line-height:1; }
    .metric-label { color:rgba(255,255,255,0.72); font-size:0.84rem; margin-top:8px; }
    .metric-sub { color:rgba(255,255,255,0.38); font-size:0.72rem; margin-top:3px; }

    /*  QUICK ACCESS SECTION  */
    .quick-access { padding:56px 5% 60px; background:var(--white); }
    .quick-access-header { text-align:center; margin-bottom:32px; }
    .quick-access-header .section-label { display:inline-block; color:var(--blue); font-size:0.68rem; font-weight:700; letter-spacing:3px; text-transform:uppercase; margin-bottom:10px; }
    .quick-access-header h2 { font-size:clamp(1.4rem,3vw,2rem); color:var(--dark); margin-bottom:8px; }
    .quick-access-header p { color:var(--text-muted); font-size:0.88rem; max-width:380px; margin:0 auto; line-height:1.65; }

    .quick-cards { display:grid; grid-template-columns:1fr; gap:16px; }
    .quick-card {
      display:flex; align-items:center; gap:18px;
      background:var(--bg); border-radius:18px; padding:20px 22px;
      border:1.5px solid transparent; transition:var(--transition); cursor:pointer;
      text-decoration:none; color:inherit; position:relative; overflow:hidden;
    }
    .quick-card::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,var(--blue),var(--dark)); opacity:0; transition:var(--transition); z-index:0; }
    .quick-card:hover::before { opacity:1; }
    .quick-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-lg); }
    .quick-card:hover .qc-title, .quick-card:hover .qc-desc { color:var(--white); }
    .quick-card:hover .qc-icon-wrap { background:rgba(255,255,255,0.18); }
    .quick-card:hover .qc-arrow { color:var(--gold); }

    .qc-icon-wrap { position:relative; z-index:1; width:54px; height:54px; border-radius:16px; display:flex; align-items:center; justify-content:center; font-size:1.6rem; flex-shrink:0; transition:var(--transition); }
    .qc-icon-wrap.pink { background:linear-gradient(135deg,#fce4ec,#f8bbd0); }
    .roses {border-radius: 50%;}
    .qc-icon-wrap.blue { background:linear-gradient(135deg,#e3f2fd,#c9d9f5); }
    .qc-body { flex:1; position:relative; z-index:1; }
    .qc-tag { display:inline-block; font-size:0.62rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; color:var(--blue); background:rgba(20,86,163,0.08); border-radius:30px; padding:2px 9px; margin-bottom:5px; transition:var(--transition); }
    .quick-card:hover .qc-tag { background:rgba(255,255,255,0.18); color:var(--gold); }
    .qc-title { font-family:'Poppins',sans-serif; font-weight:700; font-size:0.98rem; color:var(--dark); margin-bottom:4px; transition:var(--transition); }
    .qc-desc { font-size:0.8rem; color:var(--text-muted); line-height:1.55; transition:var(--transition); }
    .qc-arrow { position:relative; z-index:1; font-size:1.1rem; color:var(--text-muted); transition:var(--transition); flex-shrink:0; }

    /*  CAMPAIGNS SECTION  */
    .campaigns-section { padding:64px 5%; background:var(--bg2); }
    .campaigns-header { margin-bottom:36px; }
    .campaigns-header .status-bar { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
    .status-badge { display:inline-flex; align-items:center; gap:6px; font-size:0.68rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; padding:5px 14px; border-radius:30px; }
    .status-badge.active { background:rgba(34,197,94,0.12); color:#16a34a; border:1px solid rgba(34,197,94,0.28); }
    .status-badge.active::before { content:''; width:7px; height:7px; border-radius:50%; background:#16a34a; animation:pulse 2s infinite; }
    .status-badge.past { background:rgba(107,114,128,0.1); color:var(--text-muted); border:1px solid rgba(107,114,128,0.2); }
    .status-badge.past::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--text-muted); }

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

    .camp-card {
      background:var(--white); border-radius:20px; overflow:hidden;
      box-shadow:var(--shadow); transition:var(--transition);
      display:flex; flex-direction:column;
    }
    .camp-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
    .camp-img-wrap { position:relative; height:200px; overflow:hidden; background:var(--bg2); }
    .camp-img-wrap img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; }
    .camp-card:hover .camp-img-wrap img { transform:scale(1.04); }
    .camp-img-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:3rem; background:linear-gradient(135deg,#e8f0fb,#c9d9f5); }
    .camp-badge { position:absolute; top:14px; left:14px; font-size:0.65rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; padding:5px 12px; border-radius:30px; }
    .camp-badge.active { background:rgba(34,197,94,0.9); color:white; }
    .camp-badge.past { background:rgba(14,62,120,0.85); color:white; }
    .camp-body { padding:22px 22px 20px; flex:1; display:flex; flex-direction:column; }
    .camp-body h3 { font-size:1rem; color:var(--dark); margin-bottom:10px; line-height:1.4; }
    .camp-body p { font-size:0.82rem; color:var(--text-muted); line-height:1.65; flex:1; margin-bottom:18px; }
    .camp-body a { display:inline-flex; align-items:center; gap:6px; font-size:0.82rem; font-weight:700; color:var(--blue); transition:var(--transition); }
    .camp-body a:hover { color:var(--dark); gap:10px; }

    /* Featured (first) campaign card */
    .camp-card.featured { border:2px solid var(--gold); }
    .camp-card.featured .camp-body h3 { font-size:1.12rem; }

 /*  ABOUT  */
    .profile-photo { width:100%; height:100%; border-radius:50%; object-fit:cover; display:block; }
    .about-grid { display:grid; grid-template-columns:1fr; gap:40px; align-items:start; overflow:hidden; }
    .about-grid > * { min-width:0; overflow:hidden; }
    .lead { font-size:0.95rem; color:#444; line-height:1.8; margin-bottom:20px; word-break:break-word; }
    /* Single column on mobile — expands to 2-col at 480px+ */
    .about-cards { display:grid; grid-template-columns:1fr; gap:12px; margin-top:8px; }
    @media(min-width:480px) { .about-cards { grid-template-columns:1fr 1fr; } }
    .about-card { background:var(--white); border-radius:14px; padding:16px; box-shadow:var(--shadow); border-left:4px solid var(--gold); min-width:0; overflow:hidden; }
    .about-card h4 { font-size:0.74rem; color:var(--blue); font-weight:700; text-transform:uppercase; letter-spacing:1px; margin-bottom:5px; }
    .about-card p { font-size:0.79rem; color:var(--text-muted); line-height:1.62; word-break:break-word; }

    /* LEADERSHIP MESSAGE */
    .leadership-msg { background:linear-gradient(135deg,var(--blue),var(--dark)); border-radius:20px; padding:30px; color:var(--white); position:relative; overflow:hidden; margin-bottom:24px; }
    .leadership-msg::before { content:'"'; position:absolute; top:-20px; right:16px; font-size:100px; font-family:'Poppins',sans-serif; font-weight:900; color:rgba(232,188,73,0.15); line-height:1; }
    .leadership-msg h3 { font-size:0.96rem; color:var(--gold); margin-bottom:14px; font-weight:700; display:flex; align-items:center; gap:8px; }
    .leadership-msg p { font-size:0.88rem; line-height:1.82; color:rgba(255,255,255,0.9); font-style:italic; font-weight:500; }

    /* TEAM CAROUSEL */
    .team-section { margin-top:28px; }
    .team-section h3 { font-size:0.96rem; color:var(--dark); font-weight:700; margin-bottom:14px; display:flex; align-items:center; gap:8px; }
    .team-track-wrap { position:relative; }
    .team-track { display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; padding-bottom:12px; -webkit-overflow-scrolling:touch; }
    .team-track::-webkit-scrollbar { height:3px; }
    .team-track::-webkit-scrollbar-track { background:#eee; border-radius:4px; }
    .team-track::-webkit-scrollbar-thumb { background:var(--gold); border-radius:4px; }
    .team-card { flex:0 0 175px; scroll-snap-align:start; background:var(--white); border-radius:16px; padding:20px 14px; box-shadow:var(--shadow); text-align:center; }
    .team-avatar { width:64px; height:64px; border-radius:50%; background:linear-gradient(135deg,var(--blue),var(--dark)); margin:0 auto 12px; display:flex; align-items:center; justify-content:center; font-size:1.6rem; border:3px solid var(--gold); overflow:hidden; }
    .team-card h4 { font-size:0.82rem; color:var(--dark); font-weight:700; margin-bottom:3px; }
    .team-card .role { font-size:0.68rem; color:var(--blue); font-weight:600; text-transform:uppercase; letter-spacing:0.7px; margin-bottom:7px; }
    .team-card p { font-size:0.74rem; color:var(--text-muted); line-height:1.55; }
    .team-nav { display:flex; gap:8px; justify-content:flex-end; margin-top:10px; }
    .team-btn { width:32px; height:32px; border-radius:50%; border:2px solid var(--blue); background:transparent; color:var(--blue); cursor:pointer; font-size:0.9rem; transition:var(--transition); display:flex; align-items:center; justify-content:center; }
    .team-btn:hover { background:var(--blue); color:white; }

    /* PROGRAMS PREVIEW */
    .programs-preview { display:grid; grid-template-columns:1fr; gap:18px; }
    .prog-card { background:var(--white); border-radius:20px; padding:26px 22px; box-shadow:var(--shadow); transition:var(--transition); border-top:4px solid var(--blue); display:flex; flex-direction:column; }
    .prog-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
    .prog-icon { width:46px; height:46px; border-radius:14px; background:linear-gradient(135deg,#e8f0fb,#c9d9f5); display:flex; align-items:center; justify-content:center; font-size:1.4rem; margin-bottom:14px; }
    .prog-card h3 { font-size:0.98rem; color:var(--dark); margin-bottom:9px; }
    .prog-card p { font-size:0.82rem; color:var(--text-muted); line-height:1.7; flex:1; }
    .prog-meta { margin-top:14px; display:flex; align-items:center; justify-content:space-between; }
    .prog-dur { background:#e8f0fb; color:var(--blue); font-size:0.70rem; font-weight:700; padding:4px 12px; border-radius:20px; }
    .prog-link { color:var(--blue); font-size:0.80rem; font-weight:700; }
    .prog-link:hover { color:var(--dark); }

    /* QUOTES */
    .quotes-section { background:var(--bg2); padding:64px 5%; }
    .quotes-header { text-align:center; margin-bottom:40px; }
    .quotes-grid { display:grid; grid-template-columns:1fr; gap:20px; max-width:1100px; margin:0 auto; }
    .quote-card { background:var(--white); border-radius:20px; padding:30px 24px; box-shadow:var(--shadow); text-align:center; transition:var(--transition); }
    .quote-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
    .quote-icon { width:50px; height:50px; border-radius:50%; background:var(--dark); color:var(--white); font-size:1.3rem; display:flex; align-items:center; justify-content:center; margin:0 auto 18px; }
    .quote-icon.open::before { content:'\201C'; font-family:'Poppins',sans-serif; font-weight:900; font-size:1.5rem; line-height:1; }
    .quote-icon.close::before { content:'\201D'; font-family:'Poppins',sans-serif; font-weight:900; font-size:1.5rem; line-height:1; }
    .quote-card blockquote { font-size:0.9rem; line-height:1.8; color:#333; font-style:italic; margin-bottom:18px; }
    .quote-name { font-family:'Poppins',sans-serif; font-size:0.80rem; font-weight:700; color:var(--dark); }
    .quote-role { font-size:0.73rem; color:var(--text-muted); margin-top:3px; line-height:1.5; }

    /* CTA SECTION */
    .cta-section { background:linear-gradient(135deg,var(--dark) 0%,var(--blue) 100%); padding:72px 5%; text-align:center; position:relative; overflow:hidden; }
    .cta-section::before { content:''; position:absolute; top:-40%; right:-8%; width:380px; height:380px; border-radius:50%; background:rgba(232,188,73,0.07); }
    .cta-section h2 { font-size:clamp(1.6rem,4vw,3rem); color:var(--white); margin-bottom:12px; }
    .cta-section p { color:rgba(255,255,255,0.78); max-width:520px; margin:0 auto 36px; line-height:1.78; font-size:0.9rem; }
    .cta-cards { display:grid; grid-template-columns:1fr; gap:14px; max-width:680px; margin:0 auto; }
    .cta-card { background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.14); border-radius:20px; padding:26px 16px; transition:var(--transition); cursor:pointer; }
    .cta-card:hover { background:rgba(255,255,255,0.14); transform:translateY(-3px); }
    .cta-card .icon { font-size:1.8rem; margin-bottom:9px; }
    .cta-card h3 { color:var(--white); font-size:0.94rem; margin-bottom:6px; }
    .cta-card p { color:rgba(255,255,255,0.62); font-size:0.78rem; line-height:1.6; margin:0; }
    .cta-card.highlight { background:var(--gold); border-color:var(--gold); }
    .cta-card.highlight h3 { color:var(--dark); }
    .cta-card.highlight p { color:rgba(2,2,2,0.65); }

    /* == TABLET 600px+ == */
    @media(min-width:600px) {
      .quick-cards { grid-template-columns:1fr 1fr; }
      .quick-cards .quick-card:last-child { grid-column:span 2; }
      .campaigns-grid { grid-template-columns:1fr 1fr; }
      .camp-card.featured { grid-column:span 2; flex-direction:row; }
      .camp-card.featured .camp-img-wrap { width:320px; min-width:320px; height:auto; }
      .about-cards { grid-template-columns:1fr 1fr; }
      .programs-preview { grid-template-columns:1fr 1fr; }
      .quotes-grid { grid-template-columns:1fr 1fr; }
      .cta-cards { grid-template-columns:1fr 1fr; }
    }

    /* == DESKTOP 900px+ == */
    @media(min-width:900px) {
      .hero { align-items:center; padding-bottom:0; }
      .hero-content { display:grid; grid-template-columns:1.3fr 0.9fr; gap:40px; align-items:center; max-width:1100px; margin:0 auto; padding-top:80px; padding-bottom:60px; }
      .hero-right { display:block; }

      .hero-campaign-card-desktop {
        background:rgba(255,255,255,0.13); border:1px solid rgba(255,255,255,0.22);
        border-radius:24px; padding:26px; box-shadow:0 24px 60px rgba(0,0,0,0.18);
        backdrop-filter:blur(10px);
      }
      .hero-campaign-card-desktop .campaign-tag { display:inline-flex; align-items:center; gap:6px; padding:5px 14px; border-radius:999px; background:rgba(255,255,255,0.16); color:rgba(255,255,255,0.95); letter-spacing:1px; font-size:0.68rem; text-transform:uppercase; margin-bottom:12px; }
      .hero-campaign-card-desktop .campaign-tag::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--gold); animation:pulse 2s infinite; flex-shrink:0; }
      .hero-campaign-card-desktop h3 { font-size:1rem; color:var(--white); margin-bottom:10px; line-height:1.35; }
      .hero-campaign-card-desktop p { font-size:0.84rem; color:rgba(255,255,255,0.85); line-height:1.7; margin-bottom:18px; }
      .hero-campaign-card-desktop .camp-btns { display:flex; flex-wrap:wrap; gap:10px; }

      .hero-campaign-pill { display:none; }

      .quick-cards { grid-template-columns:repeat(3,1fr); }
      .quick-cards .quick-card:last-child { grid-column:auto; }
      .campaigns-grid { grid-template-columns:repeat(3,1fr); }
      .camp-card.featured { grid-column:span 1; flex-direction:column; }
      .camp-card.featured .camp-img-wrap { width:100%; height:200px; }
      .about-grid { grid-template-columns:1fr 1fr; gap:56px; }
      .programs-preview { grid-template-columns:repeat(3,1fr); }
      .quotes-grid { grid-template-columns:repeat(3,1fr); }
      .cta-cards { grid-template-columns:repeat(3,1fr); }
      .metrics { grid-template-columns:repeat(3,1fr); }
      .metric { border-right:1px solid rgba(255,255,255,0.08); border-bottom:none; }
    }

    @media(max-width:899px) {
      .hero-right { display:none; }
    }
    @media(max-width:599px) {
      .metrics { grid-template-columns:1fr; }
      .metric { border-right:none; border-bottom:1px solid rgba(255,255,255,0.08); }
      .metric:last-child { border-bottom:none; }
      .about-cards { grid-template-columns:1fr; }
    }


/* FOOTER */
footer { background:var(--black); color:var(--white); padding:70px 5% 30px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; }
.footer-brand h3 { font-size:1.15rem; margin-bottom:12px; }
.footer-brand h3 em { color:var(--gold); font-style:normal; }
.footer-brand p { color:rgba(255,255,255,0.5); font-size:0.84rem; line-height:1.75; max-width:280px; }
.footer-socials { display:flex; gap:10px; margin-top:18px; }
.social-btn { width:36px; height:36px; border-radius:9px; background:rgba(255,255,255,0.07); display:flex; align-items:center; justify-content:center; font-size:0.9rem; transition:var(--transition); }
.social-btn:hover { background:var(--gold); color:var(--dark); }
.footer-col h4 { font-size:0.72rem; font-weight:700; text-transform:uppercase; letter-spacing:2px; color:var(--gold); margin-bottom:16px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:9px; }
.footer-col ul li a { color:rgba(255,255,255,0.5); font-size:0.84rem; transition:var(--transition); }
.footer-col ul li a:hover { color:var(--gold); }
.footer-bottom { border-top:1px solid rgba(255,255,255,0.07); padding-top:26px; text-align:center; }
.footer-bottom p { color:var(--gold); font-weight:700; font-size:0.9rem; }
.footer-bottom p .active-year { font-weight:900; margin:0 0.25rem; }
.footer-bottom span { color:rgba(255,255,255,0.35); font-size:0.76rem; display:block; margin-top:5px; }

/* REVEAL */
.reveal { opacity:0; transform:translateY(28px); transition:opacity 0.65s ease,transform 0.65s ease; }
.reveal.visible { opacity:1; transform:none; }

/* BACK TO TOP */
.back-top { position:fixed; bottom:28px; right:28px; z-index:500; width:44px; height:44px; background:var(--gold); color:var(--dark); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.1rem; cursor:pointer; border:none; box-shadow:0 4px 16px rgba(232,188,73,0.38); opacity:0; pointer-events:none; transition:var(--transition); }
.back-top.visible { opacity:1; pointer-events:all; }
.back-top:hover { transform:translateY(-3px); }

/* RESPONSIVE */
@media(max-width:1024px) { .footer-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:768px) { .nav-links { display:none; } .hamburger { display:flex; } .footer-grid { grid-template-columns:1fr; gap:28px; } }
@media(max-width:480px) { .section { padding:60px 5%; } }


    /* ── Global overflow guard ── */
    *, *::before, *::after { box-sizing: border-box; min-width: 0; }
    body { overflow-x: hidden; }

    /* ── PAGE HERO ── */
    .page-hero { padding: 120px 5% 70px; background: linear-gradient(135deg, var(--dark) 0%, var(--blue) 100%); text-align: center; position: relative; overflow: hidden; }
    .page-hero::before { content:''; position:absolute; top:-60px; right:-60px; width:320px; height:320px; border-radius:50%; background:rgba(232,188,73,0.08); pointer-events:none; }
    .page-hero-badge { display:inline-block; background:rgba(232,188,73,0.18); border:1px solid rgba(232,188,73,0.55); color:var(--gold); font-size:0.72rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; padding:5px 18px; border-radius:30px; margin-bottom:16px; }
    .page-hero h1 { font-size:clamp(1.8rem,4.5vw,3rem); color:var(--white); margin-bottom:14px; }
    .page-hero p { color:rgba(255,255,255,0.78); max-width:560px; margin:0 auto; line-height:1.75; font-size:0.95rem; }

    /* ── INTRO STRIP ── */
    .intro-strip { background:var(--white); padding:48px 5% 40px; }
    .intro-inner { max-width:820px; margin:0 auto; text-align:center; }
    .intro-inner p { color:var(--text-muted); line-height:1.8; font-size:0.95rem; margin-bottom:28px; }
    .principles { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
    .principle-pill { display:inline-flex; align-items:center; gap:7px; background:var(--bg); border:1px solid #dde3ee; border-radius:30px; padding:8px 18px; font-size:0.8rem; font-weight:600; color:var(--dark); }
    .principle-pill span { color:var(--blue); font-size:1rem; }

    /* ── PROGRAMS GRID ── */
    .programs-section { padding:60px 5% 80px; background:var(--bg); }
    .programs-section > .section-header { margin-bottom:40px; }
    .prog-grid { display:grid; grid-template-columns:1fr; gap:28px; }

    /* ── PROGRAM CARD ── */
    .prog-card {
      background:var(--white); border-radius:22px; overflow:hidden;
      box-shadow:var(--shadow); transition:box-shadow var(--transition), transform var(--transition);
    }
    .prog-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); }

    /* Cover image */
    .prog-cover { position:relative; height:210px; overflow:hidden; background:var(--bg2); }
    .prog-cover img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; display:block; }
    .prog-card:hover .prog-cover img { transform:scale(1.04); }
    .prog-cover-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:3.5rem; }
    .prog-number { position:absolute; top:14px; left:14px; width:36px; height:36px; border-radius:50%; background:var(--gold); color:var(--dark); font-family:'Poppins',sans-serif; font-weight:900; font-size:0.9rem; display:flex; align-items:center; justify-content:center; box-shadow:0 2px 8px rgba(0,0,0,0.18); }
    .prog-status { position:absolute; top:14px; right:14px; background:rgba(34,197,94,0.9); color:#fff; font-size:0.62rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; padding:4px 11px; border-radius:30px; }

    /* Card body */
    .prog-body { padding:24px 24px 0; }
    .prog-icon-row { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
    .prog-icon { width:48px; height:48px; border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:1.5rem; flex-shrink:0; }
    .prog-icon.pink   { background:linear-gradient(135deg,#fce4ec,#f8bbd0); }
    .prog-icon.purple { background:linear-gradient(135deg,#ede7f6,#d1c4e9); }
    .prog-icon.teal   { background:linear-gradient(135deg,#e0f2f1,#b2dfdb); }
    .prog-icon.green  { background:linear-gradient(135deg,#e8f5e9,#c8e6c9); }
    .prog-icon.gold   { background:linear-gradient(135deg,#fff8e1,#ffecb3); }
    .prog-body h3 { font-size:1.08rem; color:var(--dark); margin-bottom:10px; line-height:1.3; }
    .prog-body > p { font-size:0.86rem; color:var(--text-muted); line-height:1.75; margin-bottom:0; }

    /* Card footer row */
    .prog-footer { padding:16px 24px 20px; display:flex; flex-wrap:wrap; align-items:center; gap:10px; justify-content:space-between; border-top:1px solid var(--bg2); margin-top:20px; }
    .prog-dur { background:#e8f0fb; color:var(--blue); font-size:0.70rem; font-weight:700; padding:4px 13px; border-radius:20px; }
    .prog-actions { display:flex; gap:8px; flex-wrap:wrap; }
    .btn-expand { background:transparent; border:1.5px solid var(--blue); color:var(--blue); font-size:0.78rem; font-weight:700; padding:6px 16px; border-radius:30px; cursor:pointer; transition:var(--transition); font-family:'DM Sans',sans-serif; display:inline-flex; align-items:center; gap:5px; }
    .btn-expand:hover { background:var(--blue); color:var(--white); }
    .btn-request { background:var(--gold); border:none; color:var(--dark); font-size:0.78rem; font-weight:700; padding:6px 16px; border-radius:30px; cursor:pointer; transition:var(--transition); font-family:'DM Sans',sans-serif; display:inline-flex; align-items:center; gap:5px; }
    .btn-request:hover { background:#f5cc60; transform:translateY(-1px); }

    /* Expandable detail panel */
    .prog-detail {
      display:none; padding:0 24px 24px;
      animation:slideDown 0.3s ease;
    }
    @keyframes slideDown { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:none; } }
    .prog-card.expanded .prog-detail { display:block; }
    .prog-card.expanded .expand-arrow { transform:rotate(180deg); }
    .expand-arrow { display:inline-block; transition:transform 0.3s ease; }

    .detail-divider { border:none; border-top:1px solid var(--bg2); margin:0 0 20px; }

    /* Detail image */
    .detail-img-wrap { border-radius:14px; overflow:hidden; height:180px; background:var(--bg2); margin-bottom:18px; }
    .detail-img-wrap img { width:100%; height:100%; object-fit:cover; display:block; }
    .detail-img-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:2.5rem; background:linear-gradient(135deg,#e8f0fb,#c9d9f5); }

    .detail-body h4 { font-size:0.82rem; color:var(--blue); font-weight:700; text-transform:uppercase; letter-spacing:1.5px; margin-bottom:10px; }
    .detail-body p { font-size:0.84rem; color:#555; line-height:1.78; margin-bottom:14px; }
    .detail-body ul { padding-left:18px; display:flex; flex-direction:column; gap:6px; }
    .detail-body ul li { font-size:0.83rem; color:#555; line-height:1.7; }
    .detail-body ul li::marker { color:var(--gold); }

    /* ── ENROLL BAR ── */
    .enroll-bar { background:linear-gradient(135deg, var(--dark), var(--blue)); border-radius:22px; padding:44px 32px; text-align:center; margin-top:52px; position:relative; overflow:hidden; }
    .enroll-bar::before { content:''; position:absolute; top:-40px; right:-40px; width:220px; height:220px; border-radius:50%; background:rgba(232,188,73,0.08); pointer-events:none; }
    .enroll-bar h3 { color:var(--white); font-size:1.4rem; margin-bottom:10px; }
    .enroll-bar p { color:rgba(255,255,255,0.75); margin-bottom:26px; max-width:460px; margin-left:auto; margin-right:auto; line-height:1.72; font-size:0.9rem; }

    /* ── TRAINING REQUEST MODAL ── */
    .modal-overlay { display:none; position:fixed; inset:0; background:rgba(14,62,120,0.55); backdrop-filter:blur(5px); z-index:2000; align-items:center; justify-content:center; padding:16px; }
    .modal-overlay.open { display:flex; }
    .modal { background:var(--white); border-radius:24px; width:100%; max-width:480px; max-height:90svh; overflow-y:auto; box-shadow:0 24px 60px rgba(0,0,0,0.22); animation:modalIn 0.3s ease; }
    @keyframes modalIn { from { opacity:0; transform:translateY(24px) scale(0.97); } to { opacity:1; transform:none scale(1); } }
    .modal-header { padding:28px 28px 0; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
    .modal-header-text h2 { font-size:1.15rem; color:var(--dark); margin-bottom:4px; }
    .modal-header-text p { font-size:0.82rem; color:var(--text-muted); line-height:1.55; }
    .modal-program-tag { display:inline-block; background:rgba(20,86,163,0.1); color:var(--blue); font-size:0.68rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; padding:3px 10px; border-radius:20px; margin-bottom:8px; }
    .modal-close { width:36px; height:36px; border-radius:50%; border:none; background:var(--bg2); color:var(--text-muted); font-size:1.1rem; cursor:pointer; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:var(--transition); }
    .modal-close:hover { background:#e5e7eb; color:var(--dark); }
    .modal-body { padding:20px 28px 28px; }
    .form-group { margin-bottom:18px; }
    .form-group label { display:block; font-size:0.80rem; font-weight:600; color:var(--dark); margin-bottom:6px; }
    .form-group input, .form-group select, .form-group textarea {
      width:100%; border:1.5px solid #dde3ee; border-radius:12px;
      padding:11px 14px; font-family:'DM Sans',sans-serif; font-size:0.86rem;
      color:var(--text); background:var(--bg); transition:border-color var(--transition);
      outline:none;
    }
    .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color:var(--blue); background:var(--white); }
    .form-group textarea { resize:vertical; min-height:80px; }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
    .form-hint { font-size:0.73rem; color:var(--text-muted); margin-top:4px; }
    .btn-submit { width:100%; background:var(--blue); color:var(--white); border:none; border-radius:30px; padding:14px; font-family:'Poppins',sans-serif; font-weight:700; font-size:0.9rem; cursor:pointer; transition:var(--transition); margin-top:8px; }
    .btn-submit:hover { background:var(--dark); transform:translateY(-2px); }
    .form-success { display:none; text-align:center; padding:32px 20px; }
    .form-success .success-icon { font-size:3rem; margin-bottom:14px; }
    .form-success h3 { color:var(--dark); margin-bottom:8px; }
    .form-success p { color:var(--text-muted); font-size:0.86rem; line-height:1.65; }

    /* ── RESPONSIVE ── */
    @media(min-width:640px) {
      .prog-grid { grid-template-columns:repeat(2, 1fr); }
      .detail-img-wrap { height:200px; }
    }
    @media(min-width:1024px) {
      .prog-grid { grid-template-columns:repeat(3, 1fr); }
      .prog-cover { height:220px; }
    }
    /* Large card — first card spans full width on mid screens */
    @media(min-width:640px) and (max-width:1023px) {
      .prog-grid .prog-card:first-child { grid-column:span 2; }
      .prog-grid .prog-card:first-child .prog-cover { height:260px; }
    }

    /* STORIES */

  
    /* ── Global ── */
    *, *::before, *::after { box-sizing: border-box; min-width: 0; }
    body { overflow-x: hidden; }

    /* ── FILTER BAR ── */
    .filter-bar { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:36px; }
    .filter-btn { padding:7px 18px; border-radius:30px; border:2px solid #d1d5db; background:transparent; font-size:0.82rem; font-weight:600; color:var(--text-muted); cursor:pointer; transition:var(--transition); font-family:'DM Sans',sans-serif; }
    .filter-btn:hover, .filter-btn.active { border-color:var(--blue); background:var(--blue); color:white; }

    /* ── STORIES GRID ── */
    .stories-grid { display:grid; grid-template-columns:1fr; gap:24px; }
    @media(min-width:600px) { .stories-grid { grid-template-columns:repeat(2,1fr); } }
    @media(min-width:960px) { .stories-grid { grid-template-columns:repeat(3,1fr); } }

    /* ── STORY CARD ── */
    .story-card {
      background:var(--white); border-radius:20px; overflow:hidden;
      box-shadow:var(--shadow); transition:var(--transition); cursor:pointer;
      display:flex; flex-direction:column;
    }
    .story-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-lg); }

    .story-thumb {
      position:relative; height:200px; overflow:hidden;
      background:var(--bg2); flex-shrink:0;
    }
    .story-thumb img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; display:block; }
    .story-card:hover .story-thumb img { transform:scale(1.04); }
    .story-thumb-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:3.5rem; }
    .story-cat {
      position:absolute; top:12px; left:12px;
      background:var(--gold); color:var(--dark);
      font-size:0.65rem; font-weight:700; letter-spacing:1px; text-transform:uppercase;
      padding:4px 11px; border-radius:20px;
    }
    .story-type {
      position:absolute; top:12px; right:12px;
      font-size:0.62rem; font-weight:700; text-transform:uppercase; letter-spacing:1.2px;
      padding:4px 10px; border-radius:20px;
    }
    .story-type.campaign { background:rgba(20,86,163,0.85); color:#fff; }
    .story-type.personal { background:rgba(34,197,94,0.85); color:#fff; }

    .story-body { padding:20px 20px 0; flex:1; }
    .story-body h3 { font-size:0.98rem; color:var(--dark); margin-bottom:8px; line-height:1.45; }
    .story-body p { font-size:0.82rem; color:var(--text-muted); line-height:1.7; }

    .story-footer {
      margin-top:14px; padding:14px 20px 18px;
      display:flex; align-items:center; justify-content:space-between; gap:8px;
      border-top:1px solid var(--bg2);
    }
    .story-date { font-size:0.72rem; color:#aaa; }
    .story-read {
      font-size:0.78rem; color:var(--blue); font-weight:700;
      display:inline-flex; align-items:center; gap:4px; transition:gap var(--transition);
    }
    .story-card:hover .story-read { gap:8px; }

    /* ── FULL STORY OVERLAY ── */
    .story-overlay {
      display:none; position:fixed; inset:0; z-index:2000;
      background:rgba(10,30,70,0.72); backdrop-filter:blur(6px);
      overflow-y:auto; padding:24px 16px 60px;
    }
    .story-overlay.open { display:block; }

    .story-full {
      background:var(--white); border-radius:24px; max-width:780px;
      margin:0 auto; overflow:hidden;
      box-shadow:0 24px 60px rgba(0,0,0,0.32);
      animation:storyIn 0.35s ease;
    }
    @keyframes storyIn { from { opacity:0; transform:translateY(30px); } to { opacity:1; transform:none; } }

    /* Hero cover */
    .sf-cover { position:relative; height:260px; overflow:hidden; background:var(--bg2); }
    .sf-cover img { width:100%; height:100%; object-fit:cover; display:block; }
    .sf-cover-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:5rem; }
    .sf-cover-overlay {
      position:absolute; inset:0;
      background:linear-gradient(to top, rgba(14,62,120,0.75) 0%, rgba(14,62,120,0.1) 55%);
    }
    .sf-cover-meta {
      position:absolute; bottom:20px; left:24px; right:60px;
    }
    .sf-cover-cat { display:inline-block; background:var(--gold); color:var(--dark); font-size:0.65rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; padding:4px 12px; border-radius:20px; margin-bottom:10px; }
    .sf-cover-title { color:var(--white); font-family:'Poppins',sans-serif; font-size:clamp(1.1rem,3vw,1.55rem); font-weight:700; line-height:1.25; text-shadow:0 2px 8px rgba(0,0,0,0.35); }

    /* Close button */
    .sf-close {
      position:absolute; top:14px; right:14px; z-index:10;
      width:38px; height:38px; border-radius:50%;
      background:rgba(0,0,0,0.3); border:none; cursor:pointer;
      font-size:1.2rem; color:white; display:flex; align-items:center; justify-content:center;
      transition:var(--transition);
    }
    .sf-close:hover { background:rgba(0,0,0,0.55); }

    /* Article body */
    .sf-body { padding:28px 28px 36px; }
    @media(min-width:600px) { .sf-body { padding:36px 44px 44px; } }

    .sf-meta-row { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-bottom:24px; padding-bottom:18px; border-bottom:1px solid var(--bg2); }
    .sf-meta-item { font-size:0.75rem; color:var(--text-muted); display:flex; align-items:center; gap:5px; }

    .sf-subtitle {
      font-family:'Poppins',sans-serif; font-size:clamp(1rem,2.5vw,1.2rem);
      color:var(--dark); font-weight:700; font-style:italic;
      border-left:4px solid var(--gold); padding-left:16px;
      line-height:1.45; margin-bottom:24px;
    }

    .sf-section { margin-bottom:28px; }
    .sf-section h3 {
      font-size:1rem; color:var(--dark); margin-bottom:10px;
      display:flex; align-items:center; gap:8px;
    }
    .sf-section h3::after { content:''; flex:1; height:1px; background:var(--bg2); }
    .sf-section p { font-size:0.88rem; color:#444; line-height:1.85; margin-bottom:10px; }
    .sf-section ul { padding-left:18px; display:flex; flex-direction:column; gap:7px; }
    .sf-section ul li { font-size:0.86rem; color:#444; line-height:1.75; }
    .sf-section ul li::marker { color:var(--gold); }

    /* 2×2 photo grid */
    .sf-photo-grid {
      display:grid; grid-template-columns:1fr 1fr;
      gap:10px; margin:28px 0;
      border-radius:16px; overflow:hidden;
    }
    .sf-photo { aspect-ratio:4/3; overflow:hidden; background:var(--bg2); }
    .sf-photo img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s ease; }
    .sf-photo:hover img { transform:scale(1.05); }
    .sf-photo-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:2rem; background:linear-gradient(135deg,#e8f0fb,#c9d9f5); }
    .sf-photo-caption { font-size:0.72rem; color:var(--text-muted); text-align:center; margin-top:-4px; margin-bottom:20px; font-style:italic; }

    /* Pull quote */
    .sf-quote {
      background:linear-gradient(135deg, var(--dark), var(--blue));
      border-radius:16px; padding:24px 28px; margin:28px 0;
      position:relative; overflow:hidden;
    }
    .sf-quote::before { content:'"'; position:absolute; top:-18px; left:14px; font-size:100px; font-family:'Poppins',sans-serif; font-weight:900; color:rgba(232,188,73,0.15); line-height:1; }
    .sf-quote p { font-size:0.95rem; color:var(--white); line-height:1.8; font-style:italic; font-weight:500; position:relative; z-index:1; }

    /* Stat chips */
    .sf-stats { display:flex; flex-wrap:wrap; gap:12px; margin:20px 0; }
    .sf-stat { background:var(--bg); border:1.5px solid #dde3ee; border-radius:14px; padding:14px 18px; flex:1; min-width:120px; text-align:center; }
    .sf-stat .num { font-family:'Poppins',sans-serif; font-size:1.5rem; font-weight:900; color:var(--blue); }
    .sf-stat .lbl { font-size:0.72rem; color:var(--text-muted); margin-top:3px; line-height:1.4; }

    /* Mission/Vision card */
    .sf-mission {
      background:var(--bg); border-radius:16px; padding:20px 22px;
      display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:28px;
    }
    @media(max-width:500px) { .sf-mission { grid-template-columns:1fr; } }
    .sf-mission-block { background:var(--white); border-radius:12px; padding:16px; box-shadow:var(--shadow); }
    .sf-mission-block .label { font-size:0.68rem; font-weight:700; text-transform:uppercase; letter-spacing:2px; color:var(--blue); margin-bottom:7px; }
    .sf-mission-block p { font-size:0.78rem; color:var(--text-muted); line-height:1.65; }

    /* CTA row at end of story */
    .sf-cta { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; padding-top:24px; border-top:1px solid var(--bg2); justify-content:center; }
 
    /* ROSES & DOSES */
        .podcast-hero-extra { margin-top:28px; display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
    .yt-subscribe { display:inline-flex; align-items:center; gap:8px; background:#ff0000; color:white; font-family:'Poppins',sans-serif; font-size:0.88rem; font-weight:700; padding:10px 22px; border-radius:30px; transition:var(--transition); }
    .yt-subscribe:hover { background:#cc0000; transform:translateY(-2px); }
    .featured-card { background:var(--white); border-radius:24px; overflow:hidden; box-shadow:var(--shadow-lg); display:grid; grid-template-columns:1fr 1fr; margin-bottom:60px; }
    .feat-thumb { background:linear-gradient(135deg,#1a0a30,#1456A3); display:flex; align-items:center; justify-content:center; min-height:280px; position:relative; }
    .feat-thumb .big-play { width:80px; height:80px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; font-size:2rem; cursor:pointer; transition:var(--transition); }
    .feat-thumb:hover .big-play { transform:scale(1.1); }
    .feat-ep { position:absolute; top:14px; left:14px; background:var(--gold); color:var(--dark); font-size:0.72rem; font-weight:700; padding:4px 12px; border-radius:20px; }
    .feat-new { position:absolute; top:14px; right:14px; background:#22c55e; color:white; font-size:0.68rem; font-weight:700; padding:3px 10px; border-radius:20px; }
    .feat-body { padding:36px; display:flex; flex-direction:column; justify-content:center; }
    .feat-label { font-size:0.7rem; color:var(--blue); font-weight:700; text-transform:uppercase; letter-spacing:2px; margin-bottom:10px; }
    .feat-body h2 { font-size:1.3rem; color:var(--dark); margin-bottom:12px; line-height:1.4; }
    .feat-body p { font-size:0.88rem; color:var(--text-muted); line-height:1.75; margin-bottom:22px; }
    .podcast-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:24px; }
    .pod-card { background:var(--white); border-radius:20px; overflow:hidden; box-shadow:var(--shadow); transition:var(--transition); }
    .pod-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-lg); }
    .pod-thumb { aspect-ratio:16/9; background:linear-gradient(135deg,#1a0a30,#1456A3); display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; }
    .pod-thumb .play { width:52px; height:52px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; font-size:1.3rem; transition:var(--transition); z-index:1; }
    .pod-card:hover .play { transform:scale(1.1); }
    .ep-badge { position:absolute; top:10px; right:10px; background:rgba(0,0,0,0.45); color:var(--gold); font-size:0.68rem; font-weight:700; padding:3px 9px; border-radius:20px; }
    .pod-body { padding:20px; }
    .pod-body h3 { font-size:0.95rem; color:var(--dark); margin-bottom:7px; line-height:1.4; }
    .pod-body p { font-size:0.81rem; color:var(--text-muted); line-height:1.68; }
    .pod-footer { margin-top:12px; display:flex; align-items:center; gap:10px; }
    .yt-btn { display:inline-flex; align-items:center; gap:6px; background:#ff0000; color:white; font-size:0.76rem; font-weight:700; padding:6px 14px; border-radius:20px; transition:var(--transition); }
    .yt-btn:hover { background:#cc0000; }
    .notice { background:#fef9c3; border:1px solid #f59e0b; border-radius:12px; padding:14px 18px; font-size:0.83rem; color:#92400e; margin-bottom:40px; display:flex; align-items:center; gap:10px; }
    @media(max-width:768px){ .featured-card { grid-template-columns:1fr; } }


