/* ICG v3.5: Contact page redesign, footer social icons, homepage WhatsApp channel section. */

/* ── Footer social icons ─────────────────────────────────── */
.v3-social{display:flex;gap:10px;margin-top:18px}
.v3-social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);color:#fff;transition:.2s}
.v3-social a .v3-ico{width:18px;height:18px}
.v3-social a:hover{background:var(--v3-gold);border-color:var(--v3-gold);color:var(--v3-ink);transform:translateY(-2px)}
.v3-footer .v3-social a{padding:0}

/* ── Contact page ────────────────────────────────────────── */
.v3c{font-family:var(--v3-font);color:var(--v3-text);background:var(--v3-cream)}
.v3c :is(h2,h3,p,ul,li,address){margin:0;padding:0}
.v3c ul{list-style:none}
.v3c a{text-decoration:none}
.v3c address{font-style:normal}

.v3c-ways{margin-top:-36px;position:relative;z-index:3}
.v3c-ways-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:700px){.v3c-ways-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1040px){.v3c-ways-grid{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}}
.v3c-way{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--v3-line);border-radius:var(--v3-r);padding:16px 18px;color:var(--v3-text);box-shadow:var(--v3-shadow);transition:.2s;min-width:0}
.v3c-way:hover{border-color:var(--v3-iris);transform:translateY(-2px)}
.v3c-way>.v3-ico{margin-left:auto;color:var(--v3-soft);transition:.2s}
.v3c-way:hover>.v3-ico{color:var(--v3-iris);transform:translateX(3px)}
.v3c-way-ico{width:46px;height:46px;border-radius:14px;background:var(--v3-iris-soft);color:var(--v3-iris);display:grid;place-items:center;flex:none}
.v3c-way-txt{display:flex;flex-direction:column;min-width:0}
.v3c-way-txt small{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--v3-soft)}
.v3c-way-txt b{font-size:14.5px;font-weight:700;overflow-wrap:anywhere;line-height:1.35}
.v3c-way-wa .v3c-way-ico{background:#E7F8EE;color:#128C4A}
.v3c-way-wa:hover{border-color:#25D366}

.v3c-main{padding:56px 0 40px}
@media(min-width:900px){.v3c-main{padding:80px 0 56px}}
.v3c-layout{display:grid;gap:28px;grid-template-columns:1fr}
@media(min-width:960px){.v3c-layout{grid-template-columns:1.3fr .7fr;gap:36px;align-items:start}}

.v3c-form-card{background:#fff;border:1px solid var(--v3-line);border-radius:24px;padding:28px 22px;box-shadow:var(--v3-shadow)}
@media(min-width:640px){.v3c-form-card{padding:40px}}
.v3c-form-card h2{font-size:clamp(26px,3.6vw,34px);font-weight:800;letter-spacing:-.02em;line-height:1.12}
.v3c-sub{color:var(--v3-mid);margin:10px 0 26px;font-size:15.5px}

.v3c-side{display:grid;gap:16px}
.v3c-card{background:#fff;border:1px solid var(--v3-line);border-radius:var(--v3-r);padding:24px}
.v3c-card h3{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;margin-bottom:16px}
.v3c-card h3 .v3-ico{color:var(--v3-iris);width:20px;height:20px}
.v3c-times li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid var(--v3-line);font-size:14.5px}
.v3c-times li:first-child{border-top:0;padding-top:0}
.v3c-times span{color:var(--v3-mid)}
.v3c-times b{font-weight:700;white-space:nowrap}
.v3c-card address{color:var(--v3-mid);font-size:14.5px;line-height:1.65;margin-bottom:12px}
.v3c-pobox{font-size:13px;color:var(--v3-soft);margin-bottom:12px}
.v3c-link{display:inline-block;margin-top:14px;font-size:14px;font-weight:700;color:var(--v3-iris)}
.v3c-card address+.v3c-link,.v3c-pobox+.v3c-link{margin-top:2px}
.v3c-link:hover{text-decoration:underline;text-underline-offset:3px}
.v3c-card-dark{background:linear-gradient(160deg,var(--v3-ink-2),var(--v3-ink));border-color:transparent;color:#fff}
.v3c-card-dark h3 .v3-ico{color:var(--v3-gold)}
.v3c-card-dark p{color:#d8c9ca;font-size:14.5px;line-height:1.65;margin-bottom:18px}

/* Follow us */
.v3c-follow{padding:32px 0 72px}
.v3c-follow-head{max-width:560px;margin-bottom:28px}
.v3c-follow-head h2{font-size:clamp(26px,3.8vw,36px);font-weight:800;letter-spacing:-.02em;line-height:1.12}
.v3c-follow-head p{margin-top:10px;color:var(--v3-mid);font-size:16px}
.v3c-follow-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
@media(min-width:900px){.v3c-follow-grid{grid-template-columns:repeat(4,1fr);gap:16px}}
.v3c-soc{display:flex;flex-direction:column;align-items:flex-start;gap:14px;background:#fff;border:1px solid var(--v3-line);border-radius:var(--v3-r);padding:22px 20px;color:var(--v3-text);transition:.2s}
.v3c-soc-ico{width:52px;height:52px;border-radius:50%;background:var(--v3-ink);color:#fff;display:grid;place-items:center;transition:.2s}
.v3c-soc-ico .v3-ico{width:24px;height:24px}
.v3c-soc b{font-size:17px;font-weight:800;letter-spacing:-.01em}
.v3c-soc-go{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--v3-soft);transition:.2s}
.v3c-soc:hover{border-color:var(--v3-iris);transform:translateY(-3px);box-shadow:var(--v3-shadow)}
.v3c-soc:hover .v3c-soc-ico{background:var(--v3-iris)}
.v3c-soc:hover .v3c-soc-go{color:var(--v3-iris)}

/* ── Homepage: WhatsApp channel ──────────────────────────── */
.v3-btn-wa{background:#25D366;color:#053B1D}
.v3-btn-wa:hover{background:#3BE07B;transform:translateY(-1px)}
.v3-wa{padding-top:0}
.v3-wa-card{display:grid;gap:32px;background:linear-gradient(135deg,#0F2A1E 0%,var(--v3-ink) 70%);color:#fff;border-radius:28px;padding:36px 24px;overflow:hidden;position:relative}
@media(min-width:860px){.v3-wa-card{grid-template-columns:1.25fr .75fr;align-items:center;padding:56px 56px;gap:48px}}
.v3-wa-copy h2{font-size:clamp(28px,4.2vw,42px);color:#fff}
.v3-wa-copy h2 em{color:#6EE7A3}
.v3-wa-copy p{margin:16px 0 26px;color:#cfdad3;font-size:16.5px;max-width:520px}
.v3-wa-copy .v3-wa-admin{font-size:13px;color:var(--v3-gold);background:rgba(255,210,0,.08);border:1px dashed rgba(255,210,0,.4);border-radius:12px;padding:10px 14px;margin:0}
.v3-wa-visual{display:none}
@media(min-width:860px){.v3-wa-visual{display:flex;justify-content:center}}
.v3-wa-phone{width:100%;max-width:300px;background:#0B141A;border:1px solid rgba(255,255,255,.12);border-radius:26px;padding:14px;box-shadow:0 30px 60px -20px rgba(0,0,0,.6);transform:rotate(3deg)}
.v3-wa-bar{display:flex;align-items:center;gap:10px;padding:6px 6px 14px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:14px}
.v3-wa-bar b{display:block;font-size:14px;color:#fff}
.v3-wa-bar small{font-size:11.5px;color:#8FA39A}
.v3-wa-av{width:38px;height:38px;border-radius:50%;background:var(--v3-iris);color:var(--v3-gold);display:grid;place-items:center;flex:none}
.v3-wa-av .v3-ico{width:20px;height:20px}
.v3-wa-msg{background:#1F2C34;border-radius:4px 14px 14px 14px;padding:12px 14px;margin-bottom:10px;max-width:92%}
.v3-wa-msg small{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6EE7A3;margin-bottom:8px}
.v3-wa-msg i{display:block;height:7px;border-radius:4px;background:rgba(255,255,255,.16);margin-bottom:7px}
.v3-wa-msg i.v3-short{width:55%;margin-bottom:0}
.v3-wa-msg-2{max-width:78%;opacity:.7}

/* ── Hover polish: one clear, consistent hover language site-wide ────────────
   Red things go brighter and lift; gold things go brighter; outline things fill;
   cards lift, gain a red edge and a red-tinted shadow; links turn red and underline. */
body.v3-body{--hv-red:#E42537;--hv-red-deep:#B01523;--hv-gold:#FFE24D;--hv-ring:0 0 0 4px rgba(208,31,46,.18)}

/* Buttons */
body.v3-body :is(.icg-btn,.v3-btn){transition:transform .18s,background .18s,box-shadow .18s,border-color .18s,color .18s}
body.v3-body :is(.icg-btn-primary,.v3-btn-iris):hover{background:linear-gradient(135deg,#F03246,#B01523);color:#fff;transform:translateY(-2px);box-shadow:0 14px 30px -8px rgba(208,31,46,.55)}
body.v3-body :is(.icg-btn-gold,.v3-btn-gold):hover{background:var(--hv-gold);color:#0B0708;transform:translateY(-2px);box-shadow:0 14px 30px -8px rgba(255,210,0,.6)}
body.v3-body .v3-btn-wa:hover{background:#3BE07B;color:#053B1D;transform:translateY(-2px);box-shadow:0 14px 30px -8px rgba(37,211,102,.55)}
body.v3-body :is(.icg-btn-outline,.icg-btn-ghost,.v3-btn-line):hover{background:var(--v3-iris,#D01F2E);border-color:var(--v3-iris,#D01F2E);color:#fff;transform:translateY(-2px);box-shadow:0 12px 26px -10px rgba(208,31,46,.5)}
body.v3-body :is(.icg-btn-ghost-light,.icg-btn-outline-light,.v3-btn-ghost):hover{background:#fff;border-color:#fff;color:#0B0708;transform:translateY(-2px)}
body.v3-body :is(.icg-btn,.v3-btn):active{transform:translateY(0);box-shadow:none}

/* Cards and tiles: lift + red edge + tinted shadow */
body.v3-body :is(.icg-archive-card,.icg-blog-card,.icg-event-card,.icg-jau-card,.icg-leader-card,.icg-min-unit-card,.icg-ministry-card,.icg-give-card,.icg-cq-card,.icg-contact-card,.v3-qa,.v3-u,.v3-m,.v3-g,.v3-way,.v3c-way,.v3c-soc,.v3c-card):hover{
  border-color:var(--v3-iris,#D01F2E);
  transform:translateY(-5px);
  box-shadow:0 2px 4px rgba(28,8,12,.06),0 24px 44px -14px rgba(208,31,46,.32);
}
body.v3-body :is(.v3-qa,.v3-u,.v3-m,.v3-way,.v3c-way,.v3c-soc):hover :is(.v3-i,.v3c-way-ico){background:var(--v3-iris,#D01F2E);color:#fff}
body.v3-body :is(.v3-qa,.v3-u):hover .v3-go,
body.v3-body :is(.v3-qa,.v3-u):hover h3{color:var(--v3-iris,#D01F2E)}
/* Photo cards (Ministries) sit on a dark overlay: keep the title white and turn the link gold, never red */
body.v3-body .v3-m:hover{border-color:var(--v3-gold,#FFD200);box-shadow:0 24px 48px -16px rgba(0,0,0,.55)}
body.v3-body .v3-m:hover h3{color:#fff}
body.v3-body .v3-m:hover .v3-go{color:var(--v3-gold,#FFD200)}
body.v3-body .v3-m:hover .v3-go .v3-ico{transform:translateX(4px)}
/* dark tiles keep a gold edge instead of red */
body.v3-body :is(.v3-serve .v3-u):hover{border-color:var(--v3-gold,#FFD200);box-shadow:0 24px 44px -14px rgba(0,0,0,.6)}
body.v3-body :is(.v3-serve .v3-u):hover :is(.v3-i){background:var(--v3-gold,#FFD200);color:#0B0708}
body.v3-body :is(.v3-serve .v3-u):hover :is(.v3-go,h3){color:var(--v3-gold,#FFD200)}

/* Header nav */
body.v3-body .v3-nav :is(a,.v3-has>button):hover,
body.v3-body .v3-nav a.v3-cur{background:var(--v3-iris,#D01F2E);color:#fff}

/* Text links */
body.v3-body .v3c-link:hover,
body.v3-body :is(.icg-contact-info-link,.icg-read-more,.icg-card-link):hover{color:var(--hv-red-deep);text-decoration:underline;text-underline-offset:4px}
body.v3-body .v3-footer a:hover{color:var(--v3-gold,#FFD200);text-decoration:underline;text-underline-offset:4px}
body.v3-body .v3-footer .v3-social a:hover{text-decoration:none}

/* Give page: copy-account button, clearly visible on the dark card */
body.v3-body :is(.v3-copy,.icg-copy-btn){background:#FFD200;color:#0B0708;transition:transform .15s,background .15s,box-shadow .15s}
body.v3-body :is(.v3-copy,.icg-copy-btn):hover{background:#fff;color:#0B0708;transform:scale(1.12);box-shadow:0 0 0 6px rgba(255,210,0,.35)}

/* Form controls: visible hover + focus */
body.v3-body :is(.icg-input,.icg-select,.icg-textarea):hover{border-color:var(--v3-iris,#D01F2E)}
body.v3-body :is(.icg-input,.icg-select,.icg-textarea):focus{border-color:var(--v3-iris,#D01F2E);box-shadow:var(--hv-ring);outline:0}

/* FAQ / accordion rows and list rows */
body.v3-body .icg-faq-trigger:hover{color:var(--v3-iris,#D01F2E)}

/* Keyboard focus */
body.v3-body :is(a,button):focus-visible{outline:3px solid var(--v3-gold,#FFD200);outline-offset:3px}

@media (hover:none){
  body.v3-body :is(.icg-btn,.v3-btn,.v3-qa,.v3-u,.v3-m,.v3-g,.v3-way,.v3c-way,.v3c-soc,.v3c-card):hover{transform:none}
}

/* ── Invisible-text fixes: headings that were white (from the old dark cards) on the new light cards ── */
body.v3-body .icg-sermons-empty-hero h2,
body.v3-body .icg-sermons-empty-hero h3,
body.v3-body .icg-sermons-upcoming-card h4,
body.v3-body .icg-events-reg-card h3,
body.v3-body .icg-events-reg-card h4{color:var(--v3-text,#1C1416)}
body.v3-body .icg-sermons-empty-hero p,
body.v3-body .icg-sermons-upcoming-card p{color:var(--v3-mid,#5F5457)}

/* ── Mobile menu drawer: clear hover / tap states ────────────────────────── */
body.v3-body .v3-drawer li a{transition:color .15s,background .15s,padding .15s;border-radius:12px}
body.v3-body .v3-drawer li a .v3-ico{color:rgba(255,255,255,.4);transition:transform .15s,color .15s}
body.v3-body .v3-drawer li a:hover,
body.v3-body .v3-drawer li a:focus-visible,
body.v3-body .v3-drawer li a:active{color:var(--v3-gold,#FFD200);background:rgba(255,210,0,.1);padding-left:12px;padding-right:12px}
body.v3-body .v3-drawer li a:hover .v3-ico,
body.v3-body .v3-drawer li a:active .v3-ico{color:var(--v3-gold,#FFD200);transform:translateX(4px)}
body.v3-body .v3-drawer .v3-brand:hover{color:#fff}
body.v3-body .v3-drawer .v3-burger-dark:hover,
body.v3-body .v3-drawer .v3-burger-dark:active{background:var(--v3-gold,#FFD200);border-color:var(--v3-gold,#FFD200);color:var(--v3-ink,#0B0708)}
body.v3-body .v3-drawer .v3-btn-gold:hover,
body.v3-body .v3-drawer .v3-btn-gold:active{background:#FFE24D;color:var(--v3-ink,#0B0708)}
body.v3-body .v3-drawer .v3-btn-ghost:hover,
body.v3-body .v3-drawer .v3-btn-ghost:active{background:#fff;border-color:#fff;color:var(--v3-ink,#0B0708)}
body.v3-body .v3-drawer .v3-btn-wa{margin-top:14px}
.v3-drawer-social{margin-top:22px;justify-content:center;padding-bottom:24px}

/* ── Mobile pass: comfortable tap targets, no overflow at 320px ─────────── */
@media (max-width:640px){
  .v3-social a{width:44px;height:44px}
  body.v3-body .v3-drawer .v3-btn{white-space:normal;text-align:center;line-height:1.25}
  .v3-wa-copy .v3-btn-wa{width:100%}
  .v3c-main{padding-top:40px}
  .v3c-follow{padding-bottom:56px}
}
@media (max-width:360px){
  .v3c-way{padding:14px}
  .v3c-way-txt b{font-size:13.5px}
  .v3c-soc{padding:18px 16px}
}
