/* M17: em Cortesias, os produtos são o destaque; regras e textos do pai continuam iguais. */
.contentLoopCortesias > .container > hr { display: none; }

/* Regras em painéis compactos, para os produtos aparecerem antes. */
.contentLoopCortesias .informacoesSobreCortesia {
	float: none;
	clear: both;
	max-width: 900px;
	margin: 34px auto;
	padding: 20px 26px;
	border: 1px solid rgba(226, 188, 98, .3);
	border-radius: 14px;
	background: rgba(0, 0, 0, .5);
	font-size: 14px;
	line-height: 1.55;
}
.contentLoopCortesias .informacoesSobreCortesia h1,
.contentLoopCortesias .informacoesSobreCortesia h2 { margin: 0 0 12px; color: #e2bc62; font-family: Sora, sans-serif; font-size: 24px; font-weight: 700; line-height: 1.25; letter-spacing: 0; }
.contentLoopCortesias .informacoesSobreCortesia p { margin: 0; font-size: 14px; }

/* Aviso de imagens ilustrativas, igual ao do cardápio. */
.contentLoopCortesias .informativoLegal {
	display: flex;
	float: none;
	clear: both;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	width: auto;
	max-width: 900px;
	margin: 0 auto 44px;
	padding: 12px 16px;
	border-radius: 10px;
	font-size: 13px;
	line-height: 1.45;
}
.contentLoopCortesias .informativoLegal img { flex: none; float: none; width: 36px; height: auto; margin: 0; }
.contentLoopCortesias .informativoLegal p { margin: 0; padding: 0; font-size: inherit; text-align: left; }

/* Períodos. */
.contentLoopCortesias .categoria-secao { float: none; clear: both; margin: 0 0 52px; }
.contentLoopCortesias .categoria-secao .titulo-categoria {
	display: flex;
	float: none;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px 14px;
	width: 100%;
	margin: 0 0 24px;
	color: #fff;
	font-size: clamp(26px, 3.2vw, 38px);
	font-weight: 700;
	line-height: 1.15;
	text-align: center;
}
.clmr-cort-horario {
	padding: 5px 14px;
	border-radius: 999px;
	background: #e2bc62;
	color: #22070d;
	font-size: 15px;
	font-weight: 700;
	white-space: nowrap;
}

/* Cartões: centralizados, para períodos com poucos produtos não deixarem buraco. */
.contentLoopCortesias .lista-itens-cortesia {
	display: flex;
	clear: both;
	flex-wrap: wrap;
	justify-content: center;
	gap: 18px;
}
.contentLoopCortesias .lista-itens-cortesia .item-cortesia {
	display: flex;
	float: none;
	flex: 0 1 270px;
	flex-direction: column;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: 1px solid rgba(226, 188, 98, .5);
	border-radius: 16px;
	background: linear-gradient(165deg, #5a1020 0%, #1c060b 100%);
	box-shadow: 0 12px 30px rgba(0, 0, 0, .55);
	color: #fff;
	transition: transform .7s cubic-bezier(.25, .8, .25, 1), box-shadow .7s ease, border-color .7s ease;
}
@media (hover: hover) {
	.contentLoopCortesias .lista-itens-cortesia .item-cortesia:hover {
		border-color: #e2bc62;
		box-shadow: 0 16px 38px rgba(196, 26, 54, .5);
		transform: translateY(-4px);
		transition-duration: .25s;
	}
}
.clmr-cort-foto {
	position: relative;
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: radial-gradient(circle at 50% 40%, #8e1526 0%, #2b0811 75%);
	color: #e2bc62;
	font-size: 44px;
}
.clmr-cort-foto img { display: block; width: 100%; height: 100%; object-fit: cover; }
/* A foto é vertical: o recorte mostra a calabresa, na parte de baixo da frigideira. */
.clmr-cort-foto img[alt="Calabresa Acebolada"] { object-position: center 42%; }
.contentLoopCortesias .item-cortesia .clmr-cort-selo { color: #22070d; }
.clmr-cort-selo {
	position: absolute;
	right: 10px;
	bottom: 10px;
	padding: 3px 9px;
	border-radius: 999px;
	background: #e2bc62;
	color: #22070d;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.3;
	text-transform: uppercase;
}
.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-titulo {
	margin: 12px 14px 6px;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
}
.clmr-cort-cod { display: block; margin-bottom: 2px; color: #e2bc62; font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-descricao { margin: 0 14px 14px; color: #f4efe6; font-size: 13.5px; line-height: 1.4; }
.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-descricao p { margin: 0; color: inherit; font-size: inherit; }
.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-descricao strong { color: #e2bc62; }

/* Cardápio e bebidas: cartão clicável, com o mesmo efeito das Cortesias. A descrição nunca estica o cartão. */
.contentLoopCardapio .clmr-resumo {
	cursor: pointer;
	transition: transform .7s cubic-bezier(.25, .8, .25, 1), box-shadow .7s ease, border-color .7s ease;
}
.contentLoopCardapio .clmr-resumo .imagem-prato, .contentLoopCardapio .clmr-resumo .imagem-bebida { overflow: hidden; border-radius: 10px; }
.contentLoopCardapio .clmr-resumo img { transition: transform .8s cubic-bezier(.25, .8, .25, 1); }
.contentLoopCardapio .clmr-resumo:focus-visible { outline: 2px solid #e2bc62; outline-offset: 2px; }
@media (hover: hover) {
	.contentLoopCardapio .clmr-resumo:hover {
		border-color: #e2bc62;
		box-shadow: 0 16px 38px rgba(196, 26, 54, .5);
		transform: translateY(-4px);
		transition-duration: .25s;
	}
	.contentLoopCardapio .clmr-resumo:hover img { transform: scale(1.08); transition-duration: .35s; }
}
.clmr-desc-resumida { max-height: 53px; overflow: hidden; }
.clmr-ver-tudo {
	align-self: flex-start;
	margin-top: 4px;
	color: #e2bc62;
	font-size: 12px;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Cortesias: mesmo comportamento do cardápio. */
.contentLoopCortesias .lista-itens-cortesia .item-cortesia { cursor: pointer; }
.contentLoopCortesias .lista-itens-cortesia .item-cortesia:focus-visible { outline: 2px solid #e2bc62; outline-offset: 2px; }
.clmr-cort-foto img { transition: transform .8s cubic-bezier(.25, .8, .25, 1); }
@media (hover: hover) {
	.contentLoopCortesias .lista-itens-cortesia .item-cortesia:hover .clmr-cort-foto img { transform: scale(1.08); transition-duration: .35s; }
}
.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-descricao.clmr-desc-resumida { max-height: 57px; overflow: hidden; }
.contentLoopCortesias .lista-itens-cortesia .item-cortesia .clmr-ver-tudo { margin: -8px 14px 14px; }

/* Quadro do produto, grande e no meio da tela. */
.clmr-dialog.clmr-produto {
	width: min(900px, calc(100vw - 24px));
	max-height: calc(100dvh - 24px);
	overflow: auto;
	border: 1px solid #e2bc62;
	border-radius: 20px;
	background: linear-gradient(160deg, #4a0d17 0%, #120307 100%);
	color: #fff;
}
.clmr-produto-grade { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.clmr-produto-midia { min-height: 100%; background: #000; }
.clmr-produto-midia[hidden] { display: none; }
.clmr-produto-grade:has(.clmr-produto-midia[hidden]) { grid-template-columns: minmax(0, 1fr); }
.clmr-produto-foto { display: block; width: 100%; height: 100%; min-height: 320px; object-fit: cover; }
.clmr-produto-texto { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; padding: 28px; }
.clmr-dialog.clmr-produto h2 { margin: 0; color: #fff; font-size: 26px; line-height: 1.2; }
.clmr-produto-desc { color: #f4efe6; font-size: 16px; line-height: 1.55; }
.clmr-produto-desc p { margin: 0 0 8px; color: inherit; font-size: inherit; }
.clmr-produto-preco { margin: 0; color: #e2bc62; font-size: 26px; font-weight: 700; }
.clmr-produto-aviso { margin: 0; padding: 9px 14px; border-radius: 12px; background: #e2bc62; color: #22070d; font-size: 14px; font-weight: 700; line-height: 1.3; }
.clmr-produto-preco[hidden], .clmr-produto-aviso[hidden] { display: none; }
.clmr-produto-texto .clmr-btn { margin-top: auto; }
@media (max-width: 700px) {
	.clmr-produto-grade { grid-template-columns: minmax(0, 1fr); }
	.clmr-produto-midia { min-height: 0; }
	.clmr-produto-foto { height: auto; min-height: 0; max-height: 42dvh; aspect-ratio: 4 / 3; }
	.clmr-produto-texto { padding: 20px; }
	.clmr-dialog.clmr-produto h2, .clmr-produto-preco { font-size: 22px; }
}

/* Celular: dois cartões compactos por linha; o texto completo abre no quadro. */
@media (max-width: 600px) {
	.contentLoopCortesias .lista-itens-cortesia { gap: 10px; }
	.contentLoopCortesias .lista-itens-cortesia .item-cortesia { flex: 0 1 calc(50% - 5px); }
	.clmr-cort-foto { aspect-ratio: 4 / 3; font-size: 32px; }
	.clmr-cort-selo { right: 6px; bottom: 6px; padding: 2px 7px; font-size: 9px; }
	.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-titulo { margin: 8px 10px 4px; font-size: 14px; }
	.clmr-cort-cod { font-size: 11px; }
	.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-descricao { margin: 0 10px 10px; font-size: 12px; line-height: 1.35; }
	.contentLoopCortesias .lista-itens-cortesia .item-cortesia .item-descricao.clmr-desc-resumida { max-height: 49px; }
	.contentLoopCortesias .lista-itens-cortesia .item-cortesia .clmr-ver-tudo { margin: -6px 10px 10px; font-size: 11px; }
	.contentLoopCortesias .categoria-secao .titulo-categoria { margin-bottom: 16px; font-size: 22px; }
	.contentLoopCortesias .categoria-secao { margin-bottom: 32px; }
}
