/**
 * Yerbatería — estilos de componentes.
 * Los colores, tipografías y tamaños vienen de theme.json (variables --wp--preset--*),
 * así que se pueden cambiar desde Apariencia → Editor → Estilos sin tocar este archivo.
 */

:root {
	--yb-monte: var(--wp--preset--color--monte, #213B2F);
	--yb-monte-prof: var(--wp--preset--color--monte-prof, #172A21);
	--yb-marfil: var(--wp--preset--color--marfil, #F6F1E7);
	--yb-papel: var(--wp--preset--color--papel, #EDE4D3);
	--yb-arena: var(--wp--preset--color--arena, #D8C7A8);
	--yb-tierra: var(--wp--preset--color--tierra, #9A5638);
	--yb-laton: var(--wp--preset--color--laton, #A98B55);
	--yb-tinta: var(--wp--preset--color--tinta, #1C211E);
	--yb-musgo: var(--wp--preset--color--musgo, #5A5E55);
	--yb-etiqueta: var(--wp--preset--color--etiqueta, #FBF8F1);
	--yb-serif: var(--wp--preset--font-family--newsreader, Georgia, serif);
	--yb-sans: var(--wp--preset--font-family--instrument-sans, system-ui, sans-serif);
	--yb-radio: var(--wp--custom--radio, 2px);
	--yb-barra: var(--wp--custom--barra, 36px);
	--yb-cabecera: 60px;
	--yb-pad-izq: var(--wp--style--root--padding-left, 1.25rem);
	--yb-pad-der: var(--wp--style--root--padding-right, 1.25rem);
	--yb-texto-suave: #353B35;
	--yb-claro-82: rgba(246, 241, 231, 0.82);
	--yb-claro-14: rgba(246, 241, 231, 0.14);
}
@media (min-width: 960px) {
	:root { --yb-cabecera: 88px; }
}

html { scroll-padding-top: calc(var(--yb-cabecera) + 16px); }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
h1, h2, h3, h4 { text-wrap: balance; font-optical-sizing: auto; }
p { text-wrap: pretty; }

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--yb-tierra);
	outline-offset: 3px;
}
:where(.yb-barra, .yb-cierre, .yb-pie) :focus-visible { outline-color: var(--yb-marfil); }

/* Las secciones de la portada van pegadas entre sí; cada una maneja su propio aire. */
:root .wp-site-blocks > *,
:root .yb-main > * { margin-block: 0; }
:root :is(.yb-cabecera__fila, .yb-logo, .yb-hero__grid, .yb-hero__texto, .yb-atributos__grid, .yb-atributo,
	.yb-encabezado-seccion, .yb-perfiles, .yb-perfil, .yb-origen__grid, .yb-origen__texto, .yb-criterio,
	.yb-criterio__lista, .yb-criterio__item, .yb-cierre__grid, .yb-cierre__texto, .yb-pie__grid, .yb-pie__marca,
	.yb-pie__base, .yb-pie__columna, .is-style-lamina, .is-style-ficha) > * { margin-block: 0; }

.yb-seccion { padding-block: var(--wp--preset--spacing--60); }

/* ---------- Enlaces y botones ---------- */
.is-style-enlace a {
	font-weight: 500;
	color: inherit;
	text-decoration: underline;
	text-decoration-color: var(--yb-arena);
	text-decoration-thickness: 1px;
	text-underline-offset: 6px;
	transition: text-decoration-color 0.2s ease;
}
.is-style-enlace a:hover { color: inherit; text-decoration-color: currentColor; text-decoration-thickness: 2px; }

.wp-element-button, .wp-block-button__link { transition: background-color 0.2s ease, color 0.2s ease; }
.wp-element-button:active, .wp-block-button__link:active { transform: translateY(1px); }
.wp-block-button.is-style-claro .wp-block-button__link { background: var(--yb-marfil); color: var(--yb-monte); }
.wp-block-button.is-style-claro .wp-block-button__link:hover { background: var(--yb-papel); color: var(--yb-monte); }

/* ---------- Barra superior y encabezado ---------- */
.yb-cabecera-sitio {
	position: sticky;
	top: calc(var(--wp-admin--admin-bar--height, 0px) - var(--yb-barra));
	z-index: 50;
}
@media (max-width: 600px) {
	.admin-bar .yb-cabecera-sitio { top: calc(-1 * var(--yb-barra)); }
}
.yb-barra {
	min-height: var(--yb-barra);
	display: flex;
	align-items: center;
	justify-content: center;
	padding-block: 0;
	position: relative;
	z-index: 40;
}
.yb-barra p {
	margin: 0;
	font-size: 12.5px;
	line-height: 1.3;
	letter-spacing: 0.01em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.yb-cabecera {
	background: var(--yb-marfil);
	border-bottom: 1px solid transparent;
	transition: border-color 0.2s ease;
	padding-block: 0;
}
.yb-cabecera.is-stuck { border-bottom-color: var(--yb-arena); }
.yb-cabecera__fila {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	grid-template-areas: "menu logo acciones";
	align-items: center;
	min-height: var(--yb-cabecera);
}
@media (min-width: 960px) {
	.yb-cabecera__fila { grid-template-areas: "logo menu acciones"; }
}

.yb-logo {
	--yb-logo-fondo: var(--yb-marfil);
	--yb-logo-hoja: var(--yb-tierra);
	grid-area: logo;
	display: flex;
	flex-direction: column;
	align-items: center;
	line-height: 1;
}
.yb-logo__nombre {
	margin: 0;
	font-family: var(--yb-serif);
	font-weight: 400;
	font-size: 27px;
	line-height: 1;
	letter-spacing: -0.01em;
	font-optical-sizing: auto;
	white-space: nowrap;
}
.yb-logo__nombre a { color: var(--yb-monte); text-decoration: none; }
.yb-logo__bajada {
	margin: 5px 0 0 1px;
	font-family: var(--yb-sans);
	font-weight: 500;
	font-size: 11px;
	line-height: 1.2;
	letter-spacing: 0.01em;
	color: var(--yb-musgo);
}
/* La tilde de la «í» es una hoja de yerba (functions.php: yerbateria_logo_hoja). */
.yb-tilde { position: relative; display: inline-block; }
.yb-hoja {
	position: absolute;
	left: 50%;
	bottom: 0.6em;
	width: 0.36em;
	height: auto;
	overflow: visible;
	transform: translateX(-28%) rotate(-58deg);
	transform-origin: 0% 50%;
	pointer-events: none;
}
.yb-hoja__luz { fill: var(--yb-logo-fondo); stroke: var(--yb-logo-fondo); stroke-width: 7.2; stroke-linejoin: round; }
.yb-hoja__lamina { fill: var(--yb-logo-hoja); }
@media (min-width: 960px) {
	.yb-cabecera .yb-logo { align-items: flex-start; justify-self: start; }
	.yb-logo__nombre { font-size: 32px; }
	.yb-logo__bajada { font-size: 11.5px; margin-top: 6px; }
}
.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.yb-menu { grid-area: menu; justify-self: start; }
@media (min-width: 960px) { .yb-menu { justify-self: center; } }
.yb-menu .wp-block-navigation__container { gap: clamp(24px, 2.6vw, 40px); }
.yb-menu .wp-block-navigation-item__content {
	position: relative;
	padding-block: 10px;
	color: var(--yb-tinta);
	text-decoration: none;
}
.yb-menu .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 5px;
	height: 1px;
	background: var(--yb-laton);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.25s ease;
}
.yb-menu .wp-block-navigation-item__content:hover::after,
.yb-menu .current-menu-item > .wp-block-navigation-item__content::after { transform: scaleX(1); }
.yb-menu .current-menu-item > .wp-block-navigation-item__content::after { background: var(--yb-monte); }

/* El menú se pliega hasta 960 px (el núcleo lo hace a 600 px). */
@media (min-width: 600px) and (max-width: 959px) {
	.yb-menu .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.yb-menu .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
.yb-menu .wp-block-navigation__responsive-container-open { margin-left: -10px; padding: 10px; }
.yb-menu .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--yb-marfil);
	color: var(--yb-tinta);
	padding: 24px var(--yb-pad-izq);
}
.yb-menu .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 48px; }
.yb-menu .is-menu-open .wp-block-navigation__container { gap: 0; width: 100%; }
.yb-menu .is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--yb-arena); }
.yb-menu .is-menu-open .wp-block-navigation-item__content {
	display: block;
	width: 100%;
	padding: 16px 0;
	font-family: var(--yb-serif);
	font-size: 28px;
	font-weight: 400;
	line-height: 1.15;
}
.yb-menu .is-menu-open .wp-block-navigation-item__content::after { display: none; }

.yb-cabecera__acciones { grid-area: acciones; justify-self: end; gap: 2px; margin-right: -10px; }
.yb-cabecera__acciones > * { margin: 0; }
.yb-buscar .wp-block-search__button.wp-element-button {
	background: transparent;
	color: var(--yb-tinta);
	padding: 10px;
	border: 0;
	min-width: 44px;
	min-height: 44px;
}
.yb-buscar .wp-block-search__button svg { width: 22px; height: 22px; fill: currentColor; }
.yb-buscar .wp-block-search__inside-wrapper { border: 0; padding: 0; }
.yb-buscar:not(.wp-block-search__searchfield-hidden) .wp-block-search__input {
	border: 1px solid var(--yb-arena);
	border-radius: var(--yb-radio);
	background: var(--yb-etiqueta);
	padding: 8px 12px;
	font-size: 15px;
}
.yb-cabecera .wc-block-customer-account a,
.yb-cabecera .wc-block-mini-cart__button {
	color: var(--yb-tinta);
	padding: 10px;
	min-width: 44px;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.yb-cabecera .wc-block-mini-cart__badge { background: var(--yb-monte); color: var(--yb-marfil); border-color: var(--yb-marfil); }
@media (max-width: 599px) {
	.yb-cabecera [class*="customer-account"] { display: none; }
}

/* ---------- Placeholders y fotos ---------- */
.yb-foto { position: relative; margin: 0; overflow: hidden; background: var(--yb-arena); }
.yb-foto img { display: block; width: 100%; height: auto; object-fit: cover; }
.yb-foto figcaption {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 2;
	max-width: calc(100% - 24px);
	margin: 0;
	padding: 6px 10px;
	border-radius: var(--yb-radio);
	background: rgba(251, 248, 241, 0.92);
	color: var(--yb-tinta);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.35;
	text-align: left;
}

/* ---------- Lámina y ficha de herbario (estilos de bloque reutilizables) ---------- */
.is-style-lamina {
	position: relative;
	background: var(--yb-papel);
	padding: 16px;
}
@media (min-width: 960px) { .is-style-lamina { padding: 20px; } }
.is-style-ficha {
	background: var(--yb-etiqueta);
	border: 1px solid var(--yb-arena);
	padding: 14px 16px 12px;
	font-size: 12.5px;
	line-height: 1.35;
	color: var(--yb-tinta);
}
.is-style-lamina > .is-style-ficha {
	position: absolute;
	right: 0;
	bottom: 14px;
	z-index: 3;
	width: min(300px, 82%);
	box-shadow: 0 1px 0 rgba(28, 33, 30, 0.05);
}
.yb-ficha__nombre {
	font-family: var(--yb-serif);
	font-size: 17px;
	line-height: 1.2;
	padding-bottom: 9px;
	margin-bottom: 8px !important;
	border-bottom: 1px solid var(--yb-arena);
}

.wp-block-table.is-style-datos { margin: 0; overflow: visible; }
.wp-block-table.is-style-datos table { width: 100%; border-collapse: collapse; font-size: inherit; }
.wp-block-table.is-style-datos td,
.wp-block-table.is-style-datos th { border: 0; padding: 2px 0; vertical-align: baseline; text-align: left; }
.wp-block-table.is-style-datos td:first-child { color: var(--yb-musgo); padding-right: 14px; white-space: nowrap; width: 1%; }
.wp-block-table.is-style-datos td:last-child { font-weight: 500; }
.wp-block-table.is-style-datos em { font-family: var(--yb-serif); font-size: 1.06em; font-weight: 400; color: var(--yb-musgo); }

/* ---------- Hero ---------- */
.yb-hero { padding-top: clamp(28px, 4vw, 64px); padding-bottom: clamp(56px, 7vw, 104px); }
.yb-hero__grid { display: grid; gap: 40px; }
.yb-bajada {
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.6;
	color: var(--yb-texto-suave);
	max-width: 30rem;
}
.yb-hero__texto .yb-bajada { margin-top: 22px; }
.yb-acciones { gap: 18px 28px; }
.yb-hero__texto .yb-acciones { margin-top: 32px; }
.yb-acciones p { margin: 0; }
.yb-hero__lamina { margin-inline: calc(-1 * var(--yb-pad-izq)) calc(-1 * var(--yb-pad-der)); padding: 0 0 64px; }
.yb-foto--retrato img { aspect-ratio: 1 / 1; }
.yb-hero__lamina > .is-style-ficha { right: var(--yb-pad-der); }
@media (max-width: 599px) {
	.yb-acciones, .yb-acciones .wp-block-buttons, .yb-acciones .wp-block-button { width: 100%; }
	.yb-acciones .wp-block-button__link { width: 100%; }
}
@media (min-width: 600px) {
	.yb-hero__lamina { margin-inline: 0; padding: 24px 24px 76px; }
	.yb-hero__lamina > .is-style-ficha { right: 24px; bottom: 18px; }
	.yb-foto--retrato img { aspect-ratio: 3 / 2; }
}
@media (min-width: 960px) {
	.yb-hero__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: center; }
	.yb-hero__texto { grid-column: 1 / span 6; }
	.yb-hero__lamina { grid-column: 8 / -1; padding: 28px 28px 84px; }
	.yb-hero__lamina > .is-style-ficha { right: 28px; bottom: 22px; }
	.yb-foto--retrato img { aspect-ratio: 4 / 5; max-height: clamp(420px, calc(100svh - 330px), 560px); }
}

/* ---------- Atributos ---------- */
.yb-atributos { border-block: 1px solid var(--yb-arena); padding-block: 0; }
.yb-atributos__grid { display: grid; }
.yb-atributo { padding: 22px 0; border-top: 1px solid var(--yb-arena); }
.yb-atributo:first-child { border-top: 0; }
.yb-atributo__titulo { font-size: 22px; line-height: 1.25; }
.yb-atributo p { margin-top: 6px !important; max-width: 34ch; color: var(--yb-musgo); font-size: 15px; }
@media (min-width: 960px) {
	.yb-atributos__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.yb-atributo { padding: 36px 40px; border-top: 0; border-left: 1px solid var(--yb-arena); }
	.yb-atributo:first-child { padding-left: 0; border-left: 0; }
}

/* ---------- Selección por perfil ---------- */
.yb-encabezado-seccion { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px 32px; margin-bottom: 28px !important; }
.yb-encabezado-seccion h2 { margin: 0; }
.yb-subtitulo { margin: 14px 0 0; max-width: 38ch; font-size: var(--wp--preset--font-size--large); color: var(--yb-musgo); }
.yb-deslizar { font-size: 13px; color: var(--yb-musgo); margin-bottom: 14px !important; }

.yb-perfiles {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: 82%;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding-inline: var(--yb-pad-izq);
	overscroll-behavior-x: contain;
	margin-inline: calc(-1 * var(--yb-pad-izq)) calc(-1 * var(--yb-pad-der)) !important;
	padding: 0 var(--yb-pad-der) 10px var(--yb-pad-izq);
	scrollbar-width: thin;
	scrollbar-color: var(--yb-arena) transparent;
}
.yb-perfil { position: relative; display: flex; flex-direction: column; scroll-snap-align: start; }
.yb-perfil .yb-foto { background: transparent; }
.yb-foto--envase img { aspect-ratio: 4 / 5; transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1); }
.yb-perfil:hover .yb-foto--envase img { transform: scale(1.03); }
.yb-perfil__titulo { margin-top: 20px !important; }
.yb-perfil__titulo a { color: inherit; text-decoration: none; }
.yb-perfil__titulo a::after { content: ""; position: absolute; inset: 0; z-index: 4; }
.yb-perfil:hover .yb-perfil__titulo a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; text-decoration-color: var(--yb-arena); }
.yb-perfil__titulo a:focus-visible { outline: none; }
.yb-perfil:has(.yb-perfil__titulo a:focus-visible) { outline: 2px solid var(--yb-tierra); outline-offset: 6px; }
.yb-perfil__texto { margin: 10px 0 18px !important; color: var(--yb-musgo); font-size: 15.5px; max-width: 36ch; }
.yb-perfil__datos { margin-top: auto !important; padding-top: 14px; border-top: 1px solid var(--yb-arena); font-size: 13.5px; }
.yb-perfil__datos td { padding-block: 3px; }
.yb-perfil__cta {
	margin-top: 18px !important;
	font-size: 15px;
	font-weight: 600;
	color: var(--yb-monte);
	text-decoration: underline;
	text-decoration-color: var(--yb-arena);
	text-underline-offset: 6px;
}
.yb-perfil:hover .yb-perfil__cta { text-decoration-color: var(--yb-monte); text-decoration-thickness: 2px; }
@media (min-width: 600px) { .yb-perfiles { grid-auto-columns: 46%; gap: 24px; } }
@media (min-width: 960px) {
	.yb-encabezado-seccion { margin-bottom: 56px !important; }
	.yb-deslizar { display: none; }
	.yb-perfiles {
		grid-auto-flow: row;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-auto-columns: auto;
		gap: 32px;
		overflow: visible;
		margin-inline: auto !important;
		padding: 0;
	}
	.yb-perfil .is-style-lamina { padding: 20px; }
}

/* ---------- Origen y criterio ---------- */
.yb-origen { padding-top: 0; }
.yb-origen__grid { display: grid; container-type: inline-size; }
.yb-foto--paisaje img { aspect-ratio: 4 / 5; }
.yb-origen__texto { padding: 40px var(--yb-pad-der) 0 var(--yb-pad-izq); }
.yb-origen__texto h2 { font-size: var(--wp--preset--font-size--xx-large); }
.yb-origen__texto p:not(.is-style-enlace) { margin: 20px 0 24px !important; max-width: 36em; font-size: 17px; color: var(--yb-texto-suave); }
.yb-criterio { margin-top: 56px !important; }
.yb-criterio__titulo { font-size: clamp(1.375rem, 1.2rem + 0.6vw, 1.75rem); line-height: 1.25; }
.yb-criterio__lista { display: grid; margin-top: 20px !important; }
.yb-criterio__item { padding: 18px 0; border-top: 1px solid var(--yb-arena); }
.yb-criterio__item h4 { font-size: 22px; color: var(--yb-monte); }
.yb-criterio__item p { margin-top: 6px !important; max-width: 36ch; color: var(--yb-musgo); font-size: 15.5px; }
@media (min-width: 600px) {
	.yb-foto--paisaje img { aspect-ratio: 16 / 9; }
	.yb-origen__texto { padding-top: 56px; max-width: calc(680px + var(--yb-pad-izq) + var(--yb-pad-der)); }
}
@media (min-width: 960px) {
	.yb-origen { padding-top: var(--wp--preset--spacing--60); }
	.yb-origen__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: center; }
	.yb-foto--paisaje img { aspect-ratio: 16 / 10; }
	.yb-origen__texto { max-width: none; padding: 0 max(var(--yb-pad-der), calc((100cqw - 1240px) / 2)) 0 clamp(40px, 5vw, 80px); }
	.yb-criterio { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; margin-top: 96px !important; }
	.yb-criterio__titulo { grid-column: 1 / span 3; padding-top: 18px; }
	.yb-criterio__lista { grid-column: 5 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 32px; margin-top: 0 !important; }
}

/* ---------- Cierre ---------- */
.yb-cierre { position: relative; overflow: hidden; }
.yb-cierre__grid { position: static; }
.yb-cierre__texto { position: relative; z-index: 1; }
.yb-cierre h2 { font-size: clamp(2.25rem, 1.6rem + 2.8vw, 3.75rem); line-height: 1.06; letter-spacing: -0.02em; max-width: 13ch; }
.yb-cierre .yb-bajada { margin: 20px 0 36px !important; max-width: 34ch; color: var(--yb-claro-82); }
.yb-cierre .yb-acciones { margin-top: 0; }
.yb-cierre .is-style-enlace a { text-decoration-color: rgba(246, 241, 231, 0.4); }
.yb-cierre__rama { position: absolute; right: -36px; bottom: -64px; width: 190px; margin: 0; opacity: 0.4; pointer-events: none; }
.yb-cierre__rama img { width: 100%; height: auto; }
@media (min-width: 600px) {
	.yb-cierre__rama { right: clamp(-20px, 2vw, 40px); bottom: -40px; width: min(44vw, 420px); opacity: 0.95; }
}

/* ---------- Pie ---------- */
.yb-pie { padding-top: 64px; padding-bottom: 28px; font-size: 15px; color: var(--yb-claro-82); }
.yb-pie a { color: var(--yb-claro-82); text-decoration: none; }
.yb-pie a:hover { color: var(--yb-marfil); text-decoration: underline; text-underline-offset: 4px; }
.yb-pie .yb-logo { --yb-logo-fondo: var(--yb-monte-prof); --yb-logo-hoja: var(--yb-laton); align-items: flex-start; }
.yb-pie .yb-logo__nombre a { color: var(--yb-marfil); }
.yb-pie .yb-logo__bajada { color: rgba(246, 241, 231, 0.7); }
.yb-pie__grid { display: grid; }
.yb-pie__marca { padding-bottom: 32px; }
.yb-pie__marca > p { margin-top: 20px !important; max-width: 32ch; }
.yb-pie__contacto { font-size: 14px; }
.yb-pie em { font-family: var(--yb-serif); font-style: italic; color: rgba(246, 241, 231, 0.75); }
.yb-pie__columna { border-top: 1px solid var(--yb-claro-14); }
.yb-pie__columna summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 0;
	list-style: none;
	cursor: pointer;
	font-size: 14px;
	font-weight: 600;
	color: var(--yb-marfil);
}
.yb-pie__columna summary::-webkit-details-marker { display: none; }
.yb-pie__columna summary::after { content: "+"; font-size: 20px; font-weight: 400; line-height: 1; }
.yb-pie__columna[open] summary::after { content: "\2013"; }
.yb-pie__menu { margin-bottom: 18px; }
.yb-pie__menu .wp-block-navigation__container { gap: 10px; }
.yb-pie__menu .wp-block-navigation-item__content { padding: 0; font-size: 15px; font-weight: 400; }
.yb-pie__base {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px 32px;
	margin-top: 32px !important;
	padding-top: 24px;
	border-top: 1px solid var(--yb-claro-14);
	font-size: 13px;
	color: rgba(246, 241, 231, 0.7);
}
.yb-pie__legal { gap: 16px 20px; }
.yb-pie__legal > * { margin: 0; }
.yb-pie__meta, .yb-pie__copy { margin: 0; }
.yb-pie .yb-boton-arrepentimiento,
.yb-pie .yb-arrepentimiento .wp-block-button__link {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 10px 16px;
	border: 1px solid rgba(246, 241, 231, 0.6);
	border-radius: var(--yb-radio);
	background: transparent;
	color: var(--yb-marfil);
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-decoration: none;
}
.yb-pie .yb-boton-arrepentimiento:hover,
.yb-pie .yb-arrepentimiento .wp-block-button__link:hover { background: var(--yb-marfil); color: var(--yb-monte-prof); text-decoration: none; }
.yb-pie .yb-data-fiscal img { display: block; max-height: 64px; width: auto; background: #fff; padding: 2px; border-radius: var(--yb-radio); }
@media (min-width: 960px) {
	.yb-pie { padding-top: 88px; }
	.yb-pie__grid { grid-template-columns: 1.6fr repeat(3, 1fr); gap: 40px; }
	.yb-pie__marca { padding-bottom: 0; }
	.yb-pie__columna { border-top: 0; }
	.yb-pie__columna summary { padding: 0 0 16px; cursor: default; pointer-events: none; }
	.yb-pie__columna summary::after, .yb-pie__columna[open] summary::after { content: none; }
	.yb-pie__base { margin-top: 72px !important; }
}

/* ---------- Páginas y entradas ---------- */
.yb-pagina { padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60); }
.yb-pagina__titulo { font-size: var(--wp--preset--font-size--xx-large); margin-bottom: var(--wp--preset--spacing--40); }
.yb-fecha { font-size: 13px; color: var(--yb-musgo); }
.yb-listado .wp-block-post { padding-block: 24px; border-top: 1px solid var(--yb-arena); }
.yb-listado .wp-block-post-title a { text-decoration: none; }

/* ---------- WooCommerce ---------- */
.yb-tienda, .yb-producto { padding-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--60); }
.yb-tienda .yb-pagina__titulo { margin-bottom: 8px; }
.yb-tienda__orden { font-size: 14px; color: var(--yb-musgo); margin-block: 24px 32px !important; }
.woocommerce-breadcrumb, .wc-block-breadcrumbs { font-size: 13px; color: var(--yb-musgo); }
.woocommerce-breadcrumb a, .wc-block-breadcrumbs a { color: inherit; }

.yb-grilla .wc-block-components-product-image,
.yb-grilla .wc-block-components-product-image a { background: var(--yb-papel); }
.yb-grilla .wc-block-components-product-image { padding: 16px; margin-bottom: 16px; }
.yb-grilla .wc-block-components-product-image img { aspect-ratio: 4 / 5; object-fit: cover; }
.yb-grilla__nombre { font-size: 22px !important; line-height: 1.2; text-align: left; margin-block: 0 6px; }
.yb-grilla__nombre a { text-decoration: none; }
.yb-grilla__nombre a:hover { text-decoration: underline; text-underline-offset: 5px; }
.yb-grilla__precio { text-align: left; margin-bottom: 14px; }
.yb-grilla__boton, .yb-grilla .wc-block-components-product-button { text-align: left; justify-content: flex-start; align-items: flex-start; }
.yb-sin-resultados { color: var(--yb-musgo); }

.yb-producto__grid { gap: clamp(24px, 4vw, 64px); }
.yb-producto__perfil { font-size: 13px; color: var(--yb-musgo); }
.yb-producto__perfil a { color: inherit; }
.yb-producto__info .wp-block-post-title { font-size: var(--wp--preset--font-size--xx-large); margin-top: 6px; }
.yb-producto__meta { font-size: 13px; color: var(--yb-musgo); gap: 6px 18px; }
.wp-block-woocommerce-product-details { margin-top: var(--wp--preset--spacing--50); }
.wp-block-woocommerce-product-details h2 { font-size: var(--wp--preset--font-size--x-large); }
.wc-block-components-product-badge, .wc-block-components-product-sale-badge {
	background: var(--yb-monte);
	color: var(--yb-marfil);
	border: 0;
	border-radius: var(--yb-radio);
	font-size: 12px;
}
.woocommerce-Price-amount, .wc-block-components-product-price { font-variant-numeric: tabular-nums; }

/* Formularios: bloques de WooCommerce, checkout clásico y formularios propios. */
:where(.wp-site-blocks) :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
	input[type="password"], input[type="search"], input[type="date"], input[type="url"], select, textarea) {
	border: 1px solid var(--yb-arena);
	border-radius: var(--yb-radio);
	background: var(--yb-etiqueta);
	color: var(--yb-tinta);
	font: inherit;
	padding: 0.7em 0.85em;
}
:where(.wp-site-blocks) :is(input, select, textarea):focus {
	outline: none;
	border-color: var(--yb-monte);
	box-shadow: 0 0 0 1px var(--yb-monte);
}
.woocommerce form .form-row label { font-size: 14px; color: var(--yb-tinta); }
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce #place_order {
	background: var(--yb-monte);
	color: var(--yb-marfil);
	border-radius: var(--yb-radio);
	font-weight: 600;
	padding: 0.95rem 1.75rem;
}
.woocommerce .button:hover, .woocommerce #place_order:hover { background: var(--yb-monte-prof); color: var(--yb-marfil); }
.woocommerce-info, .woocommerce-message, .woocommerce-error,
.wc-block-components-notice-banner { border-radius: var(--yb-radio); }
.woocommerce table.shop_table { border-color: var(--yb-arena); border-radius: var(--yb-radio); }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
	.yb-perfil:hover .yb-foto--envase img { transform: none; }
}

/* =====================================================================
   v1.1 — Catálogo ampliado, páginas, blog y tienda con filtros
   ===================================================================== */

:root :is(.yb-indice__lista, .yb-indice__item, .yb-nota, .yb-nota-single__cabecera, .yb-blog__cabecera,
	.yb-tienda__cuerpo, .yb-tienda__lateral, .yb-tienda__resultados, .yb-relacionadas, .yb-recuadro-novedades,
	.yb-pie__novedades, .yb-pie__info, .yb-comentario) > * { margin-block: 0; }

/* ---------- Submenú de la tienda ---------- */
.yb-menu .wp-block-navigation__submenu-container {
	min-width: 220px;
	padding: 10px 0;
	background: var(--yb-marfil) !important;
	border: 1px solid var(--yb-arena) !important;
	border-radius: var(--yb-radio);
	box-shadow: 0 12px 28px rgba(28, 33, 30, 0.08);
}
.yb-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 8px 20px;
	font-size: 15px;
	font-weight: 400;
}
.yb-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after { display: none; }
.yb-menu .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: var(--yb-papel); }
.yb-menu .wp-block-navigation__submenu-icon { margin-left: 4px; width: 10px; height: 10px; }
.yb-menu .is-menu-open .wp-block-navigation__submenu-container {
	min-width: 0;
	padding: 0 0 12px !important;
	border: 0 !important;
	box-shadow: none;
	background: transparent !important;
}
.yb-menu .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { border-bottom: 0; }
.yb-menu .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 6px 0;
	font-family: var(--yb-sans);
	font-size: 17px;
	color: var(--yb-musgo);
}
.yb-menu .is-menu-open .wp-block-navigation__submenu-container { columns: 2; column-gap: 24px; display: block !important; }

/* ---------- Encabezados de sección (enlace a la derecha) ---------- */
.yb-encabezado-seccion > .wp-block-group { margin: 0; }

/* ---------- Portada: índice de categorías ---------- */
.yb-indice { padding-top: var(--wp--preset--spacing--60); padding-bottom: 0; }
.yb-indice__lista { display: grid; border-top: 1px solid var(--yb-arena); }
.yb-indice__item {
	position: relative;
	padding: 20px 0 22px;
	border-bottom: 1px solid var(--yb-arena);
}
.yb-indice__nombre { font-size: clamp(1.5rem, 1.3rem + 0.8vw, 2rem); line-height: 1.15; }
.yb-indice__nombre a { color: inherit; text-decoration: none; }
.yb-indice__nombre a::after { content: ""; position: absolute; inset: 0; }
.yb-indice__nombre a:focus-visible { outline: none; }
.yb-indice__item:has(a:focus-visible) { outline: 2px solid var(--yb-tierra); outline-offset: -2px; }
.yb-indice__texto { margin-top: 6px !important; font-size: 15px; color: var(--yb-musgo); max-width: 34ch; }
.yb-indice__item:hover .yb-indice__nombre a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; text-decoration-color: var(--yb-laton); }
@media (min-width: 600px) {
	.yb-indice__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
}
@media (min-width: 960px) {
	.yb-indice__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 48px; }
	.yb-indice__item { padding: 28px 0 30px; }
}

/* ---------- Grillas de productos ---------- */
.yb-novedades .yb-encabezado-seccion { margin-bottom: 32px !important; }
@media (min-width: 960px) {
	.yb-grilla--cuatro .wc-block-product-template { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
.yb-grilla .wc-block-product { margin: 0; }
.yb-grilla .wc-block-components-product-button .wp-block-button__link,
.yb-grilla .wc-block-components-product-button__button {
	font-size: 14px;
	padding: 0.75rem 1.25rem;
}

/* ---------- Chips de categorías (tienda y blog) ---------- */
.yb-chips { gap: 8px !important; margin-block: 8px 28px !important; }
.yb-chips p { margin: 0; }
.yb-chips a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0 14px;
	border: 1px solid var(--yb-arena);
	border-radius: 999px;
	font-size: 14px;
	color: var(--yb-tinta);
	text-decoration: none;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}
.yb-chips a:hover { border-color: var(--yb-monte); }
.yb-chips a[aria-current="page"] { background: var(--yb-monte); border-color: var(--yb-monte); color: var(--yb-marfil); }

/* ---------- Tienda con filtros ---------- */
.yb-tienda__cuerpo { display: grid; gap: 32px; }
@media (min-width: 960px) {
	.yb-tienda__cuerpo { grid-template-columns: 232px minmax(0, 1fr); gap: 48px; align-items: start; }
	.yb-tienda__lateral { position: sticky; top: calc(var(--yb-cabecera) + 24px); }
}
.yb-tienda__orden { margin-block: 0 24px !important; }
.yb-filtros__titulo { font-size: 22px !important; margin-bottom: 8px !important; }
.yb-filtros h3 {
	font-family: var(--yb-sans) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: 0.01em;
	margin: 0 0 10px !important;
}
.yb-filtros .wp-block-woocommerce-product-filter-price,
.yb-filtros .wp-block-woocommerce-product-filter-attribute,
.yb-filtros .wp-block-woocommerce-product-filter-status { padding-top: 18px; border-top: 1px solid var(--yb-arena); }
.yb-filtros .wc-block-product-filters__open-overlay {
	border: 1px solid var(--yb-arena);
	border-radius: var(--yb-radio);
	padding: 10px 16px;
	background: var(--yb-etiqueta);
	color: var(--yb-tinta);
	font: inherit;
	font-weight: 600;
}
.yb-filtros .wc-block-product-filter-clear-button .wp-block-button__link { padding: 6px 12px; font-size: 13px; background: transparent; color: var(--yb-tinta); border: 1px solid var(--yb-arena); }

/* ---------- Ficha del producto: atributos y rótulo ---------- */
.woocommerce-product-attributes,
.yb-rotulo { width: 100%; border-collapse: collapse; border-top: 1px solid var(--yb-arena); }
.woocommerce-product-attributes th,
.woocommerce-product-attributes td,
.yb-rotulo th,
.yb-rotulo td {
	padding: 10px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--yb-arena) !important;
	background: transparent !important;
	text-align: left;
	vertical-align: baseline;
	font-size: 15px;
}
.woocommerce-product-attributes th,
.yb-rotulo th { width: 34%; padding-right: 16px !important; font-weight: 400; color: var(--yb-musgo); }
.woocommerce-product-attributes td p { margin: 0; }

/* ---------- Páginas de contenido ---------- */
.yb-pagina .wp-block-post-content { font-size: 17px; }
.yb-pagina .wp-block-post-content > h2 { margin-top: 2.2em; font-size: var(--wp--preset--font-size--x-large); }
.yb-pagina .wp-block-post-content > h3 { margin-top: 1.6em; font-size: 1.375rem; }
.yb-pagina .wp-block-post-content a:not(.wp-element-button) { text-decoration-color: var(--yb-arena); text-underline-offset: 4px; }
.yb-pagina .wp-block-post-content a:not(.wp-element-button):hover { text-decoration-color: currentColor; }
.yb-nota-borrador {
	padding: 12px 16px;
	border: 1px dashed var(--yb-tierra);
	color: var(--yb-tierra);
	font-size: 15px;
}
.yb-contacto-columnas { gap: clamp(32px, 5vw, 72px) !important; margin-top: 32px !important; }
.yb-contacto-columnas h2 { margin-bottom: 16px; }
.yb-contacto-columnas .wp-block-yerbateria-redes { margin-top: 20px; }

/* Pasos numerados (Cómo comprar). */
.yb-pasos { list-style: none; counter-reset: yb-paso; padding: 0; margin-top: 32px; }
.yb-pasos li {
	counter-increment: yb-paso;
	position: relative;
	padding: 18px 0 18px 56px;
	border-top: 1px solid var(--yb-arena);
}
.yb-pasos li::before {
	content: counter(yb-paso);
	position: absolute;
	left: 0;
	top: 12px;
	font-family: var(--yb-serif);
	font-size: 32px;
	line-height: 1;
	color: var(--yb-tierra);
}

/* Preguntas frecuentes (bloque Acordeón). */
.yb-faq { margin-top: 32px; border-top: 1px solid var(--yb-arena); }
.yb-faq .wp-block-accordion-item { border-bottom: 1px solid var(--yb-arena); margin: 0; }
.yb-faq .wp-block-accordion-heading { margin: 0; font-size: 1.25rem; }
.yb-faq .wp-block-accordion-heading__toggle {
	width: 100%;
	padding: 18px 0;
	border: 0;
	background: none;
	color: var(--yb-tinta);
	font-family: var(--yb-serif);
	font-size: inherit;
	line-height: 1.3;
	text-align: left;
	cursor: pointer;
}
.yb-faq .wp-block-accordion-heading__toggle:hover { color: var(--yb-monte); }
.yb-faq .wp-block-accordion-heading__toggle-icon { font-family: var(--yb-sans); color: var(--yb-musgo); }
.yb-faq .wp-block-accordion-panel { padding: 0 0 18px; }
.yb-faq .wp-block-accordion-panel p { margin: 0; color: var(--yb-texto-suave); }

/* ---------- Blog: listados ---------- */
.yb-blog { padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60); }
.yb-blog__cabecera { margin-bottom: 16px !important; }
.yb-blog__cabecera .yb-bajada { margin-top: 12px !important; max-width: 40rem; }
.yb-notas .wp-block-post-template { gap: 48px 32px; }
.yb-nota { display: flex; flex-direction: column; gap: 0; }
.yb-nota__imagen { margin: 0 0 18px !important; padding: 12px; background: var(--yb-papel); }
.yb-nota__imagen img { display: block; width: 100%; }
.yb-nota__categoria { font-size: 13px; color: var(--yb-musgo); margin-bottom: 6px !important; }
.yb-nota__categoria a { color: inherit; text-decoration: none; }
.yb-nota__categoria a:hover { text-decoration: underline; }
.yb-nota__titulo { font-size: clamp(1.375rem, 1.25rem + 0.45vw, 1.625rem) !important; line-height: 1.2; }
.yb-nota__titulo a { text-decoration: none; }
.yb-nota__titulo a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.yb-nota__extracto { margin-top: 10px !important; font-size: 15.5px; color: var(--yb-musgo); }
.yb-nota__extracto p { margin: 0; }
.yb-nota__extracto .wp-block-post-excerpt__more-link { display: none; }
.yb-nota .yb-fecha { margin-top: 12px !important; }
.yb-blog-portada .yb-notas { margin-top: 0; }
.yb-blog-portada .yb-encabezado-seccion { margin-bottom: 40px !important; }
.yb-sin-resultados { color: var(--yb-musgo); }

/* ---------- Blog: nota ---------- */
.yb-nota-single { padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60); }
.yb-nota-single__titulo { font-size: clamp(2.25rem, 1.6rem + 2.6vw, 3.5rem) !important; line-height: 1.08; margin-top: 8px !important; }
.yb-nota-single__meta { margin-top: 16px !important; gap: 4px 16px !important; font-size: 14px; color: var(--yb-musgo); }
.yb-nota-single__meta > * { margin: 0; }
.yb-nota-single__meta .wp-block-post-time-to-read::before { content: "· "; }
.yb-nota-single__portada { margin-top: 40px !important; padding: 16px; background: var(--yb-papel); }
.yb-nota-single__contenido { margin-top: 40px !important; font-size: 18px; line-height: 1.7; }
.yb-nota-single__contenido > h2 { margin-top: 1.9em; font-size: var(--wp--preset--font-size--x-large); }
.yb-nota-single__contenido > p:first-child,
.yb-nota-single__contenido > .yb-bajada { font-size: 21px; line-height: 1.55; color: var(--yb-tinta); max-width: none; }
.yb-nota-single__contenido li { margin-bottom: 0.5em; }
.yb-nota-single__contenido a { text-decoration-color: var(--yb-arena); text-underline-offset: 4px; }
.yb-nota-single__etiquetas { margin-top: 32px !important; font-size: 14px; color: var(--yb-musgo); }
.yb-recuadro-novedades { margin-top: 48px !important; padding: 28px; }
.yb-relacionadas { margin-top: var(--wp--preset--spacing--60) !important; padding-top: 40px; border-top: 1px solid var(--yb-arena); }
.yb-relacionadas__titulo { font-size: var(--wp--preset--font-size--x-large) !important; margin-bottom: 28px !important; }
.yb-comentarios { margin-top: var(--wp--preset--spacing--50) !important; }
.yb-comentarios .wp-block-comments-title { font-size: var(--wp--preset--font-size--x-large); }
.yb-comentario { padding: 18px 0; border-top: 1px solid var(--yb-arena); }
.yb-comentario .wp-block-comment-author-name { font-weight: 600; }
.yb-comentario .wp-block-comment-date { font-size: 13px; color: var(--yb-musgo); }
.yb-comentarios .comment-reply-title { font-family: var(--yb-serif); font-weight: 400; font-size: 1.5rem; }
.yb-comentarios textarea, .yb-comentarios input[type="text"], .yb-comentarios input[type="email"], .yb-comentarios input[type="url"] { width: 100%; }

/* ---------- Pie v1.1 ---------- */
.yb-pie__novedades {
	display: grid;
	padding-bottom: 40px;
	margin-bottom: 48px !important;
	border-bottom: 1px solid var(--yb-claro-14);
}
.yb-pie .yb-newsletter { display: grid; gap: 4px 48px; align-items: end; }
@media (min-width: 960px) {
	.yb-pie .yb-newsletter { grid-template-columns: minmax(0, 1fr) minmax(0, 460px); }
	.yb-pie .yb-newsletter__titulo, .yb-pie .yb-newsletter__texto { grid-column: 1; }
	.yb-pie .yb-newsletter__form, .yb-pie .yb-newsletter__aviso { grid-column: 2; }
	.yb-pie .yb-newsletter__aviso { grid-row: 1; }
	.yb-pie .yb-newsletter__form { grid-row: 1 / span 2; align-self: end; }
}
.yb-pie .yb-newsletter__titulo { color: var(--yb-marfil); font-size: 1.75rem; }
.yb-pie .yb-newsletter__texto { color: var(--yb-claro-82); margin-bottom: 0; }
.yb-pie .yb-newsletter__form button { background: var(--yb-marfil); color: var(--yb-monte); }
.yb-pie .yb-newsletter__form button:hover { background: var(--yb-papel); color: var(--yb-monte); }
.yb-pie .yb-newsletter__form input[type="email"] { border-color: transparent; }
.yb-pie__marca .wp-block-yerbateria-datos-contacto { margin-top: 20px; font-size: 14px; }
.yb-pie__marca .wp-block-yerbateria-redes { margin-top: 16px; font-size: 14px; }
.yb-pie .yb-contacto-datos dt { color: rgba(246, 241, 231, 0.6); opacity: 1; }
.yb-pie__info { display: grid; gap: 8px; justify-items: start; }
@media (min-width: 960px) {
	.yb-pie__grid { grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr)); gap: 32px; }
	.yb-pie__info { justify-items: end; text-align: right; }
}
.yb-pie .yb-reclamos { color: var(--yb-claro-82); text-decoration: underline; text-underline-offset: 3px; }
.yb-pie .yb-info-compra { justify-content: inherit; }
.yb-pie .yb-falta-dato { color: rgba(246, 241, 231, 0.7); }

/* ---------- Ajustes v1.1 ---------- */
.yb-grilla .wc-block-components-product-image img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.yb-nota__imagen--vacia a { display: grid; place-items: center; aspect-ratio: 3 / 2; }
.yb-nota__imagen--vacia img { width: 42% !important; height: auto; opacity: 0.55; }
.yb-blog > .yb-recuadro-novedades { max-width: var(--wp--style--global--wide-size, 1240px) !important; margin-top: var(--wp--preset--spacing--60) !important; }
@media (min-width: 960px) {
	.yb-blog .yb-recuadro-novedades .yb-newsletter { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: 4px 48px; align-items: end; }
	.yb-blog .yb-recuadro-novedades .yb-newsletter__titulo, .yb-blog .yb-recuadro-novedades .yb-newsletter__texto { grid-column: 1; }
	.yb-blog .yb-recuadro-novedades .yb-newsletter__form { grid-column: 2; grid-row: 1 / span 2; }
	.yb-blog .yb-recuadro-novedades .yb-newsletter__aviso { grid-column: 2; grid-row: 1; }
	.yb-blog .yb-recuadro-novedades .yb-newsletter__texto { margin-bottom: 0; }
}
.yb-recuadro-novedades { padding: clamp(24px, 4vw, 40px); }
.yb-perfil__datos em { font-family: var(--yb-serif); color: var(--yb-musgo); }
:root .yb-pagina > .yb-pagina__titulo { margin-bottom: var(--wp--preset--spacing--30); }

/* =====================================================================
   v1.3 — Herbario
   ===================================================================== */

:root :is(.yb-herbario__cabecera, .yb-yuyo, .yb-yuyo__texto, .yb-yuyo-single__grid, .yb-yuyo-single__texto,
	.yb-herbario__pie, .yb-yuyo-single__aviso, .yb-yuyo-single__productos) > * { margin-block: 0; }

.yb-herbario { padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60); }
.yb-herbario__cabecera .yb-bajada { max-width: 38rem; }
.yb-herbario__nota { margin-top: 10px !important; font-size: 14px; color: var(--yb-musgo); }
.yb-herbario__nota a { color: inherit; text-decoration-color: var(--yb-arena); text-underline-offset: 3px; }
.yb-herbario__nota a:hover { text-decoration-color: currentColor; }
.yb-herbario__cabecera .yb-chips { margin-top: 24px !important; }
.yb-migas { font-size: 13px; font-weight: 500; letter-spacing: 0.01em; margin-bottom: 10px !important; }
.yb-migas a { color: var(--yb-tierra); text-decoration: none; }
.yb-migas a::before { content: "← "; }
.yb-migas a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* Grilla y tarjetas: en el teléfono, una lista con la foto a la izquierda. */
.yb-herbario-grilla .wp-block-post-template { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 0 !important; }
.yb-yuyo {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
	padding: 16px 0;
	border-top: 1px solid var(--yb-arena);
}
.yb-herbario-grilla .wp-block-post:last-child .yb-yuyo { border-bottom: 1px solid var(--yb-arena); }
.yb-yuyo__imagen { margin: 0 !important; padding: 6px; background: var(--yb-papel); }
.yb-yuyo__imagen img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.yb-yuyo__titulo { font-size: 1.375rem !important; line-height: 1.15; }
.yb-yuyo__titulo a { text-decoration: none; }
.yb-yuyo__titulo a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.yb-yuyo__cientifico { margin-top: 2px !important; font-family: var(--yb-serif); font-size: 15px; color: var(--yb-musgo); }
.yb-yuyo__cientifico em { font-style: italic; }
.yb-yuyo__extracto { margin-top: 8px !important; font-size: 14.5px; line-height: 1.5; color: var(--yb-texto-suave); }
.yb-yuyo__extracto p { margin: 0; }
.yb-yuyo__extracto .wp-block-post-excerpt__more-link { display: none; }
.yb-yuyo__sabores { margin-top: 8px !important; font-size: 12.5px; color: var(--yb-musgo); }
.yb-yuyo__sabores a, .yb-yuyo-single__sabores a { color: inherit; text-decoration: none; }
.yb-yuyo__sabores a:hover, .yb-yuyo-single__sabores a:hover { color: var(--yb-tinta); text-decoration: underline; text-underline-offset: 3px; }

@media (min-width: 600px) {
	.yb-herbario-grilla .wp-block-post-template { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 48px 28px !important; }
	.yb-yuyo { display: flex; flex-direction: column; gap: 0; padding: 0; border: 0; }
	.yb-herbario-grilla .wp-block-post:last-child .yb-yuyo { border-bottom: 0; }
	.yb-yuyo__imagen { padding: 12px; margin-bottom: 16px !important; }
	.yb-yuyo__titulo { font-size: clamp(1.375rem, 1.25rem + 0.4vw, 1.625rem) !important; }
}
@media (min-width: 960px) {
	.yb-herbario-grilla .wp-block-post-template { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 56px 32px !important; }
}
.yb-herbario-grilla { margin-top: 8px !important; }

/* Sin foto: dibujo de una rama sobre papel. */
.yb-yuyo__imagen--vacia, .yb-yuyo-single__foto--vacia { position: relative; }
.yb-yuyo__imagen--vacia a, .yb-yuyo-single__dibujo { display: grid; place-items: center; aspect-ratio: 4 / 5; }
.yb-yuyo__imagen--vacia img { width: 64% !important; height: auto !important; aspect-ratio: auto !important; opacity: 0.6; }
.yb-yuyo-single__dibujo img { width: 56%; height: auto; opacity: 0.6; }
.yb-falta-foto {
	position: absolute;
	top: 10px;
	left: 10px;
	padding: 4px 8px;
	border: 1px dashed var(--yb-tierra);
	border-radius: var(--yb-radio);
	background: var(--yb-etiqueta);
	color: var(--yb-tierra);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
}
@media (max-width: 599px) {
	.yb-yuyo .yb-falta-foto { top: 4px; left: 4px; padding: 2px 4px; font-size: 9.5px; }
}

/* Ficha de una hierba. */
.yb-yuyo-single { padding-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--60); }
.yb-yuyo-single__grid { display: grid; gap: 32px; }
.yb-yuyo-single__foto { margin: 0 !important; }
.yb-yuyo-single__foto img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.yb-yuyo-single__lamina { align-self: start; }
.yb-yuyo-single__lamina > .yb-ficha { width: min(320px, 86%); }
.yb-ficha__credito { margin-top: 8px !important; padding-top: 7px; border-top: 1px solid var(--yb-arena); font-size: 11px; color: var(--yb-musgo); }
.yb-yuyo-single__titulo { font-size: clamp(2.5rem, 1.8rem + 3vw, 4rem) !important; line-height: 1.02; letter-spacing: -0.01em; }
.yb-yuyo-single__cientifico { margin-top: 8px !important; font-family: var(--yb-serif); font-size: 1.375rem; color: var(--yb-musgo); }
.yb-yuyo-single__sabores { margin-top: 14px !important; font-size: 14px; color: var(--yb-musgo); }
.yb-yuyo-single__bajada { margin-top: 22px !important; max-width: none; }
.yb-yuyo-single__bajada p { margin: 0; }
.yb-yuyo-single__contenido { margin-top: 28px !important; font-size: 17px; line-height: 1.65; }
.yb-yuyo-single__contenido > * { margin-block: 0 !important; }
.yb-yuyo-single__contenido > h2 {
	margin-top: 26px !important;
	margin-bottom: 6px !important;
	padding-top: 18px;
	border-top: 1px solid var(--yb-arena);
	font-family: var(--yb-sans);
	font-size: 14px !important;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: var(--yb-monte);
}
.yb-yuyo-single__contenido > h2:first-child { margin-top: 0 !important; }
.yb-yuyo-nota {
	margin-top: 22px !important;
	padding: 14px 16px;
	background: var(--yb-papel);
	font-size: 15px;
	line-height: 1.55;
}
@media (min-width: 960px) {
	.yb-yuyo-single__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 72px; align-items: start; }
	.yb-yuyo-single__texto { padding-top: 16px; }
	.yb-yuyo-single__lamina { position: sticky; top: calc(var(--yb-cabecera) + 24px); }
}
.yb-yuyo-single__aviso { margin-top: var(--wp--preset--spacing--50) !important; }
.yb-yuyo-single__productos:not(:has(*)) { display: none; }
.yb-yuyo-single__productos { margin-top: var(--wp--preset--spacing--50) !important; }
.yb-herbario__pie { margin-top: var(--wp--preset--spacing--60) !important; }

/* Aviso, productos y enlaces desde el producto. */
.yb-aviso-herbario {
	display: grid;
	gap: 6px;
	padding: 20px 22px;
	border: 1px solid var(--yb-arena);
	border-left: 3px solid var(--yb-laton);
	background: var(--yb-etiqueta);
	font-size: 14.5px;
	line-height: 1.6;
	color: var(--yb-texto-suave);
	scroll-margin-top: calc(var(--yb-cabecera) + 24px);
}
.yb-aviso-herbario > p { margin: 0; }
.yb-aviso-herbario__titulo { font-weight: 600; color: var(--yb-tinta); }
.yb-aviso-herbario--corto { margin-top: 20px !important; padding: 12px 14px; font-size: 13px; line-height: 1.5; display: block; }
.yb-hierbas-producto { margin-top: 18px !important; font-size: 15px; color: var(--yb-musgo); }
.yb-hierbas-producto a { color: var(--yb-tinta); font-weight: 500; text-decoration-color: var(--yb-arena); text-underline-offset: 4px; }
.yb-hierbas-producto a:hover { text-decoration-color: currentColor; }
.yb-yuyo-productos__cabecera { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 24px; padding-top: 32px; border-top: 1px solid var(--yb-arena); margin-bottom: 24px; }
.yb-yuyo-productos__titulo { margin: 0; font-size: var(--wp--preset--font-size--x-large); }
.yb-yuyo-productos__todos { margin: 0; font-size: 15px; font-weight: 500; }
.yb-yuyo-productos__todos a { color: var(--yb-tinta); text-decoration-color: var(--yb-arena); text-underline-offset: 4px; }
.yb-yuyo-productos__lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 20px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 960px) { .yb-yuyo-productos__lista { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 32px; } }
.yb-yuyo-producto { display: grid; gap: 6px; }
.yb-yuyo-producto__enlace { display: grid; gap: 12px; color: inherit; text-decoration: none; }
.yb-yuyo-producto__imagen { display: block; padding: 10px; background: var(--yb-papel); }
.yb-yuyo-producto__imagen img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.yb-yuyo-producto__nombre { font-family: var(--yb-serif); font-size: 1.25rem; line-height: 1.2; }
.yb-yuyo-producto__enlace:hover .yb-yuyo-producto__nombre { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.yb-yuyo-producto__precio { font-size: 15px; font-weight: 600; }
.yb-yuyo-productos--vacio { padding: 12px 16px; border: 1px dashed var(--yb-arena); color: var(--yb-musgo); font-size: 14px; }

/* =====================================================================
   v1.4 — Idiomas
   ===================================================================== */

/* Barra superior (v1.4.1): redes a la izquierda, la frase al centro y los idiomas
   a la derecha. functions.php (yerbateria_barra_superior) arma siempre estas tres
   zonas, aunque el encabezado esté guardado desde el editor con otra estructura. */
.yb-barra__fila { display: flex; align-items: center; gap: 16px; width: 100%; min-height: var(--yb-barra); margin-block: 0 !important; }
.yb-barra__lado { flex: 1 1 0; min-width: 0; display: flex; align-items: center; }
.yb-barra__idiomas { justify-content: flex-end; }
.yb-barra__centro { flex: 0 1 auto; min-width: 0; text-align: center; }
.yb-barra__centro > *, .yb-barra__lado > * { margin: 0 !important; }
.yb-barra .yb-redes--iconos { margin-left: -7px !important; }
.yb-barra .yb-idiomas-bloque { margin-right: -7px !important; }
/* Opacidad en el enlace (no un color translúcido) para que los trazos que se cruzan no se vean más claros. */
.yb-barra .yb-redes__icono { color: var(--yb-marfil); opacity: 0.82; transition: opacity 0.2s ease, background-color 0.2s ease; }
.yb-barra .yb-redes__icono:hover { opacity: 1; background-color: rgba(246, 241, 231, 0.1); }
.yb-barra .yb-redes__icono--falta { opacity: 0.35; }
/* En el editor la barra se ve con sus bloques tal cual (sin las tres zonas que arma el tema). */
.yb-barra__fila > [data-type="yerbateria/redes"], .yb-barra__fila > [data-type="yerbateria/idiomas"] { flex: 1 1 0; min-width: 0; margin: 0 !important; }
.yb-barra__fila > [data-type="yerbateria/idiomas"] > * { display: flex; justify-content: flex-end; }
.yb-barra__fila > p.yb-barra__texto { flex: 0 1 auto; min-width: 0; margin: 0 !important; }
@media (max-width: 599px) {
	.yb-barra__centro { display: none; }
	.yb-barra__fila--sin-redes .yb-barra__redes { display: none; }
	.yb-barra__fila--sin-redes .yb-barra__centro { display: block; flex: 1 1 auto; text-align: left; }
	.yb-barra__fila--sin-redes .yb-barra__centro p { font-size: 12px; text-align: left !important; }
	.yb-barra .yb-redes--iconos { gap: 4px; }
}

.yb-idiomas { font-family: var(--yb-sans); font-size: 12px; line-height: 1; }
.yb-idiomas ul { margin: 0; padding: 0; list-style: none; }
.yb-idiomas__lista { display: flex; gap: 2px; }
.yb-idiomas__lista a {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 7px;
	color: var(--yb-claro-82);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-decoration: none;
	text-underline-offset: 5px;
	text-decoration-thickness: 1px;
}
.yb-idiomas__lista a:hover { color: var(--yb-marfil); text-decoration: underline; }
.yb-idiomas__lista a[aria-current] { color: var(--yb-marfil); text-decoration: underline; text-decoration-color: var(--yb-laton); }
.yb-idiomas__menu { display: none; position: relative; }
.yb-idiomas__menu > summary {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 32px;
	padding: 0 4px 0 8px;
	color: var(--yb-marfil);
	font-weight: 600;
	letter-spacing: 0.06em;
	cursor: pointer;
	list-style: none;
}
.yb-idiomas__menu > summary::-webkit-details-marker { display: none; }
.yb-idiomas__menu > summary::after {
	content: "";
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg);
}
.yb-idiomas__menu[open] > summary::after { margin-top: 3px; transform: rotate(-135deg); }
.yb-idiomas__menu > ul {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	z-index: 50;
	min-width: 190px;
	padding: 6px 0;
	background: var(--yb-marfil);
	border: 1px solid var(--yb-arena);
	border-radius: var(--yb-radio);
	box-shadow: 0 12px 28px rgba(28, 33, 30, 0.12);
}
.yb-idiomas__menu a { display: flex; align-items: center; gap: 12px; padding: 11px 16px; color: var(--yb-tinta); font-size: 15px; text-decoration: none; }
.yb-idiomas__menu a:hover { background: var(--yb-papel); }
.yb-idiomas__menu a[aria-current] { font-weight: 600; box-shadow: inset 3px 0 0 var(--yb-laton); }
.yb-idiomas__codigo { min-width: 22px; font-size: 12px; font-weight: 600; letter-spacing: 0.06em; color: var(--yb-musgo); }
@media (max-width: 599px) {
	.yb-idiomas__lista { display: none; }
	.yb-idiomas__menu { display: block; }
}

/* Páginas legales traducidas: vale la versión en castellano. */
.yb-nota-traduccion { margin-bottom: 28px !important; padding: 12px 16px; border-left: 3px solid var(--yb-laton); background: var(--yb-etiqueta); font-size: 14.5px; color: var(--yb-texto-suave); }
.yb-nota-traduccion a { color: var(--yb-tinta); text-underline-offset: 3px; }
