/* === JSON HOLY WEEK SCHEDULE === */
.events-section{max-width:1000px;margin:0 auto}
.section-head{text-align:center;margin-bottom:18px}
.section-copy{max-width:700px;margin:8px auto 0;color:var(--gray);font-size:1rem;line-height:1.7}

.schedule-list {
  display: grid;
  gap: 18px;
  margin-top: 1.25rem;
}
.schedule-card {
  display: grid;
  grid-template-columns: 165px 1fr;
  background: #fff;
  border: 1px solid rgba(61,26,107,0.08);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0,0,0,0.06);
}
.schedule-card.main-revival{background:linear-gradient(180deg,rgba(91,45,142,0.08),#fff);border:2px solid rgba(91,45,142,0.35);box-shadow:0 8px 18px rgba(61,26,107,0.18);position:relative}
.schedule-card.main-revival::before {
  content: "FEATURED REVIVAL";
  position: absolute;
  top: 16px;
  right: -40px;
  background: #5B2D8E;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  padding: 6px 42px;
  transform: rotate(35deg);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}
.schedule-card.main-revival:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(61,26,107,0.25)}

.date-rail {
  padding: 18px 12px;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 8px;
}
.theme-purple{background:linear-gradient(160deg,var(--purple-dk),var(--purple))}
.theme-blue{background:linear-gradient(160deg,#355C8A,var(--sky-dk))}
.theme-tan{background:linear-gradient(160deg,#8A7440,var(--tan));color:#2A2140}
.theme-red{background:linear-gradient(160deg,#3f0000,#6B0000)}
.date-rail .tag{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.18);padding:3px 6px;border-radius:20px}
.theme-tan .tag{background:rgba(42,33,64,.12)}
.date-rail .month{font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.date-rail .day {
  font-family: 'Cinzel', serif;
  font-size: 28px;
  line-height: 1;
}
.date-rail .time {
  font-size: 10px;
  line-height: 1.45;
  opacity: 0.95;
}

.card-main {
  padding: 18px 20px;
  display: grid;
  gap: 8px;
  align-content: center;
}
.card-main h3 {
  margin: 0;
  font-family: 'Cinzel', serif;
  font-size: 27px;
  line-height: 1.08;
  color: var(--purple-dk);
}
.main-revival h3{font-size:21px}
.meta {
  display: grid;
  gap: 2px;
  color: #6b7280;
  font-size: 15px;
  line-height: 1.35;
}
.desc {
  font-family: 'Crimson Text', serif;
  font-size: 20px;
  line-height: 1.35;
  color: #2f2a35;
}
.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 4px;
}
.btn{font-family:'Raleway',sans-serif;text-decoration:none;padding:8px 12px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;display:inline-flex;align-items:center;justify-content:center}
.btn-primary {
  background: var(--purple);
  color: #fff;
  border: 2px solid var(--purple);
}
.btn-secondary {
  background:#fff;
  color:var(--purple-dk);
  border:2px solid rgba(91,45,142,.18);
}
.btn-secondary:hover {
  border-color:var(--purple);
  color:var(--purple);
}

/* Flyer Lightbox */
.flyer-modal{position:fixed;inset:0;background:rgba(0,0,0,.75);display:none;align-items:center;justify-content:center;z-index:9999;padding:24px}
.flyer-modal-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:92vw;max-height:92vh}
.flyer-modal img{max-width:100%;max-height:78vh;border-radius:6px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.flyer-modal.show{display:flex}
.flyer-close{position:absolute;top:-8px;right:-4px;color:#fff;font-size:32px;font-weight:700;cursor:pointer}
.flyer-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.flyer-download{background:#fff;color:var(--purple-dk);border:1px solid rgba(61,26,107,.18);padding:9px 14px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;text-decoration:none}

@media(max-width:720px){
  .schedule-card{grid-template-columns:1fr}
  .date-rail{flex-direction:row;gap:10px;justify-content:flex-start}
  .date-rail .day{font-size:20px}
  .card-main h3{font-size:17px}
  .desc{font-size:16px}
}
 :root {
 --purple: #5B2D8E;
 --purple-dk:#3D1A6B;
 --purple-lt:#7A40B5;
 --tan: #C8BB8A;
 --tan-lt: #E0D5A8;
 --tan-dk: #A09060;
 --sky: #A8C4D8;
 --sky-dk: #6B9BB8;
 --black: #0A0A0A;
 --off-white:#F5F0E8;
 --white: #FFFFFF;
 --gray: #6B7280;
 --gold: #D4A843;
 }
 *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
 html { scroll-behavior: smooth; scroll-padding-top: 96px; }
 body { font-family: 'Crimson Text', Georgia, serif; background: var(--off-white); color: #1A1A1A; overflow-x: hidden; }

 /* === ANNOUNCEMENT TICKER === */
 .ticker-wrap {
 position: fixed; top: 0; left: 0; right: 0; z-index: 1100;
 background: linear-gradient(90deg, var(--purple-dk), var(--purple), var(--purple-dk));
 border-bottom: 2px solid var(--tan);
 height: 36px; overflow: hidden; display: flex; align-items: center;
 }
 .ticker-label {
 flex-shrink: 0;
 background: var(--tan);
 color: var(--purple-dk);
 font-family: 'Raleway', sans-serif;
 font-size: 0.65rem;
 font-weight: 800;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 padding: 0 1rem;
 height: 100%;
 display: flex; align-items: center;
 white-space: nowrap;
 }
 .ticker-content {
 flex: 1; overflow: hidden; position: relative;
 }
 .ticker-inner {
 display: inline-flex; white-space: nowrap;
 animation: ticker 28s linear infinite;
 font-family: 'Raleway', sans-serif;
 font-size: 0.72rem;
 font-weight: 600;
 color: var(--tan-lt);
 letter-spacing: 0.04em;
 padding-left: 100%;
 }
 .ticker-inner span { margin-right: 4rem; }
 .ticker-inner span b { color: var(--tan); }
 @keyframes ticker { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

 /* === NAV === */
 nav {
 position: fixed; top: 36px; left: 0; right: 0; z-index: 1000;
 background: rgba(20,8,40,0.97);
 backdrop-filter: blur(12px);
 border-bottom: 2px solid var(--tan);
 display: flex; align-items: center; justify-content: space-between;
 padding: 0 2rem; height: 72px;
 }
 .nav-brand { display: flex; align-items: center; gap: 0.9rem; }
 .nav-logo-wrap {
 width: 52px; height: 52px; border-radius: 50%;
 overflow: hidden; flex-shrink: 0;
 border: 2px solid var(--tan);
 box-shadow: 0 0 14px rgba(200,187,138,0.4);
 }
 .nav-logo-wrap img { width: 100%; height: 100%; object-fit: cover; }
 .nav-title { color: var(--white); font-family: 'Cinzel', serif; line-height: 1.25; }
 .nav-title .acronym { color: var(--tan); font-size: 1.05rem; font-weight: 700; display: block; }
 .nav-title .full { color: rgba(255,255,255,0.7); font-size: 0.6rem; letter-spacing: 0.05em; display: block; }
 .nav-links { display: flex; gap: 0; list-style: none; align-items: center; }
 .nav-links a {
 color: rgba(255,255,255,0.75);
 text-decoration: none;
 font-family: 'Raleway', sans-serif;
 font-size: 0.72rem;
 font-weight: 600;
 letter-spacing: 0.07em;
 text-transform: uppercase;
 padding: 0.4rem 0.7rem;
 border-radius: 4px;
 transition: color 0.2s, background 0.2s;
 }
 .nav-links a:hover { color: var(--tan); }
 .nav-cta {
 background: var(--purple) !important;
 color: var(--tan-lt) !important;
 border-radius: 20px !important;
 padding: 0.45rem 1.1rem !important;
 border: 1px solid var(--tan) !important;
 }
 .nav-cta:hover { background: var(--purple-lt) !important; }

 .nav-give {
 display: inline-flex !important;
 align-items: center !important;
 gap: 0.5rem !important;
 background: #E8562A !important;
 color: #fff !important;
 border-radius: 50px !important;
 padding: 0.5rem 1.3rem 0.5rem 0.8rem !important;
 text-decoration: none !important;
 border: none !important;
 box-shadow: 0 3px 16px rgba(232,86,42,0.5) !important;
 transition: opacity 0.2s, transform 0.15s !important;
 white-space: nowrap !important;
 }
 .nav-give-text {
 color: #fff;
 font-family: 'Raleway', sans-serif;
 font-weight: 900;
 font-size: 0.9rem;
 letter-spacing: 0.1em;
 text-transform: uppercase;
 }
 .nav-give:hover { opacity: 0.75 !important; }
 .nav-give img {
 height: 28px !important;
 width: auto !important;
 filter: brightness(10) !important;
 vertical-align: middle !important;
 flex-shrink: 0 !important;
 }
 .nav-give::after { display:none !important; }

 .hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; }
 .hamburger span { display: block; width: 26px; height: 2px; background: var(--tan); }

 /* === HERO === */
 #home {
 min-height: 100vh;
 padding-top: 108px;
 background: linear-gradient(170deg, #1A0832 0%, #2D1055 40%, #1A0832 70%, #0D0520 100%);
 display: grid;
 grid-template-columns: 1fr 1fr;
 align-items: center;
 gap: 3rem;
 padding-left: 5vw;
 padding-right: 5vw;
 position: relative;
 overflow: hidden;
 }
 .hero-bg-pattern {
 position: absolute; inset: 0;
 background-image: radial-gradient(circle at 20% 50%, rgba(91,45,142,0.3) 0%, transparent 50%),
 radial-gradient(circle at 80% 30%, rgba(200,187,138,0.08) 0%, transparent 40%);
 pointer-events: none;
 }
 .hero-left { position: relative; z-index: 2; }
 .hero-eyebrow {
 font-family: 'Raleway', sans-serif;
 font-size: 0.7rem; font-weight: 700;
 letter-spacing: 0.25em; text-transform: uppercase;
 color: var(--tan); margin-bottom: 1rem;
 display: flex; align-items: center; gap: 0.7rem;
 }
 .hero-eyebrow::before { content: ''; display: block; width: 30px; height: 1px; background: var(--tan); }
 h1 {
 font-family: 'Cinzel', serif;
 font-size: clamp(2rem, 4.5vw, 3.5rem);
 color: var(--white);
 line-height: 1.1;
 margin-bottom: 0.8rem;
 font-weight: 700;
 }
 h1 .highlight { color: var(--tan); }
 .hero-sub {
 font-family: 'Crimson Text', serif;
 font-style: italic;
 color: var(--sky);
 font-size: 1.1rem;
 margin-bottom: 0.7rem;
 line-height: 1.6;
 }
 .hero-verse {
 font-family: 'Crimson Text', serif;
 font-style: italic;
 color: rgba(200,187,138,0.65);
 font-size: 0.92rem;
 border-left: 2px solid var(--purple-lt);
 padding-left: 0.9rem;
 margin-bottom: 2.2rem;
 line-height: 1.6;
 }
 .hero-btns { display: flex; gap: 1rem; flex-wrap: wrap; }
 .btn-gold {
 background: linear-gradient(135deg, var(--tan-dk), var(--tan), var(--tan-dk));
 color: var(--purple-dk);
 padding: 0.85rem 2rem;
 border: none; border-radius: 30px;
 font-family: 'Raleway', sans-serif;
 font-weight: 800; font-size: 0.82rem;
 letter-spacing: 0.07em; text-transform: uppercase;
 cursor: pointer; text-decoration: none;
 box-shadow: 0 4px 22px rgba(200,187,138,0.35);
 transition: transform 0.2s, box-shadow 0.2s;
 display: inline-block;
 }
 .btn-gold:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(200,187,138,0.5); }
 .btn-ghost {
 background: transparent;
 color: var(--tan-lt);
 padding: 0.85rem 2rem;
 border: 2px solid rgba(200,187,138,0.4);
 border-radius: 30px;
 font-family: 'Raleway', sans-serif;
 font-weight: 700; font-size: 0.82rem;
 letter-spacing: 0.07em; text-transform: uppercase;
 cursor: pointer; text-decoration: none;
 transition: border-color 0.2s, color 0.2s, transform 0.2s;
 display: inline-block;
 }
 .btn-ghost:hover { border-color: var(--tan); color: var(--tan); transform: translateY(-2px); }

 /* === HERO RIGHT — FLYER SPOTLIGHT === */
 .hero-right {
 position: relative; z-index: 2;
 display: flex; align-items: center; justify-content: center;
 }
 .flyer-spotlight {
 position: relative;
 filter: drop-shadow(0 20px 60px rgba(91,45,142,0.6)) drop-shadow(0 0 30px rgba(200,187,138,0.2));
 transition: transform 0.4s;
 }
 .flyer-spotlight:hover { transform: scale(1.02) rotate(0.5deg); }
 .flyer-spotlight img {
 width: min(380px, 88vw);
 border-radius: 12px;
 border: 3px solid var(--tan);
 display: block;
 }
 .flyer-badge {
 position: absolute; top: 12px; left: 50%; transform: translateX(-50%);
 background: linear-gradient(135deg, #C0392B, #8B1A2E);
 color: var(--white);
 font-family: 'Raleway', sans-serif;
 font-size: 0.62rem; font-weight: 800;
 letter-spacing: 0.1em; text-transform: uppercase;
 padding: 0.4rem 1.1rem;
 border-radius: 20px;
 border: 2px solid rgba(255,255,255,0.3);
 box-shadow: 0 4px 16px rgba(192,57,43,0.5);
 animation: pulse-badge 2s ease-in-out infinite;
 white-space: nowrap; z-index: 10;
 }
 @keyframes pulse-badge { 0%,100%{box-shadow:0 4px 16px rgba(192,57,43,0.5)} 50%{box-shadow:0 4px 30px rgba(192,57,43,0.8)} }

 /* === REVIVAL SPOTLIGHT SECTION === */
 #revival {
 background: linear-gradient(135deg, #1A0832 0%, #2D1055 50%, #1A0832 100%);
 padding: 5rem 2rem;
 position: relative; overflow: hidden;
 }
 #revival::before {
 content: '';
 position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
 font-size: 28rem; color: rgba(91,45,142,0.07);
 pointer-events: none; line-height: 1;
 }
 .revival-inner {
 max-width: 1100px; margin: 0 auto;
 display: grid; grid-template-columns: 1fr 1.2fr;
 gap: 4rem; align-items: center;
 position: relative; z-index: 2;
 }
 .revival-flyer-col { display: flex; justify-content: center; }
 .revival-flyer-col img {
 width: min(400px, 90vw);
 border-radius: 14px;
 border: 3px solid var(--tan);
 box-shadow: 0 20px 80px rgba(0,0,0,0.6), 0 0 40px rgba(200,187,138,0.15);
 }
 .revival-info {}
 .section-label {
 font-family: 'Raleway', sans-serif;
 font-size: 0.68rem; letter-spacing: 0.3em;
 text-transform: uppercase; color: var(--tan);
 margin-bottom: 0.75rem; display: block;
 }
 .section-title {
 font-family: 'Cinzel', serif;
 font-size: clamp(1.7rem, 3.5vw, 2.6rem);
 line-height: 1.15; margin-bottom: 1.2rem;
 }
 .section-title.light { color: var(--white); }
 .section-title.dark { color: var(--purple-dk); }
 .divider { width: 60px; height: 3px; background: linear-gradient(90deg, var(--tan), var(--purple-lt)); border-radius: 2px; margin-bottom: 1.5rem; }
 .divider.center { margin-left: auto; margin-right: auto; }
 .revival-detail-list { list-style: none; margin-bottom: 2rem; }
 .revival-detail-list li {
 display: flex; align-items: flex-start; gap: 0.9rem;
 padding: 0.75rem 0;
 border-bottom: 1px solid rgba(200,187,138,0.1);
 color: rgba(255,255,255,0.85);
 }
 .revival-detail-list li:last-child { border-bottom: none; }
 .rdl-icon {
 width: 38px; height: 38px; flex-shrink: 0;
 display: flex; align-items: center; justify-content: center;
 font-size: 1rem;
 }
 .rdl-content strong {
 display: block;
 font-family: 'Raleway', sans-serif;
 font-size: 0.68rem; font-weight: 700;
 letter-spacing: 0.1em; text-transform: uppercase;
 color: var(--tan); margin-bottom: 0.15rem;
 }
 .rdl-content span { font-size: 1rem; line-height: 1.4; }
 .revival-cta { display: flex; gap: 1rem; flex-wrap: wrap; }

 /* === SECTION BASE === */
 section { padding: 5.5rem 2rem; }
 .container { max-width: 1140px; margin: 0 auto; }
 .text-center { text-align: center; }

 /* === ABOUT === */
 #about { background: var(--white); }
 .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; max-width: 1100px; margin: 0 auto; }
 .about-text p { color: #374151; line-height: 1.9; margin-bottom: 1rem; font-size: 1.05rem; }
 .about-pillars { display: grid; grid-template-columns: 1fr 1fr; gap: 0.8rem; margin-top: 1.8rem; }
 .pillar { background: var(--off-white); border-left: 3px solid var(--purple); padding: 0.9rem 1.1rem; border-radius: 0 6px 6px 0; }
 .pillar h4 { font-family: 'Raleway', sans-serif; font-weight: 700; font-size: 0.78rem; letter-spacing: 0.05em; text-transform: uppercase; color: var(--purple-dk); margin-bottom: 0.25rem; }
 .pillar p { font-size: 0.83rem; color: var(--gray); margin: 0; line-height: 1.5; }
 .about-visual {
 background: linear-gradient(135deg, var(--purple-dk) 0%, var(--purple) 60%, var(--sky-dk) 100%);
 border-radius: 16px; padding: 3rem 2rem; text-align: center; position: relative; overflow: hidden;
 }
 .about-logo-seal { width: 130px; height: 130px; border-radius: 50%; margin: 0 auto 1.5rem; overflow: hidden; border: 3px solid var(--tan); box-shadow: 0 0 30px rgba(200,187,138,0.3); }
 .about-logo-seal img { width: 100%; height: 100%; object-fit: cover; }
 .stat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; margin-top: 1.5rem; }
 .stat-item { text-align: center; background: rgba(0,0,0,0.15); border-radius: 10px; padding: 1rem 0.5rem; }
 .stat-num { font-family: 'Cinzel', serif; font-size: 2.4rem; color: var(--tan); line-height: 1; font-weight: 700; }
 .stat-label { font-family: 'Raleway', sans-serif; color: rgba(255,255,255,0.65); font-size: 0.72rem; letter-spacing: 0.05em; text-transform: uppercase; margin-top: 0.2rem; }

 /* === EVENTS === */
 #events { background: var(--off-white); }
 .events-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 1.4rem; margin-top: 3rem; }
 .event-card { background: var(--white); border-radius: 12px; overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,0.06); transition: transform 0.2s, box-shadow 0.2s; }
 .event-card img { width:100%; height:200px; object-fit:cover; display:block; }
 .event-card:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0,0,0,0.12); }
 .event-card.featured { border: 2px solid var(--tan); box-shadow: 0 8px 40px rgba(91,45,142,0.2); }
 .event-header { padding: 1.2rem 1.3rem; position: relative; }
 .event-header.revival-theme { background: linear-gradient(135deg, #1A0832, #3D1A6B); }
 .event-header.community-theme { background: linear-gradient(135deg, #1A3A0D, #2E6B1A); }
 .event-header.meeting-theme { background: linear-gradient(135deg, #0D2040, #1A3A7E); }
 .event-header.goodfriday-theme { background: linear-gradient(135deg, #2A0000, #6B0000); }
 .event-tag { font-family:'Raleway',sans-serif; font-size:0.6rem; font-weight:700; letter-spacing:0.15em; text-transform:uppercase; background:rgba(255,255,255,0.15); color:var(--white); padding:0.2rem 0.6rem; border-radius:10px; display:inline-block; margin-bottom:0.5rem; }
 .event-title-card { font-family:'Cinzel',serif; color:var(--white); font-size:1.1rem; line-height:1.3; }
 .event-date-badge { position:absolute; top:1rem; right:1rem; background:var(--tan); color:var(--purple-dk); text-align:center; border-radius:8px; padding:0.35rem 0.6rem; font-family:'Raleway',sans-serif; font-weight:800; line-height:1.2; }
 .event-date-badge .month { font-size:0.55rem; text-transform:uppercase; letter-spacing:0.08em; }
 .event-date-badge .day { font-size:1.2rem; }
 .event-body { padding:1.1rem 1.3rem; }
 .event-meta span { font-family:'Raleway',sans-serif; font-size:0.78rem; color:var(--gray); display:flex; align-items:center; gap:0.35rem; margin-bottom:0.3rem; }
 .event-body p { font-size:0.9rem; color:#374151; line-height:1.65; margin:0.75rem 0; }
 .event-body a.btn-sm { font-family:'Raleway',sans-serif; font-size:0.72rem; font-weight:700; letter-spacing:0.05em; color:var(--purple); text-decoration:none; text-transform:uppercase; border-bottom:2px solid var(--purple); padding-bottom:1px; transition:color 0.2s; }
 .event-body a.btn-sm:hover { color:var(--tan-dk); border-color:var(--tan-dk); }
 .featured-pill { background:linear-gradient(90deg,var(--purple),var(--tan-dk)); color:var(--white); font-family:'Raleway',sans-serif; font-size:0.6rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; padding:0.2rem 0.8rem; border-radius:0 0 8px 0; display:inline-block; position:absolute; top:0; left:0; }

 /* === LIVESTREAM === */
 #livestream { background: linear-gradient(135deg, var(--black) 0%, #1A0832 60%, #2D1055 100%); }
 .live-wrapper { max-width: 860px; margin: 0 auto; text-align: center; }
 .live-badge { display:inline-flex; align-items:center; gap:0.5rem; background:rgba(220,38,38,0.2); border:1px solid rgba(220,38,38,0.5); color:#FCA5A5; font-family:'Raleway',sans-serif; font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; padding:0.35rem 1rem; border-radius:20px; margin-bottom:1rem; }
 .live-badge::before { content:''; width:8px; height:8px; border-radius:50%; background:#EF4444; animation:pulsered 1.5s infinite; }
 @keyframes pulsered { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.3)} }
 .live-player { background:#000; border-radius:16px; overflow:hidden; position:relative; padding-bottom:56.25%; margin:2rem 0; border:2px solid rgba(200,187,138,0.3); box-shadow:0 0 60px rgba(91,45,142,0.3); }
 .live-player-inner { position:absolute; inset:0; background:linear-gradient(135deg,#0A0A1A,#1A0832); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem; }
 .play-btn {
 cursor: pointer;
 display: inline-block;
 margin: 0 auto 1.2rem;
 }
 .play-circle {
 width: 80px; height: 80px; border-radius: 50%;
 background: radial-gradient(circle at 38% 38%, #e8d98a, #C8BB8A 50%, #a89860);
 box-shadow: 0 0 40px rgba(200,187,138,0.45), 0 6px 24px rgba(0,0,0,0.5);
 display: flex; align-items: center; justify-content: center;
 transition: transform 0.2s, box-shadow 0.2s;
 }
 .play-btn:hover .play-circle {
 transform: scale(1.08);
 box-shadow: 0 0 60px rgba(200,187,138,0.65), 0 8px 32px rgba(0,0,0,0.5);
 }
 .play-triangle {
 width: 0; height: 0;
 border-top: 14px solid transparent;
 border-bottom: 14px solid transparent;
 border-left: 24px solid #1A0832;
 margin-left: 5px;
 }
 .play-btn:hover { transform:scale(1.1); }
 .live-player-inner p { color:rgba(255,255,255,0.6); font-style:italic; font-size:0.95rem; }
 .live-platforms { display:flex; justify-content:center; gap:0.75rem; flex-wrap:wrap; }
 .platform-btn { display:flex; align-items:center; gap:0.5rem; background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.15); color:var(--white); padding:0.6rem 1.2rem; border-radius:8px; font-family:'Raleway',sans-serif; font-size:0.8rem; font-weight:600; text-decoration:none; transition:background 0.2s, border-color 0.2s; cursor:pointer; }
 .platform-btn:hover { background:rgba(91,45,142,0.3); border-color:var(--tan); color:var(--tan); }

 /* === CHURCHES === */
 #churches { background: var(--white); }
 .churches-intro { max-width:680px; margin:0 auto 3rem; text-align:center; }
 .churches-intro p { color:var(--gray); line-height:1.7; font-size:1rem; }
 .churches-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(275px, 1fr)); gap:1.4rem; max-width:1100px; margin:0 auto; }
 .church-card { background:var(--off-white); border-radius:12px; padding:1.4rem; border-top:4px solid var(--purple); transition:transform 0.2s, box-shadow 0.2s; }
 .church-card:nth-child(3n+2) { border-top-color:var(--tan-dk); }
 .church-card:nth-child(3n+3) { border-top-color:var(--sky-dk); }
 .church-card:hover { transform:translateY(-3px); box-shadow:0 10px 30px rgba(0,0,0,0.09); }
 .church-icon { width:44px; height:44px; border-radius:10px; background:var(--purple-dk); display:flex; align-items:center; justify-content:center; font-size:1.2rem; margin-bottom:0.9rem; }
 .church-card h3 { font-family:'Cinzel',serif; font-size:0.95rem; color:var(--purple-dk); margin-bottom:0.3rem; line-height:1.4; }
 .church-pastor { font-family:'Raleway',sans-serif; font-size:0.74rem; color:var(--tan-dk); font-weight:700; text-transform:uppercase; letter-spacing:0.04em; margin-bottom:0.4rem; }
 .church-address { font-size:0.85rem; color:var(--gray); line-height:1.5; margin-bottom:0.9rem; }
 .church-links { display:flex; gap:0.4rem; flex-wrap:wrap; }
 .church-links a { font-family:'Raleway',sans-serif; font-size:0.7rem; font-weight:600; text-decoration:none; padding:0.22rem 0.6rem; border-radius:12px; border:1px solid currentColor; transition:background 0.2s, color 0.2s; }
 .church-links a.w { color:var(--purple-dk); } .church-links a.w:hover { background:var(--purple-dk); color:var(--white); }
 .church-links a.e { color:#8B1A2E; } .church-links a.e:hover { background:#8B1A2E; color:var(--white); }
 .add-church { text-align:center; margin-top:2.5rem; padding:2rem; border:2px dashed rgba(91,45,142,0.25); border-radius:12px; max-width:480px; margin-left:auto; margin-right:auto; }
 .add-church p { color:var(--gray); font-size:0.9rem; margin-bottom:1rem; }

 /* === LEADERSHIP === */
 #leadership { background:var(--off-white); }
 .leadership-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(210px, 1fr)); gap:1.4rem; max-width:900px; margin:3rem auto 0; }
 .leader-card { text-align:center; background:var(--white); border-radius:12px; padding:1.8rem 1rem 1.4rem; box-shadow:0 2px 12px rgba(0,0,0,0.06); transition:transform 0.2s, box-shadow 0.2s; }
 .leader-card:hover { transform:translateY(-3px); box-shadow:0 8px 28px rgba(0,0,0,0.1); }
 .leader-avatar { width:72px; height:72px; border-radius:50%; background:linear-gradient(135deg,var(--purple-dk),var(--sky-dk)); display:flex; align-items:center; justify-content:center; margin:0 auto 0.9rem; font-family:'Cinzel',serif; font-size:1.4rem; color:var(--tan); border:3px solid var(--tan); }
 .leader-name { font-family:'Cinzel',serif; color:var(--purple-dk); font-size:0.95rem; margin-bottom:0.2rem; }
 .leader-role { font-family:'Raleway',sans-serif; font-size:0.68rem; color:var(--purple-lt); font-weight:700; text-transform:uppercase; letter-spacing:0.08em; margin-bottom:0.4rem; }
 .leader-church { font-size:0.82rem; color:var(--gray); font-style:italic; }

 /* === PRAYER === */
 #prayer { background:linear-gradient(155deg, var(--purple-dk) 0%, #1A0832 50%, var(--purple-dk) 100%); }
 .prayer-inner { max-width:780px; margin:0 auto; text-align:center; }
 .verse-box { background:rgba(255,255,255,0.06); border:1px solid rgba(200,187,138,0.3); border-radius:14px; padding:2.2rem; margin:1.8rem 0; }
 .verse-txt { font-family:'Crimson Text',serif; font-style:italic; font-size:clamp(1.1rem,2.5vw,1.4rem); color:var(--white); line-height:1.75; margin-bottom:0.8rem; }
 .verse-ref { font-family:'Raleway',sans-serif; color:var(--tan); font-weight:700; font-size:0.82rem; letter-spacing:0.08em; }
 .prayer-form { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); border-radius:12px; padding:2rem; margin-top:1.5rem; }
 .prayer-form h3 { font-family:'Cinzel',serif; color:var(--white); font-size:1.25rem; margin-bottom:0.8rem; }
 .prayer-form p { color:rgba(255,255,255,0.6); font-size:0.88rem; margin-bottom:1.4rem; line-height:1.6; }
 .frow { display:flex; gap:0.8rem; margin-bottom:0.75rem; flex-wrap:wrap; }
 .fgroup { flex:1; min-width:150px; }
 .fgroup input, .fgroup textarea {
 width:100%; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.18); border-radius:8px;
 padding:0.7rem 1rem; color:var(--white); font-family:'Crimson Text',serif; font-size:1rem; outline:none; transition:border-color 0.2s;
 }
 .fgroup input::placeholder, .fgroup textarea::placeholder { color:rgba(255,255,255,0.38); }
 .fgroup input:focus, .fgroup textarea:focus { border-color:var(--tan); }
 .fgroup textarea { min-height:95px; resize:vertical; }

 /* === MEDIA === */
 #media { background:var(--white); }
 .media-tabs { display:flex; gap:0.4rem; margin-bottom:1.8rem; flex-wrap:wrap; }
 .tab-btn { font-family:'Raleway',sans-serif; font-size:0.78rem; font-weight:700; letter-spacing:0.05em; text-transform:uppercase; padding:0.45rem 1.1rem; border-radius:18px; border:2px solid transparent; cursor:pointer; transition:all 0.2s; background:var(--off-white); color:var(--gray); }
 .tab-btn.active { background:var(--purple); color:var(--white); border-color:var(--purple); }
 .tab-btn:hover:not(.active) { border-color:var(--purple); color:var(--purple); }
 .media-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(210px, 1fr)); gap:0.9rem; }
 .media-item { border-radius:10px; overflow:hidden; aspect-ratio:4/3; position:relative; cursor:pointer; }
 .media-thumb { width:100%; height:100%; display:flex; align-items:center; justify-content:center; transition:transform 0.3s; padding:1rem; }
 .media-item:hover .media-thumb { transform:scale(1.06); }
 .mt-purple { background:linear-gradient(135deg,var(--purple-dk),var(--purple-lt)); }
 .mt-tan { background:linear-gradient(135deg,var(--tan-dk),var(--tan)); }
 .mt-sky { background:linear-gradient(135deg,var(--sky-dk),var(--sky)); }
 .mt-dark { background:linear-gradient(135deg,#1A0832,#3D1A6B); }
 .media-overlay { position:absolute; inset:0; background:rgba(0,0,0,0.5); display:flex; align-items:flex-end; padding:0.9rem; opacity:0; transition:opacity 0.3s; }
 .media-item:hover .media-overlay { opacity:1; }
 .media-overlay span { color:var(--white); font-family:'Raleway',sans-serif; font-size:0.78rem; font-weight:600; }
 .media-label { font-family:'Cinzel',serif; font-size:0.88rem; font-weight:600; color:var(--white); text-align:center; line-height:1.4; letter-spacing:0.03em; text-shadow:0 2px 8px rgba(0,0,0,0.5); }

 /* === NEWSLETTER === */
 #newsletter { background:var(--purple-dk); padding:4.5rem 2rem; }
 .nl-inner { max-width:580px; margin:0 auto; text-align:center; }
 .nl-inner p { color:rgba(255,255,255,0.65); line-height:1.7; margin-bottom:1.8rem; }
 .nl-form { display:flex; gap:0.5rem; max-width:440px; margin:0 auto; }
 .nl-form input { flex:1; padding:0.8rem 1.2rem; border:2px solid rgba(200,187,138,0.3); border-radius:30px; font-family:'Crimson Text',serif; font-size:1rem; outline:none; background:rgba(255,255,255,0.08); color:var(--white); transition:border-color 0.2s; }
 .nl-form input::placeholder { color:rgba(255,255,255,0.4); }
 .nl-form input:focus { border-color:var(--tan); }
 .nl-form button { background:var(--tan); color:var(--purple-dk); border:none; padding:0.8rem 1.4rem; border-radius:30px; font-family:'Raleway',sans-serif; font-weight:800; font-size:0.8rem; cursor:pointer; transition:background 0.2s; white-space:nowrap; letter-spacing:0.05em; text-transform:uppercase; }
 .nl-form button:hover { background:var(--tan-lt); }

 /* === CONTACT === */
 #contact { background:var(--black); padding:5.5rem 2rem; }
 .contact-grid { display:block; gap:4rem; max-width:980px; margin:0 auto; align-items:start; }
 .contact-info .section-title { color:var(--white); }
 .contact-info > p { color:rgba(255,255,255,0.6); line-height:1.75; margin-bottom:1.5rem; }
 .cdet { display:flex; align-items:flex-start; gap:0.75rem; margin-bottom:1rem; }
 .cdet-icon { width:36px; height:36px; flex-shrink:0; background:rgba(91,45,142,0.3); border:1px solid var(--tan); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:0.95rem; }
 .cdet-txt { color:rgba(255,255,255,0.65); font-size:0.92rem; line-height:1.5; }
 .cdet-txt strong { color:var(--tan); display:block; font-family:'Raleway',sans-serif; font-size:0.65rem; letter-spacing:0.1em; text-transform:uppercase; margin-bottom:0.1rem; }
 .cf-card { background:rgba(255,255,255,0.04); border:1px solid rgba(200,187,138,0.18); border-radius:14px; padding:1.8rem; }
 .cf-card h3 { font-family:'Cinzel',serif; color:var(--white); font-size:1.2rem; margin-bottom:1.3rem; }
 .cfgroup { margin-bottom:0.8rem; }
 .cfgroup input, .cfgroup textarea, .cfgroup select { width:100%; background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.14); border-radius:8px; padding:0.72rem 1rem; color:var(--white); font-family:'Crimson Text',serif; font-size:1rem; outline:none; transition:border-color 0.2s; }
 .cfgroup input::placeholder, .cfgroup textarea::placeholder { color:rgba(255,255,255,0.33); }
 .cfgroup input:focus, .cfgroup textarea:focus, .cfgroup select:focus { border-color:var(--tan); }
 .cfgroup textarea { min-height:100px; resize:vertical; }
 .cfgroup select option { background:#1A0832; }
 .cfrow { display:flex; gap:0.7rem; }
 .cfrow .cfgroup { flex:1; }

 /* === FOOTER === */
 footer { background:#080310; color:rgba(255,255,255,0.45); padding:3rem 2rem 1.5rem; }
 .footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:2.5rem; max-width:1100px; margin:0 auto 2.5rem; }
 .fbrand { }
 .fbrand .flogo { display:flex; align-items:center; gap:0.75rem; margin-bottom:1rem; }
 .fbrand .flogo img { width:44px; height:44px; border-radius:50%; border:2px solid var(--tan); object-fit:cover; }
 .fbrand .flogo span { color:var(--white); font-family:'Cinzel',serif; font-size:0.88rem; line-height:1.3; }
 .fbrand > p { font-size:0.83rem; line-height:1.75; max-width:250px; }
 .fcol h4 { font-family:'Raleway',sans-serif; color:var(--tan); font-size:0.7rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; margin-bottom:0.9rem; }
 .fcol ul { list-style:none; }
 .fcol ul li { margin-bottom:0.45rem; }
 .fcol ul li a { color:rgba(255,255,255,0.45); text-decoration:none; font-size:0.85rem; transition:color 0.2s; }
 .fcol ul li a:hover { color:var(--tan); }
 .fbot { border-top:1px solid rgba(255,255,255,0.07); padding-top:1.4rem; display:flex; justify-content:space-between; align-items:center; max-width:1100px; margin:0 auto; flex-wrap:wrap; gap:0.5rem; }
 .fbot p { font-size:0.75rem; }
 .fsocials { display:flex; gap:0.4rem; }
 .sbtn { width:32px; height:32px; border-radius:50%; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,0.45); text-decoration:none; font-size:0.82rem; transition:background 0.2s, color 0.2s; }
 .sbtn:hover { background:var(--purple); color:var(--tan); border-color:var(--tan); }

 /* === RESPONSIVE === */
 /* === TABLET (max 960px) === */
 @media(max-width:960px){
 #home { grid-template-columns:1fr; padding-top:140px; padding-bottom:4rem; text-align:center; }
 .hero-eyebrow { justify-content:center; }
 .hero-btns { justify-content:center; }
 .hero-verse { margin-left:auto; margin-right:auto; }
 .hero-right { margin-top:2.5rem; }
 .flyer-spotlight img { width: min(340px, 85vw); }
 .revival-inner { grid-template-columns:1fr; }
 .revival-flyer-col img { width: min(360px, 88vw); }
 .revival-cta { justify-content:center; }
 .about-grid { grid-template-columns:1fr; gap:2rem; }
 .contact-grid { grid-template-columns:1fr; gap:2rem; }
 .footer-top { grid-template-columns:1fr 1fr; }
 .events-grid { grid-template-columns:1fr 1fr; }
 .churches-grid { grid-template-columns:1fr 1fr; }
 .leadership-grid { grid-template-columns:1fr 1fr; }
 /* Mission panels stack */
 #mission > div > div[style*="grid-template-columns:1fr 1fr"],
 #mission [style*="grid-template-columns:1fr 1fr"] { grid-template-columns:1fr !important; }
 #mission [style*="grid-template-columns:repeat(4"] { grid-template-columns:1fr 1fr !important; }
 }

 /* === MOBILE (max 680px) === */
 @media(max-width:680px){
 /* Nav */
 .ticker-wrap { display:none; }
 nav { top:0; height:60px; padding:0 1rem; }
 .nav-logo-wrap { width:42px; height:42px; }
 .nav-title .acronym { font-size:0.9rem; }
 .nav-title .full { display:none; }
 .nav-links { display:none; }
 .nav-links.open {
 display:flex; flex-direction:column;
 position:fixed; top:60px; left:0; right:0;
 background:#1A0832; border-top:1px solid rgba(200,187,138,0.2);
 padding:0.75rem; gap:0.15rem;
 max-height:calc(100vh - 60px); overflow-y:auto;
 z-index:999;
 }
 .nav-links.open a { padding:0.65rem 1rem; border-radius:6px; font-size:0.8rem; }
 .hamburger { display:flex; }

 /* Hero */
 #home { padding-top:80px; padding-left:1.2rem; padding-right:1.2rem; }
 h1 { font-size:1.9rem; }
 .hero-sub { font-size:0.95rem; }
 .hero-verse { font-size:0.85rem; }
 .hero-btns { flex-direction:column; align-items:center; gap:0.75rem; }
 .btn-gold, .btn-ghost { width:100%; max-width:280px; text-align:center; }
 .flyer-spotlight img { width:min(300px, 90vw); }
 .flyer-badge { font-size:0.58rem; padding:0.35rem 0.9rem; }

 /* Sections */
 section { padding:3.5rem 1.2rem; }
 .section-title { font-size:1.6rem; }

 /* Revival */
 .revival-inner { gap:2rem; }
 .revival-flyer-col img { width:min(300px, 90vw); }
 .rdl-content span { font-size:0.92rem; }
 .revival-cta { flex-direction:column; align-items:center; }
 .revival-cta .btn-gold, .revival-cta .btn-ghost { width:100%; max-width:280px; text-align:center; }

 /* About */
 .about-pillars { grid-template-columns:1fr; }
 .stat-grid { grid-template-columns:1fr 1fr; }

 /* Events */
 .events-grid { grid-template-columns:1fr; }

 /* Churches */
 .churches-grid { grid-template-columns:1fr; }

 /* Leadership */
 .leadership-grid { grid-template-columns:1fr 1fr; gap:1rem; }
 .leader-avatar { width:58px; height:58px; font-size:1.1rem; }
 .leader-name { font-size:0.85rem; }

 /* Mission panels — fully stacked */
 #mission [style*="grid-template-columns:1fr 1fr"] { grid-template-columns:1fr !important; }
 #mission [style*="grid-template-columns:repeat(4"] { grid-template-columns:1fr 1fr !important; }
 #mission [style*="padding:4rem 3.5rem"] { padding:2.5rem 1.5rem !important; }
 #mission [style*="padding:4rem 3rem"] { padding:2.5rem 1.5rem !important; }

 /* Live Stream */
 .platform-btn { font-size:0.72rem; padding:0.5rem 0.9rem; }

 /* Gallery */
 .media-grid { grid-template-columns:1fr 1fr; }
 .media-label { font-size:0.75rem; }

 /* Newsletter */
 .nl-form { flex-direction:column; }
 .nl-form input, .nl-form button { width:100%; border-radius:8px; }

 /* Contact */
 .cfrow { flex-direction:column; gap:0; }

 /* Footer */
 .footer-top { grid-template-columns:1fr; gap:1.5rem; }
 .fbot { flex-direction:column; text-align:center; gap:1rem; }
 }

 /* === SMALL MOBILE (max 380px) === */
 @media(max-width:380px){
 h1 { font-size:1.6rem; }
 .leadership-grid { grid-template-columns:1fr; }
 .media-grid { grid-template-columns:1fr; }
 .stat-grid { grid-template-columns:1fr; }
 }

 /* === ANIMATIONS & ENTRANCE EFFECTS === */
 /* Fade-up base */
 .anim { opacity:0; transform:translateY(36px); transition:opacity 0.7s ease, transform 0.7s ease; }
 .anim.in { opacity:1; transform:translateY(0); }
 .anim-left { opacity:0; transform:translateX(-40px); transition:opacity 0.7s ease, transform 0.7s ease; }
 .anim-left.in { opacity:1; transform:translateX(0); }
 .anim-right { opacity:0; transform:translateX(40px); transition:opacity 0.7s ease, transform 0.7s ease; }
 .anim-right.in { opacity:1; transform:translateX(0); }
 .anim-scale { opacity:0; transform:scale(0.88); transition:opacity 0.6s ease, transform 0.6s ease; }
 .anim-scale.in { opacity:1; transform:scale(1); }
 /* Staggered delays */
 .d1{transition-delay:0.1s} .d2{transition-delay:0.2s} .d3{transition-delay:0.3s}
 .d4{transition-delay:0.4s} .d5{transition-delay:0.5s} .d6{transition-delay:0.6s}
 .d7{transition-delay:0.7s} .d8{transition-delay:0.8s}

 /* Floating cross in hero */
 @keyframes float-cross { 0%,100%{transform:translateY(0) rotate(0deg)} 33%{transform:translateY(-18px) rotate(1deg)} 66%{transform:translateY(-8px) rotate(-1deg)} }

 /* Hero text typewriter shimmer */
 @keyframes shimmer { 0%{background-position:200% center} 100%{background-position:-200% center} }
 .shimmer-text {
 background: linear-gradient(90deg, var(--tan) 0%, #fff 40%, var(--tan) 60%, var(--tan-dk) 100%);
 background-size: 200% auto;
 -webkit-background-clip: text; -webkit-text-fill-color: transparent;
 background-clip: text;
 animation: shimmer 4s linear infinite;
 }

 /* Pulse rings on hero seal */
 @keyframes ring-pulse { 0%{transform:scale(1);opacity:0.5} 100%{transform:scale(1.6);opacity:0} }
 .ring-pulse {
 position:absolute; inset:-12px; border-radius:50%;
 border:2px solid var(--tan);
 animation:ring-pulse 2.5s ease-out infinite;
 pointer-events:none;
 }
 .ring-pulse.r2 { animation-delay:0.8s; }
 .ring-pulse.r3 { animation-delay:1.6s; }

 /* Flyer entrance */
 @keyframes flyer-enter { 0%{opacity:0;transform:perspective(800px) rotateY(-15deg) translateX(60px)} 100%{opacity:1;transform:perspective(800px) rotateY(0deg) translateX(0)} }
 .flyer-spotlight { animation: flyer-enter 1.1s cubic-bezier(0.22,1,0.36,1) 0.3s both; }

 /* Glow pulse on revival section */
 @keyframes glow-pulse { 0%,100%{box-shadow:0 0 30px rgba(200,187,138,0.1),inset 0 0 30px rgba(91,45,142,0.05)} 50%{box-shadow:0 0 60px rgba(200,187,138,0.25),inset 0 0 60px rgba(91,45,142,0.15)} }
 #revival { animation: glow-pulse 5s ease-in-out infinite; }

 /* Stat counters */
 .stat-num { transition: transform 0.3s; }
 .stat-num:hover { transform: scale(1.15); }

 /* Card hover lifts */
 .event-card { transition: transform 0.25s cubic-bezier(0.22,1,0.36,1), box-shadow 0.25s ease; }
 .church-card { transition: transform 0.25s cubic-bezier(0.22,1,0.36,1), box-shadow 0.25s ease; }
 .leader-card { transition: transform 0.25s cubic-bezier(0.22,1,0.36,1), box-shadow 0.25s ease; }
 .event-card:hover { transform:translateY(-8px) scale(1.01); box-shadow:0 20px 50px rgba(91,45,142,0.18); }
 .church-card:hover { transform:translateY(-6px) scale(1.01); box-shadow:0 16px 40px rgba(91,45,142,0.14); }
 .leader-card:hover { transform:translateY(-6px) scale(1.02); box-shadow:0 16px 40px rgba(91,45,142,0.14); }

 /* Leader avatar spin on hover */
 .leader-avatar { transition: transform 0.4s ease, box-shadow 0.4s ease; }
 .leader-card:hover .leader-avatar { transform: rotate(360deg) scale(1.1); box-shadow:0 0 20px rgba(200,187,138,0.5); }

 /* Church icon bounce */
 .church-card:hover .church-icon { animation: bounce-icon 0.5s ease; }
 @keyframes bounce-icon { 0%,100%{transform:translateY(0)} 40%{transform:translateY(-8px)} 70%{transform:translateY(-4px)} }

 /* Button ripple */
 .btn-gold, .btn-ghost, button.btn-gold {
 position:relative; overflow:hidden;
 }
 .btn-gold::after, .btn-ghost::after {
 content:''; position:absolute; inset:0; border-radius:inherit;
 background:rgba(255,255,255,0.2);
 transform:scaleX(0); transform-origin:left;
 transition:transform 0.4s ease;
 }
 .btn-gold:hover::after, .btn-ghost:hover::after { transform:scaleX(1); }

 /* Nav link underline slide */
 .nav-links a { position:relative; }
 .nav-links a:not(.nav-cta)::after { content:''; position:absolute; bottom:0; left:0.7rem; right:0.7rem; height:1px; background:var(--tan); transform:scaleX(0); transition:transform 0.3s ease; }
 .nav-links a:not(.nav-cta):hover::after { transform:scaleX(1); }

 /* Revival detail rows slide in */
 .revival-detail-list li { transition: transform 0.3s ease, background 0.3s ease; border-radius:8px; padding-left:0.5rem; padding-right:0.5rem; }
 .revival-detail-list li:hover { transform:translateX(6px); background:rgba(200,187,138,0.07); }

 /* Section divider grow */
 .divider { transition: width 0.8s ease; }
 .divider.grown { width: 120px; }

 /* Flyer glow on hover */
 .flyer-spotlight:hover {
 filter: drop-shadow(0 24px 70px rgba(91,45,142,0.7)) drop-shadow(0 0 40px rgba(200,187,138,0.4));
 }

 /* Scroll progress bar */
 #scroll-progress {
 position:fixed; top:0; left:0; height:3px; z-index:9999;
 background:linear-gradient(90deg, var(--purple), var(--tan), var(--purple-lt));
 width:0%; transition:width 0.1s linear;
 }

 /* Back to top button */
 #back-top {
 position:fixed; bottom:2rem; right:1.5rem; z-index:800;
 width:44px; height:44px; border-radius:50%;
 background:linear-gradient(135deg, var(--purple-dk), var(--purple));
 border:2px solid var(--tan);
 color:var(--tan); font-size:1.1rem;
 display:flex; align-items:center; justify-content:center;
 cursor:pointer; box-shadow:0 4px 20px rgba(91,45,142,0.4);
 opacity:0; transform:translateY(20px);
 transition:opacity 0.3s, transform 0.3s, background 0.2s;
 }
 #back-top.visible { opacity:1; transform:translateY(0); }
 #back-top:hover { background:linear-gradient(135deg, var(--purple), var(--purple-lt)); box-shadow:0 6px 30px rgba(91,45,142,0.6); }

 /* Particle cross floating in hero */
 .cross-particle {
 position:absolute; color:rgba(200,187,138,0.12);
 font-size:1.2rem; pointer-events:none;
 animation:float-particle linear infinite;
 }
 @keyframes float-particle { 0%{transform:translateY(100vh) rotate(0deg);opacity:0} 10%{opacity:1} 90%{opacity:1} 100%{transform:translateY(-100px) rotate(360deg);opacity:0} }

 /* Prayer form glow on focus */
 .fgroup input:focus, .fgroup textarea:focus {
 box-shadow: 0 0 0 3px rgba(200,187,138,0.2);
 }

 /* Media item overlay always visible on touch */
 @media(hover:none){
 .media-overlay { opacity:1; background:rgba(0,0,0,0.35); }
 }


 /* === GIVELIFY POPUP === */
 #give-popup-overlay {
 display:none; position:fixed; inset:0; z-index:9999;
 background:rgba(10,4,25,0.75); backdrop-filter:blur(6px);
 align-items:center; justify-content:center; padding:1rem;
 }
 #give-popup-overlay.active { display:flex; }
 #give-popup {
 background:#FFFFFF; border-radius:20px; overflow:hidden;
 max-width:860px; width:100%; box-shadow:0 40px 100px rgba(0,0,0,0.4);
 display:block;
 animation: popup-enter 0.45s cubic-bezier(0.22,1,0.36,1) both;
 position:relative;
 }
 @keyframes popup-enter { from{opacity:0;transform:scale(0.88) translateY(30px)} to{opacity:1;transform:scale(1) translateY(0)} }
 #give-popup-close {
 position:absolute; top:1rem; right:1rem; z-index:10;
 width:36px; height:36px; border-radius:50%;
 background:rgba(0,0,0,0.15); border:none; cursor:pointer;
 display:flex; align-items:center; justify-content:center;
 font-size:1.1rem; color:#333; transition:background 0.2s;
 }
 #give-popup-close:hover { background:rgba(0,0,0,0.28); }

 /* Unified single-panel popup */
 .popup-unified {
 display:grid; grid-template-columns:200px 1fr;
 background:#FFFFFF; min-height:400px;
 }

 /* Logo column — purple left strip */
 .popup-logo-col {
 background:linear-gradient(160deg, var(--purple-dk) 0%, #1A0832 100%);
 display:flex; flex-direction:column; align-items:center;
 justify-content:center; padding:2rem 1.2rem; text-align:center;
 position:relative; overflow:hidden;
 }
 .popup-logo-rings { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; pointer-events:none; }
 .plr { position:absolute; border-radius:50%; border:1px solid rgba(200,187,138,0.15); }
 .plr1 { width:160px; height:160px; animation:ring-pulse 3s ease-out infinite; }
 .plr2 { width:240px; height:240px; animation:ring-pulse 3s ease-out 1s infinite; }
 .popup-logo-img {
 width:110px; height:110px; object-fit:contain;
 filter:drop-shadow(0 0 20px rgba(200,187,138,0.4));
 animation:float-cross 4s ease-in-out infinite;
 position:relative; z-index:2; margin-bottom:1rem;
 }
 .popup-logo-name {
 font-family:'Cinzel',serif; color:var(--tan);
 font-size:0.72rem; font-weight:700; line-height:1.6;
 letter-spacing:0.04em; text-transform:uppercase;
 position:relative; z-index:2; margin:0 0 0.4rem;
 }
 .popup-logo-est {
 font-family:'Raleway',sans-serif; color:rgba(200,187,138,0.55);
 font-size:0.6rem; font-weight:600; letter-spacing:0.12em;
 text-transform:uppercase; margin:0; position:relative; z-index:2;
 }

 /* Content column */
 .popup-content-col {
 padding:2.5rem 2.2rem; display:flex; flex-direction:column;
 justify-content:center; background:#FFFFFF;
 }
 .popup-content-col h2 {
 font-family:'Cinzel',serif; font-size:1.7rem; font-weight:900;
 color:#1A1A1A; line-height:1.15; margin-bottom:0.8rem;
 text-transform:uppercase; letter-spacing:0.02em;
 }
 .popup-content-col h2 span { color:#E8562A; }
 .popup-desc {
 font-family:'Crimson Text',serif; font-size:1.08rem; line-height:1.8;
 color:#444; margin-bottom:1.8rem;
 }
 .popup-ways-label {
 font-family:'Raleway',sans-serif; font-size:0.68rem; font-weight:800;
 letter-spacing:0.18em; text-transform:uppercase; color:#888; margin-bottom:1.2rem;
 }
 .popup-give-options {
 display:block; gap:0;
 border:1px solid #E5E5E5; border-radius:12px; overflow:hidden;
 }
 .popup-give-online {
 padding:1.5rem 1.2rem; text-align:center; cursor:pointer;
 background:#fff; transition:background 0.2s;
 border-right:1px solid #E5E5E5;
 }
 .popup-give-online:hover { background:#FFF5F2; }
 .popup-give-btn {
 display:flex; background:#D4573A; color:#fff;
 font-family:'Raleway',sans-serif; font-weight:800; font-size:0.8rem;
 letter-spacing:0.12em; text-transform:uppercase;
 padding:0.85rem 1.2rem; border-radius:8px; text-decoration:none;
 margin-bottom:0.8rem; transition:background 0.2s, transform 0.15s;
 align-items:center; justify-content:center; gap:0.5rem;
 }
 .popup-give-btn:hover { background:#BF4530; transform:translateY(-1px); }
 .popup-give-online p, .popup-give-inperson p {
 font-family:'Raleway',sans-serif; font-size:0.78rem; color:#444; line-height:1.5; margin:0;
 }
 .popup-give-inperson {
 padding:1.5rem 1.2rem; text-align:center; background:#fff;
 }
 .popup-give-inperson strong {
 display:block; font-family:'Raleway',sans-serif; font-weight:800;
 font-size:0.82rem; letter-spacing:0.06em; text-transform:uppercase;
 color:#1A1A1A; margin-bottom:0.6rem;
 }
 .popup-desc {
 font-family:'Crimson Text',serif; font-size:1.08rem; line-height:1.8;
 color:#333; margin-bottom:1.8rem;
 }
 .popup-ways-label {
 font-family:'Raleway',sans-serif; font-size:0.68rem; font-weight:800;
 letter-spacing:0.18em; text-transform:uppercase; color:#666; margin-bottom:1.2rem;
 }
 .popup-hashtag {
 font-family:'Raleway',sans-serif; font-size:0.72rem; font-weight:700;
 color:#E8562A; margin-top:1.2rem; letter-spacing:0.05em;
 }
 .popup-hashtag {
 font-family:'Raleway',sans-serif; font-size:0.72rem; font-weight:700;
 color:#E8562A; margin-top:1.2rem; letter-spacing:0.05em;
 }

 /* Mobile popup */
 @media(max-width:680px){
 #give-popup { grid-template-columns:1fr; }
 .popup-image-panel { min-height:200px; }
 .popup-content-panel { padding:2rem 1.5rem; }
 .popup-content-panel h2 { font-size:1.5rem; }
 }


 /* === NEW FEATURES: PORTAL, PODCAST, RSVP, GIVING TRACKER === */
/* ============================================================
 DBPMU PORTAL, PODCAST, RSVP & GIVING TRACKER STYLES
 ============================================================ */

/* === MEMBERS PORTAL SECTION === */
#members-portal-section {
 background: linear-gradient(160deg, var(--purple-dk) 0%, #1A0832 100%);
 padding: 5rem 0;
}
#members-portal-section .section-label { color: var(--tan); }
#members-portal-section .section-title { color: var(--white); }
#members-portal-section .divider { background: linear-gradient(90deg, var(--tan), transparent); }

.portal-wrap {
 max-width: 860px;
 margin: 2rem auto 0;
 background: #fff;
 border-radius: 16px;
 overflow: hidden;
 box-shadow: 0 30px 80px rgba(0,0,0,0.4);
}

/* Portal login tabs */
.portal-tabs {
 display: flex;
 background: #f4f0fa;
 border-bottom: 1px solid #e8e0f0;
}
.ptab {
 flex: 1; padding: 1rem;
 background: none; border: none; cursor: pointer;
 font-family: 'Raleway', sans-serif; font-weight: 700;
 font-size: 0.85rem; letter-spacing: 0.08em; text-transform: uppercase;
 color: #888; transition: all 0.2s;
 border-bottom: 3px solid transparent;
}
.ptab.active { color: var(--purple); border-bottom-color: var(--purple); background: #fff; }

.portal-panel { display: none; padding: 2.5rem; text-align: center; }
.portal-panel.active { display: block; }
.portal-icon { font-size: 2.5rem; margin-bottom: 0.8rem; }
.portal-panel h3 {
 font-family: 'Cinzel', serif; font-size: 1.4rem;
 color: var(--purple-dk); margin-bottom: 0.5rem;
}
.portal-panel p { color: #555; font-size: 0.95rem; margin-bottom: 1.5rem; }

/* Portal form inputs */
.portal-form { text-align: left; }
.pfgroup {
 position: relative;
 margin-bottom: 1rem;
}
.pfgroup label {
 display: block;
 font-family: 'Raleway', sans-serif; font-size: 0.72rem;
 font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
 color: #666; margin-bottom: 0.35rem;
}
.pfgroup input,
.pfgroup textarea,
.pfgroup select {
 width: 100%; padding: 0.75rem 1rem;
 border: 1.5px solid #ddd; border-radius: 8px;
 font-family: 'Raleway', sans-serif; font-size: 0.9rem;
 color: #1A1A1A; background: #fff;
 transition: border-color 0.2s, box-shadow 0.2s;
 box-sizing: border-box;
}
.pfgroup input:focus,
.pfgroup textarea:focus,
.pfgroup select:focus {
 outline: none; border-color: var(--purple);
 box-shadow: 0 0 0 3px rgba(91,45,142,0.12);
}
.pfgroup textarea { resize: vertical; min-height: 80px; }
.pf-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap: 0.75rem; }
.pass-toggle {
 position: absolute; right: 0.8rem; top: 50%;
 transform: translateY(-50%); cursor: pointer; font-size: 1rem;
 user-select: none; opacity: 0.5; transition: opacity 0.2s;
}
.pass-toggle:hover { opacity: 1; }
.pfcheck {
 display: flex; justify-content: space-between; align-items: center;
 margin-bottom: 1.2rem;
 font-family: 'Raleway', sans-serif; font-size: 0.82rem; color: #555;
}
.forgot-link { color: var(--purple); text-decoration: none; font-weight: 600; }
.forgot-link:hover { text-decoration: underline; }
.btn-portal {
 width: 100%; padding: 0.9rem;
 background: var(--purple); color: #fff;
 font-family: 'Raleway', sans-serif; font-weight: 800;
 font-size: 0.85rem; letter-spacing: 0.1em; text-transform: uppercase;
 border: none; border-radius: 8px; cursor: pointer;
 transition: background 0.2s, transform 0.15s;
}
.btn-portal:hover { background: var(--purple-lt); transform: translateY(-1px); }
.portal-note {
 font-size: 0.75rem; color: #888; text-align: center;
 margin-top: 0.8rem; font-style: italic;
}
.portal-response {
 padding: 0.8rem 1rem; border-radius: 8px; margin-bottom: 1rem;
 font-family: 'Raleway', sans-serif; font-size: 0.85rem;
 display: none;
}
.portal-response.success { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; display: block; }
.portal-response.error { background: #fef2f2; color: #991b1b; border: 1px solid #fecaca; display: block; }
.portal-restricted { color: #888; font-style: italic; text-align: center; padding: 2rem; }

/* Portal dashboard */
.portal-header {
 display: flex; align-items: center; justify-content: space-between;
 padding: 1.5rem 2rem;
 background: linear-gradient(135deg, var(--purple-dk), var(--purple));
 color: #fff;
}
.portal-header-left { display: flex; align-items: center; gap: 1rem; }
.portal-avatar {
 width: 52px; height: 52px; border-radius: 50%;
 background: var(--tan); color: var(--purple-dk);
 font-family: 'Cinzel', serif; font-weight: 700; font-size: 1.1rem;
 display: flex; align-items: center; justify-content: center;
 flex-shrink: 0;
}
.portal-header h3 { font-size: 1rem; margin: 0 0 0.2rem; font-family: 'Cinzel', serif; }
.portal-header p { font-size: 0.78rem; margin: 0; opacity: 0.75; font-family: 'Raleway', sans-serif; }
.btn-logout {
 font-family: 'Raleway', sans-serif; font-size: 0.72rem; font-weight: 700;
 letter-spacing: 0.08em; text-transform: uppercase;
 background: rgba(255,255,255,0.15); color: #fff;
 border: 1px solid rgba(255,255,255,0.3); border-radius: 6px;
 padding: 0.45rem 1rem; text-decoration: none;
 transition: background 0.2s;
}
.btn-logout:hover { background: rgba(255,255,255,0.25); }

.portal-dash-tabs {
 display: flex; background: #f9f7fc;
 border-bottom: 1px solid #e8e0f0; flex-wrap: wrap;
}
.pdtab {
 padding: 0.85rem 1.2rem; background: none; border: none;
 border-bottom: 3px solid transparent; cursor: pointer;
 font-family: 'Raleway', sans-serif; font-weight: 700;
 font-size: 0.78rem; letter-spacing: 0.06em; text-transform: uppercase;
 color: #888; transition: all 0.2s; white-space: nowrap;
}
.pdtab.active { color: var(--purple); border-bottom-color: var(--purple); background: #fff; }

.pdpanel { display: none; padding: 2rem; } .pdpanel.active { display: block !important; }

.pd-section-title {
 font-family: 'Cinzel', serif; font-size: 1.1rem;
 color: var(--purple-dk); margin: 0 0 1.2rem; padding-bottom: 0.6rem;
 border-bottom: 2px solid #f0eafa;
}
.pd-divider { border: none; border-top: 1px solid #eee; margin: 1.5rem 0; }
.pd-note { font-size: 0.8rem; color: #888; margin-bottom: 1.2rem; font-style: italic; }

/* Directory */
.directory-search { margin-bottom: 1.5rem; }
.directory-search input {
 width: 100%; padding: 0.7rem 1rem; border: 1.5px solid #ddd;
 border-radius: 8px; font-family: 'Raleway', sans-serif; font-size: 0.9rem;
 box-sizing: border-box;
}
.directory-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px,1fr)); gap: 1rem; }
.dir-card {
 display: flex; gap: 0.8rem; align-items: flex-start;
 padding: 1rem; border: 1.5px solid #eee; border-radius: 10px;
 transition: border-color 0.2s, box-shadow 0.2s;
}
.dir-card:hover { border-color: var(--purple-lt); box-shadow: 0 4px 16px rgba(91,45,142,0.08); }
.dir-avatar {
 width: 44px; height: 44px; border-radius: 50%;
 background: var(--purple); color: #fff;
 font-family: 'Cinzel', serif; font-weight: 700; font-size: 0.9rem;
 display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.dir-info strong { display: block; font-family: 'Raleway', sans-serif; font-weight: 700; font-size: 0.88rem; color: #1A1A1A; margin-bottom: 0.2rem; }
.dir-info span { display: block; font-size: 0.78rem; color: #666; }
.dir-info a { display: block; font-size: 0.78rem; color: var(--purple); text-decoration: none; margin-top: 0.2rem; }
.dir-info p { font-size: 0.75rem; color: #888; margin: 0.3rem 0 0; line-height: 1.4; }

/* Resources */
.resource-group { margin-bottom: 2rem; }
.resource-cat-title {
 font-family: 'Raleway', sans-serif; font-weight: 800;
 font-size: 0.8rem; letter-spacing: 0.1em; text-transform: uppercase;
 color: #888; margin-bottom: 0.8rem;
}
.resource-list { display: flex; flex-direction: column; gap: 0.6rem; }
.resource-item {
 display: flex; align-items: center; gap: 1rem;
 padding: 0.8rem 1rem; background: #f9f7fc;
 border-radius: 8px; border: 1px solid #eee;
 transition: background 0.2s;
}
.resource-item:hover { background: #f0eafa; }
.resource-icon { font-size: 1.5rem; flex-shrink: 0; }
.resource-details { flex: 1; }
.resource-details strong { font-family: 'Raleway', sans-serif; font-weight: 700; font-size: 0.88rem; color: #1A1A1A; display: block; }
.resource-details p { font-size: 0.78rem; color: #888; margin: 0.2rem 0 0; }
.resource-download {
 font-family: 'Raleway', sans-serif; font-weight: 700; font-size: 0.72rem;
 letter-spacing: 0.06em; color: var(--purple);
 background: rgba(91,45,142,0.08); border: 1px solid rgba(91,45,142,0.2);
 padding: 0.4rem 0.8rem; border-radius: 6px; text-decoration: none;
 white-space: nowrap; transition: background 0.2s;
}
.resource-download:hover { background: rgba(91,45,142,0.15); }

/* Announcements */
.announcement-item {
 display: flex; gap: 1.2rem;
 padding: 1.2rem 0; border-bottom: 1px solid #f0eafa;
}
.announcement-item:last-child { border-bottom: none; }
.ann-date {
 font-family: 'Raleway', sans-serif; font-size: 0.72rem; font-weight: 700;
 color: var(--purple); letter-spacing: 0.06em; text-transform: uppercase;
 white-space: nowrap; padding-top: 0.2rem; min-width: 90px;
}
.ann-content h5 {
 font-family: 'Cinzel', serif; font-size: 0.95rem;
 color: var(--purple-dk); margin: 0 0 0.5rem;
}
.ann-body { font-size: 0.88rem; color: #444; line-height: 1.6; }
.portal-empty { text-align: center; padding: 3rem 1rem; color: #888; }

/* ============================================================
 SERMON PODCAST SECTION
 ============================================================ */
#sermons-section {
 background: var(--off-white); padding: 5rem 0;
}

.sermon-player-wrap {
 background: var(--purple-dk); border-radius: 16px;
 padding: 2rem; margin-bottom: 2rem;
 display: flex; align-items: center; gap: 1.5rem;
 box-shadow: 0 8px 30px rgba(0,0,0,0.2);
}
.sermon-player-art {
 width: 80px; height: 80px; border-radius: 10px;
 background: var(--purple); overflow: hidden; flex-shrink: 0;
 display: flex; align-items: center; justify-content: center;
 font-size: 2rem;
}
.sermon-player-art img { width: 100%; height: 100%; object-fit: cover; }
.sermon-player-info { flex: 1; }
.sermon-player-info h4 {
 font-family: 'Cinzel', serif; color: var(--white);
 font-size: 1rem; margin: 0 0 0.25rem;
}
.sermon-player-info p {
 font-family: 'Raleway', sans-serif; color: rgba(255,255,255,0.6);
 font-size: 0.78rem; margin: 0;
}
.sermon-player-audio { width: 100%; margin-top: 0.8rem; }
.sermon-player-audio audio { width: 100%; height: 36px; }

.sermons-grid {
 display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
 gap: 1.5rem;
}
.sermon-card {
 background: #fff; border-radius: 12px; overflow: hidden;
 border: 1.5px solid #eee; transition: transform 0.2s, box-shadow 0.2s;
 cursor: pointer;
}
.sermon-card:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(91,45,142,0.12); border-color: var(--purple-lt); }
.sermon-card-top {
 background: linear-gradient(135deg, var(--purple-dk), var(--purple));
 padding: 1.5rem; display: flex; align-items: center; gap: 1rem;
}
.sermon-ep-badge {
 background: var(--tan); color: var(--purple-dk);
 font-family: 'Raleway', sans-serif; font-weight: 800;
 font-size: 0.65rem; letter-spacing: 0.1em; text-transform: uppercase;
 padding: 0.25rem 0.6rem; border-radius: 4px; white-space: nowrap;
}
.sermon-card-title {
 font-family: 'Cinzel', serif; color: #fff;
 font-size: 0.95rem; line-height: 1.3; flex: 1;
}
.sermon-card-body { padding: 1rem 1.2rem; }
.sermon-meta-row {
 display: flex; flex-wrap: wrap; gap: 0.5rem;
 margin-bottom: 0.8rem;
}
.sermon-meta-item {
 font-family: 'Raleway', sans-serif; font-size: 0.72rem; color: #666;
 background: #f4f0fa; padding: 0.2rem 0.6rem; border-radius: 20px;
}
.sermon-excerpt {
 font-size: 0.82rem; color: #555; line-height: 1.5; margin-bottom: 1rem;
}
.sermon-actions { display: flex; gap: 0.6rem; }
.btn-play {
 flex: 1; padding: 0.6rem;
 background: var(--purple); color: #fff;
 font-family: 'Raleway', sans-serif; font-weight: 700;
 font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase;
 border: none; border-radius: 6px; cursor: pointer;
 transition: background 0.2s;
}
.btn-play:hover { background: var(--purple-lt); }
.btn-sermon-dl {
 padding: 0.6rem 0.8rem;
 background: #f4f0fa; color: var(--purple);
 font-family: 'Raleway', sans-serif; font-weight: 700; font-size: 0.75rem;
 border: 1px solid #e0d8f0; border-radius: 6px; text-decoration: none;
 transition: background 0.2s;
}
.btn-sermon-dl:hover { background: #e8e0f5; }

.podcast-feed-bar {
 margin-top: 2.5rem; padding: 1.2rem 1.5rem;
 background: var(--purple-dk); border-radius: 10px;
 display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem;
}
.podcast-feed-bar p {
 font-family: 'Raleway', sans-serif; font-size: 0.82rem; color: rgba(255,255,255,0.7);
 margin: 0;
}
.podcast-feed-bar p strong { color: var(--tan); }
.btn-rss {
 font-family: 'Raleway', sans-serif; font-weight: 700; font-size: 0.72rem;
 letter-spacing: 0.08em; text-transform: uppercase;
 background: var(--tan); color: var(--purple-dk);
 padding: 0.5rem 1.2rem; border-radius: 6px; text-decoration: none;
 transition: opacity 0.2s; white-space: nowrap;
}
.btn-rss:hover { opacity: 0.85; }

/* ============================================================
 EVENT RSVP MODAL
 ============================================================ */
#rsvp-modal-overlay {
 display: none; position: fixed; inset: 0; z-index: 9000;
 background: rgba(10,4,25,0.75); backdrop-filter: blur(6px);
 align-items: center; justify-content: center; padding: 1rem;
}
#rsvp-modal-overlay.active { display: flex; }
#rsvp-modal {
 background: #fff; border-radius: 16px; max-width: 560px; width: 100%;
 overflow: hidden; box-shadow: 0 40px 80px rgba(0,0,0,0.4);
 animation: popup-enter 0.4s cubic-bezier(0.22,1,0.36,1) both;
}
.rsvp-modal-header {
 background: linear-gradient(135deg, var(--purple-dk), var(--purple));
 padding: 1.5rem 2rem; color: #fff;
 display: flex; align-items: center; justify-content: space-between;
}
.rsvp-modal-header h3 {
 font-family: 'Cinzel', serif; font-size: 1.1rem; margin: 0;
 color: #fff;
}
.rsvp-modal-header p {
 font-family: 'Raleway', sans-serif; font-size: 0.78rem;
 margin: 0.3rem 0 0; opacity: 0.75; color: #fff;
}
.rsvp-close-btn {
 background: rgba(255,255,255,0.15); border: none; color: #fff;
 width: 32px; height: 32px; border-radius: 50%; cursor: pointer;
 font-size: 1rem; flex-shrink: 0;
}
.rsvp-modal-body { padding: 2rem; }
#rsvp-response { margin-bottom: 1rem; }
.btn-rsvp-submit {
 width: 100%; padding: 0.9rem;
 background: var(--purple); color: #fff;
 font-family: 'Raleway', sans-serif; font-weight: 800;
 font-size: 0.85rem; letter-spacing: 0.1em; text-transform: uppercase;
 border: none; border-radius: 8px; cursor: pointer;
 transition: background 0.2s;
}
.btn-rsvp-submit:hover { background: var(--purple-lt); }

/* RSVP button on event cards */
.btn-rsvp {
 display: inline-block;
 margin-top: 0.5rem; padding: 0.5rem 1.2rem;
 background: var(--purple); color: #fff;
 font-family: 'Raleway', sans-serif; font-weight: 700;
 font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase;
 border: none; border-radius: 6px; cursor: pointer;
 transition: background 0.2s;
}
.btn-rsvp:hover { background: var(--purple-lt); }

/* ============================================================
 GIVING TRACKER SECTION
 ============================================================ */
#giving-tracker {
 background: linear-gradient(160deg, #0A0318 0%, var(--purple-dk) 60%, #0A0318 100%);
 padding: 5rem 0;
}
.giving-stats-grid {
 display: grid; grid-template-columns: repeat(auto-fit, minmax(200px,1fr));
 gap: 1.5rem; margin: 2rem 0;
}
.giving-stat-card {
 background: rgba(255,255,255,0.07); border: 1px solid rgba(200,187,138,0.2);
 border-radius: 12px; padding: 1.5rem; text-align: center;
 backdrop-filter: blur(10px);
}
.giving-stat-num {
 font-family: 'Cinzel', serif; font-size: 2.2rem; font-weight: 900;
 color: var(--tan); line-height: 1; margin-bottom: 0.4rem;
}
.giving-stat-label {
 font-family: 'Raleway', sans-serif; font-size: 0.72rem; font-weight: 700;
 letter-spacing: 0.12em; text-transform: uppercase;
 color: rgba(255,255,255,0.5);
}
.giving-progress-wrap { margin: 2rem 0; }
.giving-progress-label {
 display: flex; justify-content: space-between;
 font-family: 'Raleway', sans-serif; font-size: 0.78rem; color: rgba(255,255,255,0.6);
 margin-bottom: 0.6rem;
}
.giving-progress-bar {
 height: 12px; background: rgba(255,255,255,0.1);
 border-radius: 6px; overflow: hidden;
}
.giving-progress-fill {
 height: 100%;
 background: linear-gradient(90deg, var(--tan), #E8562A);
 border-radius: 6px;
 transition: width 1.5s cubic-bezier(0.22,1,0.36,1);
 width: 0%;
}
.giving-recent-list { margin-top: 2rem; }
.giving-recent-item {
 display: flex; align-items: center; justify-content: space-between;
 padding: 0.8rem 0; border-bottom: 1px solid rgba(255,255,255,0.08);
 font-family: 'Raleway', sans-serif;
}
.giving-recent-item:last-child { border-bottom: none; }
.gri-donor { font-size: 0.88rem; color: rgba(255,255,255,0.8); }
.gri-amount { font-weight: 700; color: var(--tan); font-size: 0.9rem; }
.gri-date { font-size: 0.72rem; color: rgba(255,255,255,0.4); }

/* ============================================================
 RESPONSIVE
 ============================================================ */
@media(max-width: 680px) {
 .portal-dash-tabs { overflow-x: auto; flex-wrap: nowrap; }
 .pdtab { padding: 0.7rem 0.9rem; font-size: 0.7rem; }
 .directory-grid { grid-template-columns: 1fr; }
 .pf-row { grid-template-columns: 1fr; }
 .sermons-grid { grid-template-columns: 1fr; }
 .sermon-player-wrap { flex-direction: column; text-align: center; }
 .podcast-feed-bar { flex-direction: column; text-align: center; }
 .portal-header { flex-direction: column; gap: 1rem; text-align: center; }
 .giving-stats-grid { grid-template-columns: 1fr 1fr; }
 .announcement-item { flex-direction: column; gap: 0.3rem; }
 .ann-date { min-width: unset; }
}


 /* === DROPDOWN NAV === */
 .nav-dropdown { position: relative; }

 .nav-drop-toggle { display: flex; align-items: center; gap: 0.3rem; cursor: pointer; }
 .nav-caret {
 display: inline-block; width: 0; height: 0;
 border-left: 4px solid transparent;
 border-right: 4px solid transparent;
 border-top: 5px solid currentColor;
 margin-left: 4px; vertical-align: middle; opacity: 0.75;
 }
 .nav-dropdown:hover .nav-caret,
 .nav-dropdown.open .nav-caret { transform: rotate(180deg); }

 .nav-submenu {
 display: none;
 position: absolute; top: 100%; left: 50%;
 transform: translateX(-50%);
 background: #fff;
 border-radius: 12px;
 box-shadow: 0 20px 60px rgba(0,0,0,0.18), 0 0 0 1px rgba(91,45,142,0.08);
 padding: 0.6rem 0;
 min-width: 210px;
 z-index: 1000;
 padding-top: 14px; /* covers the gap so mouse doesn't lose hover */
 margin-top: 0px;
 animation: dropdown-in 0.2s cubic-bezier(0.22,1,0.36,1) both;
 }
 /* Invisible bridge fills gap between nav link and submenu */
 .nav-submenu::before {
 content: '';
 position: absolute; top: 0; left: 0; right: 0;
 height: 14px; background: transparent;
 }
 /* The visible arrow */
 .nav-submenu::after {
 content: '';
 position: absolute; top: 8px; left: 50%; transform: translateX(-50%);
 border-left: 6px solid transparent;
 border-right: 6px solid transparent;
 border-bottom: 6px solid #fff;
 pointer-events: none;
 }
 @keyframes dropdown-in {
 from { opacity:0; transform: translateX(-50%) translateY(-8px); }
 to { opacity:1; transform: translateX(-50%) translateY(0); }
 }

 /* Show on hover (desktop) */
 .nav-dropdown:hover .nav-submenu { display: block; }
 /* Keep submenu open while mouse travels to it */
 .nav-dropdown { padding-bottom: 0; }
 .nav-drop-toggle { padding-bottom: 0.5rem; margin-bottom: -0.5rem; }
 /* Show on .open class (mobile/click) */
 .nav-dropdown.open .nav-submenu { display: block; }

 /* triangle now handled by ::after */

 .nav-submenu li { list-style: none; }
 .nav-submenu li a {
 display: flex; align-items: center; gap: 0.65rem;
 padding: 0.6rem 1.1rem;
 font-family: 'Raleway', sans-serif; font-size: 0.8rem;
 font-weight: 600; color: #333; text-decoration: none;
 transition: background 0.15s, color 0.15s;
 white-space: nowrap;
 }
 .nav-submenu li a:hover { background: #f4f0fa; color: var(--purple); }
 .nsicon { font-size: 0.9rem; width: 1.2rem; text-align: center; flex-shrink: 0; pointer-events: none; }

 /* Submenu divider line */
 .nav-submenu li + li { border-top: 1px solid #f5f5f5; }

 /* Mobile: submenu stacks inline */
 @media(max-width: 680px) {
 .nav-submenu {
 position: static; transform: none;
 box-shadow: none; border-radius: 0;
 background: rgba(255,255,255,0.06);
 padding: 0; min-width: unset;
 animation: none;
 }
 .nav-submenu::before { display: none; }
 .nav-submenu li a {
 color: rgba(255,255,255,0.8); padding: 0.5rem 1rem 0.5rem 2rem;
 font-size: 0.75rem;
 }
 .nav-submenu li a:hover { background: rgba(255,255,255,0.08); color: var(--tan); }
 .nav-submenu li + li { border-top: none; }
 .nav-dropdown.open .nav-submenu { display: block; }
 .nav-dropdown:hover .nav-submenu { display: none; }
 }


 


 /* === MISSION PILLARS === */
 .about-pillars {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 2rem; margin-top: 2.5rem; text-align: center;
 }
 @media(max-width:700px){ .about-pillars { grid-template-columns: repeat(2,1fr); } }
 @media(max-width:420px){ .about-pillars { grid-template-columns: 1fr; } }
 .pillar { display: flex; flex-direction: column; align-items: center; }
    .pillar h4 {
 font-family: 'Cinzel', serif; font-size: 0.88rem; font-weight: 700;
 color: var(--purple-dk); margin: 0 0 0.45rem;
 text-transform: capitalize; letter-spacing: 0.01em;
 }
 .pillar p { font-size: 0.85rem; color: #666; line-height: 1.55; max-width: 170px; margin: 0 auto; }

 
/* Leadership mini editor */
.leadership-editor-wrap{max-width:980px;margin:1.5rem auto 0;text-align:left;}
.leadership-editor-toggle{margin:0 auto 1rem;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;}
.leadership-editor{display:none;background:#fff;border:1px solid rgba(91,45,142,0.12);border-radius:16px;padding:1rem;box-shadow:0 10px 30px rgba(0,0,0,0.08);}
.leadership-editor.open{display:block;}
.leadership-editor h3{margin:0 0 .35rem;color:var(--purple);font-size:1.05rem;}
.leadership-editor p{margin:.2rem 0 .9rem;color:#666;font-size:.9rem;}
.leadership-editor-grid{display:grid;grid-template-columns:1.3fr 1fr auto;gap:.75rem;align-items:end;margin-bottom:.75rem;}
.leadership-editor-grid label{display:block;font-size:.8rem;color:#555;margin-bottom:.25rem;font-weight:600;}
.leadership-editor-grid input{width:100%;padding:.7rem .75rem;border:1px solid #d8d8d8;border-radius:10px;font-size:.95rem;}
.leadership-editor-actions,.leadership-editor-top-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;}
.leadership-editor-top-actions{margin:.8rem 0 1rem;}
.leadership-editor small{display:block;color:#777;margin-top:.6rem;line-height:1.4;}
.leadership-remove-btn{padding:.72rem .95rem;border:none;border-radius:10px;background:#f4f4f4;cursor:pointer;font-weight:600;}
.leadership-remove-btn:hover{background:#ececec;}
@media (max-width:760px){
 .leadership-editor-grid{grid-template-columns:1fr;}
 .leadership-remove-btn{width:100%;}
}


/* Event quick editor */
.event-editor-wrap{margin:1rem 0 1.5rem;}
.event-editor{display:none;background:#fff;border:1px solid #e7e1d6;border-radius:16px;padding:1rem;box-shadow:0 10px 30px rgba(0,0,0,.08);}
.event-editor.is-open{display:block;}
.event-editor h3{margin:.2rem 0 .5rem;}
.event-editor p{margin:0 0 .9rem;color:#555;line-height:1.5;}
.event-editor-top-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:.8rem 0 1rem;}
.event-editor-row{display:grid;grid-template-columns:1.4fr 1.2fr 1fr 1fr auto;gap:.65rem;align-items:end;padding:.8rem;border:1px solid #eee;border-radius:12px;margin-bottom:.75rem;background:#faf8f3;}
.event-editor-field label{display:block;font-size:.82rem;font-weight:700;color:#444;margin:0 0 .25rem;}
.event-editor-field input{width:100%;padding:.72rem .8rem;border:1px solid #d7d7d7;border-radius:10px;font:inherit;}
.event-editor small{display:block;color:#777;margin-top:.6rem;line-height:1.4;}
.event-remove-btn{padding:.72rem .95rem;border:none;border-radius:10px;background:#f4f4f4;cursor:pointer;font-weight:600;}
.event-remove-btn:hover{background:#ececec;}
@media (max-width:900px){.event-editor-row{grid-template-columns:1fr 1fr;}.event-remove-btn{width:100%;}}
@media (max-width:640px){.event-editor-row{grid-template-columns:1fr;}}


/* === ADMIN EDITOR TOOLS === */
#dbpmu-admin-launcher{position:fixed;right:18px;bottom:18px;z-index:12000;background:linear-gradient(135deg,var(--purple-dk),var(--purple));color:#fff;border:2px solid var(--tan);border-radius:999px;padding:0.9rem 1.2rem;font-family:'Raleway',sans-serif;font-size:0.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 14px 40px rgba(0,0,0,.28)}
#dbpmu-admin-panel{position:fixed;inset:0;z-index:13000;display:none;background:rgba(6,6,14,.72);backdrop-filter:blur(4px)}
#dbpmu-admin-panel.open{display:block}
#dbpmu-admin-shell{position:absolute;right:18px;top:18px;bottom:18px;width:min(960px,calc(100vw - 36px));background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.35);display:grid;grid-template-columns:220px 1fr}
.dbpmu-admin-sidebar{background:linear-gradient(180deg,var(--purple-dk),#1a0832);padding:1.25rem 1rem;color:#fff}
.dbpmu-admin-sidebar h3{font-family:'Cinzel',serif;font-size:1.1rem;margin:0 0 1rem;color:var(--tan)}
.dbpmu-admin-tab{display:block;width:100%;text-align:left;background:transparent;border:none;color:rgba(255,255,255,.74);padding:.8rem .9rem;border-radius:10px;font-family:'Raleway',sans-serif;font-weight:800;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;margin-bottom:.35rem}
.dbpmu-admin-tab.active,.dbpmu-admin-tab:hover{background:rgba(255,255,255,.1);color:#fff}
.dbpmu-admin-main{display:flex;flex-direction:column;min-height:0}
.dbpmu-admin-topbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #ece7f3;background:#faf8fd;gap:1rem}
.dbpmu-admin-topbar h4{margin:0;font-family:'Cinzel',serif;color:var(--purple-dk);font-size:1.1rem}
.dbpmu-admin-actions{display:flex;flex-wrap:wrap;gap:.55rem}
.dbpmu-admin-actions button{border:none;border-radius:999px;padding:.7rem 1rem;font-family:'Raleway',sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
#dbpmu-save-preview{background:var(--purple);color:#fff}
#dbpmu-download-admin{background:var(--tan);color:var(--purple-dk)}
#dbpmu-download-public{background:#111827;color:#fff}
#dbpmu-admin-close{background:#e5e7eb;color:#111827}
.dbpmu-admin-body{padding:1rem 1.25rem 1.4rem;overflow:auto}
.dbpmu-panel{display:none}
.dbpmu-panel.active{display:block}
.dbpmu-help{font-size:.88rem;color:#6b7280;line-height:1.6;margin:0 0 1rem}
.dbpmu-editor-list{display:flex;flex-direction:column;gap:1rem}
.dbpmu-editor-card{border:1px solid #e6e2ef;border-radius:14px;padding:1rem;background:#fff}
.dbpmu-editor-card h5{margin:0 0 .8rem;font-family:'Cinzel',serif;color:var(--purple-dk);font-size:1rem}
.dbpmu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.dbpmu-field{display:flex;flex-direction:column;gap:.35rem}
.dbpmu-field label{font-family:'Raleway',sans-serif;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}
.dbpmu-field input,.dbpmu-field textarea,.dbpmu-field select{width:100%;border:1.5px solid #ddd;border-radius:10px;padding:.72rem .8rem;font-family:'Raleway',sans-serif;font-size:.9rem}
.dbpmu-field textarea{min-height:90px;resize:vertical}
.dbpmu-inline-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}
.dbpmu-inline-actions button{border:none;border-radius:999px;padding:.58rem .9rem;font-family:'Raleway',sans-serif;font-weight:800;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.dbpmu-add{background:#dcfce7;color:#166534}
.dbpmu-remove{background:#fee2e2;color:#991b1b}
.dbpmu-move{background:#ede9fe;color:#5b21b6}
.dbpmu-hide{background:#f3f4f6;color:#374151}
.dbpmu-note{margin-top:.75rem;font-size:.8rem;color:#6b7280;font-style:italic}
.dbpmu-status{margin-left:auto;font-family:'Raleway',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#166534}
@media(max-width:900px){#dbpmu-admin-shell{left:12px;right:12px;top:12px;bottom:12px;width:auto;grid-template-columns:1fr}.dbpmu-admin-sidebar{display:flex;flex-wrap:wrap;gap:.4rem}.dbpmu-admin-sidebar h3{width:100%}.dbpmu-admin-tab{width:auto;margin-bottom:0}.dbpmu-grid{grid-template-columns:1fr}}
.btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 999px;
  font-family: 'Raleway', sans-serif;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 12px 20px;
  transition: all 0.2s ease;
}

.btn-primary:hover {
  background: var(--purple-dk);
  border-color: var(--purple-dk);
}

.btn-secondary{
background:#fff;
color:var(--purple-dk);
border:2px solid rgba(91,45,142,0.18);
}
.btn-secondary:hover{
border-color:var(--purple);
color:var(--purple);
}

/* Revival Countdown */
.revival-countdown{max-width:680px;margin:2rem auto;padding:1.25rem 1rem 1rem;background:linear-gradient(180deg,#563691 0%,#452a76 100%);border-radius:22px;border:1px solid rgba(215,202,161,.22);box-shadow:0 14px 30px rgba(0,0,0,.14);}
.revival-countdown-head{text-align:center;margin-bottom:1rem;}
.revival-countdown-title{font-family:'Cinzel',serif;font-size:1.5rem;color:#e4d7a5;letter-spacing:.02em;}
.revival-countdown-date{margin-top:.35rem;font-size:.95rem;color:rgba(255,255,255,.82);}
.revival-countdown-grid{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:.85rem;max-width:520px;margin:0 auto;}
.revival-time-card{padding:1rem .75rem;border-radius:18px;background:rgba(255,255,255,.08);text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);animation:revivalFloat 4s ease-in-out infinite;}
.revival-time-card:nth-child(2){animation-delay:.2s;}
.revival-time-card:nth-child(3){animation-delay:.4s;}
.revival-time-card:nth-child(4){animation-delay:.6s;}
.revival-time-value{font-family:'Cinzel',serif;font-size:2.4rem;line-height:1;color:#fff;text-shadow:0 0 18px rgba(255,255,255,.08);transition:transform .22s ease,opacity .22s ease;}
.revival-time-label{margin-top:.45rem;font-size:.88rem;letter-spacing:.12em;text-transform:uppercase;color:#d7caa1;}
.revival-countdown-text{text-align:center;margin-top:1rem;font-size:.98rem;color:rgba(255,255,255,.84);}
@keyframes revivalFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-4px);}}
@media (max-width:640px){
.revival-countdown{max-width:92%;padding:1rem .85rem;}
.revival-countdown-title{font-size:1.2rem;}
.revival-countdown-date{font-size:.88rem;}
.revival-countdown-grid{gap:.7rem;}
.revival-time-card{padding:.85rem .6rem;}
.revival-time-value{font-size:2rem;}
.revival-time-label{font-size:.8rem;}
}
.compact-countdown{
max-width:760px;
margin:1.5rem auto 2rem auto;
padding:1.1rem 1.25rem;
background:linear-gradient(180deg,#563691 0%,#452a76 100%);
border-radius:20px;
border:1px solid rgba(215,202,161,.2);
box-shadow:0 12px 28px rgba(0,0,0,.12);
text-align:center;
}
.compact-countdown-head{margin-bottom:.8rem;}
.compact-countdown-title{
font-family:'Cinzel',serif;
font-size:1.25rem;
color:#e4d7a5;
line-height:1.2;
}
.compact-countdown-date{
margin-top:.3rem;
font-size:.92rem;
color:rgba(255,255,255,.8);
}
.compact-countdown-values{
display:flex;
align-items:center;
justify-content:center;
flex-wrap:wrap;
gap:.45rem;
margin:.25rem 0 .5rem 0;
}
.compact-countdown-item{
display:flex;
align-items:baseline;
gap:.35rem;
padding:.4rem .55rem;
border-radius:12px;
background:rgba(255,255,255,.06);
}
.compact-countdown-number{
font-family:'Cinzel',serif;
font-size:2rem;
line-height:1;
color:#fff;
transition:transform .2s ease,opacity .2s ease;
text-shadow:0 0 12px rgba(255,255,255,.08);
}
.compact-countdown-label{
font-size:.82rem;
letter-spacing:.08em;
text-transform:uppercase;
color:#d7caa1;
}
.compact-countdown-divider{
color:rgba(215,202,161,.75);
font-size:1rem;
padding:0 .1rem;
}
.compact-countdown-text{
margin-top:.55rem;
font-size:.95rem;
color:rgba(255,255,255,.82);
}
.live-player-inner{
display:flex;
justify-content:center;
}

.broadcast-banner{
text-align:center;
font-family:'Cinzel',serif;
font-size:.8rem;
letter-spacing:.18em;
text-transform:uppercase;
color:#cdbf88;
margin-bottom:.6rem;
opacity:.85;
}

.broadcast-banner{
text-align:center;
font-family:'Cinzel',serif;
font-size:.8rem;
letter-spacing:.18em;
text-transform:uppercase;
color:#cdbf88;
margin-bottom:.6rem;
opacity:.9;
}

.announcement-label{
text-align:center;
font-family:'Cinzel',serif;
color:#e4d7a5;
font-size:.95rem;
letter-spacing:.06em;
margin-bottom:.3rem;
}

.announcement-instruction{
text-align:center;
margin:.3rem 0 .7rem 0;
font-size:.95rem;
color:rgba(255,255,255,.85);
font-style:italic;
}
.live-player video{
width:100%;
max-width:420px;
height:auto;
border-radius:14px;
background:#000;
}

.announcement-label{
text-align:center;
margin-bottom:.6rem;
font-family:'Cinzel', serif;
color:#e4d7a5;
font-size:.95rem;
letter-spacing:.06em;
}

@media (max-width:640px){
.compact-countdown{
max-width:92%;
padding:1rem .85rem;
}
.compact-countdown-title{font-size:1.05rem;}
.compact-countdown-date{font-size:.84rem;}
.compact-countdown-values{
display:grid;
grid-template-columns:repeat(2,minmax(120px,1fr));
gap:.65rem;
max-width:360px;
margin:.4rem auto .5rem auto;
}
.compact-countdown-item{
justify-content:center;
padding:.7rem .5rem;
}
.compact-countdown-divider{
display:none;
}
.compact-countdown-number{
font-size:1.7rem;
}
.compact-countdown-label{
font-size:.76rem;
}
}