.te-recetas h1 {
	max-width: 820px;
	font-size: clamp(2.4rem, 6vw, 4.6rem);
}

.te-recetas__nota,
.te-opiniones__fuente {
	max-width: 780px;
	font-size: 0.9rem;
}

.te-recetas__rejilla {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 30px;
	margin-block: 38px;
}

.te-receta {
	min-width: 0;
	padding: clamp(16px, 2vw, 26px);
	background: var(--te-blanco);
	border: 1px solid var(--te-borde);
	border-radius: 20px;
}

.te-receta h2 {
	min-height: 2.5em;
	margin: 0 0 20px;
	font-size: clamp(1.6rem, 2.5vw, 2.1rem);
	line-height: 1.2;
}

.te-receta__video {
	display: block;
	width: 100%;
	height: auto;
	min-height: 200px;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 10px;
	background: #171311;
}

.te-receta__enlace {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin-top: 12px;
	color: var(--te-texto);
	font-weight: 700;
	text-underline-offset: 4px;
}

.te-opiniones__ideas {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	padding: 0;
	margin-block: 30px;
	list-style: none;
}

.te-opiniones__ideas li {
	padding: 24px;
	background: var(--te-blanco);
	border: 1px solid var(--te-borde);
	border-radius: 20px;
	font-size: 1.05rem;
}

@media (max-width: 780px) {
	.te-recetas__rejilla,
	.te-opiniones__ideas {
		grid-template-columns: minmax(0, 1fr);
	}

	.te-receta h2 {
		min-height: 0;
	}
}

.tacos-express { overflow: clip; }
.te-cabecera-fija .te-encabezado {
	position: sticky;
	top: calc(var(--te-admin-altura, 0px) - var(--te-cabecera-superior, 0px));
}
.admin-bar { --te-admin-altura: 32px; }
.tacos-express [id] {
	scroll-margin-top: calc(var(--te-cabecera-barra, 240px) + var(--te-admin-altura, 0px) + 24px);
}
.te-selector-pedidos, .te-redes {
	width: min(calc(100% - 40px), var(--te-ancho));
	margin: 30px auto 0;
}
.te-selector-pedidos {
	padding: clamp(16px, 3vw, 30px);
	border-radius: 20px;
	background: var(--te-blanco);
	color: var(--te-texto);
}
.te-selector-pedidos h2 { font-size: clamp(1.7rem, 4vw, 2.5rem); }
.te-selector-sucursal { border-top: 1px solid var(--te-borde); padding-block: 4px; }
.te-selector-sucursal summary { min-height: 48px; padding: 10px 4px; cursor: pointer; font-weight: 700; }
.te-selector-servicios {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	padding-block: 12px;
}
.te-selector-servicio a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 112px;
	min-height: 86px;
	padding: 12px;
	border-radius: 12px;
	background: #fff;
}
.te-selector-servicio img { width: 88px; height: 60px; object-fit: contain; }
.te-selector-sucursal > a { display: inline-flex; align-items: center; min-height: 44px; }
.te-redes { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.te-redes a { display: flex; align-items: center; min-height: 44px; gap: 10px; }
.te-redes img { width: 32px; height: 32px; }
.te-terraza-direccion { padding-block: 12px; }
.te-terraza-direccion p { margin-bottom: 4px; }
.te-terraza-direccion a { display: inline-flex; align-items: center; min-height: 44px; }
.te-categoria > summary { cursor: pointer; }
.te-categoria > summary::after { content: "+"; color: var(--te-rojo); font-size: 1.5rem; }
.te-categoria[open] > summary::after { content: "−"; }
.te-categoria > summary::marker { color: var(--te-rojo); }
.te-categoria:not([open]) > summary { margin-bottom: 0; }
.te-plato-etiqueta {
	display: inline-block;
	margin-top: 8px;
	padding: 3px 9px;
	border: 1px solid var(--te-borde);
	border-radius: 8px;
	color: var(--te-carbon);
	font-size: 0.75rem;
	font-weight: 700;
}
#extras .te-carta-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; }
#extras .te-plato-menu__encabezado { flex-direction: column; align-items: flex-start; gap: 5px; }
#extras .te-plato-menu__precio { text-align: left; }
#extras .te-plato-menu:nth-child(-n + 2) { padding-top: 0; }
.te-selector-pedidos :focus-visible, .te-redes :focus-visible, .te-categoria summary:focus-visible {
	outline: 3px solid var(--te-rojo);
	outline-offset: 4px;
}
@media (max-width: 780px) {
	.admin-bar { --te-admin-altura: 46px; }
	.te-carta-navegacion { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; }
	.te-carta-navegacion a { flex: 0 0 auto; }
	.te-carta-seccion { padding-block: 22px; }
	.te-categoria > summary { flex-direction: row; align-items: center; gap: 12px; }
	.te-categoria > summary h2 { font-size: 1.65rem; margin-bottom: 0; }
	.te-categoria > summary > p, .te-categoria > summary .te-etiqueta { display: none; }
	.te-categoria[open] > summary { margin-bottom: 22px; }
	#extras .te-plato-menu h3 { font-size: 0.95rem; }
}
