/* ==========================================================
   DCHULL x Dominion City HQ: minimal system + live components
   Brand: navy #021030, blue #003699, gold #F2BC3D, line #DBE6FB
   ========================================================== */
:root{--hq-navy:#021030;--hq-blue:#003699;--hq-blue-600:#1A4FB8;--hq-gold:#F2BC3D;--hq-gold-500:#E0A521;--hq-line:#DBE6FB;--hq-tint:#F0F5FF;--hq-muted:#3E4A63;--hq-ease:cubic-bezier(.2,.8,.2,1)}

/* ---------- type helpers ---------- */
.hq-kicker{display:block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--hq-blue)}
.hq-h2{font-size:clamp(26px,3vw,36px);font-weight:800;letter-spacing:-.02em;color:var(--hq-navy);margin:56px 0 18px}
.hq-link{font-weight:700;color:var(--hq-blue)}
.hq-source{font-size:13px;color:#6B7690;margin-top:22px}
.hq-source a{color:var(--hq-blue);text-decoration:underline}
.hq-empty{padding:28px;border:1px dashed var(--hq-line);border-radius:20px;color:var(--hq-muted);text-align:center}
.hq-empty a{color:var(--hq-blue);font-weight:700}
.dc-gold .elementor-heading-title span,.hq-gold{color:var(--hq-gold)}

/* ---------- buttons ---------- */
.hq-btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:15px 28px;font-weight:700;font-size:15px;line-height:1;text-decoration:none!important;transition:transform .3s var(--hq-ease),box-shadow .3s,background .3s;border:0;cursor:pointer}
.hq-btn:hover{transform:translateY(-2px)}
.hq-btn:active{transform:scale(.97)}
.hq-btn-gold{background:var(--hq-gold);color:var(--hq-navy)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 12px 28px -14px rgba(242,188,61,.9)}
.hq-btn-gold:hover{background:#F6C955}
.hq-btn-glass{color:#fff!important;background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.45);-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.55)}
.dc-btn-gold .elementor-button{background:var(--hq-gold)!important;color:var(--hq-navy)!important}

/* ---------- HERO ---------- */
.hq-hero-wrap{margin-top:-80px!important;padding:0!important}
.hq-hero-wrap > .e-con-inner{max-width:none!important;padding:0!important;width:100%}
.hq-hero{position:relative;isolation:isolate;min-height:max(640px,100svh);display:flex;flex-direction:column;justify-content:flex-end;color:#fff;overflow:hidden;border-radius:0;background:var(--hq-navy)}
.hq-hero-media{position:absolute;inset:0;z-index:-1}
.hq-hero-poster,.hq-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hq-hero-video{opacity:1}

.hq-hero-shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(2,16,48,.9) 0%,rgba(2,16,48,.72) 52%,rgba(2,16,48,.35) 100%),linear-gradient(to bottom,rgba(2,16,48,.35) 0%,transparent 30%,transparent 55%,rgba(2,16,48,.9) 100%)}
.hq-hero-inner{width:100%;max-width:1240px;margin:0 auto;padding:190px 28px 48px}
.hq-live-pill{display:inline-flex;align-items:center;gap:10px;font:inherit;font-size:13px;font-weight:700;letter-spacing:.04em;color:#fff;padding:9px 16px 9px 12px;border-radius:999px;cursor:pointer;background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:background .3s}
.hq-live-pill:hover{background:rgba(255,255,255,.26)}
.hq-live-dot{width:9px;height:9px;border-radius:50%;background:#FF4D4D;box-shadow:0 0 0 0 rgba(255,77,77,.6);animation:hqPulse 1.8s ease-out infinite;flex:0 0 auto}
@keyframes hqPulse{to{box-shadow:0 0 0 10px rgba(255,77,77,0)}}
.hq-hero-title{font-size:clamp(46px,8vw,104px)!important;line-height:.98!important;letter-spacing:-.035em!important;font-weight:800!important;color:#fff!important;margin:22px 0 18px!important;max-width:12ch}
.hq-hero-text{font-size:clamp(17px,1.6vw,20px);line-height:1.6;color:#D7E2FA;max-width:52ch;margin:0 0 30px}
.hq-hero-ctas{display:flex;flex-wrap:wrap;gap:12px}
.hq-hero-times{width:calc(100% - 56px);max-width:1184px;margin:0 auto 28px;display:grid;grid-template-columns:repeat(3,1fr);border-radius:24px;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(22px) saturate(180%);backdrop-filter:blur(22px) saturate(180%);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.45)}
.hq-hero-times > div{padding:20px 24px;display:flex;flex-direction:column;gap:3px}
.hq-hero-times > div + div{border-left:1px solid rgba(255,255,255,.18)}
.hq-hero-times span{font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--hq-gold)}
.hq-hero-times strong{font-size:18px;color:#fff}
.hq-hero-times em{font-style:normal;font-size:14px;color:#C9D6F2}
.hq-hero-times a{color:#fff;text-decoration:underline;text-underline-offset:3px}
@media (max-width:767px){.hq-hero{min-height:auto;border-radius:0}.hq-hero-inner{padding:150px 20px 32px}.hq-hero-times{grid-template-columns:1fr;width:calc(100% - 32px);margin-bottom:18px}.hq-hero-times > div + div{border-left:0;border-top:1px solid rgba(255,255,255,.18)}.hq-hero-times > div{padding:14px 18px}.hq-hero-wrap{margin-top:-86px!important}}

/* ---------- Reveal ---------- */
.hq-js .hq-reveal{opacity:0;transform:translateY(18px);transition:opacity .8s var(--hq-ease),transform .8s var(--hq-ease)}
.hq-js .hq-reveal.is-in{opacity:1;transform:none}

/* ---------- Stats ---------- */
.hq-stat .elementor-heading-title{font-size:clamp(40px,5vw,64px)!important;font-weight:800!important;letter-spacing:-.03em;color:#fff!important;line-height:1!important}
.hq-stat-label .elementor-heading-title{font-size:14px!important;font-weight:500!important;color:#C9D6F2!important;letter-spacing:0!important;text-transform:none!important}

/* ---------- Minimal surfaces ---------- */
.hq-card{background:#fff!important;border:1px solid var(--hq-line)!important;border-radius:24px!important;transition:transform .4s var(--hq-ease),box-shadow .4s,border-color .4s}
.hq-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px -30px rgba(2,16,48,.35);border-color:#B6CDF6!important}
.hq-navy{background:var(--hq-navy)!important;color:#fff}
.hq-tint{background:var(--hq-tint)!important}
.hq-line-top{border-top:1px solid var(--hq-line)}
.hq-photo img{border-radius:24px!important;width:100%;object-fit:cover}
.hq-photo-tall img{aspect-ratio:4/5;object-fit:cover}
.hq-photo-wide img{aspect-ratio:16/10;object-fit:cover}
.hq-num .elementor-heading-title{font-size:13px!important;font-weight:800!important;letter-spacing:.16em!important;color:var(--hq-gold-500)!important}
.hq-place a{display:block}
.hq-place .elementor-heading-title a::after{content:' \2192';color:var(--hq-blue);transition:margin .3s}
.hq-place:hover .elementor-heading-title a::after{margin-left:6px}

/* ---------- DC Media ---------- */
.hq-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.hq-filters button{font:inherit;font-size:14px;font-weight:700;padding:10px 18px;border-radius:999px;border:1px solid var(--hq-line);background:#fff;color:var(--hq-navy);cursor:pointer;transition:all .25s}
.hq-filters button.is-on,.hq-filters button:hover{background:var(--hq-navy);color:#fff;border-color:var(--hq-navy)}
.hq-video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 22px}
.hq-video{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:12px;min-width:0}
.hq-video[hidden]{display:none}
.hq-video:focus-visible{outline:3px solid var(--hq-blue-600);outline-offset:4px;border-radius:20px}
.hq-video-thumb{position:relative;display:block;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:var(--hq-navy)}
.hq-video-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--hq-ease)}
.hq-video:hover .hq-video-thumb img{transform:scale(1.05)}
.hq-play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,.35),rgba(255,255,255,.12));border:1px solid rgba(255,255,255,.55);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1.5px 0 rgba(255,255,255,.6);transition:transform .35s var(--hq-ease)}
.hq-play::after{content:'';position:absolute;left:26px;top:21px;border-left:16px solid #fff;border-top:11px solid transparent;border-bottom:11px solid transparent}
.hq-video:hover .hq-play{transform:scale(1.08)}
.hq-dur{position:absolute;right:10px;bottom:10px;font-size:12px;font-weight:700;color:#fff;background:rgba(2,16,48,.75);padding:4px 8px;border-radius:8px}
.hq-video-meta{display:flex;flex-direction:column;gap:5px}
.hq-video-title{font-weight:700;font-size:16px;line-height:1.35;color:var(--hq-navy);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hq-video-date{font-size:13px;color:#6B7690}
.hq-navy .hq-video-title,.dc-dark .hq-video-title{color:#fff}
.hq-navy .hq-video-date,.dc-dark .hq-video-date{color:#9DB8E8}
.hq-navy .hq-kicker,.dc-dark .hq-kicker{color:var(--hq-gold)}
@media (max-width:1024px){.hq-video-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.hq-video-grid{grid-template-columns:1fr}}

/* Modal */
.hq-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(2,16,48,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.hq-modal[hidden]{display:none}
.hq-modal-box{position:relative;width:min(1100px,100%)}
.hq-modal-frame{aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#000;box-shadow:0 40px 90px -30px rgba(0,0,0,.8)}
.hq-modal-frame iframe{width:100%;height:100%;border:0;display:block}
.hq-modal-close{position:absolute;top:-52px;right:0;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.14);color:#fff;font-size:26px;line-height:1;cursor:pointer}

/* ---------- Devotionals ---------- */
.hq-dev-feature{display:flex;flex-direction:column;gap:12px;padding:40px;border-radius:28px;text-decoration:none!important;color:#fff;background:radial-gradient(70% 120% at 0% 0%,rgba(53,103,209,.55),transparent 60%),var(--hq-navy);position:relative;overflow:hidden;transition:transform .4s var(--hq-ease)}
.hq-dev-feature:hover{transform:translateY(-3px)}
.hq-dev-feature .hq-kicker{color:var(--hq-gold)}
.hq-dev-title{font-size:clamp(26px,3.4vw,42px);font-weight:800;letter-spacing:-.02em;line-height:1.08;color:#fff}
.hq-dev-quote{font-size:18px;line-height:1.6;color:#D7E2FA;font-style:italic;max-width:62ch;border-left:3px solid var(--hq-gold);padding-left:18px}
.hq-dev-refs{font-size:13px;font-weight:700;letter-spacing:.06em;color:#9DB8E8}
.hq-dev-feature .hq-link{color:var(--hq-gold);margin-top:6px}
.hq-dev-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hq-line)}
.hq-dev-list li{border-bottom:1px solid var(--hq-line)}
.hq-dev-list a{display:grid;grid-template-columns:80px 1fr auto;gap:4px 20px;align-items:center;padding:20px 6px;text-decoration:none!important;color:var(--hq-navy);transition:background .25s,padding .25s}
.hq-dev-list a:hover{background:var(--hq-tint);padding-left:14px}
.hq-dev-date{grid-row:span 2;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--hq-blue)}
.hq-dev-li-title{font-weight:800;font-size:17px;line-height:1.3}
.hq-dev-li-refs{grid-column:2;font-size:13px;color:#6B7690}
.hq-arrow{grid-row:1/span 2;grid-column:3;color:var(--hq-blue);font-size:20px}
@media (max-width:600px){.hq-dev-feature{padding:28px 22px}.hq-dev-list a{grid-template-columns:62px 1fr}.hq-arrow{display:none}}
.hq-dev-article{max-width:720px;margin:0 auto;font-size:18.5px;line-height:1.75;color:#1C2740}
.hq-dev-article p{margin:0 0 1.1em}
.hq-back{display:inline-block;margin-bottom:26px;font-weight:700;color:var(--hq-blue)!important;text-decoration:none!important}
.hq-dev-h1{font-size:clamp(32px,4.4vw,52px);line-height:1.05;letter-spacing:-.025em;font-weight:800;color:var(--hq-navy);margin:8px 0 12px}
.hq-dev-article .hq-dev-refs{color:var(--hq-blue);margin-bottom:24px}
.hq-dev-bq{margin:0 0 30px;padding:24px 28px;border-radius:20px;background:var(--hq-tint);border-left:4px solid var(--hq-gold);font-style:italic;color:var(--hq-navy)}
.hq-pray{margin-top:34px;padding:28px;border-radius:22px;background:var(--hq-navy);color:#E6ECF7}
.hq-pray .hq-kicker{color:var(--hq-gold);margin-bottom:10px}

/* ---------- Shop ---------- */
.hq-shop{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 24px}
.hq-book{display:flex;flex-direction:column;gap:6px;text-decoration:none!important;color:var(--hq-navy)}
.hq-book-cover{position:relative;display:block;aspect-ratio:3/4;border-radius:18px;overflow:hidden;background:var(--hq-tint);margin-bottom:10px;box-shadow:0 22px 40px -28px rgba(2,16,48,.55)}
.hq-book-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--hq-ease)}
.hq-book:hover .hq-book-cover img{transform:scale(1.04)}
.hq-badge{position:absolute;top:12px;left:12px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.85);color:var(--hq-navy);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.hq-book-title{font-weight:800;font-size:16px;line-height:1.3}
.hq-book-author{font-size:14px;color:#6B7690}
.hq-book-foot{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:14px}
.hq-book-foot strong{font-size:17px}
.hq-book-foot span{color:var(--hq-blue);font-weight:700}
@media (max-width:1024px){.hq-shop{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.hq-shop{grid-template-columns:repeat(2,1fr);gap:26px 14px}.hq-book-title{font-size:14.5px}}

/* ---------- Radio: slim liquid-glass bar fixed to the bottom (HQ style) ---------- */

.hq-radio-bar{position:fixed;left:0;right:0;bottom:0;z-index:9990;height:42px;display:flex;align-items:center;gap:12px;padding:0 max(16px,calc((100vw - 1200px)/2 + 24px));color:#fff;
  background:linear-gradient(180deg,rgba(2,16,48,.55),rgba(2,16,48,.72));-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);
  border-top:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);font-size:13px}
.hq-radio-toggle{width:28px;height:28px;border-radius:50%;border:0;cursor:pointer;background:#F2BC3D;display:grid;place-items:center;flex:0 0 auto;transition:transform .2s}
.hq-radio-toggle:hover{transform:scale(1.08)}
.hq-radio-icon{display:block;width:0;height:0;border-left:9px solid #021030;border-top:5.5px solid transparent;border-bottom:5.5px solid transparent;margin-left:2px}
[data-state="playing"] .hq-radio-icon,.hq-radio-big[aria-pressed="true"] .hq-radio-icon{width:9px;height:10px;border:0;margin:0;border-left:3px solid #021030;border-right:3px solid #021030}
[data-state="loading"] .hq-radio-toggle{animation:hqSpin 1s linear infinite;background:conic-gradient(#F2BC3D,rgba(242,188,61,.2))}
@keyframes hqSpin{to{transform:rotate(360deg)}}
.hq-radio-text{display:flex;align-items:center;gap:10px;min-width:0;line-height:1}
.hq-radio-label{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#F2BC3D;flex:0 0 auto}
.hq-radio-text strong{font-size:13px;font-weight:600;color:rgba(255,255,255,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-state="playing"] .hq-radio-label{color:#FF6B6B}
[data-state="playing"] .hq-radio-label::before{content:'\25CF  On air \00B7  '}
[data-state="error"] .hq-radio-text strong::after{content:' \00B7  tap to retry';color:#9DB8E8;font-weight:500}
.hq-radio-vol{margin-left:auto;width:96px;height:3px;opacity:.9;accent-color:#F2BC3D;cursor:pointer}


@media (max-width:600px){.hq-radio-vol{display:none}.hq-radio-bar{gap:10px}}
/* cookie re-consent icon sits just above the radio bar */

.hq-radio-card{text-align:center;padding:56px 28px;border-radius:32px;color:#fff;background:radial-gradient(70% 120% at 50% 0%,rgba(53,103,209,.6),transparent 60%),var(--hq-navy)}
.hq-radio-card h2{font-size:clamp(32px,4vw,52px);font-weight:800;letter-spacing:-.025em;color:#fff;margin:16px 0 10px}
.hq-radio-card p{color:#C9D6F2;font-size:18px;margin:0 auto 28px;max-width:46ch}
.hq-live-tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fff;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25)}
.hq-radio-big .hq-radio-icon{border-left-color:var(--hq-navy);color:var(--hq-navy)}

/* ---------- Footer columns ---------- */
.hq-foot-col .elementor-heading-title{color:#fff!important}
.hq-foot-list ul{list-style:none;margin:0;padding:0}
.hq-foot-list li{margin:0 0 10px}
.hq-foot-list a{color:#C9D6F2!important;text-decoration:none}
.hq-foot-list a:hover{color:#fff!important}

@media (prefers-reduced-motion:reduce){.hq-live-dot{animation:none}.hq-js .hq-reveal{opacity:1;transform:none}}

/* ---------- Footer ---------- */
footer#colophon{border-radius:40px 40px 0 0;margin-top:40px}
.hq-foot-bottom{border-top:1px solid rgba(255,255,255,.12)}
.hq-foot-bottom p{margin:0}
.hq-foot-bottom a{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.hq-foot-social .elementor-button{padding:10px 16px!important;font-size:13px!important}
footer#colophon .elementor-widget-text-editor a{color:#fff!important}
@media (max-width:767px){.hq-foot-bottom p[style]{text-align:left!important}}

/* ---------- Page heads ---------- */
.hq-page-head .elementor-heading-title{max-width:16ch}
.hq-page-head .elementor-widget-text-editor p{max-width:60ch}

/* ---------- Footer v2 (clean grid) ---------- */
footer#colophon{margin-top:0;border-radius:36px 36px 0 0;background:#021030}
footer#colophon::before{opacity:.5}
.hq-foot-wrap,.hq-foot-wrap .elementor-widget-shortcode,.hq-foot-wrap .elementor-shortcode{width:100%}
.hq-foot{max-width:1200px;margin:0 auto;padding:80px 24px 28px;color:#C9D6F2;font-size:15px;line-height:1.6}
footer#colophon .hq-foot a{color:#C9D6F2!important;text-decoration:none!important;transition:color .2s}
footer#colophon .hq-foot a:hover{color:#FFFFFF!important;opacity:1!important}
.hq-foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px}
footer#colophon .hq-foot .hq-foot-logo{display:inline-block;font-size:24px;font-weight:800;letter-spacing:-.02em;color:#FFFFFF!important;line-height:1.1;margin-bottom:14px}
.hq-foot-logo span{color:#F2BC3D}
.hq-foot-brand p{margin:0 0 20px;max-width:34ch}
.hq-foot-social{display:flex;gap:10px;margin-bottom:26px}
.hq-foot-social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.hq-foot-social a:hover{background:#F2BC3D;border-color:#F2BC3D}
.hq-foot-social svg{width:18px;height:18px;fill:#FFFFFF;transition:fill .2s}
.hq-foot-social a:hover svg{fill:#021030}
.hq-foot-visit{display:flex;flex-direction:column;gap:4px}
.hq-foot-h{display:block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#FFFFFF;margin-bottom:14px}
.hq-foot-visit .hq-foot-h{color:#F2BC3D;margin-bottom:6px}
.hq-foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.hq-foot-col li{margin:0}
.hq-foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:56px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#8199C4}
footer#colophon .hq-foot .hq-foot-bottom a{color:#FFFFFF!important}
@media (max-width:1024px){.hq-foot-top{grid-template-columns:1fr 1fr 1fr}.hq-foot-brand{grid-column:1/-1}.hq-foot-brand p{max-width:60ch}}
@media (max-width:600px){.hq-foot{padding:56px 20px 24px}.hq-foot-top{grid-template-columns:1fr 1fr;gap:32px 20px}.hq-foot-col:last-child{grid-column:1/-1}.hq-foot-bottom{flex-direction:column;gap:6px;margin-top:40px}}
/* Branch cards */
.hq-branch{overflow:hidden}
.hq-branch .elementor-widget-google_maps iframe{border-radius:0!important;display:block}
.hq-branch .elementor-widget-text-editor a{color:#003699;font-weight:600}

/* ---------- Message excerpts ---------- */
.hq-ex{position:relative}
.hq-ex-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px)/4);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0;padding:4px 2px 18px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.hq-ex-track::-webkit-scrollbar{display:none}
.hq-ex-item{all:unset;cursor:zoom-in;scroll-snap-align:start;display:block;border-radius:20px;overflow:hidden;background:#021030;box-shadow:0 24px 44px -28px rgba(2,16,48,.6);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.hq-ex-item:hover{transform:translateY(-5px)}
.hq-ex-item:focus-visible{outline:3px solid #1A4FB8;outline-offset:3px}
.hq-ex-item img{display:block;width:100%;height:auto;aspect-ratio:1152/1313;object-fit:cover;border-radius:0!important}
.hq-ex-nav{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}
.hq-ex-nav button{width:46px;height:46px;border-radius:50%;border:1px solid #DBE6FB;background:#fff;color:#021030;font-size:18px;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.hq-ex-nav button:hover{background:#021030;color:#fff;border-color:#021030}
@media (max-width:1024px){.hq-ex-track{grid-auto-columns:calc((100% - 36px)/3)}}
@media (max-width:700px){.hq-ex-track{grid-auto-columns:78%}}
.hq-modal-frame.is-image{aspect-ratio:auto;background:transparent;box-shadow:none;max-height:86vh;display:flex;justify-content:center}
.hq-modal-frame.is-image img{max-height:86vh;width:auto;max-width:100%;border-radius:18px}
.hq-modal-box:has(.is-image){width:min(720px,100%)}
/* ---------- Header v3: mirrors dominioncity.cc ---------- */
header#masthead .elementor-widget-shortcode,header#masthead .elementor-shortcode{width:100%}
.hq-hdr{position:relative;max-width:1152px;height:72px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between}
.hq-hdr-logo{flex:0 0 auto;display:inline-flex;align-items:center}
.hq-hdr-logo img{height:40px;width:auto;display:block;border-radius:0!important}
.hq-hdr-nav{display:flex;align-items:center;gap:4px;margin-left:56px}
.hq-hdr-link{border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;line-height:20px;color:rgba(255,255,255,.85)!important;text-decoration:none!important;white-space:nowrap;transition:background .2s,color .2s}
.hq-hdr-link:hover,.hq-hdr-link.is-current{background:rgba(255,255,255,.1);color:#FFFFFF!important}
.hq-hdr-right{display:flex;align-items:center;gap:10px;margin-left:24px;flex:0 0 auto}
.hq-hdr-give{border-radius:999px;background:#E0A521;color:#021030!important;padding:8px 20px;font-size:14px;font-weight:700;line-height:20px;text-decoration:none!important;transition:background .2s}
.hq-hdr-give:hover{background:#F2BC3D}
.hq-hdr-burger{display:none;width:44px;height:44px;border-radius:999px;border:0;background:transparent;cursor:pointer;position:relative;color:#fff}
.hq-hdr-burger:hover{background:rgba(255,255,255,.1)}
.hq-hdr-burger span{position:absolute;left:13px;right:13px;height:2px;border-radius:2px;background:#fff;transition:transform .3s,opacity .2s}
.hq-hdr-burger span:nth-child(1){top:15px}.hq-hdr-burger span:nth-child(2){top:21px}.hq-hdr-burger span:nth-child(3){top:27px}
.hq-hdr-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.hq-hdr-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.hq-hdr-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.hq-hdr-panel{position:absolute;top:72px;left:12px;right:12px;padding:8px;border-radius:22px;background:rgba(2,16,48,.94);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 30px 60px -30px rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.08)}
.hq-hdr-panel nav{display:flex;flex-direction:column}
.hq-hdr-panel .hq-hdr-link{border-radius:14px;padding:14px 18px;font-size:16px}
@media (max-width:1180px) and (min-width:1024px){.hq-hdr-link{padding:8px 11px}.hq-hdr-nav{margin-left:36px}}
@media (max-width:1023px){.hq-hdr{padding:0 20px}.hq-hdr-nav{display:none}.hq-hdr-burger{display:block}.hq-hdr-logo img{height:34px}}
@media (min-width:1024px){.hq-hdr-panel{display:none!important}}
body.hq-menu-open header#masthead{background:rgba(2,16,48,.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}

/* Header wordmark like dominioncity.cc */
.hq-hdr-logo{gap:10px;color:#fff!important;text-decoration:none!important}
.hq-hdr-logo svg{width:36px;height:36px;flex:0 0 auto}
.hq-hdr-logo span{font-size:18px;font-weight:800;letter-spacing:-.02em;line-height:1;color:#FFFFFF;white-space:nowrap}
.hq-hdr-logo em{font-style:normal;color:#F2BC3D}
.hq-hdr-link{font-weight:500}
@media (max-width:1023px){.hq-hdr-logo svg{width:32px;height:32px}.hq-hdr-logo span{font-size:17px}}

/* The header plugin forces position:relative on #masthead; keep it fixed over the page top like dominioncity.cc */
body.ehf-header header#masthead{position:fixed!important;top:var(--wp-admin--admin-bar--height,0px)!important;left:0!important;right:0!important;z-index:1000!important;padding:0!important}

/* Radio bar: hidden until someone presses play */
.hq-radio-bar{transform:translateY(110%);opacity:0;pointer-events:none;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}
.hq-radio-bar.is-open{transform:none;opacity:1;pointer-events:auto}
body.hq-radio-on{padding-bottom:42px}
body.hq-radio-on .cookieadmin_reconsent_wrap button.cookieadmin_re_consent{bottom:54px!important}
.hq-radio-bar .hq-radio-close{display:block!important;margin-left:6px;width:30px;height:30px;border-radius:50%;border:0;background:transparent;color:rgba(255,255,255,.75);font-size:20px;line-height:1;cursor:pointer;padding:0}
.hq-radio-bar .hq-radio-close:hover{background:rgba(255,255,255,.1);color:#fff}
@media (max-width:600px){.hq-radio-bar .hq-radio-close{margin-left:auto}}
/* ---------- Header dropdowns (desktop) ---------- */
.hq-dd{position:relative}
.hq-dd-btn{font:inherit;border:0;background:transparent;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.hq-caret{width:12px;height:12px;transition:transform .25s}
.hq-dd-btn[aria-expanded="true"] .hq-caret,.hq-mdd-btn[aria-expanded="true"] .hq-caret{transform:rotate(180deg)}
.hq-dd-menu{position:absolute;top:calc(100% + 8px);left:50%;min-width:220px;padding:8px;border-radius:18px;background:rgba(2,16,48,.92);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 50px -24px rgba(0,0,0,.7);display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .2s,transform .25s cubic-bezier(.2,.8,.2,1),visibility .2s;z-index:1001}
.hq-dd-menu::before{content:'';position:absolute;left:0;right:0;top:-10px;height:10px}
.hq-dd-btn[aria-expanded="true"] + .hq-dd-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.hq-dd-link{display:block;padding:10px 14px;border-radius:12px;font-size:14px;font-weight:500;color:rgba(255,255,255,.85)!important;text-decoration:none!important;white-space:nowrap;transition:background .2s,color .2s}
.hq-dd-link:hover,.hq-dd-link.is-current{background:rgba(255,255,255,.1);color:#fff!important}
/* mobile groups */
.hq-mdd-btn{font:inherit;border:0;background:transparent;width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.hq-hdr-panel .hq-mdd-btn{border-radius:14px;padding:14px 18px;font-size:16px}
.hq-mdd-menu{display:flex;flex-direction:column;padding:0 0 8px 12px}
.hq-mdd-menu[hidden]{display:none}
.hq-mdd-menu .hq-dd-link{font-size:15px;padding:11px 18px}
.hq-hdr-panel{max-height:calc(100vh - 100px);overflow:auto}
/* soft navigation progress */
html.hq-loading body::after{content:'';position:fixed;top:0;left:0;height:3px;width:40%;z-index:2000;background:#F2BC3D;animation:hqLoad 1s ease-in-out infinite}
@keyframes hqLoad{0%{transform:translateX(-100%)}100%{transform:translateX(260%)}}
/* Hero: poster drifts gently until the video is actually playing, then the video fades in */
.hq-hero-video{opacity:0;transition:opacity .9s ease}
.hq-hero-video.is-playing{opacity:1}
.hq-hero-poster{transform-origin:60% 40%;animation:hqKen 18s ease-in-out infinite alternate}
.hq-video-on .hq-hero-poster{animation-play-state:paused}
@keyframes hqKen{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.12) translate3d(-1.5%,-1%,0)}}
@media (prefers-reduced-motion:reduce){.hq-hero-poster{animation:none}}
/* ==========================================================
   Layout alignment: full-bleed bands, one content width, no stray indents
   ========================================================== */
/* nested containers: no automatic 10px padding or centred inner box, so rows line up with headings */
body .e-con.e-child{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
body .e-con.e-child.e-con-boxed > .e-con-inner{max-width:none!important;width:100%;margin:0!important}
body .e-con > .e-con-inner > .e-con.e-child,body .e-con > .e-con.e-child{min-width:0}
/* one content width that matches the header (1152 box with 32px gutters) */
body .elementor .e-con.e-parent.e-con-boxed{--padding-left:32px;--padding-right:32px}
body .elementor .e-con.e-parent.e-con-boxed > .e-con-inner{max-width:min(var(--content-width,1088px),1088px)}
@media (max-width:767px){body .elementor .e-con.e-parent.e-con-boxed{--padding-left:20px;--padding-right:20px}}
/* bands run edge to edge: no white side gutters, no rounded corners */
body .elementor .e-con.e-parent.dc-dark,body .elementor .e-con.e-parent.hq-tint,body .elementor .e-con.e-parent.hq-page-head{margin-left:0!important;margin-right:0!important;border-radius:0!important;--border-radius:0px}
body .elementor .e-con.e-parent.dc-dark::before,body .elementor .e-con.e-parent.dc-dark::after{border-radius:50%}
footer#colophon{border-radius:0!important}
/* stats: four even columns that never overflow */
.hq-stat,.hq-stat-label{min-width:0}
/* ---------- Instagram events + posts ---------- */
.ig-evs{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ig-evs-1{grid-template-columns:minmax(0,560px)}
.ig-evs-2{grid-template-columns:repeat(2,1fr)}
.ig-ev{display:flex;flex-direction:column;background:#fff;border:1px solid #DBE6FB;border-radius:24px;overflow:hidden;text-decoration:none!important;color:#021030!important;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.ig-ev:hover{transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(2,16,48,.45)}
.ig-ev.is-next{border-color:#E0A521;box-shadow:0 0 0 2px #F2BC3D inset}
.ig-ev-img{position:relative;display:block;aspect-ratio:4/5;background:#021030;overflow:hidden}
.ig-ev-img img{width:100%;height:100%;object-fit:cover;border-radius:0!important;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.ig-ev:hover .ig-ev-img img{transform:scale(1.04)}
.ig-ev-date{position:absolute;top:14px;left:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:62px;height:66px;border-radius:16px;background:#fff;color:#003699;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;line-height:1;box-shadow:0 10px 24px -12px rgba(2,16,48,.6)}
.ig-ev-date b{font-size:26px;letter-spacing:-.02em;color:#021030;margin-bottom:4px}
.ig-ev-next{position:absolute;top:14px;right:14px;background:#F2BC3D;color:#021030;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:7px 12px;border-radius:999px}
.ig-ev-body{display:flex;flex-direction:column;gap:6px;padding:20px 22px 22px}
.ig-ev-soon{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#B7791F}
.ig-ev-title{font-size:19px;font-weight:800;line-height:1.25;letter-spacing:-.01em}
.ig-ev-when{font-size:15px;color:#3E4A63;font-weight:600}
.ig-ev-more{font-size:14px;font-weight:700;color:#003699;margin-top:6px}
.ig-posts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ig-post{position:relative;display:block;aspect-ratio:1;border-radius:18px;overflow:hidden;background:#021030}
.ig-post img{width:100%;height:100%;object-fit:cover;border-radius:0!important;transition:transform .5s,opacity .3s}
.ig-post-cap{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;font-size:13px;font-weight:600;color:#fff;background:linear-gradient(to top,rgba(2,16,48,.85),transparent);opacity:0;transition:opacity .3s}
.ig-post:hover img{transform:scale(1.05)}
.ig-post:hover .ig-post-cap,.ig-post:focus-visible .ig-post-cap{opacity:1}
.ig-post-play{position:absolute;top:12px;right:12px;width:0;height:0;border-left:12px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5))}
.ig-empty{padding:28px;border-radius:20px;background:#F0F5FF;color:#3E4A63;font-size:16.5px;line-height:1.6}
.ig-empty strong{color:#021030}.ig-empty a{color:#003699;font-weight:700}
@media (max-width:1024px){.ig-evs,.ig-evs-2{grid-template-columns:repeat(2,1fr)}.ig-posts{grid-template-columns:repeat(4,1fr)}}
@media (max-width:640px){.ig-evs,.ig-evs-2,.ig-evs-1{grid-template-columns:1fr}.ig-posts{grid-template-columns:repeat(2,1fr)}}
.ig-posts-wrap:not(:has(.ig-posts)){display:none!important}

/* Header wordmark with tagline */
.hq-hdr-word{display:flex;flex-direction:column;gap:4px;line-height:1}
.hq-hdr-word > span{font-size:18px;font-weight:800;letter-spacing:-.02em;color:#FFFFFF;white-space:nowrap}
.hq-hdr-word small{font-size:10.5px;font-weight:600;letter-spacing:.02em;color:rgba(255,255,255,.75);white-space:nowrap}
.hq-hdr-logo svg{width:40px;height:40px}
@media (max-width:1023px){.hq-hdr-word > span{font-size:16px}.hq-hdr-word small{font-size:9.5px}}
/* hero: no info strip, keep comfortable bottom spacing */
.hq-hero-inner{padding-bottom:96px}
@media (max-width:767px){.hq-hero-inner{padding-bottom:64px}}

/* ==========================================================
   Responsive pass
   ========================================================== */
html,body{max-width:100%;overflow-x:clip}
img,video,iframe,svg{max-width:100%}
.elementor-widget-heading .elementor-heading-title{overflow-wrap:anywhere;hyphens:manual}
/* one alignment line for header, hero, sections and footer */
.hq-hero-inner{max-width:1152px!important;padding-left:32px!important;padding-right:32px!important}
.hq-foot{max-width:1152px;padding-left:32px;padding-right:32px}
@media (max-width:767px){
  .hq-hdr,.hq-hero-inner,.hq-foot{padding-left:20px!important;padding-right:20px!important}
  body .elementor .e-con.e-parent{--padding-left:20px!important;--padding-right:20px!important}
  body .elementor .e-con.e-parent.hq-hero-wrap{--padding-left:0px!important;--padding-right:0px!important}
  body .e-con.e-child{width:100%!important;--width:100%!important}
  body .e-con.e-child .e-con.e-child[class*="elementor-element"]{max-width:100%}
  .hq-hero-title{font-size:clamp(40px,12vw,56px)!important}
  .hq-hero-text{font-size:16.5px}
  .hq-hero-ctas .hq-btn{flex:1 1 auto;justify-content:center}
  .elementor-widget-button .elementor-button{padding:13px 22px!important}
  .hq-stat .elementor-heading-title{font-size:40px!important}
  .hq-page-head .elementor-heading-title{max-width:none}
  .hq-dev-feature{padding:24px 20px}
  .hq-dev-quote{font-size:16px}
}
/* keep the two welcome photos side by side on phones */
@media (max-width:767px){body .e-con.e-child:has(> .e-con-inner > .e-con.e-child > .e-con-inner > .elementor-widget-image.hq-photo-tall),body .e-con.e-child:has(> .e-con.e-child > .elementor-widget-image.hq-photo-tall){flex-direction:row!important}body .e-con.e-child:has(> .elementor-widget-image.hq-photo-tall){width:50%!important;--width:50%!important}}
/* stats: two by two on phones */
@media (max-width:767px){body .e-con.e-child:has(> .elementor-widget-heading.hq-stat),body .e-con.e-child:has(> .e-con-inner > .elementor-widget-heading.hq-stat){width:calc(50% - 10px)!important;--width:calc(50% - 10px)!important}}
/* header: more transparent glass; on phones just logo + menu button (Give lives in the menu) */
body.hq-scrolled header#masthead{background:rgba(2,16,48,.42)!important;-webkit-backdrop-filter:blur(22px) saturate(180%)!important;backdrop-filter:blur(22px) saturate(180%)!important}
body.hq-menu-open header#masthead{background:rgba(2,16,48,.55)!important}
.hq-hdr-panel{background:rgba(2,16,48,.82)!important}
.hq-panel-give{display:none}
@media (max-width:1023px){
  .hq-hdr-right .hq-hdr-give{display:none}
  .hq-panel-give{display:block;text-align:center;margin:8px 6px 6px;padding:13px 20px}
  .hq-hdr-logo{min-width:0}
  .hq-hdr-word{min-width:0}
}
@media (max-width:400px){.hq-hdr-logo svg{width:34px;height:34px}.hq-hdr-word > span{font-size:15px}.hq-hdr-word small{font-size:8.6px;letter-spacing:0}}
/* footer: simple on phones */
.hq-foot-quick{display:none}
@media (max-width:767px){
  .hq-foot{padding-top:48px;text-align:center}
  .hq-foot-top{display:flex;flex-direction:column;align-items:center;gap:24px}
  .hq-foot-col{display:none}
  .hq-foot-brand p{margin-left:auto;margin-right:auto}
  .hq-foot-social{justify-content:center}
  .hq-foot-visit{align-items:center}
  .hq-foot-quick{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:6px}
  .hq-foot-quick a{font-weight:600}
  .hq-foot-bottom{align-items:center;text-align:center;margin-top:32px}
}
/* phones: welcome photos stay side by side, stats sit two by two */
@media (max-width:767px){
  body .e-con.e-child:has(> .e-con-inner > .e-con.e-child > .e-con-inner > .elementor-widget-image.hq-photo-tall){--flex-direction:row!important;--flex-wrap:nowrap!important}
  body .e-con.e-child:has(> .e-con-inner > .e-con.e-child > .e-con-inner > .elementor-widget-image.hq-photo-tall) > .e-con-inner{flex-direction:row!important;flex-wrap:nowrap!important}
  body .e-con.e-child:has(> .e-con-inner > .elementor-widget-image.hq-photo-tall){width:calc(50% - 7px)!important;--width:calc(50% - 7px)!important}
  body .e-con.e-child:has(> .e-con-inner > .e-con.e-child > .e-con-inner > .elementor-widget-heading.hq-stat) > .e-con-inner{flex-direction:row!important;flex-wrap:wrap!important}
  body .e-con.e-child:has(> .e-con-inner > .elementor-widget-heading.hq-stat){width:calc(50% - 10px)!important;--width:calc(50% - 10px)!important}
}
/* Hero fills the whole screen on every device */
.hq-hero{min-height:100vh!important;min-height:100svh!important}
@media (max-width:767px){.hq-hero{min-height:100vh!important;min-height:100svh!important}.hq-hero-inner{padding-top:140px;padding-bottom:56px}}
/* Name is fitted (by script) to exactly the width of the tagline */
.hq-hdr-word{display:inline-flex;flex-direction:column;align-items:stretch;width:max-content}
.hq-hdr-word small{display:block;white-space:nowrap;letter-spacing:0;line-height:1.1}
.hq-hdr-word small{font-size:11px}
@media (max-width:1023px){.hq-hdr-word small{font-size:10px}}
@media (max-width:400px){.hq-hdr-word small{font-size:9.4px}}

/* Logo lockup: name and tagline locked to the same width */
.hq-hdr-wm{display:block;height:42px;width:auto;aspect-ratio:5/1;overflow:visible;font-family:'Plus Jakarta Sans',Roboto,system-ui,sans-serif;letter-spacing:-.01em}
@media (max-width:1023px){.hq-hdr-wm{height:36px}}
@media (max-width:400px){.hq-hdr-wm{height:32px}}

.hq-hdr .hq-hdr-logo svg.hq-hdr-wm{width:auto!important;height:42px!important;flex:0 0 auto}
@media (max-width:1023px){.hq-hdr .hq-hdr-logo svg.hq-hdr-wm{height:36px!important}}
@media (max-width:400px){.hq-hdr .hq-hdr-logo svg.hq-hdr-wm{height:32px!important}}

/* Browser chrome blends with the navy hero: canvas is navy, page body stays light */
html{background:#021030!important}
body{background-color:#F7F9FE}
/* Hero runs to the very bottom of the screen, under the phone's toolbar */
.hq-hero{min-height:100vh!important;min-height:100lvh!important}
@media (max-width:767px){.hq-hero{min-height:100vh!important;min-height:100lvh!important}.hq-hero-inner{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}}

/* Logo lockup at the original name size (18 / 16 / 15px); tagline shrinks to match */
.hq-hdr .hq-hdr-logo svg.hq-hdr-wm{aspect-ratio:156/37;height:34px!important}
@media (max-width:1023px){.hq-hdr .hq-hdr-logo svg.hq-hdr-wm{height:30.4px!important}}
@media (max-width:400px){.hq-hdr .hq-hdr-logo svg.hq-hdr-wm{height:28.5px!important}}

/* Cookie settings button: smaller and tucked into the corner so it never covers buttons */
button.cookieadmin_re_consent{width:36px!important;height:36px!important;min-width:0!important;padding:6px!important;bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;left:10px!important;right:auto!important;top:auto!important;border-radius:50%!important;opacity:.85;transition:opacity .2s,transform .2s;box-shadow:0 6px 16px -8px rgba(2,16,48,.6)!important}
button.cookieadmin_re_consent:hover{opacity:1;transform:scale(1.06)}
button.cookieadmin_re_consent img.cookieadmin_reconsent_img{width:24px!important;height:24px!important}
body.hq-radio-on button.cookieadmin_re_consent{bottom:calc(52px + env(safe-area-inset-bottom,0px))!important}
@media (max-width:767px){button.cookieadmin_re_consent{width:32px!important;height:32px!important;padding:5px!important;left:8px!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}button.cookieadmin_re_consent img.cookieadmin_reconsent_img{width:22px!important;height:22px!important}}
/* iOS Safari tints the status-bar area from the page background: make that navy,
   and give the actual page content its light background instead */
html,body{background-color:#021030!important}
#page > .elementor[data-elementor-type="wp-page"],#page > .elementor[data-elementor-type="wp-post"],#page > main,#page > #content{background-color:#F7F9FE}
/* Every section with a photo behind text: even navy shade + soft text shadow */
.hq-shaded .elementor-heading-title,.hq-shaded .elementor-widget-text-editor{text-shadow:0 2px 18px rgba(2,16,48,.55)}
.hq-shaded .elementor-background-overlay,.hq-shaded::before{opacity:1!important}

/* Homepage hero: stronger, even shade so the text reads over any frame of the video */
.hq-hero-shade{background:linear-gradient(100deg,rgba(2,16,48,.9) 0%,rgba(2,16,48,.74) 55%,rgba(2,16,48,.5) 100%),linear-gradient(to bottom,rgba(2,16,48,.45) 0%,rgba(2,16,48,.1) 30%,rgba(2,16,48,.35) 60%,rgba(2,16,48,.92) 100%)!important}
@media (max-width:767px){.hq-hero-shade{background:linear-gradient(to bottom,rgba(2,16,48,.6) 0%,rgba(2,16,48,.5) 35%,rgba(2,16,48,.8) 65%,rgba(2,16,48,.95) 100%)!important}}
.hq-hero-title,.hq-hero-text{text-shadow:0 2px 22px rgba(2,16,48,.5)}

/* Readable paragraph rhythm everywhere */
.elementor-widget-text-editor p{margin:0 0 .9em}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor strong{font-weight:700;color:#021030}
.dc-dark .elementor-widget-text-editor strong,.hq-shaded .elementor-widget-text-editor strong{color:#fff}
/* Homepage visit card: service time + two separate branch blocks */
.hq-svc{display:flex;flex-direction:column;gap:2px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #DBE6FB}
.hq-svc-label,.hq-branch-name{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#003699}
.hq-svc strong{font-size:20px;color:#021030}
.hq-branches{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}
.hq-branch-mini{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:18px;background:#F0F5FF;border:1px solid #DBE6FB;font-size:15.5px;line-height:1.5;color:#3E4A63}
.hq-branch-mini a{margin-top:auto;padding-top:4px;font-weight:700;color:#003699!important;text-decoration:none!important}
.hq-branch-mini a:hover{text-decoration:underline!important}
.hq-form-intro{color:#3E4A63;margin-bottom:6px!important}
@media (max-width:600px){.hq-branches{grid-template-columns:1fr}}
/* ==========================================================
   Typography: balanced, tidy line breaks on every page
   ========================================================== */
.elementor-heading-title,.hq-hero-title,.hq-dev-title,.hq-dev-h1,.ig-ev-title,.hq-radio-card h2,.dcb-head h3{text-wrap:balance}
.elementor-widget-text-editor p,.hq-hero-text,.hq-dev-quote,.ig-ev-when,.hq-foot-brand p{text-wrap:pretty}
.elementor-widget-text-editor p,.hq-hero-text{hyphens:none}
.elementor-widget-heading .elementor-heading-title{overflow-wrap:normal;word-break:normal}
/* kickers always on one line */
.dc-eyebrow .elementor-heading-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* page headers: tighter scale so titles sit on one line where possible */
.hq-page-head .elementor-widget-heading h1.elementor-heading-title{font-size:clamp(40px,6vw,64px)!important;line-height:1.02!important}
.hq-page-head .elementor-widget-text-editor{font-size:clamp(16px,1.6vw,19px)!important}
.hq-page-head .elementor-widget-text-editor p{max-width:46ch}
/* section headings scale smoothly with the screen */
body .elementor .e-con.e-parent:not(.hq-page-head) .elementor-widget-heading h2.elementor-heading-title{font-size:clamp(30px,4.2vw,52px)!important;line-height:1.08!important}
body .elementor .e-con .elementor-widget-heading h3.elementor-heading-title{font-size:clamp(20px,2.2vw,30px)!important;line-height:1.18!important}
@media (max-width:767px){
  .hq-page-head .elementor-widget-heading h1.elementor-heading-title{font-size:clamp(32px,10vw,42px)!important}
  .hq-page-head .elementor-widget-text-editor{font-size:16px!important}
  .hq-page-head .elementor-widget-text-editor p{max-width:none}
  body .elementor .e-con.e-parent:not(.hq-page-head) .elementor-widget-heading h2.elementor-heading-title{font-size:clamp(26px,7.6vw,32px)!important;letter-spacing:-.02em!important}
  body .elementor .e-con .elementor-widget-heading h3.elementor-heading-title{font-size:20px!important}
  .dc-eyebrow .elementor-heading-title{font-size:11px!important;letter-spacing:.12em!important}
  .hq-stat .elementor-heading-title{font-size:36px!important}
  .elementor-widget-text-editor{font-size:16px!important;line-height:1.6!important}
  .hq-hero-title{font-size:clamp(38px,11.5vw,52px)!important}
  .hq-hero-text{font-size:16px;max-width:34ch}
  .hq-dev-title{font-size:24px}
  .ig-ev-title{font-size:17px}
}
/* quote section: comfortable reading size */
@media (max-width:767px){body .elementor .e-con.e-parent:not(.hq-page-head) .elementor-widget-heading h2.elementor-heading-title[style*="italic"]{font-size:22px!important}}
/* long quote reads at a comfortable size */
body .elementor .e-con.e-parent .elementor-widget-heading.hq-quote h2.elementor-heading-title{font-size:clamp(22px,2.8vw,38px)!important;line-height:1.3!important;letter-spacing:-.01em!important}

.elementor-element-90656c8 > .e-con-inner,.elementor-element-90656c8{gap:10px}
.elementor-element-90656c8 .elementor-widget-text-editor{margin-bottom:10px}

/* Give page */
@media (max-width:767px){.hq-nl{display:block;margin-top:2px}}
.gv{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.gv-card{background:#fff;border:1px solid #DBE6FB;border-radius:24px;padding:30px;display:flex;flex-direction:column;gap:12px;color:#3E4A63;font-size:16px;line-height:1.6}
.gv-card h3{margin:0;font-size:26px;font-weight:800;letter-spacing:-.02em;color:#021030}
.gv-card p{margin:0}
.gv-kicker{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#003699}
.gv-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"l b" "v b";align-items:center;gap:2px 12px;padding:14px 16px;border-radius:16px;background:#F0F5FF}
.gv-label{grid-area:l;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5A6680}
.gv-value{grid-area:v;font-size:20px;font-weight:800;color:#021030;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.gv-copy{grid-area:b;font:inherit;font-size:14px;font-weight:700;color:#003699;background:#fff;border:1px solid #DBE6FB;border-radius:999px;padding:9px 16px;cursor:pointer;transition:all .2s}
.gv-copy:hover{border-color:#003699}
.gv-copy.is-done{background:#003699;color:#fff;border-color:#003699}
.gv-ref{font-size:15px}
.gv-ref strong{color:#021030}
.gv-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.gv-btn{display:inline-flex;justify-content:center;align-items:center;margin-top:auto;padding:15px 24px;border-radius:999px;background:#F2BC3D;color:#021030!important;font-weight:800;text-decoration:none!important;transition:transform .2s,background .2s}
.gv-btn:hover{background:#F6C955;transform:translateY(-2px)}
.gv-btn.is-soon{background:#E8EDF7;color:#5A6680!important;cursor:default;transform:none}
.gv-soon{font-size:14px;color:#5A6680}
@media (max-width:860px){.gv{grid-template-columns:1fr}}
@media (max-width:767px){.gv-card{padding:22px 18px}.gv-value{font-size:18px}}
/* ==========================================================
   Header layout (final): logo left, menu + Give right, same edges as page content
   ========================================================== */
header#masthead .e-con.e-parent,footer#colophon .e-con.e-parent{--padding-left:0px!important;--padding-right:0px!important;--padding-top:0px!important;--padding-bottom:0px!important}
header#masthead .elementor-widget-shortcode,header#masthead .elementor-widget-container{margin:0!important;padding:0!important}
.hq-hdr{justify-content:flex-start!important;gap:0}
.hq-hdr-logo{margin-right:auto}
.hq-hdr-nav{margin-left:40px!important;margin-right:0!important;justify-content:flex-end}
.hq-hdr-right{margin-left:12px!important;gap:8px}
.hq-hdr-right .hq-hdr-give{display:inline-flex!important;align-items:center}
.hq-panel-give{display:none!important}
@media (max-width:1180px) and (min-width:1024px){.hq-hdr-nav{margin-left:24px!important}.hq-hdr-link{padding:8px 10px!important}}
@media (max-width:1023px){
  .hq-hdr{padding-left:20px!important;padding-right:20px!important}
  .hq-hdr-nav{display:none!important}
  .hq-hdr-right{margin-left:auto!important}
  .hq-hdr-right .hq-hdr-give{padding:8px 16px;font-size:14px}
  .hq-hdr-burger{margin-right:-10px}
}
@media (max-width:380px){.hq-hdr-right .hq-hdr-give{padding:7px 13px;font-size:13px}.hq-hdr-logo svg:not(.hq-hdr-wm){width:30px;height:30px}.hq-hdr .hq-hdr-logo svg.hq-hdr-wm{height:26px!important}}
/* Give v2: pick a fund, then copy the details */
.gv2{max-width:760px}
.gv2-step{display:flex;align-items:center;gap:10px;margin:0 0 14px!important;font-size:17px;font-weight:800;color:#021030}
.gv2-step span{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#003699;color:#fff;font-size:14px}
.gv2-funds{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.gv2-fund{font:inherit;font-size:15px;font-weight:700;padding:12px 20px;border-radius:999px;border:1.5px solid #DBE6FB;background:#fff;color:#021030;cursor:pointer;transition:all .2s}
.gv2-fund:hover{border-color:#003699}
.gv2-fund.is-on{background:#003699;border-color:#003699;color:#fff;box-shadow:0 10px 22px -14px rgba(0,54,153,.8)}
.gv2-card{background:#fff;border:1px solid #DBE6FB;border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:12px}
.gv2-flash{animation:gvFlash .5s ease}
@keyframes gvFlash{from{box-shadow:0 0 0 4px rgba(242,188,61,.5)}to{box-shadow:0 0 0 0 rgba(242,188,61,0)}}
.gv2-desc{margin:0 0 6px!important;font-size:16.5px;color:#3E4A63}
.gv2-rows{display:flex;flex-direction:column;gap:10px}
.gv2-refrow .gv-value em{font-style:normal;font-size:14px;font-weight:600;color:#5A6680;letter-spacing:0}
.gv2-note{margin:4px 0 0!important;padding:12px 14px;border-radius:14px;background:#FFF7E6;color:#6B4A00;font-size:15px}
.gv2-note a{color:#003699;font-weight:700}
.gv2-ob{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-top:8px;padding-top:16px;border-top:1px solid #DBE6FB;text-align:center}
.gv2-or{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#5A6680}
.gv2-obnote{font-size:14px;color:#5A6680}
.gv2-help{margin:18px 0 0!important;font-size:15px;color:#3E4A63}
.gv2-help a{color:#003699;font-weight:700}
@media (max-width:767px){.gv2-card{padding:20px 16px}.gv2-fund{flex:1 1 calc(50% - 10px);text-align:center;padding:12px 10px}}
/* hero pill never wider than the heading on phones */
.hq-live-pill{max-width:100%}
@media (max-width:767px){.hq-pill-more{display:none}}
/* give scripture card */
.hq-scripture{background:#fff!important}
.hq-scripture:hover{transform:none!important;box-shadow:none!important}
