
/* Banner only: viewport-responsive full width; preserve existing iframe height. */
body.banner-mode #tvsBannerPage{width:100%!important;max-width:100%!important;margin:0!important;padding-inline:0!important;overflow-x:clip}
body.banner-mode #tvsBannerFrame{display:block;width:100%!important;max-width:100%!important;min-width:0;box-sizing:border-box;margin-inline:0!important}
@media(max-width:650px){body.banner-mode #tvsBannerPage{padding-inline:0!important}}

/* V9.7.3 Surgical — halve the outer bottom spacing below the legacy iframe. */
body.banner-mode #tvsBannerPage{padding-bottom:16px!important}
@media(max-width:650px){body.banner-mode #tvsBannerPage{padding-bottom:12px!important}}

/* V9.7.5 Surgical — explicit viewport rows; override later legacy display rules. */
body.banner-mode{display:grid;grid-template-rows:auto minmax(0,1fr);height:100vh;height:100dvh;min-height:0;overflow:hidden}
body.banner-mode > header{min-width:0}
body.banner-mode section#tvsBannerPage{display:grid!important;grid-template-rows:minmax(0,1fr);min-height:0;height:100%;margin:0!important;padding:0!important;overflow:hidden}
body.banner-mode iframe#tvsBannerFrame{display:block;width:100%!important;height:100%;min-height:0;max-height:none;margin:0!important;border:0;border-radius:0}
