/*
 * CLS (Cumulative Layout Shift) fixes for blog article template.
 *
 * 1. Featured image — aspect-ratio is injected per-post via PHP filter
 *    (post_thumbnail_html) so the container reserves space before the
 *    image decodes. This file enforces the shape and fluid behaviour.
 * 2. Inline content images — width/height attributes are injected via
 *    the_content filter; CSS guarantees they stay responsive.
 * 3. Entry header — reserves vertical space for H1 + meta so FontAwesome
 *    icon swap and font-display:swap do not push the thumbnail below.
 * 4. Mobile header logo — fixed dimensions for space reservation.
 * 5. LiveChat (#chat-widget-container) — forced fixed + contained.
 */

/* --- Featured image container (applies at all widths) ------------------ */
.entry-single .entry-thumbnail.has-thumb {
	width: 100%;
	overflow: hidden;
	contain: layout;
}
.entry-single .entry-thumbnail.has-thumb img,
.entry-thumbnail img,
.elementor-widget-image img,
.elementor-widget-image img[width][height] {
	display: block;
	max-width: 100%;
	height: auto;
}

/* --- Inline content images --------------------------------------------- */
.entry-content img {
	max-width: 100%;
	height: auto;
}

/* --- Entry header stability (H1 + meta) -------------------------------- */
.entry-single .entry-title {
	min-height: 1.2em;
}
.entry-single .entry-meta {
	min-height: 2em;
	line-height: 1.6;
}
.entry-single .entry-meta .fa,
.entry-single .entry-meta [class^="fa-"],
.entry-single .entry-meta [class*=" fa-"] {
	display: inline-block;
	min-width: 1em;
	text-align: center;
}

/* --- Mobile header logo ------------------------------------------------ */
.cb-row--mobile .site-branding .logo-link,
.cb-row--mobile .site-img-logo {
	display: block;
}
.cb-row--mobile .site-img-logo {
	width: 160px;
	height: 34px;
	max-width: 100%;
	object-fit: contain;
}
.cb-row--mobile .row-v2-main {
	min-height: 60px;
}
.cb-row--mobile .col-v2,
.cb-row--mobile .col-v2-right {
	contain: layout style;
}

/* --- LiveChat widget --------------------------------------------------- */
#chat-widget-container,
#chat-widget-contain,
div#chat-widget-container,
div#chat-widget-contain {
	position: fixed !important;
	right: 0 !important;
	bottom: 0 !important;
	z-index: 2147483000 !important;
	contain: layout paint size style;
	pointer-events: none;
}
#chat-widget-container > *,
#chat-widget-contain > * {
	pointer-events: auto;
}
body > iframe[name^="chat-widget"],
body > div[class*="chat-widget"] {
	position: fixed !important;
	contain: layout paint size style;
}
