.hero-carousel{padding:0}.hero-stage{display:grid}.hero-slide{grid-area:1/1;min-width:0;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .7s ease}.hero-slide.is-active{visibility:visible;opacity:1;pointer-events:auto}.hero-slide .hero-grid{height:100%;min-height:640px}.teaching-slide h2{font-size:clamp(42px,4.6vw,66px);line-height:1.08;color:var(--cream);margin:0 0 24px}.banner-scripture{padding:50px 36px;border:1px solid #bfa76c80;border-radius:50% 50% 3px 3px;min-height:380px;display:flex;flex-direction:column;justify-content:center;text-align:center;background:radial-gradient(ellipse at top,#53724c55,transparent 70%)}.banner-reference{font:clamp(35px,4vw,58px)/1.2 Georgia,serif!important;max-width:none!important;color:#ead59e!important;margin:18px 0!important}.banner-rule{height:1px;width:70px;background:var(--gold);margin:16px auto}.banner-topic{max-width:none!important;margin:10px 0!important}.banner-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:24px;flex-wrap:wrap}.banner-buttons{display:flex;gap:10px;flex-wrap:wrap}.banner-controls button{border:1px solid #c5d1bd70;background:transparent;color:#f7f5ed;padding:9px 15px;font:500 14px/1.5 Arial,sans-serif;min-height:44px;cursor:pointer}.banner-controls button:hover,.banner-controls button[aria-pressed=true]{background:#e7d29c;color:#193d32}.banner-dots{display:flex;gap:4px}.banner-dots button{border:0;width:38px;padding:8px;background:none!important}.banner-dots span{display:block;width:9px;height:9px;border:1px solid #d8c087;border-radius:50%;margin:auto}.banner-dots button[aria-pressed=true] span{background:#e7d29c;box-shadow:0 0 0 3px #e7d29c30}.banner-status{font-size:13px;color:#dce6d7}@media(max-width:850px){.hero-slide .hero-grid{min-height:0;align-content:start}.banner-scripture{min-height:290px;max-width:760px;width:100%;margin:auto}.hero-stage .hero-grid{padding-top:42px;padding-bottom:28px}.banner-controls{gap:15px}.banner-status{margin-left:auto}}@media(max-width:650px){.teaching-slide h2{font-size:42px}.banner-scripture{min-height:240px;padding:30px 24px}.banner-reference{font-size:36px!important}.banner-buttons button{padding:9px 12px;font-size:13px}.banner-controls{padding-top:12px}.banner-dots{gap:0}.banner-dots button{width:32px}.banner-status{font-size:12px}}@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
