
/*
 * DSD Multi Mega Menu — responsive sizing only.
 * Column counts are applied directly by JavaScript from the saved
 * Tablet Columns and Phone Columns settings.
 * Desktop remains unchanged.
 */

@media (max-width:1200px){
 .dsd-mmm-panel{
  max-height:calc(100dvh - var(--dsd-mmm-top,80px));
  overflow:auto;
 }

 .dsd-mmm-panel .dsd-mmm-inner{
  width:100%;
  max-width:none;
  padding:clamp(10px,1.8vw,22px) clamp(8px,2vw,24px) clamp(12px,2vw,24px);
 }

 .dsd-mmm-panel .dsd-mmm-intro{
  margin-bottom:clamp(7px,1.4vw,16px);
  gap:clamp(4px,.9vw,9px);
 }

 .dsd-mmm-panel .dsd-mmm-intro strong{
  font-size:clamp(10px,1.6vw,17px)!important;
  line-height:1.12!important;
 }

 .dsd-mmm-panel .dsd-mmm-intro span{
  font-size:clamp(9px,1.3vw,15px)!important;
  line-height:1.2!important;
 }

 .dsd-mmm-panel .dsd-mmm-grid{
  gap:clamp(4px,1vw,13px)!important;
 }

 .dsd-mmm-panel .dsd-mmm-media{
  aspect-ratio:var(--dsd-mmm-responsive-ratio,1.15 / 1);
 }

 .dsd-mmm-panel .dsd-mmm-card img,
 .dsd-mmm-panel .dsd-mmm-card video{
  width:100%;
  height:100%!important;
  min-height:0;
  object-fit:cover;
 }

 .dsd-mmm-panel .dsd-mmm-title{
  margin-top:clamp(3px,.7vw,8px)!important;
  padding-bottom:clamp(3px,.6vw,7px)!important;
  font-size:clamp(7px,1.15vw,13px)!important;
  line-height:1.1!important;
  letter-spacing:clamp(0px,.08vw,.8px)!important;
 }

 .dsd-mmm-panel .dsd-mmm-desc{
  margin-top:clamp(2px,.4vw,5px)!important;
  font-size:clamp(6px,.9vw,10px)!important;
  line-height:1.15!important;
 }

 .dsd-mmm-panel .dsd-mmm-badge{
  top:clamp(2px,.45vw,6px);
  right:clamp(2px,.45vw,6px);
  padding:clamp(1px,.25vw,3px) clamp(3px,.45vw,6px);
  font-size:clamp(5px,.7vw,8px)!important;
 }
}

@media (min-width:768px) and (max-width:1200px) and (orientation:landscape){
 .dsd-mmm-panel .dsd-mmm-media{aspect-ratio:1.35 / 1}
}

@media (min-width:768px) and (max-width:1200px) and (orientation:portrait){
 .dsd-mmm-panel .dsd-mmm-media{aspect-ratio:1.05 / 1}
}

@media (max-width:767px){
 .dsd-mmm-panel{
  top:var(--dsd-mmm-top,64px);
  max-height:calc(100dvh - var(--dsd-mmm-top,64px));
 }

 .dsd-mmm-panel .dsd-mmm-inner{
  padding:8px 7px 10px;
 }

 .dsd-mmm-panel .dsd-mmm-intro{
  flex-direction:row;
  flex-wrap:wrap;
  align-items:baseline;
  margin-bottom:7px;
 }

 .dsd-mmm-panel .dsd-mmm-intro strong{
  font-size:clamp(9px,2.8vw,13px)!important;
 }

 .dsd-mmm-panel .dsd-mmm-intro span{
  font-size:clamp(8px,2.4vw,11px)!important;
 }

 .dsd-mmm-panel .dsd-mmm-grid{
  gap:clamp(3px,1.2vw,7px)!important;
 }

 .dsd-mmm-panel .dsd-mmm-media{
  aspect-ratio:1.05 / 1;
 }

 .dsd-mmm-panel .dsd-mmm-title{
  margin-top:3px!important;
  padding-bottom:3px!important;
  font-size:clamp(5px,1.9vw,9px)!important;
  line-height:1.05!important;
 }

 .dsd-mmm-panel .dsd-mmm-desc{
  margin-top:2px!important;
  font-size:clamp(4px,1.55vw,7px)!important;
  line-height:1.08!important;
 }
}

@media (max-width:767px) and (orientation:landscape){
 .dsd-mmm-panel .dsd-mmm-media{aspect-ratio:1.35 / 1}
}


/* Touch-device fallback for iPadOS and tablet browsers reporting desktop widths. */
.dsd-mmm-panel.dsd-mmm-tablet-mode,
.dsd-mmm-panel.dsd-mmm-phone-mode{
 max-height:calc(100dvh - var(--dsd-mmm-top,80px));
 overflow:auto;
}
.dsd-mmm-panel.dsd-mmm-tablet-mode .dsd-mmm-inner,
.dsd-mmm-panel.dsd-mmm-phone-mode .dsd-mmm-inner{
 width:100%;
 max-width:none;
}
.dsd-mmm-panel.dsd-mmm-tablet-mode .dsd-mmm-media,
.dsd-mmm-panel.dsd-mmm-phone-mode .dsd-mmm-media{
 aspect-ratio:var(--dsd-mmm-responsive-ratio,1.05 / 1);
}
.dsd-mmm-panel.dsd-mmm-tablet-mode .dsd-mmm-card img,
.dsd-mmm-panel.dsd-mmm-tablet-mode .dsd-mmm-card video,
.dsd-mmm-panel.dsd-mmm-phone-mode .dsd-mmm-card img,
.dsd-mmm-panel.dsd-mmm-phone-mode .dsd-mmm-card video{
 width:100%;
 height:100%!important;
 min-width:0!important;
 min-height:0!important;
 object-fit:cover;
}
.dsd-mmm-panel.dsd-mmm-tablet-mode .dsd-mmm-card,
.dsd-mmm-panel.dsd-mmm-phone-mode .dsd-mmm-card{
 min-width:0!important;
}
