/**
 * Ficha de produto: a caixa Detalhes flutua à direita.
 * A descrição corre ao lado e, quando a caixa acaba, ocupa a largura toda.
 * A partir de 992px o modelo Elementor já usa duas colunas; abaixo disso fica uma.
 */

@media (min-width: 992px) {
	.single-product .elementor .copiges-ficha-colunas > .e-con-inner {
		display: flow-root;
	}

	.single-product .elementor .copiges-ficha-detalhes.e-con {
		--width: 45%;
		--margin-top: 0px;
		--margin-right: 0px;
		--margin-bottom: 1.25rem;
		--margin-left: 1.75rem;
		float: right;
		clear: none;
		display: block;
		width: 45%;
		max-width: 45%;
		height: auto;
		min-height: 0;
		margin: 0 0 1.25rem 1.75rem;
		flex: none;
		align-self: auto;
	}

	.single-product .elementor .copiges-ficha-descricao.e-con {
		--width: auto;
		display: block;
		float: none;
		clear: none;
		width: auto;
		max-width: none;
		height: auto;
		min-height: 0;
		flex: none;
		align-self: auto;
	}
}

@media (max-width: 991px) {
	.single-product .elementor .copiges-ficha-colunas > .e-con-inner {
		display: flex;
		flex-direction: column;
	}

	.single-product .elementor .copiges-ficha-descricao.e-con {
		--width: 100%;
		order: 1;
		float: none;
		display: block;
		width: 100%;
		max-width: none;
		margin: 0;
	}

	.single-product .elementor .copiges-ficha-detalhes.e-con {
		--width: 100%;
		--margin-top: 1.5rem;
		--margin-left: 0px;
		order: 2;
		float: none;
		display: block;
		width: 100%;
		max-width: none;
		margin: 1.5rem 0 0;
	}
}

/* Sem tabela de especificações a coluna não fica vazia ao lado do texto. */
.single-product .elementor .copiges-ficha-detalhes.e-con:not(:has(.porto-cp-attr-table)) {
	display: none;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description :is(h1, h2, h3, h4, h5, h6) {
	display: block;
	max-width: 100%;
	overflow: visible;
	overflow-wrap: break-word;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description :is(table, iframe, figure, .wp-caption, .gallery, .wp-block-gallery, .wp-block-image, .wp-block-table, .wp-block-buttons, .vc_row, .wpb_row, .vc_column_container, .elementor, .elementor-section) {
	clear: both;
	float: none;
	max-width: 100%;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description :is(.gallery, .wp-block-gallery, .wp-block-image, .wp-block-buttons, .vc_row, .wpb_row, .vc_column_container, .elementor, .elementor-section, figure, .wp-caption, .alignleft, .alignright, .aligncenter) {
	display: flow-root;
	float: none;
	width: 100% !important;
	max-width: 100% !important;
	margin-right: 0;
	margin-left: 0;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description table {
	clear: both;
	width: 100%;
	max-width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description table :is(th, td) {
	overflow-wrap: anywhere;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description iframe {
	display: block;
	clear: both;
	width: 100%;
	max-width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	border: 0;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description :is(img, video) {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	clear: both;
}

.single-product .copiges-ficha-detalhes .porto-cp-attr-table {
	overflow: visible;
	max-width: 100%;
}

.single-product .copiges-ficha-detalhes .porto-attr-data {
	align-items: flex-start;
	gap: 0.75rem;
}

.single-product .copiges-ficha-detalhes .porto-attr-name {
	flex: 0 1 42%;
	min-width: 0;
	white-space: normal;
	overflow-wrap: break-word;
}

.single-product .copiges-ficha-detalhes .porto-attr-term {
	flex: 1 1 0;
	min-width: 0;
	white-space: normal;
	overflow-wrap: break-word;
	text-align: end;
}

.single-product .copiges-ficha-descricao .elementor-widget-porto_cp_description :is(.btn, .button, .vc_btn3, .wp-block-button__link, a.button) {
	display: flow-root;
	clear: both;
	max-width: 100%;
}
