
/* ============================================================
   v202 deterministic banner layout
   Desktop: Left + Middle + Right
   Mobile: middle remains visible; side cards collapse.
   ============================================================ */
.smp-ad-shell{
  width:min(1760px,calc(100% - 20px))!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(190px,280px) minmax(0,1180px) minmax(190px,280px)!important;
  gap:16px!important;
  align-items:start!important;
}
.smp-ad-shell > main.container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  min-width:0!important;
}
.smp-ad-side-slot{
  display:block!important;
  min-width:0!important;
  padding-top:48px!important;
}
.smp-home-page .smp-ad-side-slot{
  padding-top:76px!important;
}
.smp-ad-side-inner{
  display:block!important;
  width:100%!important;
  max-width:280px!important;
  margin:0 auto!important;
  position:sticky!important;
  top:82px!important;
}
.smp-ad-side{
  display:block!important;
  width:100%!important;
  aspect-ratio:1/2!important;
  position:relative!important;
  overflow:hidden!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  background:#081621!important;
}
.smp-ad-side .smp-ad-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.smp-banner-middle-wrap{
  display:block!important;
  width:100%!important;
  margin:18px 0 26px!important;
}
.smp-ad-middle{
  display:block!important;
  position:relative!important;
  width:100%!important;
  aspect-ratio:1200/250!important;
  min-height:130px!important;
  overflow:hidden!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  background:#081621!important;
}
.smp-ad-middle > .smp-ad-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
.smp-ad-overlay{
  z-index:2!important;
}
@media(max-width:1199px){
  .smp-ad-shell{
    grid-template-columns:minmax(130px,170px) minmax(0,1fr) minmax(130px,170px)!important;
    gap:10px!important;
  }
  .smp-ad-side-inner{max-width:170px!important}
}
@media(max-width:899px){
  .smp-ad-shell{
    display:block!important;
    width:100%!important;
  }
  .smp-ad-side-slot{
    display:none!important;
  }
  .smp-banner-middle-wrap{
    display:block!important;
  }
  .smp-ad-middle{
    aspect-ratio:16/5!important;
    min-height:100px!important;
  }
}
