/* Scope player styles to the live page. Preserve existing site global styling. */
.vbc-live{--forest:#142923;--deep:#0b201b;--pine:#204139;--sage:#6e8a77;--gold:#d9b979;--gold-light:#e7d5a8;--cream:#f8f7f1;--ivory:#fdfbf6;--line:rgba(217,185,121,.25);--ink:#182820;--muted:#607369;--radius:16px;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#f8f7f1;color:#182820;font-family:var(--sans)}
.vbc-live .hero{padding:0}.vbc-live .hero-inner{max-width:none}.vbc-live .broadcast-shell{position:relative}
.vbc-live #live-screen{background:#000}.vbc-live #live-screen iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:600px){.vbc-live #live-screen{aspect-ratio:16/9;min-height:0}.vbc-live .screen:not(#live-screen){min-height:370px}.vbc-live .screen-inner{padding:25px 18px}}
.vbc-live{--forest:#142923;--deep:#0b201b;--pine:#204139;--sage:#6e8a77;--gold:#d9b979;--gold-light:#e7d5a8;--cream:#f8f7f1;--ivory:#fdfbf6;--line:rgba(217,185,121,.25);--ink:#182820;--muted:#607369;--radius:16px;--serif:Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.vbc-live *{box-sizing:border-box}
.vbc-live a{color:inherit}
.vbc-live a:focus-visible,.vbc-live button:focus-visible{outline:3px solid #bb9447;outline-offset:4px}
.vbc-live .wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
.vbc-live .hero{background:radial-gradient(ellipse at 75% 30%,rgba(142,167,119,.16),transparent 47%),linear-gradient(130deg,#102d26 0%,#071a16 100%);color:white;position:relative;overflow:hidden}
.vbc-live .hero:before{content:"✝";position:absolute;right:6%;top:-145px;font-size:610px;font-family:var(--serif);line-height:1;color:rgba(220,188,123,.045);pointer-events:none}
.vbc-live .hero-inner{padding:72px 0 38px;position:relative}
.vbc-live .eyebrow{font-size:.71rem;text-transform:uppercase;letter-spacing:.24em;font-weight:800;color:var(--gold)}
.vbc-live .hero h1{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;font-size:clamp(3rem,6vw,5.1rem);line-height:1.08;margin:16px 0}
.vbc-live .hero h1 em{color:var(--gold-light);font-style:italic}
.vbc-live .lead{color:#dce8dd;font-size:1.05rem;line-height:1.7;max-width:670px;margin:0 0 30px}
.vbc-live .hero-details{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#c6d8cb;font-size:.84rem;margin-bottom:35px}
.vbc-live .hero-details .dot{width:4px;height:4px;border-radius:50%;background:var(--gold)}
.vbc-live .broadcast{margin-top:-1px;background:var(--forest);color:white;padding-bottom:60px}
.vbc-live .broadcast-shell{padding:0;border:1px solid rgba(226,214,180,.3);border-radius:20px;background:rgba(8,23,19,.85);overflow:hidden;box-shadow:0 22px 65px rgba(1,16,10,.27)}
.vbc-live .broadcast-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:18px 25px;border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap}
.vbc-live .status{display:inline-flex;align-items:center;gap:10px;border-radius:100px;font-size:.73rem;font-weight:850;text-transform:uppercase;letter-spacing:.13em;color:#dfecdf}
.vbc-live .status-dot{width:9px;height:9px;background:#a7b4ab;border-radius:50%}
.vbc-live .status.live{color:#ffe1db}
.vbc-live .status.live .status-dot{background:#f4483d;box-shadow:0 0 0 6px rgba(244,72,61,.16);animation:pulse 2s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 11px rgba(244,72,61,0)}}
.vbc-live .status.checking .status-dot{background:var(--gold)}
.vbc-live .top-right{display:flex;align-items:center;gap:14px;color:#b8c5bd;font-size:.77rem}
.vbc-live .small-button{font:inherit;font-size:.73rem;font-weight:700;border:1px solid rgba(255,255,255,.26);color:white;background:transparent;padding:8px 11px;border-radius:5px;cursor:pointer}
.vbc-live .small-button:hover{background:rgba(255,255,255,.09)}
.vbc-live .screen{aspect-ratio:16/9;min-height:240px;position:relative;background:linear-gradient(150deg,#18382f 10%,#091c17 70%);display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.vbc-live .screen:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(231,213,168,.13) .8px,transparent .8px);background-size:23px 23px;mask-image:linear-gradient(100deg,transparent,black);pointer-events:none}
.vbc-live .screen:after{content:"";position:absolute;width:400px;height:400px;border:1px solid rgba(226,214,180,.1);border-radius:50%;right:-170px;top:-160px;box-shadow:0 0 0 90px rgba(226,214,180,.018),0 0 0 180px rgba(226,214,180,.012);pointer-events:none}
.vbc-live .screen-inner{position:relative;z-index:1;padding:30px 22px;max-width:630px}
.vbc-live .cross-icon{width:65px;height:65px;margin:auto auto 22px;border:1px solid rgba(220,188,123,.35);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-size:32px}
.vbc-live .screen h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,4vw,3rem);margin:0 0 12px;letter-spacing:-.02em}
.vbc-live .screen p{line-height:1.7;color:#cad6cb;font-size:.93rem;margin:0 auto 25px}
.vbc-live .screen-label{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:.64rem;font-weight:800;margin-bottom:15px}
.vbc-live .hero-button{background:var(--gold);color:var(--deep);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:.81rem;font-weight:850;border-radius:5px;padding:14px 22px;transition:background .15s}
.vbc-live .hero-button:hover{background:#f0d69f}
.vbc-live .player-host{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.vbc-live .player-host iframe{border:0;display:block;width:100%;height:100%}
.vbc-live .screen.hidden{display:none}
.vbc-live .broadcast-bottom{padding:22px 25px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.vbc-live .broadcast-bottom h3{font-family:var(--serif);font-size:1.35rem;margin:0 0 5px;font-weight:500}
.vbc-live .broadcast-bottom p{font-size:.8rem;color:#c5d1c8;margin:0}
.vbc-live .broadcast-links{display:flex;gap:10px;flex-wrap:wrap}
.vbc-live .outline-link{border:1px solid rgba(223,207,157,.35);padding:11px 16px;text-decoration:none;border-radius:5px;font-size:.75rem;font-weight:800;color:var(--gold-light)}
.vbc-live .outline-link:hover{background:rgba(255,255,255,.08)}
.vbc-live .content{padding:72px 0 90px;background:var(--cream)}
.vbc-live .section-title{color:var(--forest);font-family:var(--serif);font-size:clamp(2rem,4vw,3.1rem);font-weight:400;line-height:1.13;margin:12px 0 20px}
.vbc-live .section-title em{color:#a5854a}
.vbc-live .section-intro{max-width:650px;line-height:1.75;color:var(--muted);font-size:.95rem}
.vbc-live .section-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:55px}
.vbc-live .service-panel{padding:32px;border:1px solid #e0ddd1;border-radius:12px;background:white;box-shadow:0 14px 35px rgba(20,41,35,.035)}
.vbc-live .service-panel h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;margin:0 0 20px}
.vbc-live .service-row{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid #eae8de}
.vbc-live .service-row:last-child{border-bottom:0;padding-bottom:0}
.vbc-live .calendar-icon{width:42px;height:42px;border-radius:10px;background:#eaf0e8;color:var(--forest);display:grid;place-items:center;font-weight:850}
.vbc-live .service-row strong{display:block;font-size:.92rem}
.vbc-live .service-row small{display:block;margin-top:4px;color:#68766f;font-size:.82rem}
.vbc-live .info-bar{margin-top:40px;background:#e9eee7;border:1px solid #d8e2d6;border-radius:12px;padding:20px 25px;display:flex;gap:16px;align-items:center;line-height:1.6;color:#435e4c;font-size:.84rem}
.vbc-live .info-bar strong{color:var(--forest)}
@media  (max-width:900px){.vbc-live .section-grid{grid-template-columns:1fr;gap:22px}
.vbc-live .hero-inner{padding-top:55px}}
@media  (max-width:600px){.vbc-live .wrap{width:min(100% - 28px,1180px)}
.vbc-live .hero-inner{padding:45px 0 24px}
.vbc-live .lead{font-size:.9rem}
.vbc-live .hero-details{font-size:.72rem}
.vbc-live .broadcast{padding-bottom:35px}
.vbc-live .broadcast-shell{border-radius:12px}
.vbc-live .broadcast-top,.vbc-live .broadcast-bottom{padding:15px}
.vbc-live .screen{aspect-ratio:9/11;min-height:390px}
.vbc-live .screen-inner{padding:18px}
.vbc-live .screen h2{font-size:2rem}
.vbc-live .content{padding:48px 0 60px}
.vbc-live .service-panel{padding:20px}
.vbc-live .info-bar{align-items:start;padding:16px}}
@media (prefers-reduced-motion:reduce){.vbc-live *,.vbc-live *:before,.vbc-live *:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* The dedicated worship player takes audio priority over background music. */
body:has(.vbc-live) .vbc-music-player{display:none!important}

/* Senior-first WATCH LIVE: first content on the page is the actual player. */
.vbc-live .broadcast{padding:16px 0 38px;margin-top:0;background:#142923;}
.vbc-live .vbc-watch-heading{padding:0 0 15px;}
.vbc-live .vbc-watch-kicker{color:#f5d79c;font-size:.76rem;letter-spacing:.09em;font-weight:850;margin:2px 0 7px;}
.vbc-live .vbc-watch-heading h1{font-family:Georgia,serif;font-size:clamp(1.9rem,4.1vw,2.85rem);font-weight:650;letter-spacing:-.02em;line-height:1.15;color:#fff;margin:0 0 6px;}
.vbc-live .vbc-watch-tagline{font-size:clamp(.9rem,1.6vw,1.05rem);color:#f1e9d7;line-height:1.4;margin:0;max-width:800px;}
.vbc-live .broadcast-shell{scroll-margin-top:102px;outline:none;}
.vbc-live .broadcast-shell:focus-visible{outline:4px solid #ffcb6d;outline-offset:3px;}
.vbc-live .broadcast-top{padding:13px 22px;}
.vbc-live .status{font-size:.84rem;letter-spacing:.065em;}
.vbc-live .small-button{min-height:42px;font-size:.81rem;border-radius:7px;}
.vbc-live .outline-link{min-height:46px;display:inline-flex;align-items:center;font-size:.84rem;}
@media(max-width:600px){
  .vbc-live .broadcast{padding-top:10px;padding-bottom:26px;}
  .vbc-live .vbc-watch-heading{padding-bottom:10px;}
  .vbc-live .vbc-watch-kicker{font-size:.64rem;margin:0 0 4px;}
  .vbc-live .vbc-watch-heading h1{font-size:1.75rem;margin-bottom:2px;}
  .vbc-live .vbc-watch-tagline{font-size:.82rem;}
  .vbc-live .broadcast-shell{scroll-margin-top:80px;}
  .vbc-live .broadcast-top{padding:9px 12px;}
  .vbc-live .top-right{font-size:.72rem;}
  .vbc-live .screen:not(#live-screen){min-height:300px;aspect-ratio:3/4;}
  .vbc-live .screen-inner{padding:18px 14px;}
  .vbc-live .cross-icon{width:47px;height:47px;font-size:24px;margin-bottom:11px;}
  .vbc-live .screen h2{font-size:1.65rem;}
  .vbc-live .screen p{font-size:.86rem;margin-bottom:14px;}
  .vbc-live .hero-button{min-height:48px;font-size:.88rem;}
}
