.mf-gallery-wrap{width:100%}
.mf-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.mf-card{background:#fff;border:1px solid rgba(15,23,42,.09);border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(15,23,42,.07);transition:transform .25s ease,box-shadow .25s ease}
.mf-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(15,23,42,.12)}
.mf-media-trigger{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;text-align:left}
.mf-media-thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:#eaf1f8}
.mf-media-thumb img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.mf-card:hover .mf-media-thumb img{transform:scale(1.045)}
.mf-play-button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(8,102,196,.94);color:#fff;font-size:22px;box-shadow:0 10px 25px rgba(0,0,0,.22);transition:transform .25s ease,background .25s ease}
.mf-card:hover .mf-play-button{transform:translate(-50%,-50%) scale(1.08)}

.mf-card-body{padding:16px 17px 18px}
.mf-category{display:inline-block;margin-bottom:8px;padding:5px 9px;border-radius:999px;background:#eaf3fc;color:#0866c4;font-size:12px;font-weight:700;line-height:1}
.mf-card-title{margin:0;color:#10233d;font-size:17px;line-height:1.45;font-weight:700}
.mf-card-description{margin-top:7px;color:#64748b;font-size:13px;line-height:1.6}
.mf-empty-state{padding:24px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc;color:#64748b;text-align:center}
.mf-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}
.mf-modal.is-open{display:flex}
.mf-modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.86)}
.mf-modal-dialog{position:relative;z-index:2;width:min(100%,1000px)}
.mf-player-frame{width:100%;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;box-shadow:0 25px 70px rgba(0,0,0,.4)}
.mf-player-mount{width:100%;height:100%;min-height:0}.mf-player-frame iframe{width:100%;height:100%;border:0;display:block}
.mf-modal-toolbar{position:absolute;left:0;right:0;top:-52px;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:12px}.mf-modal-counter{display:inline-flex;align-items:center;justify-content:center;min-width:62px;height:40px;padding:0 12px;color:#fff;font-size:14px;font-weight:700;line-height:1;border-radius:10px;background:rgba(0,0,0,.32);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.mf-modal-actions{display:flex;align-items:center;gap:6px}.mf-modal-close,.mf-modal-download,.mf-modal-share,.mf-modal-fullscreen{position:static;width:42px;height:42px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(15,23,42,.38);color:#fff;display:grid;place-items:center;cursor:pointer;z-index:5;box-shadow:none;padding:0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s ease,transform .2s ease,border-color .2s ease}.mf-modal-close{font-size:27px;line-height:1}.mf-modal-download,.mf-modal-share,.mf-modal-fullscreen{font-size:0}.mf-modal-download svg,.mf-modal-share svg,.mf-modal-fullscreen svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mf-modal-fullscreen .mf-icon-compress{display:none}.mf-modal-download:disabled{opacity:.35;cursor:not-allowed}.mf-modal-close:hover,.mf-modal-download:not(:disabled):hover,.mf-modal-share:hover,.mf-modal-fullscreen:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.26);transform:translateY(-1px)}
.mf-image-dialog{width:min(100%,1100px)}
.mf-image-viewer{position:relative;background:#050b14;border-radius:12px;overflow:hidden;text-align:center;padding:12px}
.mf-modal-image{display:block;width:100%;max-height:80vh;object-fit:contain;margin:auto}
.mf-modal-caption{color:#fff;padding:10px 8px 4px;font-size:14px}
body.mf-modal-open{overflow:hidden}
@media (max-width:1024px){.mf-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media (max-width:767px){.mf-gallery-grid{grid-template-columns:1fr;gap:16px}.mf-card-body{padding:14px}.mf-modal{padding:14px}.mf-modal-toolbar{top:-48px;left:0;right:0}.mf-modal-counter{min-width:52px;height:38px;font-size:13px}.mf-modal-close,.mf-modal-download,.mf-modal-share,.mf-modal-fullscreen{width:38px;height:38px}}

.mf-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:48px;height:48px;border:0;border-radius:50%;background:transparent;color:#fff;font-size:36px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:none;transition:transform .2s ease}
.mf-gallery-nav:hover{transform:translateY(-50%) scale(1.08)}
.mf-gallery-prev{left:-68px}
.mf-gallery-next{right:-68px}
.mf-image-dialog .mf-gallery-prev{left:-68px}
.mf-image-dialog .mf-gallery-next{right:-68px}
@media (max-width:767px){
	.mf-gallery-nav{width:42px;height:42px;font-size:30px}
	.mf-gallery-prev{left:6px}
	.mf-gallery-next{right:6px}
	.mf-image-dialog .mf-gallery-prev{left:6px}
	.mf-image-dialog .mf-gallery-next{right:6px}
	.mf-modal-dialog{width:100%}
}


.mf-modal:fullscreen,.mf-modal.mf-force-fullscreen{padding:24px;background:rgba(2,6,23,.96);width:100vw;height:100vh;box-sizing:border-box}.mf-modal:fullscreen .mf-modal-backdrop,.mf-modal.mf-force-fullscreen .mf-modal-backdrop{background:rgba(2,6,23,.96)}.mf-modal:fullscreen .mf-modal-dialog,.mf-modal.mf-force-fullscreen .mf-modal-dialog{width:min(100%,1400px);max-height:calc(100vh - 48px)}.mf-modal:fullscreen .mf-modal-toolbar,.mf-modal.mf-force-fullscreen .mf-modal-toolbar{top:12px;left:0;right:0}.mf-modal:fullscreen .mf-player-frame,.mf-modal.mf-force-fullscreen .mf-player-frame{max-height:calc(100vh - 48px);aspect-ratio:16/9}.mf-modal:fullscreen .mf-image-viewer,.mf-modal.mf-force-fullscreen .mf-image-viewer{max-height:calc(100vh - 48px);padding:12px}.mf-modal:fullscreen .mf-modal-image,.mf-modal.mf-force-fullscreen .mf-modal-image{max-height:calc(100vh - 100px)}.mf-modal:fullscreen .mf-gallery-prev,.mf-modal.mf-force-fullscreen .mf-gallery-prev{left:18px}.mf-modal:fullscreen .mf-gallery-next,.mf-modal.mf-force-fullscreen .mf-gallery-next{right:18px}

.mf-player-frame video{width:100%;height:100%;display:block;object-fit:contain;background:#000;border:0}.mf-card-video-preview{width:100%;height:100%;display:block;object-fit:cover;background:#0b1220;pointer-events:none}
.mf-social-thumb{width:100%;height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#111827,#1f2937);color:#fff;font-weight:700;font-size:18px}
.mf-social-facebook{background:linear-gradient(135deg,#1877f2,#0d47a1)}
.mf-social-tiktok{background:linear-gradient(135deg,#111,#3b0b3b)}
.mf-social-instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}
.mf-modal-source{display:inline-flex;align-items:center;gap:6px;color:#fff;text-decoration:none;padding:7px 10px;border-radius:8px;background:rgba(255,255,255,.08);font-size:13px;line-height:1;}
.mf-modal-source:hover{color:#fff;background:rgba(255,255,255,.16)}
.mf-player-mount iframe{width:100%;height:100%;min-height:420px;border:0;display:block}
@media (max-width:767px){.mf-player-mount iframe{min-height:300px}.mf-modal-source span[data-mf-source-text]{display:none}}


/* Social video previews: render the platform's real cover/thumbnail instead of a generic placeholder. */
.mf-social-thumb-wrap{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#0b1220}
.mf-social-card-embed{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#0b1220;pointer-events:none}
.mf-social-overlay-trigger{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:pointer;padding:0;display:grid;place-items:center;text-align:center;z-index:2}
.mf-social-overlay-trigger:focus-visible{outline:3px solid rgba(255,255,255,.9);outline-offset:-3px}
.mf-social-overlay-trigger .mf-play-button{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3}.mf-social-overlay-trigger:hover .mf-play-button{transform:translate(-50%,-50%)}
.mf-social-player{width:min(100%,1200px);height:min(84vh,900px);min-height:420px;aspect-ratio:auto;background:#000;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.mf-social-player .mf-player-mount{height:100%;width:100%;display:flex;align-items:center;justify-content:center}
.mf-social-player .mf-player-mount iframe{width:100%;height:100%;min-height:0;border:0;display:block;margin:0 auto}
.mf-social-player-facebook .mf-player-mount iframe{min-height:420px;height:100%}
.mf-social-player-instagram .mf-player-mount iframe{min-height:520px;height:100%}
.mf-social-player-tiktok .mf-player-mount iframe{min-height:520px;height:100%}
@media (max-width:767px){
 .mf-social-thumb-wrap{aspect-ratio:16/9}
 .mf-social-player{width:100%;height:min(86vh,900px);min-height:360px;border-radius:10px}
 .mf-social-player-facebook .mf-player-mount iframe{min-height:360px;height:100%}
 .mf-social-player-instagram .mf-player-mount iframe,.mf-social-player-tiktok .mf-player-mount iframe{min-height:420px;height:100%}
}

/* Social cards: keep the play button visible at all times and use real Instagram cover art when available. */
.mf-social-card-thumb{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
.mf-social-overlay-trigger .mf-play-button{opacity:1!important;visibility:visible!important}
.mf-social-player-facebook{aspect-ratio:16/9;height:auto;max-height:84vh}
.mf-social-player-tiktok,.mf-social-player-instagram{aspect-ratio:9/16;width:min(100%,520px);height:min(84vh,900px);max-width:100%}
.mf-social-player-tiktok .mf-player-mount iframe,.mf-social-player-instagram .mf-player-mount iframe{width:100%;height:100%;min-height:0}
@media (max-width:767px){.mf-social-player-facebook{aspect-ratio:16/9;height:auto;min-height:240px}.mf-social-player-tiktok,.mf-social-player-instagram{width:min(100%,430px);height:min(82vh,760px);min-height:0;aspect-ratio:9/16}}

/* Social video ratio controls: match common platform formats without cropping the embedded player. */
.mf-social-thumb-wrap.mf-social-ratio-16-9{aspect-ratio:16/9}
.mf-social-thumb-wrap.mf-social-ratio-4-5{aspect-ratio:4/5}
.mf-social-thumb-wrap.mf-social-ratio-1-1{aspect-ratio:1/1}
.mf-social-thumb-wrap.mf-social-ratio-9-16{aspect-ratio:9/16}
.mf-social-thumb-wrap.mf-social-ratio-3-4{aspect-ratio:3/4}
.mf-social-player.mf-social-ratio-16-9{aspect-ratio:16/9;width:min(100%,1200px);height:auto;max-height:84vh}
.mf-social-player.mf-social-ratio-4-5{aspect-ratio:4/5;width:min(100%,720px);height:auto;max-height:84vh}
.mf-social-player.mf-social-ratio-1-1{aspect-ratio:1/1;width:min(100%,820px);height:auto;max-height:84vh}
.mf-social-player.mf-social-ratio-9-16{aspect-ratio:9/16;width:min(100%,520px);height:auto;max-height:84vh}
.mf-social-player.mf-social-ratio-3-4{aspect-ratio:3/4;width:min(100%,650px);height:auto;max-height:84vh}
@media (max-width:767px){
 .mf-social-player.mf-social-ratio-4-5{width:min(100%,430px)}
 .mf-social-player.mf-social-ratio-1-1{width:min(100%,520px)}
 .mf-social-player.mf-social-ratio-9-16{width:min(100%,430px)}
 .mf-social-player.mf-social-ratio-3-4{width:min(100%,460px)}
}

/* Final social hover cleanup: never add a blue overlay/background over social thumbnails. */
.mf-video-gallery .mf-social-overlay-trigger,
.mf-video-gallery .mf-social-overlay-trigger:hover,
.mf-video-gallery .mf-social-overlay-trigger:focus,
.mf-video-gallery .mf-social-overlay-trigger:active { background:transparent!important; background-color:transparent!important; box-shadow:none!important; }
.mf-video-gallery .mf-social-overlay-trigger::before,
.mf-video-gallery .mf-social-overlay-trigger::after { content:none!important; display:none!important; }
.mf-video-gallery .mf-social-card-thumb { filter:none!important; opacity:1!important; }
.mf-video-gallery .mf-social-thumb-wrap:hover .mf-social-card-thumb { filter:none!important; opacity:1!important; }
.mf-youtube-player { width:100%; aspect-ratio:16/9; background:#000; border-radius:12px; overflow:hidden; }
.mf-youtube-player .mf-player-mount { width:100%; height:100%; }
.mf-youtube-player .mf-player-mount iframe { width:100%; height:100%; min-height:0; }
@media (max-width:767px){ .mf-youtube-player { aspect-ratio:16/9; width:100%; } }
