:root{--blue:#07145a;--blue2:#0d2aa1;--deep:#030828;--gold:#d6bb5c;--gold2:#f5dc7d;--green:#16a34a;--ink:#07113f;--muted:#5e6688;--soft:#f6f8ff;--white:#fff;--shadow:0 24px 70px rgba(7,17,63,.14);--radius:24px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip-link{position:absolute;top:-100px;left:1rem;background:#fff;padding:.75rem 1rem;z-index:999}.skip-link:focus{top:1rem}.topbar{background:var(--deep);color:#e9eeff;padding:.6rem 5vw;display:flex;gap:1.2rem;justify-content:center;flex-wrap:wrap;font-size:.85rem}.topbar a{color:#fff}.navbar{position:sticky;top:0;z-index:80;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem 5vw;background:rgba(7,20,90,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(214,187,92,.45);color:#fff}.brand{display:flex;align-items:center;gap:.85rem}.brand-mark{width:48px;height:48px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-weight:900;color:var(--gold)}.brand small{display:block;color:var(--gold);letter-spacing:.08em;text-transform:uppercase}.nav-menu{display:flex;align-items:center;gap:1.2rem;font-weight:800;text-transform:uppercase;font-size:.82rem}.nav-menu a:hover{color:var(--gold)}.nav-toggle{display:none;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:.6rem .8rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;border-radius:14px;padding:.9rem 1.25rem;font-weight:900;cursor:pointer;transition:.25s ease}.btn:hover{transform:translateY(-2px)}.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#081044}.btn-blue{background:var(--blue);color:#fff}.btn-green{background:var(--green);color:#fff}.btn-light{background:#fff;color:var(--blue)}.btn-outline-light{border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff}.full{width:100%}.hero{position:relative;min-height:78vh;display:grid;place-items:center;text-align:center;color:#fff;padding:6rem 5vw;background:radial-gradient(circle at 20% 20%,rgba(245,220,125,.32),transparent 35%),linear-gradient(135deg,#030828 0%,#07145a 45%,#101b60 100%)}.hero:after{content:"";position:absolute;inset:auto 4vw 4vw auto;width:36vw;height:36vw;max-width:480px;max-height:480px;background:linear-gradient(135deg,rgba(255,255,255,.15),rgba(214,187,92,.18));border:1px solid rgba(255,255,255,.15);border-radius:42% 58% 61% 39%;filter:blur(.2px);animation:float 8s ease-in-out infinite}.hero-content{position:relative;z-index:1;max-width:980px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:900;color:var(--gold2);margin-bottom:.8rem}.eyebrow.dark{color:var(--blue2)}h1,h2{font-family:'Playfair Display',serif;line-height:1.05}h1{font-size:clamp(2.7rem,7vw,6.6rem);margin-bottom:1.2rem}h2{font-size:clamp(2rem,4vw,4rem);margin-bottom:1rem}.hero-text{font-size:1.15rem;max-width:720px;margin:0 auto 2rem;color:#e8edff}.hero-actions,.contact-actions,.giving-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.quick-strip{width:min(1120px,90vw);margin:-3rem auto 3rem;position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.quick-strip article{background:#fff;border-radius:20px;padding:1.25rem;box-shadow:var(--shadow);border:1px solid #edf0ff;border-top:4px solid transparent}.quick-strip strong{display:block;color:var(--blue);font-size:1.05rem}.quick-strip span:not(.qs-icon){color:var(--muted)}.qs-green span:not(.qs-icon){font-size:.88rem;line-height:1.4}.qs-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.qs-gold{border-top-color:var(--gold)}.qs-coral{border-top-color:#e8795c}.qs-blue{border-top-color:var(--blue2)}.qs-green{border-top-color:#16a34a}.section{padding:5rem 5vw}.split{display:grid;grid-template-columns:1.4fr .8fr;gap:2rem;align-items:center;max-width:1180px;margin:auto}.split p,.section-head p,.feature-card p,.card p,.resource-card p,.give-card p,.contact-card p{color:var(--muted)}.stat-grid,.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.stat-grid div,.dash-grid div{background:var(--soft);border-radius:18px;padding:1rem}.stat-grid strong,.dash-grid strong{display:block;font-size:1.8rem;color:var(--blue)}.feature-card,.contact-card{background:linear-gradient(145deg,#fff,#f7f8ff);border:1px solid #edf0ff;border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow)}.section-head{text-align:center;max-width:760px;margin:0 auto 2.5rem}.services,.departments,.resources{background:var(--soft)}.cards{display:grid;gap:1.2rem;max-width:1180px;margin:auto}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.four{grid-template-columns:repeat(4,1fr)}.card,.resource-card{background:#fff;border:1px solid #edf0ff;border-radius:var(--radius);padding:1.5rem;box-shadow:0 15px 38px rgba(7,17,63,.08);transition:.25s}.card:hover,.resource-card:hover,.action-card:hover{transform:translateY(-5px)}.card-icon,.resource-card span{font-size:2rem;display:inline-block;margin-bottom:.75rem}.card a,.card button{margin-top:1rem;color:var(--blue2);font-weight:900;background:transparent;border:0;cursor:pointer}.action-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.action-card{background:#fff;border:1px solid #edf0ff;border-radius:22px;padding:1.3rem;text-align:left;box-shadow:0 15px 38px rgba(7,17,63,.08);cursor:pointer}.action-card span{font-size:2rem}.action-card strong{display:block;margin:.4rem 0}.action-card small{color:var(--muted)}.tabs{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap;margin-bottom:1.5rem}.tab{border:1px solid #dbe2ff;background:#fff;border-radius:999px;padding:.8rem 1.2rem;font-weight:900;cursor:pointer}.tab.active{background:var(--blue);color:#fff}.tab-panel{display:none;max-width:1050px;margin:auto}.tab-panel.active{display:block}.list-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;list-style:none}.list-grid li{background:#fff;border-radius:16px;padding:1rem;border:1px solid #edf0ff}.give{background:linear-gradient(135deg,var(--deep),var(--blue));color:#fff}.give-card{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.4fr .8fr;gap:2rem;align-items:center}.give-card p{color:#e7ecff}.contact{background:#fff}.contact-card{text-align:center;max-width:850px;margin:auto}.footer{background:var(--deep);color:#e9eeff;padding:3rem 5vw;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:2rem}.footer h3,.footer h4{color:#fff}.footer a{display:block;color:#cfd6ff;margin:.35rem 0}.chat-launch,.whatsapp-float{position:fixed;right:1.3rem;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;z-index:90;box-shadow:var(--shadow);border:0}.chat-launch{bottom:6rem;background:var(--gold);font-size:1.5rem}.whatsapp-float{bottom:1.5rem;background:var(--green);color:#fff;font-size:1.5rem}.chat{position:fixed;right:1.2rem;bottom:10.5rem;width:min(380px,92vw);background:#fff;border-radius:24px;box-shadow:var(--shadow);overflow:hidden;z-index:95;display:none}.chat.open{display:block}.chat header{background:var(--blue);color:#fff;padding:1rem;display:flex;justify-content:space-between;align-items:center}.chat header small{display:block;color:#dbe2ff}.chat header button{background:transparent;border:0;color:#fff;font-size:1.4rem}.chat-body{padding:1rem;max-height:270px;overflow:auto}.bot,.user{padding:.75rem .9rem;border-radius:14px;margin:.45rem 0;max-width:85%}.bot{background:#eef2ff}.user{background:var(--blue);color:#fff;margin-left:auto}.chips{display:flex;gap:.4rem;padding:0 1rem 1rem;flex-wrap:wrap}.chips button{border:1px solid #dbe2ff;background:#fff;border-radius:999px;padding:.4rem .7rem}.chat-form{display:flex;border-top:1px solid #edf0ff}.chat-form input{flex:1;border:0;padding:1rem}.chat-form button{border:0;background:var(--gold);padding:0 1rem;font-weight:900}.modal{position:fixed;inset:0;z-index:120;display:none}.modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(3,8,40,.72);backdrop-filter:blur(8px)}.modal-card{position:relative;background:#fff;width:min(560px,92vw);max-height:88vh;overflow:auto;margin:5vh auto;border-radius:26px;padding:2rem;box-shadow:var(--shadow)}.modal-close{position:absolute;right:1rem;top:1rem;border:0;background:#eef2ff;border-radius:50%;width:38px;height:38px;font-size:1.3rem}.modal form{display:grid;gap:.8rem;margin-top:1rem}.modal label{font-weight:800;color:var(--blue)}.modal input,.modal select,.modal textarea{width:100%;margin-top:.35rem;border:1px solid #dbe2ff;border-radius:14px;padding:.85rem;background:#fff}.safe-note{font-size:.9rem;color:#8a4b00}@keyframes float{50%{transform:translateY(-18px) rotate(8deg)}}.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:980px){.nav-toggle{display:block}.nav-menu{position:absolute;top:100%;left:0;right:0;background:var(--blue);display:none;flex-direction:column;align-items:stretch;padding:1rem 5vw}.nav-menu.open{display:flex}.quick-strip,.cards.three,.cards.four,.action-grid,.list-grid,.split,.give-card,.footer{grid-template-columns:1fr 1fr}.hero{text-align:left;place-items:end start}.hero-actions{justify-content:flex-start}}@media(max-width:640px){.topbar{justify-content:flex-start}.quick-strip,.cards.three,.cards.four,.action-grid,.list-grid,.split,.give-card,.footer,.stat-grid,.dash-grid{grid-template-columns:1fr}.section{padding:3.5rem 5vw}h1{font-size:2.55rem}.hero{min-height:76vh;padding-top:5rem}.chat{right:4vw}.brand strong{font-size:.95rem}}
.list-grid li strong{display:block;color:var(--blue);margin-bottom:.3rem}.list-grid li span{display:block;color:var(--muted);font-weight:500;font-size:.92rem}.resource-card{min-height:190px}.form-hint{font-size:.85rem;color:var(--muted);margin-top:.5rem}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.consent-row{display:flex!important;align-items:flex-start;gap:.6rem;font-weight:700!important;color:var(--muted)!important;line-height:1.45}
.consent-row input{width:18px!important;height:18px!important;margin-top:.15rem!important;accent-color:var(--blue)}
.legal-body{color:var(--muted);display:grid;gap:.75rem}
.legal-body p{margin:0;color:var(--muted)}

/* ===== Upcoming Programmes ===== */
.programme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.2rem;max-width:1180px;margin:0 auto 0}
.programme-card{background:#fff;border:1px solid #edf0ff;border-radius:var(--radius);padding:1.5rem;box-shadow:0 15px 38px rgba(7,17,63,.08);position:relative;overflow:hidden}
.programme-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold),var(--blue2))}
.programme-card .p-icon{font-size:2rem;margin-bottom:.5rem;display:block}
.programme-card h3{color:var(--blue);margin-bottom:.3rem;font-size:1.1rem}
.programme-card .p-date{color:var(--muted);font-size:.88rem;margin-bottom:.8rem}
.programme-card .p-desc{color:var(--muted);font-size:.9rem;margin-bottom:1rem}
.countdown{display:flex;gap:.5rem;flex-wrap:wrap}
.countdown-unit{background:var(--soft);border-radius:10px;padding:.4rem .6rem;text-align:center;min-width:52px}
.countdown-unit strong{display:block;font-size:1.3rem;color:var(--blue);line-height:1}
.countdown-unit span{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.countdown-live{color:var(--green);font-weight:900;font-size:.95rem}
.no-programmes{text-align:center;color:var(--muted);padding:2rem;max-width:600px;margin:0 auto}

/* ===== Admin Panel ===== */
.admin-modal-card{max-width:640px}
.admin-prog-item{background:var(--soft);border-radius:14px;padding:.9rem 1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}
.admin-prog-item .api{display:flex;gap:.5rem}
.admin-prog-item button{border:0;border-radius:8px;padding:.35rem .7rem;cursor:pointer;font:inherit;font-size:.82rem;font-weight:700}
.admin-edit-btn{background:var(--blue);color:#fff}
.admin-del-btn{background:#fee;color:#c00}
.admin-prog-meta{font-size:.82rem;color:var(--muted);margin-top:.2rem}

/* ===== LoveWorld Logo in Navbar ===== */

/* ════════════════════════════════════════════
   NAVBAR LOGO — transparent, no white box
════════════════════════════════════════════ */
.brand-mark, .brand-mark-img, .brand-logo { display:none !important; }

.nav-logo-img {
  width: 64px;
  height: 64px;
  object-fit: contain;
  flex-shrink: 0;
  /* Background already removed from PNG — just enhance glow */
  filter: drop-shadow(0 0 10px rgba(214,187,92,.6)) brightness(1.08);
}

.nav-logo-text {
  line-height: 1.15;
  font-weight: 900;
  color: #fff;
  font-size: 14px;
  letter-spacing: .3px;
  white-space: nowrap;
}
.nav-logo-text small {
  display: block;
  color: var(--gold);
  font-size: 10px;
  letter-spacing: 1.6px;
  font-weight: 800;
  margin-top: 2px;
}

/* ════════════════════════════════════════════
   HERO — override old centred single-column
════════════════════════════════════════════ */
.hero {
  position: relative !important;
  min-height: 90vh !important;
  display: block !important;
  text-align: left !important;
  place-items: unset !important;
  padding: 0 !important;
  background: #04062e !important; /* fallback while slides load */
  overflow: hidden;
}
.hero::after { display: none !important; }
.hero-overlay, .hero-content, .hero-brand-banner { display: none !important; }

/* HERO SLIDESHOW */
.hero-slides {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hero-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.4s ease;
}
.hero-slide.active { opacity: 1; }
/* Overlay so text is always readable */
.hero-slides::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    110deg,
    rgba(3,8,40,.92) 0%,
    rgba(7,20,90,.82) 50%,
    rgba(4,10,42,.65) 100%
  );
  z-index: 1;
}

/* Dot indicators */
.slide-dots {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 10;
}
.slide-dot {
  width: 9px; height: 9px;
  border-radius: 50%;
  background: rgba(255,255,255,.35);
  border: none; cursor: pointer; transition: .3s; padding: 0;
}
.slide-dot.active { background: var(--gold); transform: scale(1.4); }

/* HERO INNER GRID */
.hero-inner {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 38px;
  align-items: center;
  max-width: 1320px;
  margin: 0 auto;
  padding: 7rem 5vw 8rem;
}

.hero-left { display: flex; flex-direction: column; gap: 1.3rem; }

.hero-pill {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 999px;
  padding: 9px 18px;
  font-size: 12px;
  font-weight: 800;
  color: #fff;
  letter-spacing: .08em;
  width: fit-content;
}

.hero-h1 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(44px, 6.5vw, 86px) !important;
  line-height: .95 !important;
  color: #fff !important;
  margin: 0 !important;
  font-weight: 900 !important;
}
.hero-gold { color: var(--gold2) !important; }

.hero-scripture {
  color: #dde3ff;
  font-size: 17px;
  line-height: 1.7;
  max-width: 520px;
}

.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }

/* HERO RIGHT CARD */
.hero-right {
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-family-card {
  width: 100%;
  max-width: 420px;
  min-height: 340px;
  border: 1px solid rgba(214,187,92,.35);
  border-radius: 32px;
  background: linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  box-shadow: 0 20px 80px rgba(0,0,0,.32);
  padding: 28px;
  display: flex;
  flex-direction: column;        /* ← stacked, not side by side */
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 12px;
}
.hero-family-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(32px, 3.5vw, 44px);
  color: var(--gold2);
  line-height: 1.1;
}
.hero-family-sub {
  font-size: 18px;
  color: #e8edff;
}

/* ════════════════════════════════════════════
   PEACE WIDGET
════════════════════════════════════════════ */
.peace-widget {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 9999;
  display: flex;
  align-items: flex-end;
  gap: 14px;
}
body.chat-open .peace-widget { display: none !important; }

/* WhatsApp circle */
.peace-wa {
  width: 56px; height: 56px;
  background: #25D366;
  border-radius: 50%;
  display: grid; place-items: center;
  border: 3px solid #fff; color: #fff;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
  margin-bottom: 30px;
  transition: .25s; flex-shrink: 0;
}
.peace-wa:hover { transform: translateY(-5px) scale(1.05); }
.peace-wa svg { width: 28px; height: 28px; }

/* Peace figure container */
.peace-avatar-wrap {
  position: relative;
  width: 150px;
  height: 218px;
  cursor: pointer;
  animation: peaceFloat 4s ease-in-out infinite;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  user-select: none;
  outline: none;
}

/* Gold pulsing ring behind Peace */
.peace-ring {
  position: absolute;
  right: 14px;
  top: 15px;
  width: 116px;
  height: 116px;
  border-radius: 50%;
  border: 3px solid var(--gold);
  box-shadow: 0 0 30px rgba(214,187,92,.7);
  animation: ringPulse 3s ease-in-out infinite;
  z-index: 1;
}

/* Peace full-body image */
.peace-avatar {
  position: absolute;
  right: 0;
  top: 0;
  width: 143px;
  height: 188px;
  z-index: 2;
  object-fit: contain;
  object-position: top center;
  filter: drop-shadow(0 8px 20px rgba(0,0,0,.45));
  transition: transform .3s ease;
}
.peace-avatar-wrap:hover .peace-avatar { transform: translateY(-10px) scale(1.02); }

/* Gold pill button at Peace's feet */
.peace-btn {
  position: absolute;
  bottom: 20px;
  right: 0;
  height: 36px;
  min-width: 128px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--gold2), var(--gold));
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 900;
  font-size: 13px;
  color: #07145a;
  border: 3px solid #fff;
  box-shadow: 0 8px 22px rgba(214,187,92,.4);
  z-index: 5;
}
.peace-btn span {
  width: 26px; height: 26px;
  border-radius: 50%;
  background: #07145a;
  display: grid; place-items: center;
  color: #fff; font-size: 11px;
  margin-left: -5px;
}
.peace-avatar-wrap small {
  position: absolute;
  bottom: 2px; right: 32px;
  color: #fff; font-size: 11px; opacity: .85; z-index: 6;
}

/* Speech bubble — shows on hover/proximity */
.peace-hover {
  position: absolute;
  right: 119px;
  top: 10px;
  width: 185px;
  background: #fff;
  padding: 12px 14px;
  border-radius: 20px 20px 5px 20px;
  color: #07145a;
  box-shadow: 0 12px 30px rgba(0,0,0,.25);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
  z-index: 20;
  pointer-events: none;
}
.peace-hover::after {
  content: '';
  position: absolute;
  right: -8px; bottom: 18px;
  width: 14px; height: 14px;
  background: #fff;
  transform: rotate(45deg);
}
.peace-hover strong { display: block; font-size: 13px; margin-bottom: 4px; }
.peace-hover span { font-size: 11px; line-height: 1.4; color: #293b8c; }

.peace-avatar-wrap:hover .peace-hover,
.peace-avatar-wrap.show-bubble .peace-hover {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* ════════════════════════════════════════════
   CHAT WINDOW
════════════════════════════════════════════ */
.chat-window {
  position: fixed;
  right: 24px; bottom: 24px;
  width: 390px; max-width: calc(100vw - 28px);
  height: 540px;
  z-index: 10050;
  background: #050b35; color: #fff;
  border: 2px solid var(--gold);
  border-radius: 26px;
  box-shadow: 0 25px 80px rgba(0,0,0,.55);
  display: none; overflow: hidden;
}
.chat-window.open { display: flex !important; flex-direction: column !important; }

.chat-head {
  display: flex; align-items: center; gap: 12px;
  padding: 14px 16px;
  background: linear-gradient(135deg,#07145a,#111e6d);
  border-bottom: 1px solid rgba(214,187,92,.35);
}
.chat-mini {
  width: 44px; height: 44px;
  border-radius: 50%; overflow: hidden;
  border: 2px solid var(--gold); flex-shrink: 0;
}
.chat-mini img { width: 100%; height: 100%; object-fit: cover; }
.chat-title strong { display: block; font-size: 14px; }
.chat-title span { font-size: 11px; color: #d5defc; }
.chat-close {
  margin-left: auto;
  background: rgba(255,255,255,.1); color: #fff;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%; width: 36px; height: 36px;
  font-size: 18px; cursor: pointer;
}
.chat-body { flex: 1; padding: 14px; overflow: auto; display: flex; flex-direction: column; gap: 10px; }
.msg { max-width: 86%; padding: 11px 13px; border-radius: 14px; font-size: 13px; line-height: 1.5; }
.msg.bot { background: #16246f; border-left: 3px solid var(--gold); align-self: flex-start; }
.msg.user { background: var(--gold); color: #07145a; align-self: flex-end; font-weight: 700; }
.chips { display: flex; gap: 7px; flex-wrap: wrap; padding: 0 14px 10px; }
.chip { background: #fff; color: #07145a; border: none; border-radius: 999px; padding: 8px 11px; font-weight: 800; font-size: 11px; cursor: pointer; }
.chip:hover { background: var(--gold); }
.chat-input { display: flex; gap: 8px; padding: 12px; border-top: 1px solid rgba(255,255,255,.12); }
.chat-input input { flex: 1; border: none; border-radius: 12px; padding: 12px; background: #151d55; color: #fff; outline: none; font-family: inherit; font-size: 13px; }
.chat-input input::placeholder { color: #8899cc; }
.chat-input button { width: 44px; border: none; border-radius: 12px; background: var(--gold); color: #07145a; font-size: 18px; font-weight: 900; cursor: pointer; }

/* ════════════════════════════════════════════
   ANIMATIONS
════════════════════════════════════════════ */
@keyframes peaceFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }
@keyframes ringPulse { 0%,100%{box-shadow:0 0 28px rgba(214,187,92,.5)} 50%{box-shadow:0 0 58px rgba(214,187,92,.95)} }

/* ════════════════════════════════════════════
   MOBILE
════════════════════════════════════════════ */
@media(max-width:900px){
  .hero-inner { grid-template-columns:1fr; padding:4rem 5vw 8rem; }
  .hero-h1 { font-size:clamp(36px,10vw,52px) !important; }
  .hero-right { display:none; } /* hide card on mobile, peace takes over */
  .peace-widget{right:14px;bottom:14px;gap:8px}
  .peace-avatar-wrap { width:62px; height:62px; }
  .peace-ring { width:62px; height:62px; right:0; top:0; }
  .peace-avatar { width:62px; height:62px; border-radius:50%; object-fit:cover; }
  .peace-btn { display:none; }
  .peace-avatar-wrap small { display:none; }
  .peace-hover { right:70px; width:160px; }
  .peace-wa { width:48px; height:48px; margin-bottom:0; }
  .peace-wa svg { width:24px; height:24px; }
}

/* ===== Programme ticker and elevated event cards ===== */
.programme-ticker[hidden]{display:none!important}
.programme-ticker{position:relative;z-index:70;background:linear-gradient(90deg,#fff8d7,#eef3ff 42%,#fff);border-bottom:1px solid rgba(214,187,92,.55);box-shadow:0 12px 32px rgba(7,17,63,.08);overflow:hidden}
.programme-ticker-shell{display:flex;align-items:center;gap:14px;min-height:54px}
.programme-ticker-label{align-self:stretch;display:grid;place-items:center;padding:0 5vw 0 5vw;background:var(--blue);color:var(--gold2);font-size:.74rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.programme-ticker-window{flex:1;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.programme-ticker-track{display:flex;align-items:center;gap:14px;width:max-content;animation:programmeTicker 34s linear infinite}
.programme-ticker-track:hover{animation-play-state:paused}
.programme-ticker-item{display:inline-flex;align-items:center;gap:10px;min-width:max-content;padding:.38rem .82rem .38rem .42rem;background:rgba(255,255,255,.9);border:1px solid rgba(214,187,92,.42);border-radius:999px;box-shadow:0 8px 22px rgba(7,17,63,.08);color:var(--ink);font-weight:800}
.programme-ticker-item span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;border:1px solid rgba(214,187,92,.55);box-shadow:0 8px 20px rgba(7,17,63,.08)}
.programme-ticker-item strong{font-family:'Playfair Display',serif;font-size:1.04rem;color:var(--blue)}
.programme-ticker-item em{font-style:normal;color:#6a5d2a;font-size:.86rem}
@keyframes programmeTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.events{background:linear-gradient(180deg,#f7f9ff 0%,#fff 48%,#fff8df 100%);position:relative;overflow:hidden}
.events .section-head h2{max-width:820px;margin-left:auto;margin-right:auto}
.programme-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.35rem;align-items:stretch}
.programme-card{padding:0;border:1px solid rgba(13,42,161,.12);border-radius:26px;background:linear-gradient(145deg,#fff,#f9fbff);box-shadow:0 22px 58px rgba(7,17,63,.13);display:flex;flex-direction:column;min-height:100%;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.programme-card::before{display:none}
.programme-card:hover{transform:translateY(-6px);box-shadow:0 28px 76px rgba(7,17,63,.18)}
.programme-featured{grid-column:span 2;display:grid;grid-template-columns:minmax(270px,.9fr) minmax(300px,1.1fr)}
.programme-media{position:relative;min-height:230px;overflow:hidden}
.programme-featured .programme-media{min-height:100%}
.programme-media.has-flyer{display:grid;place-items:center;padding:12px;background:linear-gradient(145deg,#04082f,#0d2aa1)}
.programme-media.has-flyer img{width:100%;height:100%;max-height:410px;object-fit:contain;border-radius:18px;box-shadow:0 16px 42px rgba(0,0,0,.28);background:#fff}
.poster-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#07145a 0%,#142ba7 58%,#d6bb5c 100%);color:#fff}
.fallback-poster{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;width:100%;height:100%;min-height:230px;padding:2rem;text-align:center}
.fallback-poster .p-icon{font-size:3.2rem;margin:0;filter:drop-shadow(0 8px 14px rgba(0,0,0,.22))}
.fallback-poster strong{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,5vw,4.2rem);line-height:.9;color:var(--gold2)}
.fallback-poster em{font-style:normal;font-size:1.15rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.fallback-poster small{font-weight:900;letter-spacing:.22em;text-transform:uppercase;color:#e8edff}
.programme-copy{padding:1.45rem;display:flex;flex-direction:column;gap:.78rem}
.programme-featured .programme-copy{justify-content:center;padding:2rem}
.programme-status{width:max-content;border:1px solid rgba(214,187,92,.65);background:#fff9df;color:#7a5d00;border-radius:999px;padding:.34rem .72rem;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.programme-card h3{font-family:'Playfair Display',serif;color:var(--blue);font-size:clamp(1.55rem,3vw,2.8rem);line-height:1.02;margin:0}
.programme-card .p-date{display:flex;align-items:center;gap:.55rem;margin:0;color:#31408a;font-weight:900;font-size:.95rem}
.programme-card .p-date::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(214,187,92,.18);flex:0 0 auto}
.programme-card .p-desc{color:#5d6689;font-size:.96rem;line-height:1.65;margin:0}
.programme-card .countdown{margin-top:.15rem}
.programme-card .countdown-unit{background:#f5f7ff;border:1px solid #e4e9ff;border-radius:14px;min-width:62px;padding:.55rem .68rem}
.programme-card .countdown-unit strong{font-size:1.45rem}
.programme-rsvp-btn{width:max-content;border:0;border-radius:999px;padding:.78rem 1.1rem;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;font-weight:900;cursor:pointer;box-shadow:0 12px 24px rgba(13,42,161,.2);transition:.25s ease}
.programme-rsvp-btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(13,42,161,.28)}

.flyer-upload-label{display:grid;gap:.45rem;font-weight:800;color:var(--blue)}
.flyer-upload-label input{border-style:dashed!important;background:#f8faff!important;cursor:pointer}
.flyer-upload-label span{font-size:.84rem;color:var(--muted);font-weight:600}
.flyer-preview{display:flex;align-items:center;gap:.75rem;background:#f8faff;border:1px solid #dbe2ff;border-radius:16px;padding:.75rem;color:var(--muted);font-weight:800}
.flyer-preview img{width:84px;height:84px;object-fit:cover;border-radius:12px;border:1px solid #e5e9ff;background:#fff}
.admin-clear-flyer{width:max-content;border:1px solid #ffd5d5;background:#fff5f5;color:#b30000;border-radius:12px;padding:.55rem .8rem;font-weight:900;cursor:pointer}
.admin-prog-item{align-items:center}
.admin-prog-thumb{width:58px;height:72px;object-fit:cover;border-radius:10px;border:1px solid #dbe2ff;background:#fff;flex:0 0 auto}

@media(max-width:920px){
  .programme-featured{grid-column:auto;grid-template-columns:1fr}
  .programme-featured .programme-media{min-height:260px}
  .programme-featured .programme-copy{padding:1.45rem}
  .programme-ticker-shell{display:block}
  .programme-ticker-label{display:inline-grid;min-height:38px;padding:0 5vw}
  .programme-ticker-window{padding:.45rem 0 .7rem}
}
@media(max-width:620px){
  .navbar{gap:.6rem;padding:.75rem 4vw}
  .brand{min-width:0;flex:1;gap:.55rem}
  .nav-logo-img{width:48px;height:48px}
  .nav-logo-text{white-space:normal;font-size:12px;line-height:1.08}
  .nav-logo-text small{font-size:8.5px;letter-spacing:1px}
  .nav-toggle{flex:0 0 auto;width:40px;height:40px;padding:0;border-radius:10px}
  .programme-grid{grid-template-columns:1fr}
  .programme-card{border-radius:22px}
  .programme-card .countdown-unit{min-width:54px}
  .programme-rsvp-btn{width:100%}
  .programme-ticker-item strong{font-size:.95rem}
  .programme-ticker-item em{font-size:.78rem}
}

/* ===== Professional polish pass ===== */
body{background:#fbfcff}
.topbar{background:#020726;color:#f2f5ff;border-bottom:1px solid rgba(214,187,92,.2)}
.navbar{padding:.82rem 5vw;background:rgba(4,12,55,.97);box-shadow:0 16px 38px rgba(3,8,40,.22)}
.brand{gap:.8rem;min-width:0}
.brand>span{display:none!important}
.nav-logo-img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(214,187,92,.18))}
.nav-logo-text{font-size:13px;line-height:1.08;letter-spacing:.04em}
.nav-logo-text small{font-size:9px;color:var(--gold2);letter-spacing:.14em}
.nav-menu a{letter-spacing:.04em}
.nav-menu .btn{padding:.72rem 1rem;border-radius:999px}
.hero{min-height:86vh!important}
.hero-slides::after{background:linear-gradient(100deg,rgba(3,8,40,.62),rgba(7,20,90,.48) 48%,rgba(3,8,40,.38))}
.hero-inner{grid-template-columns:minmax(0,820px)!important;justify-content:start;align-items:center;padding:7.5rem 5vw 8.5rem}
.hero-inner:has(.hero-featured-card:not([hidden])){grid-template-columns:1.05fr .95fr!important;justify-content:space-between}
.hero-left{max-width:820px}
.hero-pill{background:rgba(255,255,255,.08);backdrop-filter:blur(10px);border-color:rgba(245,220,125,.5);color:var(--gold2)}
.hero-h1{text-shadow:0 16px 46px rgba(0,0,0,.38)}
.hero-actions .btn{border-radius:999px;box-shadow:0 14px 30px rgba(0,0,0,.18)}
.hero-right,.hero-family-card{display:none!important}
.quick-strip{margin-top:-2.3rem;gap:.9rem}
.card,.resource-card,.action-card,.feature-card,.contact-card{border-color:#e4e9ff;box-shadow:0 18px 46px rgba(7,17,63,.09)}
.quick-strip article{border-left-color:#e4e9ff;border-right-color:#e4e9ff;border-bottom-color:#e4e9ff;box-shadow:0 18px 46px rgba(7,17,63,.09)}
.quick-strip article{border-radius:18px}
.section{padding:5.5rem 5vw}
.section-head{max-width:820px}
.section-head h2{color:var(--blue)}
.cards.three,.cards.four,.action-grid{gap:1.15rem}
.card,.resource-card,.action-card{border-radius:20px}
.card h3,.resource-card h3,.action-card strong{color:var(--blue)}
.give{background:linear-gradient(135deg,#030828,#07145a 62%,#13236e)}
.footer{background:#020726;border-top:1px solid rgba(214,187,92,.28)}
@media(max-width:620px){
  .programme-contact-actions a,.advert-actions a{flex:1;min-width:0}
  .advert-grid{grid-template-columns:1fr}
  .advert-media{min-height:210px}
}

/* ═══════════════════════════════════════════════════════════
   HERO REDESIGN — countdown badge, gradient heading, 4 CTAs, dark overlay
═══════════════════════════════════════════════════════════ */
.hero-dark-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(120deg,rgba(2,4,24,.5) 0%,rgba(5,10,50,.32) 55%,rgba(2,4,24,.55) 100%);
}
.hero-countdown-badge{
  display:inline-flex;align-items:center;gap:.55rem;
  background:rgba(255,255,255,.08);border:1px solid rgba(214,187,92,.5);
  border-radius:999px;padding:.42rem .85rem;margin-bottom:.9rem;
  backdrop-filter:blur(6px);width:fit-content;
}
.hero-countdown-dot{
  width:8px;height:8px;border-radius:50%;background:#5fe07a;
  box-shadow:0 0 8px #5fe07a;animation:pulseDot 1.6s ease-in-out infinite;
}
@keyframes pulseDot{0%,100%{opacity:1}50%{opacity:.4}}
.hero-countdown-text{font-size:.74rem;color:#e9eeff;font-weight:600}
.hero-countdown-text strong{color:var(--gold2);font-weight:900}
.hero-h1-new{
  font-family:'Playfair Display',serif;font-weight:900;
  font-size:clamp(1.9rem,3.8vw,3.1rem);line-height:1.08;color:#fff;
  margin-bottom:1rem;
  text-shadow:0 8px 30px rgba(0,0,0,.55);
}
.hero-gradient-text{
  background:linear-gradient(120deg,var(--gold2) 0%,#fff 50%,var(--gold) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-actions-grid{
  display:flex;flex-wrap:wrap;gap:.55rem;max-width:620px;
}
.btn-cta-gold{
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#081044;
  font-weight:900;border-radius:999px;padding:.65rem 1.2rem;font-size:.82rem;
  flex:0 0 auto;
}
.btn-cta-navy{
  background:linear-gradient(135deg,#0d2aa1,#07145a);color:#fff;
  font-weight:900;border-radius:999px;border:1px solid rgba(255,255,255,.18);
  padding:.65rem 1.2rem;font-size:.82rem;flex:0 0 auto;
}
.btn-cta-outline-navy{
  background:transparent;border:2px solid var(--blue2);color:var(--blue2);
  font-weight:900;border-radius:999px;padding:.62rem 1.18rem;font-size:.82rem;
  flex:0 0 auto;
}
@media(max-width:640px){
  .hero-actions-grid{max-width:100%}
  .btn-cta-gold,.btn-cta-navy,.btn-cta-outline-navy{flex:1 1 auto;justify-content:center}
}

/* ═══════════════════════════════════════════════════════════
   PHOTO GALLERY SECTION
═══════════════════════════════════════════════════════════ */
.gallery-section{background:#fff}
.updated-weekly-pill{
  display:inline-block;background:var(--gold);color:#081044;font-weight:900;
  font-size:.7rem;letter-spacing:.08em;padding:.35rem .85rem;border-radius:999px;
  margin-bottom:.6rem;text-transform:uppercase;
}
.gallery-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;
  max-width:1180px;margin:0 auto;grid-auto-rows:200px;
}
.gallery-grid .gallery-card:nth-child(1){grid-column:span 2;grid-row:span 2}
.gallery-grid .gallery-card:nth-child(4){grid-column:span 2}
.gallery-card{
  position:relative;background-size:cover;background-position:center;
  border-radius:18px;overflow:hidden;margin:0;cursor:pointer;
  transition:.3s ease;
}
.gallery-card:hover{transform:scale(1.02);box-shadow:0 18px 40px rgba(7,17,63,.25)}
.gallery-card::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 50%,rgba(3,8,40,.85) 100%);
}
.gallery-card figcaption{
  position:absolute;bottom:0;left:0;right:0;padding:1rem;
  color:#fff;font-weight:800;font-size:.9rem;z-index:1;
}
@media(max-width:900px){
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}
  .gallery-grid .gallery-card:nth-child(1){grid-column:span 2;grid-row:span 1}
  .gallery-grid .gallery-card:nth-child(4){grid-column:span 1}
}

/* ═══════════════════════════════════════════════════════════
   DARK SECTIONS (Sermons, Live, First-Timer, Check-in)
═══════════════════════════════════════════════════════════ */
.dark-section{
  background:linear-gradient(135deg,#030828 0%,#0a0e2a 50%,#07145a 100%);
  color:#fff;
}
.eyebrow-dark-bg{
  text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:900;
  color:var(--gold2);margin-bottom:.6rem;text-align:center;
}
.dark-section-heading{
  font-family:'Playfair Display',serif;font-weight:900;
  font-size:clamp(2.2rem,5vw,3.6rem);text-align:center;
  background:linear-gradient(120deg,#fff 0%,var(--gold2) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  margin-bottom:.6rem;
}
.dark-section-sub{
  text-align:center;color:#c7cdf2;max-width:600px;margin:0 auto 2rem;
  font-size:1.05rem;
}

/* ═══════════════════════════════════════════════════════════
   PRAYER OF SALVATION
═══════════════════════════════════════════════════════════ */
.salvation-session{position:relative;overflow:hidden}
.salvation-wrap{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem;align-items:center;
  max-width:1180px;margin:0 auto;
}
.salvation-copy .eyebrow-dark-bg,
.salvation-copy .dark-section-heading,
.salvation-copy .dark-section-sub{text-align:left;margin-left:0;margin-right:0}
.salvation-copy .dark-section-sub{max-width:520px}
.salvation-actions{display:flex;gap:1rem;flex-wrap:wrap}
.salvation-player{
  background:#000;border:1px solid rgba(214,187,92,.32);
  border-radius:22px;overflow:hidden;aspect-ratio:16/9;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.salvation-player iframe{width:100%;height:100%;border:0;display:block}

/* ═══════════════════════════════════════════════════════════
   SERMONS / WORD LIBRARY
═══════════════════════════════════════════════════════════ */
.sermon-controls{
  display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;
  max-width:900px;margin:0 auto 2.5rem;
}
.sermon-search{
  flex:1;min-width:240px;border-radius:999px;border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08);color:#fff;padding:.8rem 1.3rem;font:inherit;
}
.sermon-search::placeholder{color:#aab4e0}
.sermon-filters{display:flex;gap:.5rem}
.sermon-filter{
  border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;
  border-radius:999px;padding:.7rem 1.2rem;font-weight:800;cursor:pointer;
}
.sermon-filter.active{background:var(--gold2);color:#081044;border-color:var(--gold2)}
.sermon-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;
  max-width:1180px;margin:0 auto;
}
.sermon-card{
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);
  border-radius:20px;overflow:hidden;transition:.25s;
}
.sermon-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.08)}
.sermon-thumb{
  position:relative;height:170px;background-size:cover;background-position:center;
  display:grid;place-items:center;
}
.sermon-thumb::before{
  content:"";position:absolute;inset:0;background:rgba(3,8,40,.4);
}
.sermon-play-btn{
  position:relative;z-index:1;width:54px;height:54px;border-radius:50%;
  background:rgba(255,255,255,.9);border:0;font-size:1.2rem;color:var(--blue);
  cursor:pointer;
}
.sermon-media-tag{
  position:absolute;top:.7rem;right:.7rem;background:var(--gold2);color:#081044;
  font-size:.68rem;font-weight:900;padding:.3rem .6rem;border-radius:999px;z-index:1;
}
.sermon-info{padding:1.1rem 1.2rem}
.sermon-info h3{font-size:1.05rem;margin-bottom:.3rem;color:#fff;font-family:'Playfair Display',serif}
.sermon-speaker{color:var(--gold2);font-weight:700;font-size:.88rem}
.sermon-date{color:#a9b3de;font-size:.82rem;margin-top:.2rem}
@media(max-width:900px){.sermon-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.sermon-grid{grid-template-columns:1fr}}

/* ═══════════════════════════════════════════════════════════
   LIVE STREAMING SECTION
═══════════════════════════════════════════════════════════ */
.live-stream-wrap{
  display:grid;grid-template-columns:1.6fr 1fr;gap:1.5rem;
  max-width:1180px;margin:0 auto;
}
.live-stream-wrap:has(.live-chat-box[hidden]){grid-template-columns:1fr;max-width:980px}
.live-player{
  background:#000;border-radius:20px;overflow:hidden;
  aspect-ratio:16/9;border:1px solid rgba(255,255,255,.12);
}
.live-player iframe{width:100%;height:100%;border:0}
.live-chat-box{
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);
  border-radius:20px;display:flex;flex-direction:column;overflow:hidden;
}
.live-chat-header{
  padding:1rem;font-weight:900;border-bottom:1px solid rgba(255,255,255,.12);
}
.live-chat-messages{flex:1;padding:1rem;overflow:auto;min-height:200px}
.live-chat-placeholder{color:#9aa4d4;font-size:.88rem;text-align:center;margin-top:2rem}
.live-chat-input-row{display:flex;gap:.5rem;padding:.8rem;border-top:1px solid rgba(255,255,255,.12)}
.live-chat-input{
  flex:1;border-radius:12px;border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.06);color:#fff;padding:.7rem;font:inherit;
}
.live-chat-input::placeholder{color:#8a93c2}
.live-chat-signin{padding:.6rem 1rem;font-size:.85rem}
@media(max-width:900px){.live-stream-wrap{grid-template-columns:1fr}}

/* ═══════════════════════════════════════════════════════════
   FIRST-TIMER WELCOME SECTION
═══════════════════════════════════════════════════════════ */
.first-timer-card{
  max-width:760px;margin:0 auto;text-align:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(214,187,92,.3);
  border-radius:28px;padding:3rem 2.5rem;
}
.first-timer-sub{color:var(--gold2);font-weight:800;font-size:1.2rem;margin-bottom:1rem}
.first-timer-copy{color:#cdd3f5;font-size:1.02rem;margin-bottom:2rem;line-height:1.7}
.first-timer-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — dark sections on mobile
═══════════════════════════════════════════════════════════ */
@media(max-width:640px){
  .salvation-wrap{grid-template-columns:1fr}
  .salvation-copy .eyebrow-dark-bg,
  .salvation-copy .dark-section-heading,
  .salvation-copy .dark-section-sub{text-align:center}
  .salvation-actions{justify-content:center}
  .sermon-controls{flex-direction:column;align-items:stretch}
  .first-timer-card{padding:2rem 1.5rem}
}

/* Programme card venue line */
.p-venue{color:var(--blue2);font-weight:700;font-size:.85rem;margin-bottom:.4rem}

/* ===== Salvation prayer, partnership MoMo and admin additions ===== */
.salvation-prayer{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(214,187,92,.24);
  border-radius:18px;
  padding:1rem 1.1rem;
  margin:1.2rem 0 1.35rem;
  color:#e8edff;
  box-shadow:0 18px 48px rgba(0,0,0,.18);
}
.salvation-prayer p{color:#e8edff;margin:0 0:.8rem;line-height:1.7}
.salvation-prayer p:last-child{margin-bottom:0}
.momo-line{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.75rem;
  margin-top:1.15rem;
  padding:.85rem 1rem;
  border:1px solid rgba(245,220,125,.45);
  border-radius:16px;
  background:rgba(255,255,255,.08);
}
.momo-line span{color:#dfe5ff;font-weight:800}
.momo-line a{color:var(--gold2);font-size:1.25rem;font-weight:900;letter-spacing:.04em}
.admin-check-row{
  display:flex;
  align-items:center;
  gap:.6rem;
  color:var(--blue);
  font-weight:800;
  line-height:1.3;
}
.admin-check-row input{width:18px;height:18px;accent-color:var(--blue)}

/* ===== Calendar-inspired events redesign ===== */
.events{
  background:
    radial-gradient(circle at 9% 8%,rgba(187,36,108,.3),transparent 30%),
    radial-gradient(circle at 92% 12%,rgba(214,187,92,.2),transparent 26%),
    linear-gradient(135deg,#070816 0%,#110c1f 52%,#241e12 100%);
  color:#fff;
}
.events .section-head h2{color:#fff}
.events .eyebrow.dark{color:var(--gold2)}
.programme-grid.event-showcase-host{display:block;max-width:1180px;margin:0 auto}
.event-showcase{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(280px,.72fr);
  gap:1.4rem;
}
.event-calendar-panel,
.event-side-panel article{
  background:rgba(12,13,27,.88);
  border:1px solid rgba(255,255,255,.1);
  border-radius:22px;
  box-shadow:0 26px 70px rgba(0,0,0,.32);
}
.event-empty-showcase{
  max-width:760px;
  margin:0 auto;
  padding:2.2rem;
  text-align:center;
  background:
    radial-gradient(circle at 50% 0%,rgba(214,187,92,.22),transparent 34%),
    rgba(12,13,27,.88);
  border:1px solid rgba(255,255,255,.1);
  border-radius:22px;
  box-shadow:0 26px 70px rgba(0,0,0,.32);
}
.event-empty-showcase p{
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
  font-weight:900;
  margin:0 0 .35rem;
}
.event-empty-showcase h3{
  color:#fff;
  font-family:'Playfair Display',serif;
  font-size:clamp(1.8rem,4vw,2.7rem);
  margin:0 0 .6rem;
}
.event-empty-showcase span{color:#c7cdf2}
.event-calendar-panel{padding:1.5rem}
.event-calendar-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  margin-bottom:1.3rem;
}
.event-calendar-top p,
.event-selected-card>p,
.event-coming-card>p{
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
  font-weight:900;
  margin:0 0 .25rem;
}
.event-calendar-top h3,
.event-selected-card h3,
.event-coming-card h3{
  color:#fff;
  font-family:'Playfair Display',serif;
  line-height:1.05;
  margin:0;
}
.event-calendar-top h3{font-size:clamp(1.8rem,3vw,2.6rem)}
.event-calendar-top>span{
  border:1px solid rgba(214,187,92,.35);
  border-radius:999px;
  padding:.45rem .75rem;
  color:#e9dd9a;
  font-weight:900;
  white-space:nowrap;
}
.event-weekdays,
.event-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:.65rem;
}
.event-weekdays{margin-bottom:.65rem}
.event-weekdays span{
  color:#aeb3c8;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.72rem;
  font-weight:900;
}
.event-day{
  min-height:102px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:#0a0a16;
  color:#f7f8ff;
  padding:.72rem;
  text-align:left;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:.35rem;
  transition:.22s ease;
  position:relative;
}
.event-flyer-dot{
  position:absolute;top:.5rem;right:.5rem;
  width:7px;height:7px;border-radius:50%;
  background:var(--gold2,#d6bb5c);
  box-shadow:0 0 5px rgba(214,187,92,.8);
}
.event-day:disabled{cursor:default}
.event-day span{font-weight:900}
.event-day strong{
  font-size:.78rem;
  line-height:1.2;
  color:#ffe996;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.event-day em{
  margin-top:auto;
  width:max-content;
  color:#fff;
  font-style:normal;
  font-size:.7rem;
  font-weight:900;
  border-radius:999px;
  padding:.12rem .4rem;
  background:rgba(255,255,255,.14);
}
.event-day.is-muted{opacity:.35}
.event-day.has-event{border-color:rgba(214,187,92,.46);background:linear-gradient(145deg,#171020,#211720)}
.event-day.has-event:hover,
.event-day.is-selected{
  transform:translateY(-2px);
  background:linear-gradient(135deg,#dc2f9c 0%,#7227f2 100%);
  border-color:transparent;
  box-shadow:0 16px 34px rgba(165,47,226,.3);
}
.event-day.is-selected strong,
.event-day.has-event:hover strong{color:#fff}
.event-side-panel{display:grid;gap:1.4rem}
.event-selected-card,
.event-coming-card{padding:1.45rem}
.event-selected-date{
  display:flex;
  align-items:center;
  gap:.8rem;
  margin:.65rem 0 1rem;
}
.event-selected-date span{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  border-radius:16px;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  color:#081044;
  font-size:1.55rem;
  font-weight:900;
}
.event-selected-date em{color:#d9def8;font-style:normal;font-weight:800}
.event-flyer-img{
  width:100%;max-height:360px;object-fit:contain;border-radius:14px;background:#070914;
  margin:.6rem 0 1rem;display:block;
}
.event-selected-card h3{font-size:clamp(1.45rem,2.4vw,2rem);margin-bottom:.65rem}
.event-desc,.event-venue,.event-contact,.event-empty-note{color:#bfc5df}
.event-venue{font-weight:800}
.event-countdown{margin:1rem 0}
.event-actions{display:flex;gap:.7rem;flex-wrap:wrap}
.event-actions a,
.event-actions button,
.event-mini{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  border-radius:12px;
  font-weight:900;
}
.event-actions a,
.event-actions button{padding:.72rem .9rem;cursor:pointer}
.event-actions a:first-child{background:linear-gradient(135deg,#16a34a,#168b45);border-color:transparent}
.event-mini-list{display:grid;gap:.7rem;margin-top:1rem}
.event-mini{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:.2rem .75rem;
  text-align:left;
  padding:.75rem;
  cursor:pointer;
}
.event-mini span{
  grid-row:span 2;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:12px;
  background:rgba(214,187,92,.16);
  color:var(--gold2);
}
.event-mini strong{color:#fff;line-height:1.15}
.event-mini em{color:#aeb3c8;font-size:.78rem;font-style:normal}
.event-mini.is-selected,
.event-mini:hover{border-color:rgba(214,187,92,.5);background:rgba(214,187,92,.12)}

/* ===== Dynamic sermons and live service states ===== */
.sermons-section[hidden]{display:none!important}
.sermon-thumb-fallback{
  background:
    radial-gradient(circle at 30% 22%,rgba(214,187,92,.35),transparent 32%),
    linear-gradient(135deg,#080c2d,#241533 58%,#5e2559);
}
.sermon-description{color:#c7cdf2;font-size:.9rem;margin-top:.7rem;line-height:1.55}
.sermon-link{
  display:inline-flex;
  margin-top:.9rem;
  color:var(--gold2);
  font-weight:900;
  font-size:.88rem;
}
.live-player{display:grid;place-items:stretch}
.live-offline-state{
  min-height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:.7rem;
  padding:2rem;
  background:#020308;
}
.live-offline-state h3{color:#fff;font-size:clamp(1.35rem,2.8vw,2.15rem);line-height:1.1;margin:0}
.live-offline-state p{color:#c7cbe0;max-width:460px;margin:0}
.live-signal-icon{
  width:58px;
  height:58px;
  border-radius:50%;
  border:4px solid rgba(255,255,255,.35);
  position:relative;
}
.live-signal-icon::before,
.live-signal-icon::after{
  content:"";
  position:absolute;
  inset:13px;
  border:4px solid rgba(255,255,255,.6);
  border-top-color:transparent;
  border-bottom-color:transparent;
  border-radius:50%;
}
.live-signal-icon::after{inset:23px;border-width:3px;background:#fff}

@media(max-width:960px){
  .event-showcase{grid-template-columns:1fr}
  .event-side-panel{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .event-calendar-panel{padding:1rem}
  .event-weekdays,.event-calendar-grid{gap:.38rem}
  .event-day{min-height:76px;border-radius:11px;padding:.52rem}
  .event-day strong{font-size:.68rem}
  .event-side-panel{grid-template-columns:1fr}
  .momo-line{display:grid}
}

/* ═══════════════════════════════════════════════════════════
   HERO FEATURED EVENT CARD — admin-marked event highlight
═══════════════════════════════════════════════════════════ */
.hero-featured-card{
  position:relative;z-index:3;
  background:rgba(8,12,40,.72);
  border:1px solid rgba(214,187,92,.45);
  border-radius:22px;
  padding:1.6rem 1.6rem 1.8rem;
  backdrop-filter:blur(10px);
  max-width:340px;
  box-shadow:0 24px 60px rgba(0,0,0,.35);
}
.hero-featured-tag{
  display:inline-block;background:var(--gold2,#d6bb5c);color:#081044;
  font-weight:900;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;
  padding:.3rem .7rem;border-radius:999px;margin-bottom:.8rem;
}
.hero-featured-flyer{
  width:100%;max-height:200px;object-fit:cover;border-radius:14px;margin-bottom:.9rem;display:block;
}
.hero-featured-card h3{
  color:#fff;font-family:'Playfair Display',serif;font-size:1.3rem;margin-bottom:.4rem;line-height:1.2;
}
.hero-featured-date{color:var(--gold2,#d6bb5c);font-weight:800;font-size:.88rem;margin-bottom:.2rem}
.hero-featured-venue{color:#c7cdf2;font-size:.85rem;margin-bottom:.8rem}
.hero-featured-countdown{margin-bottom:1rem}
.hero-featured-actions{display:flex;gap:.6rem;flex-wrap:wrap}
.hero-featured-actions button,
.hero-featured-actions a{
  flex:1;text-align:center;border-radius:12px;padding:.65rem .9rem;
  font-weight:900;font-size:.82rem;cursor:pointer;text-decoration:none;
  border:0;
}
.hero-featured-actions button{background:linear-gradient(135deg,#d6bb5c,#caa23f);color:#081044}
.hero-featured-actions a{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.25)}

@media(max-width:900px){
  .hero-inner:has(.hero-featured-card:not([hidden])){grid-template-columns:1fr!important}
  .hero-featured-card{max-width:100%;margin-top:1.5rem}
}

@media(max-width:640px){
  .event-calendar-panel{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .event-calendar-panel .event-weekdays,
  .event-calendar-panel .event-calendar-grid{min-width:650px}
  .event-showcase{display:block}
  .event-side-panel{display:block}
  .event-coming-card{display:none}
  .event-selected-card{margin-top:.8rem}
}

/* ═══════════════════════════════════════════════════════════
   ADMIN SECTION DIVIDER (shared across sermons/live/announcements)
═══════════════════════════════════════════════════════════ */
.admin-section-split{
  height:1px;background:#edf0ff;margin:1.5rem 0;
}
.admin-report-controls{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(280px,1fr) auto;gap:.75rem;align-items:end;margin-top:.9rem}
.admin-report-controls label{font-size:.78rem;font-weight:850;color:var(--blue)}
.admin-report-controls select,.admin-report-controls input{width:100%;margin-top:.3rem;border:1px solid #dbe2ff;border-radius:11px;padding:.65rem;background:#fff;color:var(--ink)}
.admin-report-dates{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.admin-report-dates[hidden]{display:none!important}
.admin-report-controls .btn{min-height:43px;padding:.65rem 1rem;font-size:.83rem;white-space:nowrap}
@media(max-width:760px){.admin-report-controls{grid-template-columns:1fr}.admin-report-dates{grid-template-columns:1fr 1fr}.admin-report-controls .btn{width:100%}}

/* ═══════════════════════════════════════════════════════════
   OUR LEADERSHIP SECTION
═══════════════════════════════════════════════════════════ */
.leadership-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;
  max-width:980px;margin:0 auto;
}
.leadership-card{
  text-align:center;background:#fff;border:1px solid #edf0ff;border-radius:var(--radius);
  padding:2rem 1.5rem;box-shadow:0 15px 38px rgba(7,17,63,.08);
}
.leadership-photo{
  width:140px;height:140px;border-radius:50%;margin:0 auto 1.2rem;
  overflow:hidden;border:3px solid var(--gold);
}
.leadership-photo img{width:100%;height:100%;object-fit:cover;display:block}
.leadership-photo-placeholder{
  display:grid;place-items:center;background:var(--soft);font-size:3.2rem;color:#c2c8e8;
}
.leadership-card h3{color:var(--blue);font-family:'Playfair Display',serif;font-size:1.25rem;margin-bottom:.3rem}
.leadership-title{color:var(--gold);font-weight:800;font-size:.92rem;letter-spacing:.02em}
@media(max-width:760px){
  .leadership-grid{grid-template-columns:1fr;max-width:360px}
}

/* ═══════════════════════════════════════════════════════════
   NEWS & ANNOUNCEMENTS SECTION
═══════════════════════════════════════════════════════════ */
.announcement-list{
  max-width:820px;margin:0 auto;display:grid;gap:1rem;
}
.announcement-card{
  background:#fff;border:1px solid #edf0ff;border-radius:18px;overflow:hidden;
  box-shadow:0 12px 30px rgba(7,17,63,.06);
}
.announcement-summary{
  width:100%;display:flex;align-items:center;gap:.9rem;
  background:transparent;border:0;padding:1.1rem 1.3rem;text-align:left;cursor:pointer;
}
.announcement-chevron{
  font-size:1.4rem;color:var(--blue2);font-weight:900;flex-shrink:0;
  transition:transform .25s ease;
}
.announcement-chevron.is-open{transform:rotate(90deg)}
.announcement-summary-text{display:flex;flex-direction:column;gap:.35rem;flex:1;min-width:0}
.announcement-summary-text strong{color:var(--blue);font-size:1.05rem;font-family:'Playfair Display',serif}
.announcement-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.82rem;color:var(--muted)}
.announcement-body{
  padding:0 1.3rem 1.3rem 3rem;color:var(--ink);line-height:1.75;
}
.announcement-body p{margin-bottom:.9rem;color:#3a4068}
.announcement-body p:last-child{margin-bottom:0}
@media(max-width:640px){
  .announcement-body{padding:0 1rem 1.1rem 1rem}
}

/* Standalone Leadership page — extra top breathing room since nothing sits above it */
.leadership-page-hero{padding-top:7rem}
@media(max-width:640px){.leadership-page-hero{padding-top:4.5rem}}

/* Standalone pages (departments, news) — top spacer since nothing sits above their first section */
.page-hero-spacer{height:3rem}
@media(max-width:640px){.page-hero-spacer{height:1.5rem}}

/* ═══════════════════════════════════════════════════════════
   NAV DROPDOWNS (About, Media groups)
═══════════════════════════════════════════════════════════ */
.nav-dropdown{position:relative}
.nav-dropdown-trigger{
  background:transparent;border:0;color:#fff;font:inherit;
  font-weight:800;text-transform:uppercase;font-size:.82rem;
  display:inline-flex;align-items:center;gap:.3rem;cursor:pointer;
  padding:0;
}
.nav-dropdown-trigger:hover{color:var(--gold)}
.nav-caret{font-size:.7rem;transition:transform .2s ease}
.nav-dropdown.open .nav-caret{transform:rotate(180deg)}
.nav-dropdown-panel{
  position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);
  background:#0b1450;border:1px solid rgba(214,187,92,.35);border-radius:14px;
  padding:.5rem;min-width:200px;box-shadow:0 20px 50px rgba(0,0,0,.35);
  display:none;flex-direction:column;gap:.15rem;z-index:90;
}
.nav-dropdown.open .nav-dropdown-panel{display:flex}
.nav-dropdown-panel a{
  padding:.6rem .8rem;border-radius:9px;font-size:.78rem;
  text-transform:none;font-weight:700;white-space:nowrap;
}
.nav-dropdown-panel a:hover{background:rgba(214,187,92,.14);color:var(--gold2)}

@media(max-width:980px){
  .nav-dropdown{width:100%}
  .nav-dropdown-trigger{width:100%;justify-content:space-between;padding:.7rem 0}
  .nav-dropdown-panel{
    position:static;transform:none;display:none;
    background:rgba(255,255,255,.05);border:0;box-shadow:none;
    width:100%;margin-bottom:.3rem;
  }
  .nav-dropdown.open .nav-dropdown-panel{display:flex}
}

/* ═══════════════════════════════════════════════════════════
   RICH ANNOUNCEMENT FORMATTING (headings, table, lists, labels)
═══════════════════════════════════════════════════════════ */
.announcement-body .announcement-h1{font-family:'Playfair Display',serif;font-size:1.25rem;color:var(--blue);margin:.4rem 0 .8rem}
.announcement-body .announcement-h2{font-size:1.05rem;color:var(--blue);margin:1.4rem 0 .6rem;font-weight:900}
.announcement-body .announcement-h3{font-size:.95rem;color:var(--blue2);margin:1rem 0 .4rem;font-weight:800}
.announcement-body .announcement-label{margin:.6rem 0 .2rem;color:var(--ink)}
.announcement-hr{border:0;border-top:1px solid #e4e9ff;margin:1.3rem 0}
.announcement-ul{margin:.4rem 0 1rem 1.2rem;display:grid;gap:.35rem}
.announcement-ul li{color:#3a4068;line-height:1.6}
.announcement-table-wrap{overflow-x:auto;margin:.6rem 0 1.2rem;-webkit-overflow-scrolling:touch}
.announcement-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:420px}
.announcement-table th{background:var(--blue);color:#fff;text-align:left;padding:.6rem .8rem;font-weight:800}
.announcement-table td{padding:.55rem .8rem;border-bottom:1px solid #eef1fb;color:#3a4068}
.announcement-table tr:nth-child(even) td{background:#f7f9ff}
.announcement-table tr:last-child td{border-bottom:0}

/* Legal modal — scrollable, large enough for full documents */
.legal-modal-card{max-height:82vh;overflow-y:auto;max-width:760px}
.legal-body{font-size:.9rem;line-height:1.7}

/* Member Login nav button */
.btn-member-login{
  background:transparent;
  border:1.5px solid rgba(255,255,255,.45);
  color:#fff;border-radius:999px;
  padding:.55rem 1.1rem;font-weight:800;
  font-size:.8rem;white-space:nowrap;
  transition:.2s;
}
.btn-member-login:hover{background:rgba(255,255,255,.12);border-color:#fff}
@media(max-width:980px){
  .btn-member-login{border-color:rgba(255,255,255,.3);margin-top:.3rem}
}

/* Admin login form panels */
#adminPasswordForm,
#adminMagicLinkForm{display:grid;gap:.75rem}
#adminMagicLinkForm[hidden],
#adminPasswordForm[hidden]{display:none!important}

/* ═══════════════════════════════════════════════════════════
   2026 VISUAL REFINEMENT — shared premium system
═══════════════════════════════════════════════════════════ */
:root{
  --surface:#ffffff;
  --surface-soft:#f4f6ff;
  --surface-warm:#fbf8ee;
  --line:rgba(16,31,93,.11);
  --shadow-soft:0 18px 50px rgba(4,12,55,.09);
  --shadow-lift:0 28px 70px rgba(4,12,55,.16);
}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{background:#f7f8fd;color:#121936;overflow-x:hidden}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:radial-gradient(circle at 8% 15%,rgba(214,187,92,.1),transparent 25%),radial-gradient(circle at 92% 45%,rgba(57,88,210,.08),transparent 28%);
}
p{line-height:1.75}
a,button{transition:transform .2s ease,color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(214,187,92,.58);outline-offset:3px}

.topbar{min-height:36px;padding:.4rem 5vw;font-size:.76rem;letter-spacing:.02em}
.topbar a:hover{color:var(--gold2)}
.navbar{min-height:82px;border-bottom:1px solid rgba(255,255,255,.08)}
.navbar::after{content:"";position:absolute;left:5vw;right:5vw;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(214,187,92,.55),transparent)}
.nav-menu>a:not(.btn),.nav-dropdown-trigger{position:relative}
.nav-menu>a:not(.btn)::after,.nav-dropdown-trigger::after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--gold);transition:right .25s ease}
.nav-menu>a:not(.btn):hover::after,.nav-dropdown-trigger:hover::after{right:0}
.btn{border-radius:12px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.78rem 1.2rem;box-shadow:0 9px 22px rgba(4,12,55,.12)}
.btn:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(4,12,55,.18)}
.btn-gold,.btn-cta-gold{background:linear-gradient(135deg,#ead583,#c9a83d);color:#07103f;border-color:transparent}

.hero{min-height:calc(100vh - 118px)!important}
.hero-inner{min-height:calc(100vh - 118px);padding-top:6rem;padding-bottom:7rem}
.hero-slides::after{background:linear-gradient(100deg,rgba(2,7,34,.96) 0%,rgba(5,15,64,.84) 50%,rgba(4,10,42,.5) 100%)}
.hero-h1-new{font-size:clamp(3.2rem,7vw,6.8rem)!important;line-height:.9!important;letter-spacing:-.045em!important;text-wrap:balance;text-shadow:0 6px 28px rgba(0,0,0,.25)}
.hero-countdown-badge{backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.hero-actions-grid .btn{min-height:54px}
.slide-dot{width:8px;height:8px}

.quick-strip{position:relative;z-index:5;max-width:1240px;margin:-2.5rem auto 0;padding:0 1rem}
.quick-strip article{min-height:128px;padding:1.35rem;border:1px solid var(--line)!important;background:rgba(255,255,255,.97);backdrop-filter:blur(15px);box-shadow:var(--shadow-soft)}
.quick-strip article:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift)}
.qs-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--surface-soft)}

.section{position:relative;padding:7rem max(5vw,calc((100vw - 1280px)/2));isolation:isolate}
.section:nth-of-type(even):not(.dark-section):not(.give){background:linear-gradient(180deg,#f4f6ff 0%,#fafbff 100%)}
.section-head{margin-bottom:2.8rem}
.section-head h2,.split h2{font-size:clamp(2.25rem,4.4vw,4.25rem);line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.section-head>p:last-child{max-width:660px;margin-inline:auto;font-size:1.02rem}
.eyebrow,.eyebrow-dark-bg{letter-spacing:.15em;font-size:.74rem}
.eyebrow.dark{display:inline-flex;align-items:center;gap:.55rem}
.eyebrow.dark::before{content:"";width:28px;height:2px;background:var(--gold)}

.gallery-section{background:#fff!important}
.gallery-grid{gap:1rem;max-width:1240px}
.gallery-card{border-radius:22px;min-height:300px;box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.45)}
.gallery-card figcaption{font-size:1rem;padding:2rem 1.35rem 1.25rem;background:linear-gradient(transparent,rgba(2,7,34,.86))}
.gallery-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--shadow-lift)}

.split{gap:4rem;align-items:center;max-width:1240px}
.stat-grid{gap:.75rem;margin-top:2rem}
.stat-grid>div{padding:1.2rem;border-radius:16px;background:rgba(255,255,255,.72);border:1px solid var(--line)}
.feature-card{padding:clamp(2rem,4vw,3.4rem);border-radius:28px;background:linear-gradient(145deg,#07145a,#112678);color:#fff;border:1px solid rgba(214,187,92,.35);box-shadow:var(--shadow-lift)}
.feature-card h3{color:#fff;font-size:clamp(1.8rem,3vw,2.8rem)}
.feature-card p{color:#dce3ff}

.cards.three,.cards.four,.action-grid{gap:1.25rem;max-width:1240px}
.card,.resource-card,.action-card{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-soft);overflow:hidden}
.card{padding:2rem;min-height:245px;display:flex;flex-direction:column;align-items:flex-start}
.card p{flex:1}
.card-icon,.resource-card span,.action-card>span{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(145deg,#edf1ff,#fff8df);font-size:1.65rem}
.card a,.card button{display:inline-flex;align-items:center;gap:.35rem;color:var(--blue);padding-bottom:.2rem;border-bottom:2px solid var(--gold)}
.card:hover,.resource-card:hover,.action-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-lift);border-color:rgba(214,187,92,.5)}
.action-card{padding:1.6rem;min-height:190px;display:flex;flex-direction:column;justify-content:center}
.action-card strong{font-size:1.08rem;margin-top:.8rem}

.dark-section{background:radial-gradient(circle at 85% 15%,rgba(55,85,196,.28),transparent 28%),linear-gradient(135deg,#020726 0%,#07145a 58%,#101e68 100%)!important}
.dark-section::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent)}
.salvation-prayer,.live-player,.live-chat-box,.first-timer-card{border:1px solid rgba(255,255,255,.13);box-shadow:0 25px 70px rgba(0,0,0,.25)}
.salvation-prayer{background:rgba(255,255,255,.075);backdrop-filter:blur(12px)}
.salvation-player{border-radius:24px;overflow:hidden;box-shadow:0 25px 70px rgba(0,0,0,.35)}

.resources{background:#fff!important}
.resource-card{min-height:230px;padding:2rem}
.give-card{max-width:1200px;padding:1rem 0}
.give h2{font-size:clamp(2.25rem,4vw,4rem)}
.contact-card{max-width:960px;padding:clamp(2rem,5vw,4rem);border-radius:30px;background:linear-gradient(145deg,#fff,#f2f5ff);border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.footer{padding:4.5rem max(5vw,calc((100vw - 1280px)/2));gap:3rem;border-top:3px solid var(--gold)}
.footer h3{font-family:'Playfair Display',serif;font-size:1.7rem}
.footer h4{color:var(--gold2);letter-spacing:.04em}
.footer a{width:max-content;max-width:100%;padding:.12rem 0}
.footer a:hover{color:#fff;transform:translateX(4px)}

/* Standalone public pages */
.standalone-page-hero{min-height:calc(100vh - 118px);padding-top:clamp(7rem,11vw,10rem)!important;background:radial-gradient(circle at 85% 10%,rgba(214,187,92,.17),transparent 25%),linear-gradient(160deg,#03082b 0,#07145a 42%,#f4f6ff 42.1%,#fff 100%)!important}
.standalone-page-hero>.section-head{max-width:1100px;margin:0 auto 4rem;text-align:left;padding:clamp(2rem,5vw,4.5rem);border-radius:30px;background:linear-gradient(135deg,rgba(7,20,90,.98),rgba(15,35,119,.94));border:1px solid rgba(214,187,92,.32);box-shadow:0 30px 80px rgba(3,8,40,.25)}
.standalone-page-hero>.section-head .eyebrow{color:var(--gold2)}
.standalone-page-hero>.section-head h1{font-family:'Playfair Display',serif;color:#fff;font-size:clamp(2.7rem,5.8vw,5.7rem);line-height:.98;letter-spacing:-.04em;max-width:880px;margin:.6rem 0 1.1rem;text-wrap:balance}
.standalone-page-hero>.section-head>p:last-child{color:#dce3ff;max-width:790px;margin:0;font-size:1.04rem}
.leadership-grid{max-width:1120px;gap:1.5rem}
.leadership-card{border-radius:26px;padding:2.4rem 1.6rem;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.leadership-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-lift)}
.leadership-photo{width:190px;height:190px;border:5px solid #fff;outline:2px solid var(--gold);box-shadow:0 18px 35px rgba(4,12,55,.18)}
.leadership-card h3{font-size:1.45rem;margin-top:.5rem}
.tabs{margin-bottom:2.2rem}
.tab{padding:.9rem 1.35rem;border:1px solid var(--line);box-shadow:0 8px 20px rgba(4,12,55,.06)}
.tab.active{background:linear-gradient(135deg,#07145a,#17329b);box-shadow:0 12px 25px rgba(7,20,90,.22)}
.list-grid{max-width:1120px;gap:1rem}
.list-grid li{min-height:135px;padding:1.4rem;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow-soft);position:relative;overflow:hidden}
.list-grid li::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--gold),var(--blue2))}
.list-grid li:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift)}
.announcement-list{max-width:980px;gap:1.1rem}
.announcement-card{border-radius:22px;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.announcement-card:hover{border-color:rgba(214,187,92,.48);box-shadow:var(--shadow-lift)}
.announcement-summary{padding:1.35rem 1.5rem}

/* Gallery composition and motion */
.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:190px}
.gallery-grid .gallery-card:nth-child(1){grid-column:span 2;grid-row:span 2}
.gallery-grid .gallery-card:nth-child(4){grid-column:span 2}
.gallery-grid .gallery-card:nth-child(6){grid-column:span 2}
.gallery-card{
  min-height:0;background-size:105%;background-repeat:no-repeat;
  transition:transform .65s cubic-bezier(.2,.75,.2,1),box-shadow .65s ease,background-size 1.2s cubic-bezier(.2,.75,.2,1),filter .65s ease;
}
.gallery-card:nth-child(3n+1){background-position:center 35%}
.gallery-card:nth-child(3n+2){background-position:center 48%}
.gallery-card:nth-child(3n){background-position:center 62%}
.gallery-card::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.28);border-radius:inherit;pointer-events:none;transition:inset .5s ease,border-color .5s ease}
.gallery-card:hover{transform:translateY(-8px) scale(1.015);background-size:114%;filter:saturate(1.08) contrast(1.03)}
.gallery-card:hover::after{inset:9px;border-color:rgba(245,220,125,.72)}
.gallery-grid .gallery-card:nth-child(2){transition-delay:.04s}
.gallery-grid .gallery-card:nth-child(3){transition-delay:.08s}
.gallery-grid .gallery-card:nth-child(4){transition-delay:.12s}
.gallery-grid .gallery-card:nth-child(5){transition-delay:.16s}
.gallery-grid .gallery-card:nth-child(6){transition-delay:.20s}
.gallery-grid .gallery-card:nth-child(7){transition-delay:.24s}
.gallery-grid .gallery-card:nth-child(8){transition-delay:.28s}

/* Keep laptop layouts contained and navigation predictable. */
.hero-inner,.quick-strip,.gallery-grid,.split,.cards,.action-grid,.salvation-wrap,.event-showcase,.live-stream-wrap,.first-timer-card,.give-card,.contact-card{width:min(100%,1280px);margin-left:auto;margin-right:auto}
.event-showcase{align-items:start}
.event-calendar-panel,.event-side-panel{min-width:0}
.event-selected-card{overflow-wrap:anywhere}

@media(max-width:1120px){
  .nav-toggle{display:block}
  .nav-menu{position:absolute;top:100%;left:0;right:0;background:rgba(4,12,55,.99);display:none;flex-direction:column;align-items:stretch;padding:1rem 5vw 1.4rem;max-height:calc(100vh - 74px);overflow:auto;border-top:1px solid rgba(214,187,92,.3)}
  .nav-menu.open{display:flex}
  .nav-dropdown{width:100%}
  .nav-dropdown-trigger{width:100%;justify-content:space-between;padding:.7rem 0}
  .nav-dropdown-panel{position:static;transform:none;background:rgba(255,255,255,.05);border:0;box-shadow:none;width:100%;margin-bottom:.3rem}
}

@media(max-width:980px){
  .section{padding:5.5rem 5vw}
  .quick-strip{grid-template-columns:repeat(2,1fr)}
  .hero-inner{grid-template-columns:1fr;padding-top:5rem}
  .standalone-page-hero{min-height:auto}
  .nav-menu>a:not(.btn)::after,.nav-dropdown-trigger::after{display:none}
}
@media(max-width:640px){
  .topbar span:first-child{width:100%}
  .navbar{min-height:72px}
  .nav-logo-img{width:52px;height:52px}
  .hero{min-height:80vh!important}
  .hero-inner{min-height:80vh;padding:4.5rem 5vw 6rem}
  .hero-h1-new{font-size:clamp(3rem,15vw,4.6rem)!important}
  .hero-actions-grid{grid-template-columns:1fr!important;width:100%}
  .hero-actions-grid .btn{width:100%}
  .quick-strip{grid-template-columns:1fr;margin-top:-1.5rem;padding:0 4vw}
  .quick-strip article{min-height:auto}
  .section{padding:4.75rem 5vw}
  .section-head{margin-bottom:2rem}
  .section-head h2,.split h2{font-size:2.35rem}
  .gallery-grid{grid-template-columns:1fr 1fr;gap:.65rem}
  .gallery-grid .gallery-card:nth-child(n){grid-column:span 1;grid-row:span 1}
  .gallery-grid .gallery-card:nth-child(1),.gallery-grid .gallery-card:nth-child(4){grid-column:span 2}
  .gallery-card{min-height:220px;border-radius:16px}
  .gallery-card figcaption{font-size:.8rem;padding:2rem .8rem .8rem}
  .feature-card,.contact-card{border-radius:22px}
  .card{min-height:auto;padding:1.5rem}
  .action-card{min-height:160px}
  .standalone-page-hero{padding-top:4.5rem!important}
  .standalone-page-hero>.section-head{padding:2rem 1.35rem;border-radius:22px;margin-bottom:2.5rem}
  .standalone-page-hero>.section-head h1{font-size:2.65rem}
  .leadership-photo{width:170px;height:170px}
  .list-grid li{min-height:auto}
  .footer{gap:2rem;padding-top:3.5rem}
}

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