/* 037 — Mobile editorial layout. Desktop grids and media formats remain unchanged. */
@media screen and (max-width:767px){
  body.vtv-premium .vtv-section,body.vtv-editorial .vtv-section,
  body.vtv-premium .v2-wrap,body.vtv-editorial .v2-wrap,
  body.vtv-premium .vtv-news-inner,body.vtv-editorial .vtv-news-page,
  body.vtv-premium .inner,body.vtv-editorial .inner{
    box-sizing:border-box;max-width:100%;min-width:0;
  }
  body.vtv-editorial :is(.contentGrid,.breakingRelatedGrid,.vtv-breaking-grid,.vtv-news-cards,.vtv-news-list,.vtv-editorial-gateways,.vtv-cards,.vtv-services,.portraits,.highgrid,.mosaic,.peopleMosaic,.vtv-partners-rail){
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-flow:row!important;gap:18px!important;overflow:visible!important;
  }
  /* Horizontal desktop carousels must become full-width, stacked cards on phones. */
  body.vtv-editorial :is(.vrail,.peopleRail,.verticalPeople,.horizontalPeople){
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;grid-auto-columns:auto!important;
    gap:18px!important;overflow:visible!important;scroll-snap-type:none!important;
    width:100%!important;max-width:100%!important;
  }
  body.vtv-editorial :is(.vrail,.peopleRail,.verticalPeople,.horizontalPeople,.contentGrid,.breakingRelatedGrid,.vtv-breaking-grid,.vtv-news-list,.mosaic,.highgrid,.portraits)>*{
    box-sizing:border-box!important;min-width:0!important;max-width:100%!important;width:100%!important;
    grid-column:auto!important;grid-row:auto!important;flex-basis:auto!important;
  }
  body.vtv-editorial .railbox :is(.rprev,.rnext){display:none!important}
  body.vtv-editorial :is(.mosaic,.highgrid)>a:first-child,
  body.vtv-editorial .highgrid .lead{grid-row:auto!important;min-height:0!important}
  body.vtv-editorial .mosaic>a{min-height:0!important;aspect-ratio:16/9}
  body.vtv-editorial .mosaic img{position:absolute;inset:0}
  body.vtv-editorial .highgrid .lead .vmedia{height:auto!important;min-height:0!important;aspect-ratio:16/9}
  body.vtv-editorial .vcard{width:100%!important;min-width:0!important;max-width:100%!important}
  body.vtv-editorial .vcard .vbody{padding:16px!important}
  body.vtv-editorial .vcard .vbody h3{font-size:clamp(19px,5.3vw,23px)!important;line-height:1.25!important;overflow-wrap:anywhere}
  body.vtv-editorial .vcard .vbody p{font-size:15px!important;line-height:1.55!important}
  body.vtv-editorial .vcard .vmedia{width:100%!important;max-width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:16/9}
  body.vtv-editorial .vcard .vmedia img{display:block;width:100%;height:100%;object-fit:cover}
  /* Portrait sources stay proportional, centered within the full-width card. */
  body.vtv-editorial .vcard.format-vertical .vmedia,
  body.vtv-editorial .vcard .vmedia.format-vertical{aspect-ratio:auto!important;max-height:none!important;background:#101216;text-align:center}
  body.vtv-editorial .vcard.format-vertical .vmedia img,
  body.vtv-editorial .vcard .vmedia.format-vertical img{
    width:100%!important;height:auto!important;max-height:72svh!important;object-fit:contain!important;
  }
  body.vtv-editorial :is(.peopleRail,.verticalPeople,.horizontalPeople)>a img{
    display:block;width:100%!important;height:auto!important;max-height:72svh;object-fit:contain!important;background:#101216
  }
  body.vtv-editorial :is(.peopleRail,.verticalPeople,.horizontalPeople)>a h3{font-size:clamp(19px,5.3vw,23px)!important;line-height:1.25}
  body.vtv-editorial .vtv-news-story img,body.vtv-editorial .vtv-news-card img{height:auto;aspect-ratio:16/9;object-fit:cover}
  body.vtv-editorial .breakingRelatedGrid{grid-template-columns:minmax(0,1fr)!important}
  body.vtv-editorial .breakingRelatedGrid .vbody{padding:16px!important}
  body.vtv-editorial .breakingRelatedGrid .vbody h3{font-size:clamp(19px,5.3vw,23px)!important}
  body.vtv-editorial :is(.section,.vtv-section,.vtv-news-showcase){overflow-x:clip}
}
@media screen and (max-width:390px){
 body.vtv-editorial :is(.vrail,.peopleRail,.contentGrid,.breakingRelatedGrid,.vtv-news-list){gap:16px!important}
}
