/**
 * Coteia — Corpo da Home
 * 0.5.0-beta.15
 */

.coteia-home-main {
	display: block;
	width: 100%;
	background: #F5F7FA;
}

.coteia-home-container {
	width: 100%;
	max-width: var(--coteia-content-width);
	margin: 0 auto;
	padding-left: var(--coteia-page-padding-desktop);
	padding-right: var(--coteia-page-padding-desktop);
}

.coteia-home-top {
	width: 100%;
	padding: 20px 0 0;
	background: #F5F7FA;
	margin-bottom: var(--coteia-home-top-gap, 20px);
}

.coteia-market-section {
	padding: var(--coteia-section-gap, 20px) 0;
	background: #F5F7FA;
}

.coteia-market-section .coteia-home-container {
	padding-top: 22px;
	padding-bottom: 24px;
	border: var(--coteia-section-border-width) solid var(--coteia-section-border);
	border-radius: var(--coteia-section-radius, 14px);
	background: var(--coteia-section-bg);
}

.coteia-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.coteia-section-heading h2 {
	margin: 0;
	color: var(--coteia-section-title-color, #172033);
	font-family: var(--coteia-font-heading);
	font-size: var(--coteia-section-title-size, 26px);
	font-weight: var(--coteia-section-title-weight, 700);
	line-height: 1.2;
}

.coteia-section-heading p {
	margin: 5px 0 0;
	color: var(--coteia-section-subtitle-color, #6B7688);
	font-size: var(--coteia-section-subtitle-size, 14px);
	font-weight: var(--coteia-section-subtitle-weight, 400);
	line-height: 1.45;
}

.coteia-market-section.is-grid .coteia-product-track {
	display: grid;
	grid-template-columns: repeat(var(--coteia-layout-columns-desktop, 5), minmax(0, 1fr));
	column-gap: var(--coteia-layout-gap-x-desktop, 14px);
	row-gap: var(--coteia-layout-gap-y-desktop, 14px);
}

.coteia-market-section.is-carousel .coteia-product-track {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	column-gap: var(--coteia-layout-gap-x-desktop, 14px);
	row-gap: var(--coteia-layout-gap-y-desktop, 14px);
	width: 100%;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-inline: contain;
}

.coteia-market-section.is-carousel .coteia-product-track::-webkit-scrollbar {
	display: none;
}

.coteia-market-section.is-carousel .coteia-market-card {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: calc((100% - (var(--coteia-layout-columns-desktop, 5) - 1) * var(--coteia-layout-gap-x-desktop, 14px)) / var(--coteia-layout-columns-desktop, 5));
	width: auto;
	min-width: 0;
	scroll-snap-align: start;
}

.coteia-market-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: var(--coteia-card-border-width, 1px) solid var(--coteia-card-border-color, #E7ECF3);
	border-radius: var(--coteia-card-radius, 12px);
	background: var(--coteia-card-bg, #FFFFFF);
	transition: transform .16s ease, box-shadow .16s ease;
}

.coteia-market-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 26px rgba(24, 39, 75, .09);
}

.coteia-market-card-media {
	position: relative;
	aspect-ratio: 1 / .78;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F4F6F9;
}

.coteia-market-card-badge {
	position: absolute;
	top: 10px;
	left: 10px;
	padding: 4px 8px;
	border-radius: 999px;
	background: var(--coteia-badge-bg, #255FB7);
	color: var(--coteia-badge-text, #FFFFFF);
	font-size: .68rem;
	font-weight: 700;
}

.coteia-market-card-placeholder {
	width: 58px;
	height: 58px;
	color: #A7B3C4;
}

.coteia-market-card-placeholder svg {
	width: 100%;
	height: 100%;
}

.coteia-market-card-body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 13px;
}

.coteia-market-card h3 {
	margin: 0;
	color: var(--coteia-card-title-color, #172033);
	font-size: var(--coteia-card-title-size, 14px);
	font-weight: var(--coteia-card-title-weight, 700);
	line-height: 1.35;
}

.coteia-market-card-description {
	display: -webkit-box;
	margin: 7px 0 0;
	overflow: hidden;
	color: var(--coteia-card-description-color, #6F7A8B);
	font-size: var(--coteia-card-description-size, 12px);
	font-weight: var(--coteia-card-description-weight, 400);
	line-height: 1.35;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.coteia-market-rating {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-top: 9px;
	color: var(--coteia-rating-color, #D89B00);
	font-size: .73rem;
	font-weight: 700;
}

.coteia-market-rating small {
	color: var(--coteia-reviews-color, #8B96A8);
	font-weight: 500;
}

.coteia-market-pricing {
	display: flex;
	flex-direction: column;
	margin-top: 9px;
}

.coteia-market-pricing del {
	color: var(--coteia-old-price-color, #8B96A8);
	font-size: .72rem;
}

.coteia-market-pricing strong {
	color: var(--coteia-price-color, #255FB7);
	font-size: 1.12rem;
	font-weight: 750;
}

.coteia-market-card-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	margin-top: auto;
	padding: 8px 11px;
	border-radius: var(--coteia-card-button-radius, 8px);
	background: var(--coteia-card-button-bg, #FFE600);
	color: var(--coteia-card-button-text, #172033);
	font-size: .78rem;
	font-weight: 750;
	text-decoration: none;
}

.coteia-market-card-button { transform: translateY(12px); margin-bottom: 12px; }

.coteia-market-card-button[aria-disabled="true"] {
	pointer-events: none;
}

.coteia-carousel-controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--coteia-carousel-button-gap, 8px);
	flex-shrink: 0;
}

.coteia-carousel-controls button {
	appearance: none;
	-webkit-appearance: none;
	display: inline-grid;
	place-items: center;
	flex: 0 0 var(--coteia-carousel-button-size, 40px);
	width: var(--coteia-carousel-button-size, 40px);
	height: var(--coteia-carousel-button-size, 40px);
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: var(--coteia-carousel-border-width, 1px) solid var(--coteia-carousel-border-color, #DCE3ED);
	border-radius: var(--coteia-carousel-button-radius, 50%);
	background: var(--coteia-carousel-button-bg, #FFFFFF);
	color: var(--coteia-carousel-icon-color, #255FB7);
	box-shadow: none;
	line-height: 0;
	text-align: center;
	cursor: pointer;
	transition:
		background-color .16s ease,
		color .16s ease,
		border-color .16s ease,
		transform .16s ease;
}

.coteia-carousel-controls button:hover,
.coteia-carousel-controls button:focus-visible {
	background: var(--coteia-carousel-hover-bg, #F3F7FC);
	color: var(--coteia-carousel-hover-icon-color, #255FB7);
}

.coteia-carousel-controls button:active {
	transform: scale(.96);
}

.coteia-carousel-controls button:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.coteia-carousel-controls button svg {
	display: block;
	width: var(--coteia-carousel-icon-size, 18px);
	height: var(--coteia-carousel-icon-size, 18px);
	margin: 0;
	padding: 0;
	overflow: visible;
	fill: none;
	stroke: currentColor;
	stroke-width: var(--coteia-carousel-icon-weight, 2);
	stroke-linecap: round;
	stroke-linejoin: round;
	pointer-events: none;
}

.coteia-section-shortcode {
	width: 100%;
	min-width: 0;
}

.coteia-home-ad-section{width:100%;padding:10px 0;background:#F5F7FA}.coteia-home-ad-frame{display:flex;align-items:center;justify-content:center;width:100%;min-height:110px;overflow:hidden;border:1px solid #E2E8F0;border-radius:14px;background:var(--coteia-home-ad-bg,#fff)}.coteia-home-ad-frame>*{max-width:100%}.coteia-home-ad-frame img,.coteia-home-ad-frame iframe,.coteia-home-ad-frame video{display:block;max-width:100%}.coteia-home-ad-demo{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:110px;padding:18px;text-align:center}.coteia-home-ad-demo span{color:#8A96A8;font-size:.67rem;font-weight:700;letter-spacing:.12em}.coteia-home-ad-demo strong{margin-top:5px;color:#255FB7;font-size:1rem}.coteia-home-ad-demo small{margin-top:4px;color:#7C8798}


/* Topo personalizado — mesmo idioma visual das seções */
.coteia-home-top-content {
	width: 100%;
	min-height: 80px;
}

.coteia-home-top.is-card .coteia-home-container {
	padding-top: 22px;
	padding-bottom: 22px;
	border: var(--coteia-home-top-border-width) solid var(--coteia-home-top-border);
	border-radius: var(--coteia-home-top-radius);
	background: var(--coteia-home-top-bg);
}

.coteia-home-top.is-flat {
	padding-top: 0;
	background: var(--coteia-home-top-bg);
}

.coteia-home-top.is-flat .coteia-home-container {
	max-width: none;
	padding-top: 20px;
	padding-bottom: 20px;
	background: var(--coteia-home-top-bg);
}

.coteia-home-top-demo {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 96px;
	text-align: center;
}

.coteia-home-top-demo strong {
	color: #255FB7;
	font-size: 1rem;
}

.coteia-home-top-demo span {
	margin-top: 5px;
	color: #7A8798;
	font-size: .82rem;
}


/* Topo plano: caixa por padrão, largura total opcional */
.coteia-home-top.is-flat.is-boxed .coteia-home-container {
	max-width: var(--coteia-content-width);
	margin-left: auto;
	margin-right: auto;
}

.coteia-home-top.is-flat.is-full .coteia-home-container {
	max-width: none;
	width: 100%;
}

/* Final personalizado da Home */
.coteia-home-bottom {
	width: 100%;
	padding: var(--coteia-home-bottom-gap, 20px) 0 20px;
	background: #F5F7FA;
}

.coteia-home-bottom-content {
	width: 100%;
	min-height: 80px;
}

.coteia-home-bottom.is-card .coteia-home-container {
	padding-top: 22px;
	padding-bottom: 22px;
	border: var(--coteia-home-bottom-border-width) solid var(--coteia-home-bottom-border);
	border-radius: var(--coteia-home-bottom-radius);
	background: var(--coteia-home-bottom-bg);
}

.coteia-home-bottom.is-flat {
	background: var(--coteia-home-bottom-bg);
}

.coteia-home-bottom.is-flat .coteia-home-container {
	padding-top: 20px;
	padding-bottom: 20px;
	background: var(--coteia-home-bottom-bg);
}

.coteia-home-bottom.is-flat.is-boxed .coteia-home-container {
	max-width: var(--coteia-content-width);
	margin-left: auto;
	margin-right: auto;
}

.coteia-home-bottom.is-flat.is-full .coteia-home-container {
	max-width: none;
	width: 100%;
}

.coteia-home-bottom-demo {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 96px;
	text-align: center;
}

.coteia-home-bottom-demo strong {
	color: #255FB7;
	font-size: 1rem;
}

.coteia-home-bottom-demo span {
	margin-top: 5px;
	color: #7A8798;
	font-size: .82rem;
}


/* Tipografia compartilhada para conteúdo livre do Topo e Final. */
.coteia-home-top-content h1,
.coteia-home-top-content h2,
.coteia-home-top-content h3,
.coteia-home-top-content h4,
.coteia-home-top-content h5,
.coteia-home-top-content h6,
.coteia-home-bottom-content h1,
.coteia-home-bottom-content h2,
.coteia-home-bottom-content h3,
.coteia-home-bottom-content h4,
.coteia-home-bottom-content h5,
.coteia-home-bottom-content h6 {
	color: var(--coteia-home-block-title-color, #172033);
	font-size: var(--coteia-home-block-title-size, 26px);
	font-weight: var(--coteia-home-block-title-weight, 700);
}

.coteia-home-top-content .coteia-subtitle,
.coteia-home-top-content [data-coteia-subtitle],
.coteia-home-bottom-content .coteia-subtitle,
.coteia-home-bottom-content [data-coteia-subtitle] {
	color: var(--coteia-home-block-subtitle-color, #6B7688);
	font-size: var(--coteia-home-block-subtitle-size, 14px);
	font-weight: var(--coteia-home-block-subtitle-weight, 400);
}

.coteia-home-top-content p,
.coteia-home-top-content li,
.coteia-home-bottom-content p,
.coteia-home-bottom-content li {
	color: var(--coteia-home-block-text-color, #6F7A8B);
	font-size: var(--coteia-home-block-text-size, 12px);
	font-weight: var(--coteia-home-block-text-weight, 400);
}


/* =========================================================
   0.5.0-beta.9 — HOME: CONTAINER BOXED / FULL LIMPO
   =========================================================
   A largura global fornece a referência. A Home decide se
   cada seção consome ou não essa referência.
   ========================================================= */

.coteia-market-section {
	width: 100%;
	max-width: none;
	min-width: 0;
	box-sizing: border-box;
}

/*
 * O container da seção parte sempre de 100%.
 * BOXED aplica a largura global.
 * FULL remove a limitação.
 */
.coteia-market-section > .coteia-home-container {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.coteia-market-section.is-boxed > .coteia-home-container {
	max-width: var(--coteia-content-width, 1200px);
	margin-left: auto;
	margin-right: auto;
}

.coteia-market-section.is-full > .coteia-home-container {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
}

/*
 * CARD — visual da seção.
 * A largura é definida exclusivamente pelo container acima.
 */
.coteia-market-section.is-card > .coteia-home-container {
	padding-top: 22px;
	padding-bottom: 24px;
	border: var(--coteia-section-border-width) solid var(--coteia-section-border);
	border-radius: var(--coteia-section-radius, 14px);
	background: var(--coteia-section-bg);
}

/*
 * PLANO — mesma metodologia do Topo/Final personalizados.
 */
.coteia-market-section.is-flat {
	background: var(--coteia-section-bg);
}

.coteia-market-section.is-flat > .coteia-home-container {
	padding-top: 20px;
	padding-bottom: 20px;
	border: 0;
	border-radius: 0;
	background: var(--coteia-section-bg);
}

/* Cards: largura determinada pelas colunas; itens ausentes não esticam os demais. */
.coteia-market-section.is-grid .coteia-product-track {
	display: grid;
	grid-template-columns: repeat(var(--coteia-layout-columns-desktop, 5), minmax(0, 1fr));
	column-gap: var(--coteia-layout-gap-x-desktop, 14px);
	row-gap: var(--coteia-layout-gap-y-desktop, 14px);
}

.coteia-market-card-image {
	display: block;
	width: 100%;
	height: 100%;
	padding: 10px;
	object-fit: contain;
	object-position: center;
}

.coteia-market-card-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
}

/* HTML / Shortcode nunca podem criar overflow estrutural na Home. */
.coteia-section-html,
.coteia-section-shortcode {
	width: 100%;
	min-width: 0;
}

.coteia-section-html > *,
.coteia-section-shortcode > * {
	max-width: 100%;
}

.coteia-section-html img,
.coteia-section-shortcode img,
.coteia-section-html iframe,
.coteia-section-shortcode iframe,
.coteia-section-html video,
.coteia-section-shortcode video {
	max-width: 100%;
	height: auto;
}

/* Exemplo nativo para seções HTML. */
.coteia-home-section-demo {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 96px;
	text-align: center;
}

.coteia-home-section-demo strong,
.coteia-home-section-demo h3 {
	color: #255FB7;
	font-size: 1rem;
}

.coteia-home-section-demo span,
.coteia-home-section-demo p {
	margin-top: 5px;
	color: #7A8798;
	font-size: .82rem;
}

/* Shortcode / Content Egg em modo carrossel. */
.coteia-section-shortcode.is-carousel-track {
	display: block;
	width: 100%;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-behavior: smooth;
	scrollbar-width: none;
	overscroll-behavior-inline: contain;
}

.coteia-section-shortcode.is-carousel-track::-webkit-scrollbar {
	display: none;
}

.coteia-section-shortcode.is-carousel-track > * {
	min-width: min-content;
	max-width: none;
}

/* Estado vazio WooCommerce. */
.coteia-home-empty-state {
	grid-column: 1 / -1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 140px;
	padding: 24px;
	border: 1px dashed #CBD5E1;
	border-radius: 12px;
	background: #F8FAFC;
	color: #64748B;
	text-align: center;
}

.coteia-home-empty-state strong {
	color: #334155;
}

.coteia-home-empty-state span {
	margin-top: 5px;
	font-size: .82rem;
}

/*
 * Responsivo:
 * abaixo da largura-base do desktop, o container naturalmente
 * acompanha 100% da tela. Não há 100vw, breakout ou margem negativa.
 */
@media (max-width: 1199px) {
	.coteia-market-section.is-boxed > .coteia-home-container,
	.coteia-market-section.is-full > .coteia-home-container {
		width: 100%;
		max-width: 100%;
	}

}

@media (max-width: 600px) {
	.coteia-market-section.is-grid .coteia-product-track {
		grid-template-columns: repeat(var(--coteia-layout-columns-mobile, 2), minmax(0, 1fr));
		column-gap: var(--coteia-layout-gap-x-mobile, 10px);
		row-gap: var(--coteia-layout-gap-y-mobile, 10px);
	}

	.coteia-market-card-image {
		padding: 7px;
	}
}

/* 0.5.0-beta.13 — invariantes: grid e carrossel são estados exclusivos. */
.coteia-market-section.is-carousel .coteia-product-track {
	display: flex;
	flex-flow: row nowrap;
	align-items: stretch;
}
.coteia-market-section.is-carousel .coteia-product-track > .coteia-market-card { flex-shrink: 0; }

/* beta.15: bordas da seção pertencem somente ao modo Card/Seção. */
.coteia-market-section.is-card > .coteia-home-container,.coteia-market-section.is-card.is-full > .coteia-home-container{border:var(--coteia-section-border-width,0px) solid var(--coteia-section-border,#E7ECF3);border-radius:var(--coteia-section-radius,14px)}
.coteia-market-section.is-flat > .coteia-home-container{border:0;border-radius:0}


/* =========================================================
   beta.32 — HTML personalizado integrado aos presets da Home
   ========================================================= */

/*
 * Topo / Final:
 * as variáveis --coteia-home-block-* já representam automaticamente
 * Estilos gerais ou os estilos locais do bloco.
 */
.coteia-home-top-content .coteia-home-html-title,
.coteia-home-bottom-content .coteia-home-html-title {
	margin-top: 0;
	color: var(--coteia-home-block-title-color, #172033) !important;
	font-family: var(--coteia-font-heading, inherit) !important;
	font-size: var(--coteia-home-block-title-size, 26px) !important;
	font-weight: var(--coteia-home-block-title-weight, 700) !important;
	line-height: 1.2;
}

.coteia-home-top-content .coteia-home-html-subtitle,
.coteia-home-bottom-content .coteia-home-html-subtitle {
	color: var(--coteia-home-block-subtitle-color, #6B7688) !important;
	font-family: var(--coteia-font-heading, inherit) !important;
	font-size: var(--coteia-home-block-subtitle-size, 14px) !important;
	font-weight: var(--coteia-home-block-subtitle-weight, 400) !important;
	line-height: 1.45;
}

.coteia-home-top-content .coteia-home-html-text,
.coteia-home-bottom-content .coteia-home-html-text {
	color: var(--coteia-home-block-text-color, #6F7A8B) !important;
	font-family: var(--coteia-font-body, inherit) !important;
	font-size: var(--coteia-home-block-text-size, 12px) !important;
	font-weight: var(--coteia-home-block-text-weight, 400) !important;
	line-height: 1.6;
}

/*
 * Seções 1–10:
 * as variáveis --coteia-section-* já apontam para Estilos gerais
 * ou para o override local da seção.
 */
.coteia-section-html .coteia-home-html-title {
	margin-top: 0;
	color: var(--coteia-section-title-color, #172033) !important;
	font-family: var(--coteia-font-heading, inherit) !important;
	font-size: var(--coteia-section-title-size, 26px) !important;
	font-weight: var(--coteia-section-title-weight, 700) !important;
	line-height: 1.2;
}

.coteia-section-html .coteia-home-html-subtitle {
	color: var(--coteia-section-subtitle-color, #6B7688) !important;
	font-family: var(--coteia-font-heading, inherit) !important;
	font-size: var(--coteia-section-subtitle-size, 14px) !important;
	font-weight: var(--coteia-section-subtitle-weight, 400) !important;
	line-height: 1.45;
}

.coteia-section-html .coteia-home-html-text {
	color: var(--coteia-section-description-color, #6F7A8B) !important;
	font-family: var(--coteia-font-body, inherit) !important;
	font-size: var(--coteia-section-description-size, 12px) !important;
	font-weight: var(--coteia-section-description-weight, 400) !important;
	line-height: 1.6;
}

/* Layout wrappers do HTML continuam livres; somente elementos semânticos
 * reconhecidos recebem presets do tema. */
.coteia-section-html .coteia-home-html-title:first-child,
.coteia-section-html .coteia-home-html-subtitle:first-child,
.coteia-section-html .coteia-home-html-text:first-child,
.coteia-home-top-content .coteia-home-html-title:first-child,
.coteia-home-bottom-content .coteia-home-html-title:first-child {
	margin-top: 0;
}


/* =========================================================
   0.5.0-beta.29 — MÍDIA RESPONSIVA DA BIBLIOTECA
   ========================================================= */
.coteia-home-responsive-media {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.coteia-home-responsive-media img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	object-fit: contain;
}

.coteia-home-top-media,
.coteia-home-bottom-media,
.coteia-home-ad-media,
.coteia-home-section-media {
	overflow: hidden;
}

.coteia-section-media {
	width: 100%;
}


/* =========================================================
   0.5.0-beta.29 — LINK E GEOMETRIA DA MÍDIA
   ========================================================= */
.coteia-home-media-link {
	display: block;
	width: 100%;
	color: inherit;
	text-decoration: none;
}

.coteia-home-responsive-media {
	position: relative;
	display: block;
	width: 100%;
	max-height: var(--coteia-media-max-height, none);
	overflow: hidden;
}

.coteia-home-responsive-media img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: var(--coteia-media-max-height, none);
	margin: 0;
}

.coteia-media-format-banner { aspect-ratio: 3 / 1; }
.coteia-media-format-wide { aspect-ratio: 4 / 1; }
.coteia-media-format-video { aspect-ratio: 16 / 9; }
.coteia-media-format-ad { aspect-ratio: 6 / 5; }
.coteia-media-format-original { aspect-ratio: auto; }

.coteia-media-format-original img {
	height: auto;
}

.coteia-media-fit-contain img {
	object-fit: contain;
}

.coteia-media-fit-cover img {
	object-fit: cover;
}

/* O quadro de ADS mantém a mídia centralizada sem extrapolar sua área. */
.coteia-home-ad-frame .coteia-home-media-link,
.coteia-home-ad-frame .coteia-home-ad-media {
	max-width: 100%;
}

@media (max-width: 600px) {
	/* Mantém banners legíveis em telas estreitas sem transformar em faixa mínima. */
	.coteia-media-format-banner { aspect-ratio: 2 / 1; }
	.coteia-media-format-wide { aspect-ratio: 2.4 / 1; }
}


/* =========================================================
   0.5.0-beta.29 — MÍDIA INDEPENDENTE POR DISPOSITIVO
   ========================================================= */
.coteia-home-media-device {
	display: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

.coteia-home-media-device--desktop {
	display: block;
}

.coteia-home-media-device > .coteia-home-media-link,
.coteia-home-media-device > img,
.coteia-home-media-device .coteia-home-media-link > img {
	display: block;
	width: 100%;
	max-width: 100%;
}

.coteia-home-media-device img {
	height: 100%;
	max-height: var(--coteia-media-max-height, none);
	object-fit: contain;
}

.coteia-home-media-device.coteia-media-fit-cover img {
	object-fit: cover;
}

@media (min-width: 601px) and (max-width: 1024px) {
	.coteia-home-media-device--desktop,
	.coteia-home-media-device--mobile {
		display: none !important;
	}
\n	.coteia-home-media-device--tablet {
		display: block !important;
	}
}

@media (max-width: 600px) {
	.coteia-home-media-device--desktop,
	.coteia-home-media-device--tablet {
		display: none !important;
	}
\n	.coteia-home-media-device--mobile {
		display: block !important;
	}
}


/* =========================================================
   0.5.0-beta.29 — VISIBILIDADE + BREAKPOINT ÚNICO
   =========================================================
   Cada instância é renderizada no HTML para permitir link/geometria
   próprios, mas somente a instância do breakpoint atual aparece.
*/
.coteia-home-responsive-media.is-desktop,
.coteia-home-responsive-media.is-tablet,
.coteia-home-responsive-media.is-mobile {
	display: none !important;
}

.coteia-home-responsive-media.is-device-hidden {
	display: none !important;
}

@media (min-width: 1025px) {
	.coteia-home-responsive-media.is-desktop:not(.is-device-hidden) {
		display: block !important;
	}
}

@media (min-width: 601px) and (max-width: 1024px) {
	.coteia-home-responsive-media.is-tablet:not(.is-device-hidden) {
		display: block !important;
	}
}

@media (max-width: 600px) {
	.coteia-home-responsive-media.is-mobile:not(.is-device-hidden) {
		display: block !important;
	}
}


/* Home — Botão de Favoritos nos cards de produto.
 * A persistência pertence ao módulo Favoritos; a apresentação do controle pertence à Home.
 */
.coteia-market-card-media {
	position:relative;
}
.coteia-product-favorite-toggle {
	position:absolute;
	top:10px;
	right:10px;
	z-index:4;
	display:grid;
	width:36px;
	height:36px;
	place-items:center;
	padding:0;
	border:1px solid rgba(148,163,184,.38);
	border-radius:999px;
	background:rgba(255,255,255,.94);
	color:#64748b;
	box-shadow:0 2px 8px rgba(15,23,42,.13);
	cursor:pointer;
	transition:color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease;
}
.coteia-product-favorite-toggle:hover,
.coteia-product-favorite-toggle:focus-visible {
	color:#2968c8;
	border-color:rgba(41,104,200,.45);
	transform:translateY(-1px);
}
.coteia-product-favorite-toggle:focus-visible {
	outline:3px solid rgba(41,104,200,.22);
	outline-offset:2px;
}
.coteia-product-favorite-toggle.is-favorite {
	color:#2968c8;
	background:#eef5ff;
	border-color:rgba(41,104,200,.42);
}
.coteia-product-favorite-toggle.is-favorite path {
	fill:currentColor;
}
.coteia-product-favorite-toggle:disabled {
	opacity:.6;
	cursor:wait;
	transform:none;
}


/* Visitantes continuam podendo acionar o controle para receber a orientação de login. */
body:not(.logged-in) .coteia-product-favorite-toggle {
	cursor:pointer;
}


/* Home v0.5.0-beta.37 — Cards / Página contínua */
.coteia-home-style-continuous .coteia-market-section{
	padding:0;
	background:var(--coteia-section-bg,#fff);
}
.coteia-home-style-continuous .coteia-market-section .coteia-home-container{
	padding-top:22px;
	padding-bottom:24px;
	border:0;
	border-radius:0;
	background:transparent;
}
.coteia-home-style-continuous.has-section-dividers .coteia-market-section + .coteia-market-section .coteia-home-container{
	position:relative;
}
.coteia-home-style-continuous.has-section-dividers .coteia-market-section + .coteia-market-section .coteia-home-container::before{
	content:"";
	position:absolute;
	top:0;
	left:var(--coteia-page-padding-desktop);
	right:var(--coteia-page-padding-desktop);
	height:var(--coteia-home-divider-width,1px);
	background:var(--coteia-home-divider-color,#E7ECF3);
	opacity:var(--coteia-home-divider-opacity,.16);
}


/* Home v0.5.0-beta.38 — autoridade estrutural do modo Página contínua. */
.coteia-home-main.coteia-home-style-continuous .coteia-market-section{
	border:0!important;
	border-radius:0!important;
	box-shadow:none!important;
}
.coteia-home-main.coteia-home-style-continuous .coteia-market-section > .coteia-home-container{
	border-left:0!important;
	border-right:0!important;
	border-radius:0!important;
	box-shadow:none!important;
}
.coteia-home-main.coteia-home-style-continuous.has-section-dividers .coteia-market-section + .coteia-market-section > .coteia-home-container::before{
	display:block;
}

/* Dados externos entram no componente Coteia e consomem a identidade global. */
.coteia-market-card,
.coteia-market-card .coteia-market-title,
.coteia-market-card .coteia-market-description,
.coteia-market-card .coteia-market-price,
.coteia-market-card .coteia-market-price del,
.coteia-market-card .coteia-market-price strong{
	font-family:var(--coteia-font-text,var(--coteia-font-primary,inherit));
}
.coteia-market-card .coteia-market-title{
	color:var(--coteia-color-title,var(--coteia-color-text,#1e293b));
	font-weight:var(--coteia-font-title-weight,700);
}
.coteia-market-card .coteia-market-description{
	color:var(--coteia-color-text,#64748b);
	font-weight:var(--coteia-font-text-weight,400);
}
.coteia-market-card .coteia-market-price strong{
	color:var(--coteia-color-primary,#2968c8);
	font-weight:var(--coteia-font-title-weight,700);
}
.coteia-market-card .coteia-market-price del{
	color:var(--coteia-color-text-light,var(--coteia-color-text,#64748b));
}


/* Home v0.5.0-beta.39 — Página contínua abrange toda a composição da Home. */
.coteia-home-main.coteia-home-style-continuous .coteia-home-top,
.coteia-home-main.coteia-home-style-continuous .coteia-home-ad-section,
.coteia-home-main.coteia-home-style-continuous .coteia-home-bottom{
	border:0!important;
	border-radius:0!important;
	box-shadow:none!important;
}
.coteia-home-main.coteia-home-style-continuous .coteia-home-top > .coteia-home-container,
.coteia-home-main.coteia-home-style-continuous .coteia-home-bottom > .coteia-home-container,
.coteia-home-main.coteia-home-style-continuous .coteia-home-ad-frame{
	border-radius:0!important;
	box-shadow:none!important;
}

/* O modo contínuo não altera o card de produto nem sua largura calculada. */
.coteia-home-main.coteia-home-style-continuous .coteia-market-card{
	border-radius:var(--coteia-card-radius,12px);
}

/* Tipografia de catálogo: a origem fornece dados; o tema fornece identidade. */
.coteia-market-card .coteia-market-title{
	font-family:var(--coteia-font-heading,var(--coteia-font-primary,inherit));
	font-weight:var(--coteia-font-heading-weight,700);
	color:var(--coteia-color-text,#172033);
}
.coteia-market-card .coteia-market-description{
	font-family:var(--coteia-font-text,var(--coteia-font-primary,inherit));
	font-weight:var(--coteia-font-text-weight,400);
	color:var(--coteia-color-text-light,var(--coteia-color-text,#6F7A8B));
}
