/* MuskMeadow video hub: homepage carousel + chapter video block.
   Uses site CSS variables with fallbacks so it works on any page. */
.vh-section{padding:44px 0 20px;}
.vh-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
.vh-head h2{margin:0;}
.vh-filters{display:flex;gap:8px;flex-wrap:wrap;}
.vh-chip{font:inherit;font-size:.82rem;font-weight:700;border:1px solid var(--line,#DAE1EF);background:var(--card,#fff);color:var(--ink-soft,#46506B);padding:7px 14px;border-radius:999px;cursor:pointer;}
.vh-chip[aria-pressed="true"]{background:var(--grass,#2A59B8);border-color:var(--grass,#2A59B8);color:#fff;}
.vh-rail-wrap{position:relative;}
.vh-rail{list-style:none;margin:0;padding:4px 2px 14px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;}
.vh-rail:focus-visible{outline:3px solid var(--sky,#4C9FD8);outline-offset:2px;}
.vh-card{flex:0 0 172px;scroll-snap-align:start;background:var(--card,#fff);border:1px solid var(--line,#DAE1EF);border-radius:16px;overflow:hidden;box-shadow:0 8px 22px -16px rgba(26,54,119,.35);display:flex;flex-direction:column;}
.vh-card[hidden]{display:none;}
.vh-open{position:relative;display:block;width:100%;aspect-ratio:9/16;border:0;padding:0;cursor:pointer;overflow:hidden;background:#222;color:#fff;font:inherit;text-align:left;}
.vh-open:focus-visible{outline:3px solid var(--sky,#4C9FD8);outline-offset:-3px;}
.vh-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.vh-poster.ph{display:flex;align-items:flex-start;justify-content:center;padding-top:22%;box-sizing:border-box;font-size:3rem;background:linear-gradient(160deg,hsl(var(--h) 70% 38%),hsl(calc(var(--h) + 40) 70% 24%));}
.vh-play{position:absolute;left:50%;top:68%;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.3);}
.vh-play:after{content:"";margin-left:4px;border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent #1A3677;}
.vh-dur{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.72);color:#fff;font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:6px;}
.vh-soon{position:absolute;left:8px;top:8px;background:var(--citrus,#F4A12F);color:#3a2300;font-size:.7rem;font-weight:800;padding:3px 8px;border-radius:999px;}
.vh-meta{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px;flex:1;}
.vh-tag{font-size:.72rem;font-weight:700;color:var(--citrus-deep,#9A5200);}
.vh-meta h3{font-size:.95rem;line-height:1.3;margin:0;color:var(--ink,#1B2440);}
.vh-meta a{margin-top:auto;font-size:.82rem;font-weight:700;color:var(--grass-deep,#1A3677);text-decoration:none;}
.vh-meta a:hover{text-decoration:underline;}
.vh-nav{position:absolute;top:38%;z-index:2;width:38px;height:38px;border-radius:50%;border:1px solid var(--line,#DAE1EF);background:var(--card,#fff);box-shadow:0 4px 14px rgba(26,54,119,.2);font-size:1.3rem;line-height:1;cursor:pointer;color:var(--grass-deep,#1A3677);display:none;}
.vh-nav.prev{left:-8px;}.vh-nav.next{right:-8px;}
@media (hover:hover) and (min-width:760px){.vh-nav{display:block;}}
.vh-empty{display:none;color:var(--ink-soft,#46506B);padding:12px 2px;}
.vh-empty.show{display:block;}
/* chapter block */
.vh-chapter{padding:24px 0 8px;}
.vh-chapter-card{display:flex;gap:22px;align-items:center;background:var(--card,#fff);border:1px solid var(--line,#DAE1EF);border-radius:18px;padding:16px;box-shadow:0 8px 22px -16px rgba(26,54,119,.35);}
.vh-chapter-card .vh-open{flex:0 0 150px;width:150px;border-radius:14px;}
.vh-chapter-card h2{margin:0 0 6px;font-size:1.25rem;}
.vh-chapter-card p{margin:0 0 8px;color:var(--ink-soft,#46506B);}
.vh-transcript summary{cursor:pointer;font-weight:700;color:var(--grass-deep,#1A3677);}
@media (max-width:520px){.vh-chapter-card{flex-direction:column;align-items:flex-start;}.vh-chapter-card .vh-open{flex-basis:auto;width:min(190px,60%);}}
/* player dialog */
.vh-dialog{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;}
.vh-dialog::backdrop{background:rgba(10,16,34,.78);}
.vh-dialog-inner{position:relative;margin:auto;height:100%;display:flex;align-items:center;justify-content:center;padding:16px;}
.vh-frame{position:relative;aspect-ratio:9/16;height:min(86vh,720px);max-width:94vw;background:#000;border-radius:16px;overflow:hidden;}
.vh-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.vh-soon-box{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;text-align:center;padding:20px;background:linear-gradient(160deg,hsl(var(--h) 70% 38%),hsl(calc(var(--h) + 40) 70% 24%));}
.vh-soon-box .e{font-size:3.4rem;}
.vh-close{position:absolute;top:10px;right:10px;width:42px;height:42px;border-radius:50%;border:0;background:#fff;color:#1B2440;font-size:1.4rem;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.4);}
.vh-close:focus-visible{outline:3px solid var(--sky,#4C9FD8);outline-offset:2px;}
@media (prefers-reduced-motion:reduce){.vh-rail{scroll-behavior:auto;}}
@media print{.vh-section,.vh-chapter,.vh-dialog{display:none !important;}}
