.mprod-widget-wrap{--mprod-gap:14px;--mprod-radius:0px;--mprod-columns:6;--mprod-speed:28s;--mprod-card-width:280px}
.mprod-widget-wrap,.mprod-widget-wrap *,.mprod-widget-wrap *::before,.mprod-widget-wrap *::after{box-sizing:border-box}
.mprod-card,.mprod-carousel-card{appearance:none;-webkit-appearance:none;border:0;border-radius:0;outline:0;box-shadow:none;width:100%;font:inherit;color:inherit;margin:0;background:transparent;padding:0;text-align:left;cursor:pointer}
.mprod-grid{display:grid;grid-template-columns:repeat(var(--mprod-columns),minmax(0,1fr));gap:var(--mprod-gap)}
.mprod-card{position:relative;display:block;overflow:hidden}
.mprod-card-image{position:relative;display:block;aspect-ratio:1/1.1;overflow:hidden;border-radius:var(--mprod-radius);background:#d8d2c5;isolation:isolate}
.mprod-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease,filter .35s ease}
.mprod-card:hover .mprod-card-image img{transform:scale(1.05)}
.mprod-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.12) 42%,rgba(0,0,0,.55) 100%);z-index:1}
.mprod-card-label,.mprod-card-desc{position:absolute;left:14px;right:14px;z-index:2}
.mprod-card-label{bottom:14px;display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 28px);padding:9px 12px;background:rgba(20,20,20,.88);backdrop-filter:blur(10px);color:#fff;font-size:14px;line-height:1.2;font-weight:600;letter-spacing:.02em;text-transform:uppercase}
.mprod-card-desc{bottom:54px;color:#fff;font-size:13px;line-height:1.45;opacity:.92;max-width:85%;display:none}
.mprod-grid.is-style-overlay-bottom .mprod-card-desc,.mprod-grid.is-style-editorial-dark .mprod-card-desc,.mprod-grid.is-style-abstract-frame .mprod-card-desc{display:block}
.mprod-grid.is-style-overlay-bottom .mprod-card-label,.mprod-grid.is-style-editorial-dark .mprod-card-label{bottom:18px}
.mprod-grid.is-style-overlay-bottom .mprod-card-desc{bottom:48px}
.mprod-grid.is-style-overlay-bottom .mprod-card-shade{background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.14) 50%,rgba(0,0,0,.78) 100%)}
.mprod-grid.is-style-editorial-dark .mprod-card-image{background:#111}
.mprod-grid.is-style-editorial-dark .mprod-card-shade{background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,.24) 45%,rgba(0,0,0,.85) 100%)}
.mprod-grid.is-style-editorial-dark .mprod-card-label{background:rgba(42,40,32,.86)}
.mprod-grid.is-style-abstract-frame .mprod-card{transform:rotate(calc((var(--mprod-item-rotate,1) * 1deg)));transition:transform .35s ease}
.mprod-grid.is-style-abstract-frame .mprod-card:nth-child(odd){--mprod-item-rotate:-1}
.mprod-grid.is-style-abstract-frame .mprod-card:nth-child(even){--mprod-item-rotate:1}
.mprod-grid.is-style-abstract-frame .mprod-card:hover{transform:rotate(0deg) translateY(-4px)}
.mprod-grid.is-style-abstract-frame .mprod-card-image{padding:10px;background:#0f0f10;border:1px solid rgba(255,255,255,.08)}
.mprod-grid.is-style-abstract-frame .mprod-card-image img{border:1px solid rgba(255,255,255,.16)}
.mprod-grid.is-style-abstract-frame .mprod-card-shade{inset:10px;background:linear-gradient(180deg,rgba(9,9,10,.02) 0%,rgba(9,9,10,.15) 48%,rgba(9,9,10,.72) 100%)}
.mprod-grid.is-style-abstract-frame .mprod-card-label{left:24px;right:auto;bottom:24px;background:linear-gradient(135deg,rgba(240,240,240,.96),rgba(209,209,209,.78));color:#111;backdrop-filter:blur(12px);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.mprod-grid.is-style-abstract-frame .mprod-card-desc{left:24px;right:24px;bottom:64px;max-width:70%}
.mprod-grid.is-admin-preview{grid-template-columns:repeat(5,minmax(0,1fr))}
.mprod-admin-preview-wrap .mprod-card{display:block !important;min-height:0 !important}
.mprod-admin-preview-wrap .mprod-card-image{width:100% !important}
.mprod-empty{padding:20px;border:1px dashed #ccc;border-radius:12px}
.mprod-modal{position:fixed;inset:0;z-index:999999;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease}
.mprod-modal.is-open{opacity:1;visibility:visible}
.mprod-modal-overlay{position:absolute;inset:0;background:rgba(7,7,7,.78)}
.mprod-modal-dialog{position:relative;z-index:2;width:min(1180px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:auto;margin:20px auto;background:#fff;padding:0;box-shadow:0 30px 80px rgba(0,0,0,.28)}
.mprod-modal-close{position:absolute;top:16px;right:16px;z-index:5;width:44px;height:44px;border:0;background:rgba(15,15,15,.88);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.mprod-modal-stage{position:relative;background:#111}
.mprod-modal-gallery{position:relative;overflow:hidden;min-height:420px}
.mprod-modal-slide{display:none;position:relative}
.mprod-modal-slide.is-active{display:block}
.mprod-modal-slide img{display:block;width:100%;height:min(76vh,820px);object-fit:cover}
.mprod-modal-caption{position:absolute;left:24px;right:24px;bottom:24px;z-index:4;max-width:min(760px,92%);padding:18px 20px;background:rgba(18,18,18,.58);backdrop-filter:blur(12px);color:#fff}
.mprod-modal-title{margin:0 0 10px;font-size:30px;line-height:1.15;color:#fff}
.mprod-modal-description{font-size:15px;line-height:1.65;color:rgba(255,255,255,.95)}
.mprod-modal-description p:first-child{margin-top:0}.mprod-modal-description p:last-child{margin-bottom:0}
.mprod-modal-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:52px;height:52px;border:0;background:rgba(15,15,15,.76);color:#fff;font-size:38px;line-height:1;cursor:pointer}
.mprod-modal-nav.is-prev{left:16px}.mprod-modal-nav.is-next{right:16px}
.mprod-modal-nav.is-hidden{display:none}
.mprod-modal-dots{display:flex;justify-content:center;gap:8px;padding:14px 20px;background:#fff}
.mprod-modal-dot{width:10px;height:10px;border:0;background:#c9c9c9;cursor:pointer}
.mprod-modal-dot.is-active{background:#111}
.mprod-carousel{display:flex;flex-direction:column;gap:var(--mprod-gap);overflow:hidden;position:relative}
.mprod-carousel::before,.mprod-carousel::after{content:"";position:absolute;top:0;bottom:0;width:12%;z-index:2;pointer-events:none}
.mprod-carousel::before{left:0;background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,0))}
.mprod-carousel::after{right:0;background:linear-gradient(270deg,rgba(255,255,255,.98),rgba(255,255,255,0))}
.mprod-carousel-row{overflow:hidden;width:100%}
.mprod-carousel-track{display:flex;width:max-content;gap:var(--mprod-gap);animation:mprod-marquee var(--mprod-speed) linear infinite;will-change:transform}
.mprod-carousel-row.is-reverse .mprod-carousel-track{animation-direction:reverse}
.mprod-carousel.is-pause-hover .mprod-carousel-row:hover .mprod-carousel-track{animation-play-state:paused}
.mprod-carousel-seq{display:flex;gap:var(--mprod-gap);flex-shrink:0}
.mprod-carousel-card{position:relative;flex:0 0 var(--mprod-card-width);display:block;overflow:hidden;min-height:340px;background:#111;transform:translateY(0) rotate(0deg);transition:transform .4s ease,box-shadow .4s ease,filter .4s ease;box-shadow:0 16px 40px rgba(0,0,0,.12);isolation:isolate}
.mprod-carousel-card:nth-child(3n+1){transform:rotate(-1.2deg)}
.mprod-carousel-card:nth-child(3n+2){transform:rotate(.85deg)}
.mprod-carousel-card:nth-child(3n+3){transform:rotate(-.35deg)}
.mprod-carousel-card:hover{transform:translateY(-6px) rotate(0deg);box-shadow:0 26px 50px rgba(0,0,0,.18)}
.mprod-carousel-media,.mprod-carousel-media img{display:block;width:100%;height:100%}
.mprod-carousel-media{position:absolute;inset:0}
.mprod-carousel-media img{object-fit:cover;transition:transform .65s ease,filter .45s ease}
.mprod-carousel-card:hover .mprod-carousel-media img{transform:scale(1.06);filter:saturate(1.06)}
.mprod-carousel-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.14) 45%,rgba(0,0,0,.74));z-index:1}
.mprod-carousel-noise{position:absolute;inset:-20%;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.24),transparent 30%),radial-gradient(circle at 80% 30%,rgba(255,255,255,.12),transparent 24%),linear-gradient(135deg,rgba(255,255,255,.08),transparent 42%);mix-blend-mode:screen;opacity:.55;z-index:2;pointer-events:none}
.mprod-carousel-label{position:absolute;left:18px;right:18px;bottom:18px;z-index:3;display:flex;flex-direction:column;gap:8px;padding:14px 16px}
.mprod-carousel-label strong{font-size:16px;line-height:1.2;text-transform:uppercase;letter-spacing:.04em}
.mprod-carousel-label em{font-style:normal;font-size:13px;line-height:1.45;opacity:.95}
.mprod-label-glass .mprod-carousel-label{background:rgba(16,16,18,.56);backdrop-filter:blur(16px);color:#fff;border:1px solid rgba(255,255,255,.14)}
.mprod-label-dark .mprod-carousel-label{background:rgba(10,10,10,.9);color:#fff}
.mprod-label-accent .mprod-carousel-card::before{content:"";position:absolute;inset:auto auto 0 0;width:72%;height:55%;background:linear-gradient(135deg,rgba(232,204,141,.36),rgba(159,122,234,.18),transparent 65%);z-index:2;pointer-events:none}
.mprod-label-accent .mprod-carousel-label{background:linear-gradient(135deg,rgba(248,241,228,.92),rgba(255,255,255,.62));backdrop-filter:blur(16px);color:#111;box-shadow:0 12px 30px rgba(0,0,0,.14)}
@keyframes mprod-marquee{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}
@media (max-width:1024px){.mprod-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mprod-grid.is-admin-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.mprod-carousel-card{flex-basis:240px;min-height:300px}}
@media (max-width:767px){.mprod-grid,.mprod-grid.is-admin-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.mprod-card-image{aspect-ratio:1/1.12}.mprod-card-label{left:10px;right:10px;bottom:10px;padding:8px 10px;font-size:12px;max-width:calc(100% - 20px)}.mprod-card-desc{display:none!important}.mprod-modal-dialog{width:min(100vw - 16px,900px);margin:8px auto}.mprod-modal-gallery{min-height:240px}.mprod-modal-slide img{height:56vh}.mprod-modal-title{font-size:22px}.mprod-modal-caption{left:14px;right:14px;bottom:14px;padding:14px}.mprod-modal-nav{width:42px;height:42px;font-size:30px}.mprod-modal-nav.is-prev{left:8px}.mprod-modal-nav.is-next{right:8px}.mprod-carousel::before,.mprod-carousel::after{width:8%}.mprod-carousel-card{flex-basis:72vw;min-height:280px}}
