.vg-gallery{background:#f8fafc;color:#122033;min-height:60vh}
.vg-heading{max-width:700px}.vg-eyebrow{font-size:.76rem;letter-spacing:.2em;font-weight:700;color:#556fe2}.vg-heading h1{letter-spacing:-.04em}
.vg-filter{background:#fff;border:1px solid #e1e6ef;border-radius:999px;padding:.6rem 1.12rem;font-size:.89rem;font-weight:600;color:#4b566b;transition:.2s}
.vg-filter:hover,.vg-filter:focus-visible{border-color:#596cdd;color:#273fb4}.vg-filter.is-active{background:#222f54;color:#fff;border-color:#222f54}
.vg-card{display:block;border:0;background:none;padding:0;color:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 24px rgba(23,36,67,.12);transition:transform .2s,box-shadow .2s}
.vg-card:hover{transform:translateY(-5px);box-shadow:0 18px 34px rgba(23,36,67,.18)}.vg-card:focus-visible{outline:3px solid #6379f1;outline-offset:4px}
.vg-poster{display:block;position:relative;aspect-ratio:9/16;background:#203b58;overflow:hidden}
.vg-poster img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .3s}.vg-card:hover img{transform:scale(1.04)}
.vg-poster-placeholder{position:absolute;inset:0;background:linear-gradient(145deg,#235e71,#202849 65%,#7a627a)}
.vg-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.07) 25%,rgba(5,12,27,.13) 46%,rgba(5,12,27,.91) 100%)}
.vg-play{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.9);color:#17243d;font-size:19px;padding-left:3px;box-shadow:0 7px 24px rgba(0,0,0,.2)}
.vg-card-content{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:19px}
.vg-pill{background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.35);border-radius:25px;font-size:.68rem;padding:4px 10px;backdrop-filter:blur(6px)}
.vg-card-title{font-weight:700;font-size:1rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vg-card-description{font-size:.75rem;color:#e3e9f1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vg-modal-dialog{max-width:min(350px,calc(100vw - 24px))}.vg-player-ratio{aspect-ratio:9/16;position:relative}.vg-player-ratio iframe{width:100%;height:100%;border:0;position:absolute;inset:0}
@media(max-width:575.98px){.vg-gallery{padding-top:36px!important}.vg-heading h1{font-size:2.1rem}.vg-card{border-radius:12px}.vg-card-content{padding:11px;gap:5px}.vg-card-title{font-size:.83rem}.vg-card-description{display:none}.vg-pill{font-size:.59rem}.vg-play{width:44px;height:44px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.vg-card,.vg-poster img{transition:none}.vg-card:hover{transform:none}}

/* Mobile-only TikTok/Shorts-style feed. Desktop styles above are unchanged. */
.vg-mobile{display:none}
@media(max-width:991.98px){
  .vg-mobile{display:block;background:#080a0d;color:#fff}
  .vg-mobile-feed{height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior-y:contain;scroll-snap-type:y mandatory;scrollbar-width:none;background:#050609}
  .vg-mobile-feed::-webkit-scrollbar{display:none}
  .vg-mobile-slide{position:relative;height:100vh;height:100dvh;width:100%;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;background:#090c13;isolation:isolate}
  .vg-mobile-poster{position:absolute;inset:0;background-color:#192538;background-position:center;background-size:cover;filter:blur(12px);transform:scale(1.06);opacity:.75}
  .vg-mobile-player{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;pointer-events:auto}
  .vg-mobile-player iframe{width:100%;height:100%;border:0;display:block}
  .vg-mobile-gradient{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.42),transparent 22%,transparent 55%,rgba(0,0,0,.72))}
  .vg-mobile-top{position:absolute;z-index:3;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:max(20px,env(safe-area-inset-top)) 20px 0;pointer-events:none;text-shadow:0 1px 8px #000}
  .vg-mobile-brand{font-size:1.15rem;font-weight:800;letter-spacing:.02em}.vg-mobile-count{font-size:.78rem}
  .vg-mobile-copy{position:absolute;z-index:3;bottom:calc(50px + env(safe-area-inset-bottom));left:18px;right:24%;pointer-events:none;text-shadow:0 1px 8px #000}
  .vg-mobile-category{font-size:.73rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
  .vg-mobile-title{font-size:1.28rem;line-height:1.24;font-weight:750;margin:8px 0 0;color:#fff}
  .vg-mobile-description{font-size:.88rem;line-height:1.45;margin:8px 0 0;color:#f2f2f2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .vg-mobile-hint{position:absolute;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:3;pointer-events:none;font-size:.76rem;opacity:.8}
  .vg-mobile-feed:focus-visible{outline:3px solid #aac8ff;outline-offset:-3px}
}
