/**
 * CLS + overflow horizontal (AdSense inline margin/width en móvil).
 * Cargado en entradas/páginas vía mu-plugin holli-content-cls.php
 */

/* --- 1. Contención global (evita scroll horizontal / “gelatina”) --- */
html {
  overflow-x: hidden;
  max-width: 100%;
  box-sizing: border-box;
}

body {
  overflow-x: hidden;
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.site-wrapper,
.magcontent,
.magheader,
#main-area,
.post-content,
.main-content,
.post-entry,
.container,
.container.site-content,
.content-area,
.hollimodels-container {
  max-width: 100%;
}

/* --- 2. Medios y anuncios: nunca más anchos que el viewport --- */
img,
iframe,
video,
embed,
object,
figure,
picture,
svg,
table,
ins,
ins.adsbygoogle,
.adsbygoogle {
  max-width: 100% !important;
  box-sizing: border-box;
}

ins.adsbygoogle > div[id^="aswift_"],
ins.adsbygoogle iframe {
  max-width: 100% !important;
  box-sizing: border-box;
}

/* --- 3. Móvil: anular estilos inline de AdSense (margin-left / width fijos) --- */
@media (max-width: 768px) {
  ins.adsbygoogle,
  .adsbygoogle,
  .post-content ins.adsbygoogle,
  .main-content ins.adsbygoogle,
  .post-entry ins.adsbygoogle,
  .widget ins.adsbygoogle,
  .widget_text ins.adsbygoogle,
  .custom-html-widget ins.adsbygoogle {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    contain: layout style;
  }

  ins.adsbygoogle > div[id^="aswift_"],
  ins.adsbygoogle > div[id^="aswift_"] iframe,
  ins.adsbygoogle iframe {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: 0 !important;
    right: auto !important;
  }

  .post-content,
  .main-content,
  .magcontent,
  #main-area {
    overflow-x: hidden;
  }
}

/* --- AdSense: reservar hueco antes del fill de Google --- */
.post-content ins.adsbygoogle,
.main-content ins.adsbygoogle,
.post-entry ins.adsbygoogle,
.widget ins.adsbygoogle,
.widget_text ins.adsbygoogle,
.custom-html-widget ins.adsbygoogle {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 250px;
  overflow: hidden;
  contain: layout style;
  box-sizing: border-box;
}

.post-content ins.adsbygoogle[data-ad-format="auto"],
.main-content ins.adsbygoogle[data-ad-format="auto"],
.post-content ins.adsbygoogle[data-ad-layout="in-article"],
.main-content ins.adsbygoogle[data-ad-layout="in-article"] {
  min-height: 280px;
}

.sidebar ins.adsbygoogle,
#hidden-sidebar ins.adsbygoogle {
  min-height: 250px;
}

@media (min-width: 768px) {
  .post-content ins.adsbygoogle,
  .main-content ins.adsbygoogle {
    min-height: 280px;
  }
}

/* Contenedor del slot (iframe interno de Google) */
ins.adsbygoogle > div[id^="aswift_"] {
  min-height: inherit;
}

/* --- YouTube / embeds: aspect-ratio fijo (sin padding-top de fitVids) --- */
.post-content .wp-block-embed__wrapper,
.main-content .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  max-width: 100%;
  height: auto;
  overflow: hidden;
}

/* Shorts / vertical 9:16 */
.post-content .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper,
.main-content .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper {
  aspect-ratio: 9 / 16;
  max-width: min(100%, 400px);
  margin-inline: auto;
}

.post-content .wp-block-embed.wp-embed-aspect-9-16 .fluid-width-video-wrapper,
.main-content .wp-block-embed.wp-embed-aspect-9-16 .fluid-width-video-wrapper {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  aspect-ratio: 9 / 16;
}

/* Horizontal 16:9 */
.post-content .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper,
.post-content .wp-block-embed.wp-embed-aspect-16-10 .wp-block-embed__wrapper,
.main-content .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper,
.main-content .wp-block-embed.wp-embed-aspect-16-10 .wp-block-embed__wrapper {
  aspect-ratio: 16 / 9;
}

.post-content .wp-block-embed.wp-embed-aspect-16-9 .fluid-width-video-wrapper,
.post-content .wp-block-embed.wp-embed-aspect-16-10 .fluid-width-video-wrapper,
.main-content .wp-block-embed.wp-embed-aspect-16-9 .fluid-width-video-wrapper,
.main-content .wp-block-embed.wp-embed-aspect-16-10 .fluid-width-video-wrapper {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  padding-top: 0 !important;
  aspect-ratio: 16 / 9;
}

/* fitVids envuelve el wrapper; iframe absoluto dentro del ratio */
.post-content .fluid-width-video-wrapper,
.main-content .fluid-width-video-wrapper {
  position: relative;
  width: 100%;
  max-width: 100%;
}

.post-content .fluid-width-video-wrapper iframe,
.main-content .fluid-width-video-wrapper iframe {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border: 0;
}

/* Columnas con varios Shorts */
.wp-block-columns .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper {
  max-width: 100%;
}

/* Imágenes del contenido: width/height del editor */
.post-content img[width][height],
.main-content img[width][height] {
  height: auto;
}

.post-content .wp-block-image img,
.main-content .wp-block-image img {
  width: 100%;
  height: auto;
}
