/*
 * Under Wonder — estilos del plugin.
 * Tipografías y colores = globales de Elementor (Site Settings → Global Fonts / Global Colors):
 *   t000003 Titles L (categoría de la carta) · t000005 Titles S (líneas de la carta) · t000011 Paragraphs (descripciones)
 *   t000015 Header (pestañas) · t000002 Titles XL (filtro de la tienda) · t000012 Big Paragraphs
 *   c000001 texto · c000003 terracota · c000031 línea divisoria
 * Si se cambian en Elementor, la carta cambia con ellos.
 */

/* ---------- utilidades del diseño (clases puestas en Elementor) ---------- */
.uwc-italic, .uwc-italic p, .uwc-italic a, .uwc-italic span { font-style: italic; }
.uwc-links a, .uwc-links a:visited { color: inherit; text-decoration: none; }
.uwc-links a:hover, .uwc-links a:focus-visible { color: inherit; text-decoration: underline; text-underline-offset: .15em; text-decoration-thickness: 1px; }
.uwc-link a { color: inherit; text-decoration: none; }
.uwc-link a:hover, .uwc-link a:focus-visible { text-decoration: underline; text-underline-offset: .12em; text-decoration-thickness: 1px; }
.contact__social a + a { margin-left: 1.5em; }

/* Menú: subrayado en la página activa y al pasar el ratón (como en el diseño) */
.uwc-nav .elementor-item:hover,
.uwc-nav .elementor-item:focus-visible,
.uwc-nav .elementor-item.elementor-item-active { text-decoration: underline; text-underline-offset: .15em; text-decoration-thickness: 1px; }
.uwc-nav .elementor-nav-menu--main .elementor-item { padding-left: 0; padding-right: 0; }

/* Título de la tarjeta de la tienda en una sola línea con «…» */
.uwc-ellipsis .elementor-heading-title { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Fotos con la proporción del diseño a cualquier ancho (la foto entera se recorta con object-fit) */
.uwc-ar img { display: block; width: 100% !important; height: auto !important; object-fit: cover; }
.uwc-ar-card img  { aspect-ratio: 455 / 504; }
.uwc-ar-tall img  { aspect-ratio: 455 / 768; }
.uwc-ar-story img { aspect-ratio: 930 / 1056; }
.uwc-ar-art img   { aspect-ratio: 930 / 1266; }
@media (max-width: 767px) {
	.uwc-ar-art img { aspect-ratio: 358 / 397; }
	.home-hero .uwc-ar-card img { aspect-ratio: 171 / 220; }
}

/* Horario en dos columnas (Lunes – Viernes · 9:00 – 17:00) */
.uwc-hours { display: inline-grid !important; grid-template-columns: auto auto; column-gap: .6em; justify-content: end; text-align: right; }
.uwc-hours span { white-space: nowrap; }

/* «Nuestra filosofía» y «Ambiente» viven en el pie: en la ficha de una obra no se muestran (como en el diseño) */
body.single-products .uwc-story { display: none; }
/* «Sobre el artista»: si el artista no tiene biografía, la sección no aparece */
.uwc-about:not(:has(.uwc-artist__bio)) { display: none; }
.uwc-artist__bio { text-align: right; }
.uwc-artist__bio p { margin: 0 0 1.45em; }
.uwc-artist__bio p:last-child { margin-bottom: 0; }
.uwc-artist__photo img { display: block; width: 100%; height: auto; aspect-ratio: 455 / 504; object-fit: cover; }

/* Tipografía común de los bloques del plugin (globales de Elementor con valores de reserva) */
.uwc-carta, .uwc-tabs, .uwc-filter, .uwc-langs, .uwc-artist__bio {
	color: var(--e-global-color-c000001, #2A2522);
	-webkit-font-smoothing: antialiased;
}
.uwc-artist__bio, .uwc-row__desc, .uwc-row--note .uwc-row__name, .uwc-footnote {
	font-family: var(--e-global-typography-t000011-font-family, "Inter"), sans-serif;
	font-size: var(--e-global-typography-t000011-font-size, 32px);
	font-weight: var(--e-global-typography-t000011-font-weight, 300);
	line-height: var(--e-global-typography-t000011-line-height, 1.45);
	letter-spacing: var(--e-global-typography-t000011-letter-spacing, 0);
	text-transform: none;
}

/* ---------- Carta ---------- */
.uwc-js .uwc-panel:not(.is-active) { display: none; }
.uwc-cat + .uwc-cat { margin-top: 80px; }
.uwc-cat__title {
	margin: 0 0 40px;
	color: inherit;
	font-family: var(--e-global-typography-t000003-font-family, "Inter"), sans-serif;
	font-size: var(--e-global-typography-t000003-font-size, 48px);
	font-weight: var(--e-global-typography-t000003-font-weight, 600);
	line-height: var(--e-global-typography-t000003-line-height, 1);
	letter-spacing: var(--e-global-typography-t000003-letter-spacing, 0);
	text-transform: var(--e-global-typography-t000003-text-transform, uppercase);
}
.uwc-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 24px; }
.uwc-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 32px; align-items: baseline; margin: 0; padding: 0; }
.uwc-row__name, .uwc-row__price {
	font-family: var(--e-global-typography-t000005-font-family, "Inter"), sans-serif;
	font-size: var(--e-global-typography-t000005-font-size, 32px);
	font-weight: var(--e-global-typography-t000005-font-weight, 400);
	line-height: var(--e-global-typography-t000005-line-height, 1.25);
	letter-spacing: var(--e-global-typography-t000005-letter-spacing, 0);
	text-transform: var(--e-global-typography-t000005-text-transform, uppercase);
}
.uwc-row__price { grid-column: 2; grid-row: 1; text-align: right; white-space: nowrap; }
.uwc-row__desc { grid-column: 1; margin-top: .15em; }
.uwc-row--title .uwc-row__name { grid-column: 1 / -1; }
.uwc-sep { display: block; height: 0; margin: 24px 0; border-top: 1px solid var(--e-global-color-c000031, #E3D9C8); list-style: none; }
.uwc-footnote { margin-top: 80px; color: var(--e-global-color-c000003, #D26A4B); }
.uwc-footnote p { margin: 0; }
.uwc-empty { padding: 24px; border: 1px dashed currentColor; }

/* Pestañas de la carta (BEBIDAS · BRUNCH · POSTRES) */
.uwc-tabs { display: flex; flex-wrap: wrap; column-gap: 48px; row-gap: 8px; }
.uwc-tab, .uwc-tab:visited {
	color: inherit; text-decoration: none;
	font-family: var(--e-global-typography-t000015-font-family, "Inter"), sans-serif;
	font-size: var(--e-global-typography-t000015-font-size, 32px);
	font-weight: var(--e-global-typography-t000015-font-weight, 400);
	line-height: var(--e-global-typography-t000015-line-height, 1.1);
	letter-spacing: var(--e-global-typography-t000015-letter-spacing, 0);
	text-transform: var(--e-global-typography-t000015-text-transform, uppercase);
}
.uwc-tab:hover, .uwc-tab:focus-visible, .uwc-tab.is-active { color: inherit; text-decoration: underline; text-underline-offset: .15em; text-decoration-thickness: 1px; }

/* ---------- Tienda: filtro ---------- */
.uwc-filter { display: flex; flex-wrap: wrap; column-gap: 48px; row-gap: 0; }
.uwc-filter__tab, .uwc-filter__tab:hover, .uwc-filter__tab:focus {
	appearance: none; background: none !important; border: 0 !important; border-radius: 0; box-shadow: none; padding: 0; margin: 0; cursor: pointer;
	color: var(--e-global-color-c000001, #2A2522) !important;
	font-family: var(--e-global-typography-t000002-font-family, "Inter"), sans-serif;
	font-size: var(--e-global-typography-t000002-font-size, 64px);
	font-weight: var(--e-global-typography-t000002-font-weight, 500);
	line-height: var(--e-global-typography-t000002-line-height, 1.28);
	letter-spacing: var(--e-global-typography-t000002-letter-spacing, 0);
	text-transform: var(--e-global-typography-t000002-text-transform, uppercase);
}
.uwc-filter__tab:not(.is-active) { font-weight: 300; opacity: .5; }
.uwc-filter__tab:hover, .uwc-filter__tab:focus-visible { opacity: 1; text-decoration: underline; text-underline-offset: .12em; text-decoration-thickness: 1px; }
.uwc-filter.is-static .uwc-filter__tab { cursor: default; text-decoration: none; }
.uwc-filter__tab:focus:not(:focus-visible) { outline: none; }
.e-loop-item.uwc-off { display: none !important; }

/* ---------- Idiomas ---------- */
.uwc-langs { display: flex; gap: 16px; color: inherit; }
.uwc-langs a, .uwc-langs a:visited {
	color: inherit; text-decoration: none;
	font-family: var(--e-global-typography-t000006-font-family, "Inter"), sans-serif;
	font-size: var(--e-global-typography-t000006-font-size, 20px);
	font-weight: var(--e-global-typography-t000006-font-weight, 300);
	line-height: 1.2;
}
.uwc-langs a:hover, .uwc-langs a.is-active { text-decoration: underline; text-underline-offset: .15em; }
.home-hero .uwc-langs { color: var(--e-global-color-c000006, #F5F2EB); }

/* ---------- Adaptativo ---------- */
@media (max-width: 1024px) {
	.uwc-cat + .uwc-cat { margin-top: 64px; }
	.uwc-cat__title { margin-bottom: 32px; }
	.uwc-footnote { margin-top: 64px; }
}
@media (max-width: 767px) {
	.uwc-cat + .uwc-cat { margin-top: 44px; }
	.uwc-cat__title { margin-bottom: 26px; }
	.uwc-list { gap: 22px; }
	.uwc-row { column-gap: 16px; }
	.uwc-sep { margin: 0; }
	.uwc-footnote { margin-top: 44px; }
	.uwc-tabs { justify-content: space-between; column-gap: 16px; }
	.uwc-filter { flex-direction: column; }
	.uwc-langs { gap: 16px; }
}
