/* =============================================================
 * Esquadrias e Coberturas — elementor.css
 * Apoio ao conteúdo montado no Elementor (direção "Ficha de Medida").
 * As cores dos widgets já vêm explícitas do builder; aqui ficam o
 * canvas, os ajustes de widget e a TRAVA DE PROPORÇÃO das imagens.
 * ============================================================= */

.elementor-page,
.elementor-kit-default,
body.elementor-page {
	background-color: #FFFFFF;
}

main#main { display: block; }

.elementor-widget-html .ec-form { color: #46545E; }

/* -------------------------------------------------------------
 * TRAVA DE PROPORÇÃO — reforço dentro do Elementor.
 *
 * O widget de imagem do Elementor injeta `width/height: auto` em
 * alguns contextos (e o `image_custom_dimension` sobrescreve o CSS
 * do tema). Este bloco garante que a classe .ec-r vença, inclusive
 * dentro do editor, onde a pré-visualização usa outro wrapper.
 * ------------------------------------------------------------- */
.elementor-widget-image.ec-r img,
.elementor-widget-image.ec-r .elementor-image img,
.elementor-widget-image.ec-r figure img {
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	object-fit: cover;
	object-position: center;
	display: block;
}
.elementor-widget-image.ec-r .elementor-image,
.elementor-widget-image.ec-r figure.wp-caption { width: 100%; margin: 0; }

.elementor-widget-image.ec-r--4x3 img  { aspect-ratio: 4 / 3 !important; }
.elementor-widget-image.ec-r--3x2 img  { aspect-ratio: 3 / 2 !important; }
.elementor-widget-image.ec-r--1x1 img  { aspect-ratio: 1 / 1 !important; }
.elementor-widget-image.ec-r--16x9 img { aspect-ratio: 16 / 9 !important; }

/* Image-box dos cards: a foto nunca muda de formato. */
.elementor-widget-image-box.ec-card-w .elementor-image-box-img img {
	aspect-ratio: 4 / 3 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	object-position: center;
}
.ec-card-w .elementor-image-box-wrapper { height: 100%; }

/* Acordeão (FAQ) */
.elementor-accordion .elementor-tab-content { border-color: #D5DEE3; }
.elementor-accordion .elementor-tab-title { font-family: 'Archivo', sans-serif; }

/* Lightbox */
.elementor-lightbox .dialog-widget-content { background-color: #FFFFFF; }

.elementor-widget-image img { display: block; }
.elementor-button .elementor-align-icon-left { display: inline-flex; align-items: center; }

/* Crumbs dentro do Elementor */
.ec-el-crumbs a { color: #8FA3B0; }
.ec-el-crumbs a:hover { color: #6CBBEE; }

@media (max-width: 767px) {
	.elementor-column.elementor-col-25,
	.elementor-column.elementor-col-33,
	.elementor-column.elementor-col-50 {
		width: 100%;
	}
}

/* -------------------------------------------------------------
 * FOLGA LATERAL NO MOBILE
 * As seções deste tema usam content_width 1180. Abaixo disso o
 * container vira 100% e sobram só os 10px de padding da coluna —
 * o texto quase encosta na borda da tela. Estes 10px extras dão
 * uma margem de respiro sem mexer no respiro do desktop.
 * ------------------------------------------------------------- */
@media (max-width: 767px) {
	.elementor-section.elementor-section-boxed > .elementor-container {
		padding-left: 10px;
		padding-right: 10px;
	}
}
