.mm-rug-gallery{padding:clamp(56px,8vw,110px) clamp(20px,5vw,40px);max-width:1240px;margin:0 auto;}
.mm-rug-gallery-head{text-align:center;max-width:640px;margin:0 auto clamp(28px,4vw,48px);}
.mm-rug-gallery-title{font-family:var(--font-title);font-weight:var(--fw-medium);font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.15;margin:10px 0 14px;color:var(--mm-black);}
.mm-rug-gallery-text{font-size:.95rem;line-height:1.7;color:var(--mm-text-secondary);margin:0;}
.mm-rug-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(150px,19vw,240px);grid-auto-flow:dense;gap:14px;}
.mm-rug-gallery-item{position:relative;display:block;padding:0;border:0;background:var(--mm-off-white);overflow:hidden;cursor:zoom-in;border-radius:0;}
.mm-rug-gallery-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease;}
.mm-rug-gallery-item:hover img{transform:scale(1.04);}
.mm-rug-gallery-item:focus-visible{outline:2px solid var(--mm-champagne);outline-offset:3px;}
.mm-rug-gallery-item:nth-child(5n+1){grid-column:span 2;grid-row:span 2;}
.mm-rug-gallery-item:nth-child(10n+6){grid-column:3 / span 2;}

@media (max-width:900px){
  .mm-rug-gallery{padding-left:0;padding-right:0;}
  .mm-rug-gallery-head{padding:0 20px;}
  .mm-rug-gallery-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 20px;scroll-padding:0 20px;}
  .mm-rug-gallery-grid::-webkit-scrollbar{display:none;}
  .mm-rug-gallery-item,
  .mm-rug-gallery-item:nth-child(5n+1),
  .mm-rug-gallery-item:nth-child(10n+6){flex:0 0 min(78vw,360px);aspect-ratio:4/5;grid-column:auto;grid-row:auto;scroll-snap-align:start;}
  .mm-rug-gallery-item:hover img{transform:none;}
  .mm-rug-gallery .mm-rug-gallery-more{display:none;}
}

.mm-rgl{position:fixed;inset:0;z-index:9600;background:rgba(6,6,6,.95);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;touch-action:pan-y;}
.mm-rgl.open{opacity:1;visibility:visible;}
body.mm-rgl-open{overflow:hidden;}
.mm-rgl img{max-width:min(92vw,1100px);max-height:84vh;width:auto;height:auto;object-fit:contain;display:block;box-shadow:0 30px 90px rgba(0,0,0,.6);}
.mm-rgl-close,.mm-rgl-btn{position:absolute;z-index:2;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.28);color:#fff;cursor:pointer;transition:background .2s,border-color .2s;}
.mm-rgl-close:hover,.mm-rgl-btn:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.55);}
.mm-rgl-close{top:20px;right:22px;width:44px;height:44px;}
.mm-rgl-btn{top:50%;transform:translateY(-50%);width:50px;height:50px;}
.mm-rgl-prev{left:22px;}
.mm-rgl-next{right:22px;}
.mm-rgl-btn[disabled]{opacity:.25;cursor:default;pointer-events:none;}
.mm-rgl-count{position:absolute;bottom:24px;left:0;right:0;text-align:center;color:rgba(255,255,255,.7);font-family:var(--font-title);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-variant-numeric:tabular-nums;}
@media (max-width:900px){.mm-rgl-btn{display:none;}}

.mm-rug-gallery-item[hidden]{display:none;}
.mm-rug-gallery-more{margin-top:clamp(26px,3.4vw,40px);}
@media (min-width:901px){
  .mm-rug-gallery-item.rg-t1{grid-column:1 / -1 !important;grid-row:span 2;}
  .mm-rug-gallery-item.rg-t2{grid-column:span 2 !important;grid-row:span 2;}
  .mm-rug-gallery-item.rg-t3{grid-row:span 2;}
  .mm-rug-gallery-item.rg-t4{grid-column:span 2;}
}
