.gallery-media-page{padding-top:58px}
.gallery-media-tabs{display:inline-flex;align-items:center;gap:7px;margin:0 0 34px;padding:6px;border:1px solid #d7e5ec;border-radius:999px;background:rgba(238,246,249,.92);box-shadow:0 12px 34px rgba(20,61,82,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.gallery-media-tabs button{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 20px;border:0;border-radius:999px;background:transparent;color:#4b6675;font:800 13px/1 var(--display);cursor:pointer;transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .25s ease}
.gallery-media-tabs button:hover{color:#0a6fa9;transform:translateY(-1px)}
.gallery-media-tabs button.is-active{background:#fff;color:#0b6fa8;box-shadow:0 8px 22px rgba(12,102,151,.12),inset 0 0 0 1px rgba(11,120,180,.08)}
.gallery-media-tabs button b{display:grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#e8f3f8;color:#0b78b4;font-size:10px}
.gallery-media-tabs button.is-active b{background:#0b78b4;color:#fff}
.gallery-media-tab-icon{font-size:18px;font-weight:400;line-height:1}.gallery-media-tab-play{font-size:11px}
.gallery-media-panel[hidden]{display:none!important}

.video-company-filter{display:flex;gap:9px;overflow-x:auto;margin:0 0 32px;padding:4px 0 22px;border-bottom:1px solid #dce7ec;scrollbar-width:none}
.video-company-filter::-webkit-scrollbar{display:none}
.video-company-filter button{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border:1px solid #cbdce5;border-radius:999px;background:#fff;color:#536b79;font:750 11px/1 var(--display);cursor:pointer;transition:.24s ease}
.video-company-filter button:hover,.video-company-filter button.is-active{border-color:#0b78b4;background:#0b78b4;color:#fff;box-shadow:0 9px 24px rgba(11,120,180,.18)}
.video-company-filter button span{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:rgba(11,120,180,.09);font-size:9px}
.video-company-filter button.is-active span,.video-company-filter button:hover span{background:rgba(255,255,255,.18)}

.gallery-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gallery-video-card{min-width:0;overflow:hidden;border:1px solid #dce8ed;border-radius:20px;background:#fff;box-shadow:0 15px 42px rgba(19,58,79,.08);transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s ease,border-color .32s ease}
.gallery-video-card:hover{transform:translateY(-5px);border-color:rgba(11,120,180,.26);box-shadow:0 24px 55px rgba(19,58,79,.14)}
.gallery-video-card.is-filtered-out{display:none}
.gallery-video-thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#071a27;overflow:hidden;cursor:pointer;text-align:left}
.gallery-video-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.72,.2,1),filter .45s ease}
.gallery-video-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,16,26,.04),rgba(3,16,26,.36));transition:background .35s ease}
.gallery-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 14px 38px rgba(0,0,0,.24);transition:transform .32s cubic-bezier(.2,.75,.2,1),background .25s ease}
.gallery-video-play:after{content:"";position:absolute;inset:-7px;border:1px solid rgba(255,255,255,.45);border-radius:50%}
.gallery-video-play i{display:block;margin-left:4px;color:#0b78b4;font-style:normal;font-size:21px}
.gallery-video-hover-label{position:absolute;left:16px;bottom:14px;padding:8px 11px;border-radius:999px;background:rgba(5,28,42,.76);color:#fff;font:800 9px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transform:translateY(6px);transition:.28s ease}
.gallery-video-thumb:hover img,.gallery-video-card:hover .gallery-video-thumb img{transform:scale(1.045);filter:saturate(1.04) contrast(1.02)}
.gallery-video-thumb:hover .gallery-video-shade,.gallery-video-card:hover .gallery-video-shade{background:linear-gradient(180deg,rgba(3,16,26,.02),rgba(3,16,26,.48))}
.gallery-video-thumb:hover .gallery-video-play,.gallery-video-card:hover .gallery-video-play{transform:translate(-50%,-50%) scale(1.08);background:#fff}
.gallery-video-thumb:hover .gallery-video-hover-label,.gallery-video-card:hover .gallery-video-hover-label{opacity:1;transform:none}
.gallery-video-copy{padding:21px 22px 23px}
.gallery-video-copy small{display:block;margin-bottom:9px;color:#0b78b4;font:800 9px/1.3 var(--display);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gallery-video-copy h2{margin:0;color:#102b3a;font:700 20px/1.25 var(--display);letter-spacing:-.015em}
.gallery-video-caption{margin-top:10px;color:#627581;font-size:13px;line-height:1.65}
.gallery-video-caption p{margin:.35em 0}.gallery-video-caption-source{display:none!important}

.gallery-video-lightbox{width:min(1120px,94vw);max-width:none;padding:0;border:0;border-radius:20px;background:#061723;color:#fff;box-shadow:0 34px 100px rgba(0,0,0,.54);overflow:hidden}
.gallery-video-lightbox::backdrop{background:rgba(2,9,15,.9);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.gallery-video-close{position:absolute;right:13px;top:13px;z-index:4;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(3,18,29,.76);color:#fff;font-size:25px;line-height:1;cursor:pointer;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);transition:.2s ease}
.gallery-video-close:hover{background:#fff;color:#0a2637}
.gallery-video-modal-frame{position:relative;aspect-ratio:16/9;background:#02080c}
.gallery-video-modal-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.gallery-video-modal-copy{padding:22px 26px 25px;border-top:1px solid rgba(255,255,255,.08)}
.gallery-video-modal-copy h2{margin:0;color:#fff;font:700 clamp(20px,2.2vw,28px)/1.2 var(--display)}
.gallery-video-modal-copy .rich-content{margin-top:10px;color:#bcd0da;font-size:13px;line-height:1.65}
.gallery-video-empty{margin-top:4px}
body.video-lightbox-open{overflow:hidden}

@media(max-width:980px){.gallery-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
  .gallery-media-page{padding-top:42px}
  .gallery-media-tabs{display:flex;width:100%;margin-bottom:26px}.gallery-media-tabs button{flex:1;justify-content:center;padding:0 12px}
  .video-company-filter{margin-bottom:24px}
  .gallery-video-grid{grid-template-columns:1fr;gap:18px}
  .gallery-video-card{border-radius:17px}.gallery-video-play{width:56px;height:56px}.gallery-video-copy{padding:18px 18px 20px}
  .gallery-video-lightbox{width:96vw;border-radius:16px}.gallery-video-modal-copy{padding:18px 18px 20px}.gallery-video-close{width:38px;height:38px;right:9px;top:9px}
}
@media(prefers-reduced-motion:reduce){.gallery-video-card,.gallery-video-thumb img,.gallery-video-play,.gallery-video-hover-label{transition:none!important}}
