/* Home page featured YouTube video (set in Admin -> Video). Hidden until site.js
   finds a published video, so the page looks unchanged when none is set. */
.site-video[hidden]{display:none!important}
.site-video{padding:72px 0 84px;background:radial-gradient(ellipse at 50% 0%,rgba(214,180,92,.10),transparent 60%),#071f17}
.site-video .section-head{text-align:center;max-width:720px;margin:0 auto 34px}
.site-video .section-head h2{margin:10px 0 12px}
.site-video .section-head p{margin:0 auto;color:var(--muted,#b7c6bb)}

.sv-frame{position:relative;max-width:960px;margin:0 auto;aspect-ratio:16/9;border-radius:22px;overflow:hidden;
  background:#03110c;border:1px solid rgba(214,180,92,.35);
  box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 0 6px rgba(214,180,92,.06)}
.sv-frame iframe{position:absolute;inset:0;z-index:3;width:100%;height:100%;border:0;animation:svFade .6s ease}
@keyframes svFade{from{opacity:0}to{opacity:1}}

.sv-poster{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;margin:0;cursor:pointer;
  background:#03110c;color:#fff;font:inherit;display:block}
.sv-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .4s ease}
.sv-poster::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(3,17,12,.15) 0%,rgba(3,17,12,.05) 45%,rgba(3,17,12,.75) 100%)}
.sv-poster:hover img,.sv-poster:focus-visible img{transform:scale(1.035);filter:brightness(.92)}
.sv-poster:focus-visible{outline:3px solid var(--gold,#d6b45c);outline-offset:-3px}

/* Red rounded play button with a soft pulse */
.sv-play{position:absolute;left:50%;top:50%;z-index:2;width:92px;height:64px;transform:translate(-50%,-50%);
  border-radius:18px;background:#e01e2b;display:grid;place-items:center;
  box-shadow:0 12px 34px rgba(224,30,43,.45);transition:transform .25s ease,background .25s ease}
.sv-play svg{width:34px;height:34px;margin-left:4px;fill:#fff}
.sv-play::before{content:"";position:absolute;inset:-10px;border-radius:24px;border:2px solid rgba(255,255,255,.55);
  animation:svPulse 2.2s ease-out infinite}
.sv-poster:hover .sv-play,.sv-poster:focus-visible .sv-play{transform:translate(-50%,-50%) scale(1.08);background:#ff2333}
@keyframes svPulse{0%{opacity:.8;transform:scale(.92)}100%{opacity:0;transform:scale(1.25)}}

/* "YouTube" badge, bottom left */
.sv-badge{position:absolute;left:18px;bottom:16px;z-index:2;display:inline-flex;align-items:center;gap:8px;
  padding:7px 13px 7px 9px;border-radius:999px;background:rgba(0,0,0,.62);backdrop-filter:blur(6px);
  font-size:.85rem;font-weight:700;letter-spacing:.01em}
.sv-badge i{width:24px;height:17px;border-radius:5px;background:#e01e2b;display:grid;place-items:center}
.sv-badge i::after{content:"";border-style:solid;border-width:4.5px 0 4.5px 7.5px;border-color:transparent transparent transparent #fff;margin-left:2px}
.sv-hint{position:absolute;right:18px;bottom:18px;z-index:2;font-size:.82rem;color:rgba(255,255,255,.85)}

.sv-link{display:block;width:max-content;max-width:100%;margin:18px auto 0;color:var(--gold,#d6b45c);font-weight:700;text-decoration:none;font-size:.92rem}
.sv-link:hover{text-decoration:underline}

/* "Tap for sound" button over a muted autoplaying video */
.sv-sound{position:absolute;left:50%;bottom:64px;z-index:4;transform:translateX(-50%);display:inline-flex;align-items:center;gap:9px;
  padding:11px 20px 11px 16px;border:0;border-radius:999px;cursor:pointer;font:inherit;font-weight:800;font-size:.95rem;
  color:#fff;background:#e01e2b;box-shadow:0 10px 30px rgba(0,0,0,.45);animation:svFade .6s ease,svNudge 2.4s ease-in-out 1.5s infinite}
.sv-sound svg{width:22px;height:22px;fill:#fff;stroke:#fff;stroke-width:1.8;stroke-linecap:round}
.sv-sound:hover{background:#ff2333}
.sv-sound:focus-visible{outline:3px solid var(--gold,#d6b45c);outline-offset:3px}
@keyframes svNudge{0%,100%{transform:translateX(-50%)}50%{transform:translateX(-50%) scale(1.06)}}

@media (max-width:640px){
  .sv-sound{bottom:52px;padding:9px 16px 9px 13px;font-size:.88rem}
  .site-video{padding:48px 0 56px}
  .sv-frame{border-radius:14px}
  .sv-play{width:68px;height:48px;border-radius:14px}
  .sv-play svg{width:26px;height:26px}
  .sv-badge{left:10px;bottom:10px;font-size:.78rem}
  .sv-hint{display:none}
}
@media (prefers-reduced-motion:reduce){.sv-play::before,.sv-sound{animation:none}.sv-poster img{transition:none}}
