/* V24.4 Production safety layer: layout containment + media overflow fixes */

:root{
  --ttcp-media-ratio: 16 / 10;
  --ttcp-media-ratio-tall: 4 / 5;
}

#site-content{
  overflow-x: clip;
}

.cp-shell,
.cp-home-section,
.cp-list,
.cp-list-card,
.cp-list-body,
.cp-archive-shell,
.cp-archive-featured,
.cp-archive-featured-card,
.cp-archive-featured-body,
.cp-archive-list,
.cp-archive-list-card,
.cp-archive-row-card,
.cp-archive-row-body,
.cp-magazine-column,
.cp-magazine-column-body,
.cp-magazine-mini,
.cp-magazine-mini-body,
.cp-home-spotlight-editorial,
.cp-home-spotlight-featured,
.cp-home-spotlight-side-card,
.cp-home-spotlight-side-body{
  min-width: 0;
}

.cp-list-card,
.cp-archive-featured-card,
.cp-archive-row-card,
.cp-magazine-mini,
.cp-home-spotlight-side-card{
  max-width: 100%;
}

.cp-list-thumb,
.cp-archive-featured-media,
.cp-archive-row-thumb,
.cp-archive-lead-media,
.cp-magazine-lead-media,
.cp-magazine-mini-thumb,
.cp-home-spotlight-featured-media,
.cp-home-spotlight-side-media,
.cp-home-ranking-thumb,
.cp-latest-card-media,
.cp-guide-media,
.cp-card-media,
.cp-related-thumb{
  position: relative;
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  isolation: isolate;
  background: #e8eef8;
}

.cp-list-thumb,
.cp-archive-featured-media,
.cp-archive-row-thumb,
.cp-archive-lead-media{
  aspect-ratio: var(--ttcp-media-ratio);
}

.cp-magazine-mini-thumb,
.cp-home-ranking-thumb{
  aspect-ratio: 1 / 1;
}

.cp-home-spotlight-side-media{
  aspect-ratio: var(--ttcp-media-ratio-tall);
}

.cp-list-thumb img,
.cp-archive-featured-media img,
.cp-archive-row-thumb img,
.cp-archive-lead-media img,
.cp-magazine-lead-media img,
.cp-magazine-mini-thumb img,
.cp-home-spotlight-featured-media img,
.cp-home-spotlight-side-media img,
.cp-home-ranking-thumb img,
.cp-latest-card-media img,
.cp-guide-media img,
.cp-card-media img,
.cp-related-thumb img{
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover;
}

.cp-list-title,
.cp-list-excerpt,
.cp-archive-featured-title,
.cp-archive-featured-excerpt,
.cp-magazine-lead-title,
.cp-magazine-lead-excerpt,
.cp-magazine-mini-title,
.cp-home-spotlight-side-title,
.cp-home-spotlight-side-excerpt{
  overflow-wrap: anywhere;
}

.search .cp-list-card,
.archive .cp-list-card,
.category .cp-list-card,
.blog .cp-list-card{
  align-items: stretch;
}

.search .cp-list-thumb,
.archive .cp-list-thumb,
.category .cp-list-thumb,
.blog .cp-list-thumb,
.archive .cp-archive-featured-media,
.category .cp-archive-featured-media{
  align-self: stretch;
}

.search .cp-list-thumb .cp-archive-media-placeholder,
.archive .cp-list-thumb .cp-archive-media-placeholder,
.category .cp-list-thumb .cp-archive-media-placeholder,
.blog .cp-list-thumb .cp-archive-media-placeholder,
.archive .cp-archive-featured-media .cp-archive-media-placeholder,
.category .cp-archive-featured-media .cp-archive-media-placeholder{
  display:block;
  width:100%;
  height:100%;
  min-height:220px;
  background:linear-gradient(135deg,#eef3fb 0%,#dde7f7 100%);
}

@media (max-width: 1024px){
  .cp-list-card,
  .cp-archive-row-card{
    grid-template-columns: 1fr;
  }

  .cp-archive-featured-card{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px){
  .cp-list-thumb,
  .cp-archive-featured-media,
  .cp-archive-row-thumb,
  .cp-archive-lead-media,
  .cp-latest-card-media,
  .cp-guide-media,
  .cp-card-media{
    aspect-ratio: 16 / 10;
  }

  .cp-home-spotlight-featured-media{
    min-height: 0 !important;
    aspect-ratio: 16 / 11;
  }

  .cp-home-spotlight-side-media{
    aspect-ratio: 16 / 10;
  }
}
