/* TGIFM 2026 theme — newsletter look: light-blue top, navy/charcoal bands, royal-blue accents, silver Minute symbol.
   Layered on top of the live site's own CSS by the tgifm-ai-pastor Worker. Old header is hidden, not removed,
   so the site's scripts (menu, dialogs, forms) keep working. */

@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:300 700;font-display:swap;src:url(/theme/fonts/CormorantGaramond-500.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:300 700;font-display:swap;src:url(/theme/fonts/CormorantGaramond-500i.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:300 800;font-display:swap;src:url(/theme/fonts/Montserrat-400.woff2) format("woff2")}

:root{
  --tg-ink:#0f1217;--tg-char:#171b22;--tg-slate:#4a5361;--tg-mist:#eef0f3;--tg-royal:#2b5bd7;--tg-royal-lt:#7fa2ff;--tg-silver:#c9ced6;--tg-line:#e3e6ea;
  --tg-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--tg-sans:Montserrat,Helvetica,Arial,sans-serif;
  --ink:#0f1217;--muted:#4a5361;--paper:#ffffff;--cream:#f4f6fa;--line:#e3e6ea;--gold:#7fa2ff;--serif:var(--tg-serif)
}
html body{font-family:var(--tg-sans);color:var(--tg-ink);background:#fff}
html body h1,html body h2,html body h3{font-family:var(--tg-serif);letter-spacing:0}
html body .eyebrow{color:var(--tg-royal);letter-spacing:3px;font-family:var(--tg-sans);font-weight:700}

/* Buttons across the site: royal liquid-glass pills */
html body .button,html body a.button,html body button.button{border-radius:999px;color:#fff;border:0;
  background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0) 55%),var(--tg-royal);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 20px rgba(43,91,215,.28);font-family:var(--tg-sans);letter-spacing:1.2px}
html body .button:hover{filter:brightness(1.06)}

/* Hide the old site header and the old top callouts (kept in the page so scripts still find them) */
body > header:not(.hero):not(.tg-header){display:none !important}
body .discovery-nav,body .message-library-callout,body > .topbar,body .logo-gallery{display:none !important}

/* ---------- New header ---------- */
.tg-header{position:sticky;top:0;z-index:100;font-family:var(--tg-sans)}
.tg-topbar{background:#dbe6fb;color:#4a5361;font-size:11px;letter-spacing:2px;text-transform:uppercase}
.tg-topbar .tg-wrap{display:flex;justify-content:space-between;align-items:center;padding-top:7px;padding-bottom:7px}
.tg-topbar a{color:var(--tg-royal);text-decoration:none;margin-left:16px}
.tg-nav{background:rgba(246,249,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid #d6e0f3}
.tg-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.tg-nav .tg-wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.tg-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--tg-ink);flex-shrink:0}
.tg-brand img{width:46px;height:46px;border-radius:50%;padding:6px;background:radial-gradient(circle at 50% 30%,#24345e 0%,#171b22 60%,#0f1217 100%);box-shadow:0 4px 12px rgba(15,18,23,.25)}
.tg-brand b{display:block;font-size:11.5px;letter-spacing:3.4px;text-transform:uppercase;font-weight:700}
.tg-brand small{display:block;font-size:9px;letter-spacing:2.4px;color:var(--tg-slate);text-transform:uppercase;font-weight:500}
.tg-links{display:flex;align-items:center;gap:18px}
.tg-links a,.tg-more-btn,.tg-links .tg-contact{color:#2c3442;text-decoration:none;font-size:12.5px;font-weight:500;letter-spacing:.3px;white-space:nowrap;background:none;border:0;cursor:pointer;font-family:var(--tg-sans);padding:8px 0}
.tg-links a:hover,.tg-more-btn:hover,.tg-links a.tg-active{color:var(--tg-royal)}
.tg-links a.tg-give,.tg-mobile a.tg-give{color:#fff !important;padding:10px 22px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0) 55%),var(--tg-royal);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 6px 16px rgba(43,91,215,.3)}
.tg-more{position:relative}
.tg-more-menu{position:absolute;top:100%;right:-10px;min-width:210px;background:#fff;border:1px solid #d6e0f3;border-radius:14px;padding:8px;box-shadow:0 18px 40px rgba(23,41,89,.16);display:none;z-index:120}
.tg-more:hover .tg-more-menu,.tg-more:focus-within .tg-more-menu{display:block}
.tg-more-menu a,.tg-more-menu button{display:block;width:100%;text-align:left;padding:9px 12px !important;border-radius:9px}
.tg-more-menu a:hover,.tg-more-menu button:hover{background:#eef4ff}
.tg-burger{display:none;background:#fff;border:1px solid #b9c6de;border-radius:10px;width:44px;height:40px;font-size:18px;color:var(--tg-ink);cursor:pointer}
.tg-mobile{display:none;background:#f6f9ff;border-bottom:1px solid #d6e0f3;padding:6px 24px 18px}
.tg-mobile.tg-open{display:grid}
.tg-mobile a,.tg-mobile button{padding:12px 4px;border:0;border-bottom:1px solid #e3e9f6;color:var(--tg-ink);text-decoration:none;font-size:15px;text-align:left;background:none;font-family:var(--tg-sans)}
.tg-mobile a.tg-give{margin-top:12px;text-align:center;border:0}
sup.tg-tm{font-size:.6em;margin-left:1px}
@media (max-width:1240px){.tg-links{gap:13px}.tg-links a,.tg-more-btn,.tg-links .tg-contact{font-size:12px}.tg-brand small{display:none}}
@media (max-width:1060px){.tg-links{display:none}.tg-burger{display:block}}
@media (max-width:560px){.tg-topbar .tg-wrap>span:first-child{display:none}.tg-topbar .tg-wrap{justify-content:center}.tg-topbar a{margin:0 8px}.tg-brand b{font-size:10px;letter-spacing:2.2px}}

/* ---------- Footer: dark band, silver symbol, honour line, AI Pastor TM + copyright ---------- */
html body footer{background:#0f1217 !important;color:#aab2bf !important;border-top:3px solid transparent;border-image:linear-gradient(90deg,#0f1217,#2b5bd7 30%,#7fa2ff 50%,#2b5bd7 70%,#0f1217) 1}
html body footer a{color:var(--tg-royal-lt) !important}
html body footer p,html body footer span,html body footer strong{color:#aab2bf !important}
html body footer .ministry-logo{display:none !important}
.tg-foot{text-align:center;padding:46px 20px 10px;font-family:var(--tg-sans)}
.tg-foot img{width:64px;height:64px;margin:0 auto 16px;display:block}
.tg-foot .tg-honor{font-family:var(--tg-serif);font-style:italic;font-size:24px;color:#e9edf3 !important;margin:0 0 6px}
.tg-legal{text-align:center;font-size:11.5px;line-height:1.8;color:#8a93a1 !important;padding:18px 20px 30px;max-width:900px;margin:0 auto;font-family:var(--tg-sans)}
.tg-legal a{color:var(--tg-royal-lt) !important}

/* ---------- Home: new top sections ---------- */
body .hero.wrap,body section.hero:not(.tg-hero){display:none !important}
.tg-hero{background:radial-gradient(ellipse at 72% -10%,#ffffff 0%,#eef4ff 40%,#dce8fd 100%);color:var(--tg-ink);font-family:var(--tg-sans)}
.tg-hero .tg-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding-top:80px;padding-bottom:80px}
.tg-hero h1{font-size:62px;line-height:1.08;margin:0;color:var(--tg-ink);font-weight:600}
.tg-hero h1 em{color:var(--tg-royal);font-style:italic}
.tg-rule{width:56px;height:2px;background:var(--tg-royal);margin:22px 0}
.tg-lead{font-size:17px;line-height:1.8;color:var(--tg-slate);max-width:540px;margin:0 0 30px}
.tg-ctas{display:flex;gap:14px;flex-wrap:wrap}
.tg-btn{display:inline-flex;align-items:center;border-radius:999px;padding:14px 28px;font-size:12px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;text-decoration:none;color:#fff !important;
  background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0) 55%),var(--tg-royal);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 20px rgba(43,91,215,.35)}
.tg-btn.tg-outline{background:#fff;color:var(--tg-royal) !important;border:1.5px solid var(--tg-royal);box-shadow:0 6px 16px rgba(43,91,215,.12)}
.tg-medal{justify-self:center;position:relative;width:360px;height:360px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 28%,#2a3d6e 0%,#171b22 58%,#0f1217 100%);
  box-shadow:0 30px 70px rgba(23,41,89,.35),inset 0 2px 0 rgba(255,255,255,.12),0 0 0 10px rgba(255,255,255,.65),0 0 0 11px #d6e0f3}
.tg-medal img{width:78%;filter:drop-shadow(0 14px 26px rgba(0,0,0,.55))}
.tg-medal .tg-medal-tm{position:absolute;top:16%;right:13%;font-family:var(--tg-serif);font-size:20px;font-weight:600;color:#d7dce4}
.tg-glowbar{height:3px;background:linear-gradient(90deg,#0f1217,#2b5bd7 30%,#7fa2ff 50%,#2b5bd7 70%,#0f1217)}
.tg-verse{color:#f4f6fa;text-align:center;background:#0f1217;background-image:linear-gradient(160deg,#1d2430 0%,#171b22 55%,#0f1217 100%);padding:84px 20px}
.tg-verse .tg-bar{width:44px;height:2px;background:var(--tg-royal-lt);margin:0 auto 28px}
.tg-verse blockquote{margin:0 auto;max-width:860px;font-family:var(--tg-serif);font-style:italic;font-size:36px;line-height:1.35}
.tg-verse cite{display:block;margin-top:20px;font-style:normal;font-family:var(--tg-sans);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--tg-royal-lt)}
.tg-gallery{background:#fff;padding:56px 0 20px}
.tg-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tg-photos figure{margin:0;position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/5;background:#e9edf3;box-shadow:0 14px 34px rgba(15,18,23,.12)}
.tg-photos img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.tg-photos figure:hover img{transform:scale(1.03)}
.tg-photos figcaption{position:absolute;left:0;right:0;bottom:0;padding:44px 20px 18px;color:#fff;font-size:11px;font-weight:700;letter-spacing:2.6px;text-transform:uppercase;font-family:var(--tg-sans);background:linear-gradient(180deg,rgba(15,18,23,0) 0%,rgba(15,18,23,.72) 100%)}
.tg-library{text-align:center;padding:26px 20px 56px;background:#fff;font-family:var(--tg-sans)}
.tg-library a{color:var(--tg-royal);font-weight:700;font-size:12px;letter-spacing:2.4px;text-transform:uppercase;text-decoration:none}
.tg-pastor{color:#e9edf3;background:radial-gradient(ellipse at 20% 0%,#24345e 0%,#171b22 55%,#0f1217 100%);padding:84px 0;font-family:var(--tg-sans)}
.tg-pastor .tg-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.tg-pastor h2{color:#f4f6fa;font-size:44px;margin:0}
.tg-pastor .eyebrow{color:var(--tg-royal-lt)}
.tg-pastor p{color:var(--tg-silver);font-size:16px;line-height:1.8}
.tg-pastor .tg-rule{background:var(--tg-royal-lt)}
.tg-pastor .tg-legal-note{font-size:11.5px;color:#8a93a1;line-height:1.7;margin-top:18px}
.tg-pastor .tg-ask{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:rgba(255,255,255,.04);border:1px solid rgba(201,206,214,.18);border-radius:20px;padding:36px}
.tg-pastor .tg-ask img{width:120px;height:120px}

@media (max-width:980px){
  .tg-hero .tg-wrap,.tg-pastor .tg-wrap{grid-template-columns:1fr}
  .tg-hero h1{font-size:44px}.tg-medal{order:-1;width:250px;height:250px}.tg-medal .tg-medal-tm{font-size:15px}
  .tg-verse blockquote{font-size:27px}.tg-pastor h2{font-size:34px}
}
@media (max-width:760px){.tg-photos{grid-template-columns:1fr;gap:16px}.tg-photos figure{aspect-ratio:4/3}.tg-gallery{padding:36px 0 10px}}
@media (max-width:560px){.tg-hero h1{font-size:38px}.tg-hero .tg-wrap{padding-top:44px;padding-bottom:56px}}

/* Floating AI Pastor button stays out of the way of the open phone menu */
body.tg-menu-open #aip-btn{display:none}

/* ---------- Top bar: darker, clearly clickable (Pastor Tim 10-08) ---------- */
.tg-topbar{background:#d3e0f8 !important;color:#16213a !important;font-weight:600}
.tg-topbar a{color:#163a9e !important;font-weight:700;display:inline-flex;align-items:center;gap:6px;text-decoration:none;border-bottom:1px solid transparent}
.tg-topbar a:hover{border-bottom-color:#163a9e}
.tg-topbar svg{width:14px;height:14px;fill:currentColor}

/* ---------- Video library: small, titled windows ---------- */
.tg-videos{background:#fff;padding:76px 0 70px;font-family:var(--tg-sans)}
.tg-videos h2{font-size:44px;margin:0;color:var(--tg-ink)}
.tg-vsub{color:var(--tg-slate);font-size:15px;max-width:640px;margin:0 0 10px}
.tg-vrow{margin-top:40px}
.tg-vhead{font-family:var(--tg-sans) !important;font-size:12px;font-weight:700;letter-spacing:2.6px;text-transform:uppercase;color:var(--tg-ink);margin:0 0 6px;padding-bottom:12px;border-bottom:1px solid var(--tg-line)}
.tg-vnote{font-size:12px;color:var(--tg-slate);margin:8px 0 0}
.tg-vgrid{display:grid;gap:22px 18px;margin-top:18px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.tg-row-vert .tg-vgrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.tg-vcard{all:unset;cursor:pointer;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:10px;min-width:0}
.tg-vthumb{position:relative;display:block;border-radius:12px;overflow:hidden;background:#0f1217;box-shadow:0 8px 22px rgba(15,18,23,.14);transition:transform .25s ease,box-shadow .25s ease}
.tg-horz .tg-vthumb{aspect-ratio:16/9}
.tg-vert .tg-vthumb{aspect-ratio:9/16}
.tg-vthumb img{width:100%;height:100%;object-fit:cover;display:block}
.tg-vcard:hover .tg-vthumb,.tg-vcard:focus-visible .tg-vthumb{transform:translateY(-3px);box-shadow:0 14px 30px rgba(23,41,89,.22)}
.tg-vcard:focus-visible .tg-vthumb{outline:3px solid var(--tg-royal);outline-offset:2px}
.tg-vplay{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(15,18,23,.62);border:1.5px solid rgba(255,255,255,.85);backdrop-filter:blur(4px)}
.tg-vplay:after{content:"";position:absolute;left:18px;top:14px;border-style:solid;border-width:9px 0 9px 14px;border-color:transparent transparent transparent #fff}
.tg-vbadge{position:absolute;left:8px;top:8px;background:rgba(43,91,215,.92);color:#fff;font-size:9.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;padding:4px 8px;border-radius:999px}
.tg-vbadge.tg-vmusic{background:rgba(15,18,23,.8)}
.tg-vdur{position:absolute;right:8px;bottom:8px;background:rgba(15,18,23,.78);color:#fff;font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:6px}
.tg-vtitle{font-size:13.5px;font-weight:600;line-height:1.4;color:var(--tg-ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tg-vmore{margin:34px 0 0}
.tg-vmore a{color:var(--tg-royal);font-weight:700;font-size:12px;letter-spacing:2.4px;text-transform:uppercase;text-decoration:none}
.tg-player{border:0;padding:0;background:transparent;max-width:none;max-height:none;overflow:visible}
.tg-player::backdrop{background:rgba(10,14,22,.82);backdrop-filter:blur(3px)}
.tg-pframe{background:#000;border-radius:14px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.tg-pframe iframe{display:block;border:0}
.tg-pclose{position:absolute;top:-46px;right:0;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(15,18,23,.6);color:#fff;font-size:22px;line-height:1;cursor:pointer}
@media (max-width:560px){.tg-videos h2{font-size:34px}.tg-vgrid{grid-template-columns:repeat(2,1fr) !important;gap:18px 12px}.tg-vtitle{font-size:12.5px}.tg-vbadge{font-size:8px;letter-spacing:1px;padding:3px 6px;left:6px;top:6px}.tg-vplay{width:38px;height:38px;margin:-19px 0 0 -19px}.tg-vplay:after{left:15px;top:11px;border-width:8px 0 8px 12px}}

/* Keep the new header immune to page stylesheets that style bare header/nav elements (e.g. /bible/) */
html body header.tg-header{display:block !important;padding:0 !important;margin:0 !important;border:0 !important;background:none !important;max-width:none !important;width:auto !important;position:sticky !important;top:0 !important;justify-content:initial !important;gap:0 !important;box-shadow:none !important}
html body header.tg-header nav.tg-links{display:flex}
html body header.tg-header nav.tg-mobile{display:none}
html body header.tg-header nav.tg-mobile.tg-open{display:grid}
@media (max-width:1060px){html body header.tg-header nav.tg-links{display:none}}

/* Reviewer polish (10-08) */
.tg-topbar .tg-wrap>span{display:inline-flex;align-items:center;gap:0}
.tg-topbar a{line-height:1}
html body header.tg-header .tg-nav .tg-wrap{padding:0 24px !important;max-width:1180px !important;margin:0 auto !important}
html body h1{font-weight:600 !important}
html body footer button,html body footer [data-privacy]{color:#9fb6ff !important;background:none;border:0}
/* Header buttons immune to page-level `button{}` styles (e.g. /pastor) */
html body header.tg-header .tg-more-btn,html body header.tg-header .tg-contact{background:none !important;box-shadow:none !important;border:0 !important;border-radius:0 !important;padding:8px 0 !important;color:#2c3442 !important;font:500 12.5px var(--tg-sans) !important;letter-spacing:.3px !important;text-transform:none !important}
html body header.tg-header .tg-more-menu .tg-contact{padding:9px 12px !important;width:100% !important;text-align:left !important}
html body header.tg-header .tg-burger{background:#fff !important;box-shadow:none !important;border:1px solid #b9c6de !important;border-radius:10px !important;padding:0 !important;width:44px !important;height:40px !important;color:#0f1217 !important;font:18px/1 var(--tg-sans) !important;letter-spacing:0 !important;text-transform:none !important;flex-shrink:0}
html body header.tg-header .tg-mobile button{background:none !important;box-shadow:none !important;border:0 !important;border-bottom:1px solid #e3e9f6 !important;border-radius:0 !important;padding:12px 4px !important;color:#0f1217 !important;font:15px var(--tg-sans) !important;text-transform:none !important;letter-spacing:0 !important;text-align:left !important}
html body header.tg-header .tg-brand img{width:46px !important;height:46px !important;margin:0 !important;display:block !important;padding:6px !important}
html body header.tg-header{text-align:left !important;color:inherit !important}
@media (max-width:560px){html body header.tg-header .tg-brand b{font-size:9.5px !important;letter-spacing:1.7px !important;line-height:1.3 !important}html body header.tg-header .tg-brand{gap:10px !important;min-width:0}html body header.tg-header .tg-nav .tg-wrap{gap:10px !important;padding:0 18px !important}}
