/* =====================================================================
 * Frutos de la Huerta – Estilos de widgets Elementor
 * Todo está acotado a .frutos-huerta-scope para no chocar con el tema.
 * ===================================================================== */

.frutos-huerta-scope { --bg: var(--wp--preset--color--base, #ffffff);
	--surface: var(--wp--preset--color--base, #ffffff);
	--block: var(--wp--preset--color--base-2, #e9ecdd);
	--ink: var(--wp--preset--color--contrast, #1e2a1c);
	--muted: #617059;
	--leaf: #3a7d44;
	--olive: #56654a;
	--citrus: #e0a21a;
	--line: #d9dccb;
	--on-dark: #f4f6ec;
	--dark: #2d4029;
	--head: "Bricolage Grotesque", "Trebuchet MS", system-ui, sans-serif;
	--body: "Figtree", "Segoe UI", system-ui, sans-serif; }
.frutos-huerta-scope .hero,
.frutos-huerta-scope .perks,
.frutos-huerta-scope .deal,
.frutos-huerta-scope .b2b,
.frutos-huerta-scope .basket,
.frutos-huerta-scope .posts,
.frutos-huerta-scope .frutos-categories,
.frutos-huerta-scope .frutos-products,
.frutos-huerta-scope .frutos-posts,
.frutos-huerta-scope .frutos-basket-section { color: var(--ink);
	font: 400 1rem/1.65 var(--body); }
.frutos-huerta-scope .hero *,
.frutos-huerta-scope .perks *,
.frutos-huerta-scope .deal *,
.frutos-huerta-scope .b2b *,
.frutos-huerta-scope .frutos-categories *,
.frutos-huerta-scope .frutos-products *,
.frutos-huerta-scope .frutos-posts * { box-sizing: border-box; }
.frutos-huerta-scope .hero a,
.frutos-huerta-scope .perks a,
.frutos-huerta-scope .deal a,
.frutos-huerta-scope .b2b a,
.frutos-huerta-scope .frutos-categories a,
.frutos-huerta-scope .frutos-products a,
.frutos-huerta-scope .frutos-posts a { color: inherit;
	text-decoration: none; }
.frutos-huerta-scope .hero h1,
.frutos-huerta-scope .hero h2,
.frutos-huerta-scope .hero h3,
.frutos-huerta-scope .deal h2,
.frutos-huerta-scope .b2b h2,
.frutos-huerta-scope .frutos-categories h2,
.frutos-huerta-scope .frutos-products h2,
.frutos-huerta-scope .frutos-posts h2,
.frutos-huerta-scope .basket .txt h2 { font-family: var(--head);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -.02em;
	margin: 0 0 20px; }
.frutos-huerta-scope .frutos-categories h2,
.frutos-huerta-scope .frutos-products h2,
.frutos-huerta-scope .frutos-posts h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); }
.frutos-huerta-scope .frutos-categories,
.frutos-huerta-scope .frutos-products,
.frutos-huerta-scope .frutos-posts,
.frutos-huerta-scope .frutos-basket-section { padding: 80px 0; }
.frutos-huerta-scope .frutos-products { padding-top: 0; }
.frutos-huerta-scope .wrap { max-width: 1140px; margin: 0 auto; padding: 0 24px; }
.frutos-huerta-scope .muted { color: var(--muted); }
.frutos-huerta-scope .btn { display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 46px;
	padding: 0 22px;
	border-radius: 6px;
	font: 600 .95rem var(--body);
	background: var(--ink);
	color: var(--bg) !important;
	border: 1.5px solid var(--ink);
	cursor: pointer;
	transition: background .15s, color .15s; }
.frutos-huerta-scope .btn:hover { background: var(--leaf); border-color: var(--leaf); color: #fff !important; }
.frutos-huerta-scope .btn.line { background: transparent; color: var(--ink) !important; }
.frutos-huerta-scope .btn.line:hover { background: var(--ink); border-color: var(--ink); color: var(--bg) !important; }
.frutos-huerta-scope .link { display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	border-bottom: 1.5px solid currentColor;
	padding-bottom: 2px; }
.frutos-huerta-scope .i { width: 1.25em; height: 1.25em; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.frutos-huerta-scope svg.i use,
.frutos-huerta-scope svg use { pointer-events: none; }
.frutos-huerta-scope .hero { padding: 64px 0 80px; }
.frutos-huerta-scope .hero .wrap { display: grid; grid-template-columns: 1.15fr .85fr; gap: 56px; align-items: center; }
.frutos-huerta-scope .hero h1 { font-size: clamp(2.5rem, 5.6vw, 4.4rem); margin-bottom: 20px; }
.frutos-huerta-scope .hero p { font-size: 1.12rem; max-width: 44ch; margin-bottom: 30px; }
.frutos-huerta-scope .hero .cta { display: flex; gap: 12px; flex-wrap: wrap; }
.frutos-huerta-scope .hero .art { background: var(--block);
	border-radius: 10px;
	aspect-ratio: 1 / 1;
	display: grid;
	place-items: center;
	position: relative;
	color: var(--olive);
	overflow: hidden; }
.frutos-huerta-scope .hero .art img { width: 78%; height: 78%; object-fit: contain; }
.frutos-huerta-scope .hero .art .cap { position: absolute; left: 18px; bottom: 16px; right: 18px;
	display: flex; justify-content: space-between; align-items: baseline;
	font-size: .9rem; color: var(--ink); }
.frutos-huerta-scope .hero .art .cap b { font: 700 1.3rem var(--head); }
.frutos-huerta-scope .perks { border-block: 1px solid var(--line); }
.frutos-huerta-scope .perks .wrap { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; padding-block: 28px; }
.frutos-huerta-scope .perk { display: flex; gap: 14px; align-items: flex-start; }
.frutos-huerta-scope .perk .i,
.frutos-huerta-scope .perk svg { width: 30px; height: 30px; color: var(--leaf); flex: none; }
.frutos-huerta-scope .perk b { display: block; font-weight: 600; }
.frutos-huerta-scope .perk span { font-size: .9rem; color: var(--muted); line-height: 1.45; display: block; }
.frutos-huerta-scope .frutos-categories .split { display: grid; grid-template-columns: .8fr 1.2fr; gap: 56px; }
.frutos-huerta-scope .frutos-categories .list a { display: flex; align-items: center; justify-content: space-between; gap: 16px;
	padding: 20px 4px; border-bottom: 1px solid var(--line);
	font: 700 1.5rem var(--head);
	transition: padding .2s, color .2s; }
.frutos-huerta-scope .frutos-categories .list a:first-child { border-top: 1px solid var(--line); }
.frutos-huerta-scope .frutos-categories .list a small { font: 400 .9rem var(--body); color: var(--muted); margin-left: auto; }
.frutos-huerta-scope .frutos-categories .list a:hover { color: var(--leaf); padding-left: 14px; }
.frutos-huerta-scope .frutos-products .head { display: flex; justify-content: space-between; align-items: flex-end;
	gap: 16px; flex-wrap: wrap; margin-bottom: 32px; }
.frutos-huerta-scope .frutos-products .grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px 20px; }
.frutos-huerta-scope .prod .ph { aspect-ratio: 4 / 5; border-radius: 8px; background: var(--block);
	display: grid; place-items: center; color: var(--olive);
	margin-bottom: 14px; position: relative; overflow: hidden; }
.frutos-huerta-scope .prod .ph img { width: 100%; height: 100%; object-fit: cover; }
.frutos-huerta-scope .prod .ph em { position: absolute; left: 12px; top: 12px; font: 600 .78rem var(--body);
	font-style: normal; background: var(--citrus); color: #2b2000;
	padding: 2px 9px; border-radius: 4px; z-index: 2; }
.frutos-huerta-scope .prod h3 { font-size: 1.05rem; font-family: var(--body); font-weight: 600; letter-spacing: 0; margin: 0 0 6px; }
.frutos-huerta-scope .prod .meta { display: flex; justify-content: space-between; align-items: baseline; margin: 2px 0 12px; color: var(--muted); font-size: .92rem; }
.frutos-huerta-scope .prod .meta b { color: var(--ink); font-weight: 600; font-size: 1.05rem; }
.frutos-huerta-scope .prod .buy { display: flex; gap: 8px; }
.frutos-huerta-scope .prod .add { flex: 1; justify-content: center; min-height: 42px; padding: 0 12px;
	background: transparent; color: var(--ink) !important; font-size: .9rem; }
.frutos-huerta-scope .prod .add:hover { background: var(--leaf); border-color: var(--leaf); color: #fff !important; }
.frutos-huerta-scope .deal { background: var(--dark); color: var(--on-dark); overflow: hidden; padding: 72px 0; }
.frutos-huerta-scope .deal .wrap { display: grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items: center; }
.frutos-huerta-scope .deal h2 { font-size: clamp(2rem, 4.2vw, 3.2rem); margin-bottom: 14px; }
.frutos-huerta-scope .deal p { opacity: .85; max-width: 46ch; margin-bottom: 26px; }
.frutos-huerta-scope .deal .btn { background: var(--citrus); border-color: var(--citrus); color: #2b2000 !important; }
.frutos-huerta-scope .deal .btn:hover { background: #f6c553; border-color: #f6c553; color: #2b2000 !important; }
.frutos-huerta-scope .deal svg { width: 100%; max-width: 340px; justify-self: center; fill: none; stroke: var(--citrus); stroke-width: 1.2; stroke-linecap: round; opacity: .9; }
.frutos-huerta-scope .b2b .wrap { display: grid; grid-template-columns: 1.1fr .9fr; gap: 64px; align-items: center; }
.frutos-huerta-scope .b2b ul { list-style: none; padding: 0; margin: 22px 0 30px; display: grid; gap: 12px; }
.frutos-huerta-scope .b2b li { display: flex; gap: 12px; align-items: center; }
.frutos-huerta-scope .b2b li svg { color: var(--leaf); flex: none; }
.frutos-huerta-scope .b2b blockquote { border-left: 3px solid var(--citrus); padding: 4px 0 4px 24px; margin: 0; }
.frutos-huerta-scope .b2b blockquote p { font: 500 1.35rem/1.4 var(--head); letter-spacing: -.01em; margin-bottom: 14px; }
.frutos-huerta-scope .b2b blockquote small { color: var(--muted); font-size: .92rem; }
.frutos-huerta-scope .frutos-basket-section .basket { display: grid; grid-template-columns: .9fr 1.1fr;
	border: 1px solid var(--line); border-radius: 10px; overflow: hidden;
	background: var(--surface); }
.frutos-huerta-scope .frutos-basket-section .art { background: var(--block); display: grid; place-items: center;
	min-height: 300px; overflow: hidden; }
.frutos-huerta-scope .frutos-basket-section .art img { width: 100%; height: 100%; object-fit: cover; }
.frutos-huerta-scope .frutos-basket-section .txt { padding: 44px; display: flex; flex-direction: column; gap: 14px; justify-content: center; align-items: flex-start; }
.frutos-huerta-scope .frutos-basket-section .price { font: 700 2.4rem var(--head); color: var(--leaf); }
.frutos-huerta-scope .frutos-basket-section .price small { font: 400 1rem var(--body); color: var(--muted); }
.frutos-huerta-scope .frutos-posts .head { display: flex; justify-content: space-between; align-items: flex-end;
	gap: 16px; flex-wrap: wrap; margin-bottom: 32px; }
.frutos-huerta-scope .frutos-posts .posts a { display: grid; grid-template-columns: 140px 1fr auto;
	gap: 24px; align-items: center; padding: 24px 4px;
	border-bottom: 1px solid var(--line); }
.frutos-huerta-scope .frutos-posts .posts a:first-child { border-top: 1px solid var(--line); }
.frutos-huerta-scope .frutos-posts .posts small { color: var(--muted); }
.frutos-huerta-scope .frutos-posts .posts h3 { font-size: 1.25rem; margin: 0; }
.frutos-huerta-scope .frutos-posts .posts a:hover h3 { color: var(--leaf); }
.frutos-huerta-scope .frutos-posts .posts a:hover svg.i { transform: translateX(4px); }
.frutos-huerta-scope .frutos-posts .posts svg.i { transition: transform .2s; }
@media (max-width: 960px) {
	.frutos-huerta-scope .hero .wrap,
	.frutos-huerta-scope .deal .wrap,
	.frutos-huerta-scope .b2b .wrap,
	.frutos-huerta-scope .frutos-basket-section .basket,
	.frutos-huerta-scope .frutos-categories .split { grid-template-columns: 1fr; }
	.frutos-huerta-scope .frutos-categories .split { gap: 28px; }
	.frutos-huerta-scope .perks .wrap { grid-template-columns: 1fr 1fr; }
	.frutos-huerta-scope .frutos-products .grid { grid-template-columns: repeat(2, 1fr); }
	.frutos-huerta-scope .frutos-posts .posts a { grid-template-columns: 1fr auto; }
	.frutos-huerta-scope .frutos-posts .posts small { grid-column: 1 / -1; }
	.frutos-huerta-scope .frutos-categories,
	.frutos-huerta-scope .frutos-products,
	.frutos-huerta-scope .frutos-posts,
	.frutos-huerta-scope .frutos-basket-section { padding: 56px 0; }
	.frutos-huerta-scope .deal svg { max-width: 220px; }
	.frutos-huerta-scope .deal { padding: 56px 0; }
}
@media (max-width: 520px) {
	.frutos-huerta-scope .perks .wrap { grid-template-columns: 1fr; }
	.frutos-huerta-scope .frutos-basket-section .txt { padding: 28px; }
	.frutos-huerta-scope .prod .buy { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
	.frutos-huerta-scope * { transition: none !important; scroll-behavior: auto !important; }
}
.frutos-huerta-scope .prod .buy { flex-wrap: wrap; }
.frutos-huerta-scope .prod .qty { display: flex; align-items: center; border: 1.5px solid var(--line); border-radius: 6px; background: var(--surface); }
.frutos-huerta-scope .prod .qty button { width: 36px; height: 42px; padding: 0; border: 0; background: none; color: var(--ink); font: 500 1.2rem var(--body); cursor: pointer; border-radius: 6px; }
.frutos-huerta-scope .prod .qty button:hover:not(:disabled) { background: var(--block); }
.frutos-huerta-scope .prod .qty button:disabled { opacity: .3; cursor: default; }
.frutos-huerta-scope .prod .qty output { min-width: 26px; text-align: center; font-weight: 600; }
.frutos-huerta-scope .prod .add.is-disabled { opacity: .5; pointer-events: none; }
.frutos-huerta-scope .prod .add.loading { opacity: .6; }
.frutos-huerta-scope .prod .added_to_cart { flex-basis: 100%; text-align: center; font-size: .85rem; font-weight: 600; text-decoration: underline; }
.frutos-huerta-scope .perk .fh-custom-icon { fill: currentColor; stroke: none; font-size: 26px; line-height: 30px; text-align: center; }
@media (max-width: 520px) {
	.frutos-huerta-scope .prod .qty { width: 100%; justify-content: space-between; }
	.frutos-huerta-scope .prod .add { flex-basis: 100%; }
}
