/*
 * GALLO 2026 — global header/footer refresh
 *
 * Isolated, reversible layer over the legacy theme. No structural navigation,
 * WPML, search, shopping-list or popup behaviour is replaced here.
 * DM Sans is self-hosted below for the 2026 layer. Legacy theme typography is
 * intentionally left in assets/css/styles.css and remains outside this scope.
 */

/* DM Sans variable webfonts (SIL Open Font License 1.1).
 * Source: Google Fonts, family version 17. The accompanying licence is kept at
 * assets/fonts/dm-sans/OFL.txt. Latin and Latin Extended cover every current
 * WordPress market while allowing the browser to request only the subset used. */
@font-face {
	font-family: "DM Sans";
	font-style: normal;
	font-weight: 100 1000;
	font-display: swap;
	src: url("../fonts/dm-sans/dm-sans-latin-ext-variable.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "DM Sans";
	font-style: normal;
	font-weight: 100 1000;
	font-display: swap;
	src: url("../fonts/dm-sans/dm-sans-latin-variable.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "DM Sans";
	font-style: italic;
	font-weight: 100 1000;
	font-display: swap;
	src: url("../fonts/dm-sans/dm-sans-latin-ext-italic-variable.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "DM Sans";
	font-style: italic;
	font-weight: 100 1000;
	font-display: swap;
	src: url("../fonts/dm-sans/dm-sans-latin-italic-variable.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--gallo-2026-blue: #152c62;
	--gallo-2026-navy: #001528;
	--gallo-2026-gold: #ad8037;
	--gallo-2026-yellow: #fbe882;
	--gallo-2026-line: #dfe4ea;
	--gallo-2026-divider: #c8d1dc;
	--gallo-2026-muted: #667080;
	--gallo-2026-brown: #2b1307;
	--gallo-2026-white: #ffffff;
	/* International/global system is the safe default for every non-PT market. */
	--gallo-2026-market-primary: #232e0a;
	--gallo-2026-market-accent: #86ab29;
	--gallo-2026-market-highlight: #dbf1a4;
	--gallo-2026-title-color: #86ab29;
	--gallo-2026-body-color: #2b1307;
	--gallo-2026-detail-color: #ad8037;
	--gallo-2026-ui-font: "DM Sans", Arial, sans-serif;
	--gallo-2026-title-font: "DM Sans", Arial, sans-serif;
	--gallo-2026-highlight-font: "DM Sans", Arial, sans-serif;
	/* Official lockups include generous internal canvas margins. These values
	 * restore the approved visible scale without editing the client assets or
	 * changing the dimensions of Header and Footer containers. */
	--gallo-2026-header-logo-scale: 1.14;
	--gallo-2026-header-logo-surface-size: 58px;
	--gallo-2026-footer-logo-scale: 1.562;
}

/* Typography boundary: the webfont is available globally because the renewed
 * Header/Footer also appear on legacy pages, but it is only applied to those
 * shared 2026 components and to the page scopes that were actually refreshed. */
.header-section,
.mobile-menu,
.language-menu-popup,
.search_popup,
.search_popup_main,
.search-recipes-bar-popup,
.footer-section,
body.home .site-content,
body.page-template-product .site-content,
body.page-template-inc-product-php .site-content,
body.single-produto .site-content,
body.page-template-recipe_listing .site-content,
body.tax-receitas_categories .site-content,
body.single-receita .site-content,
body.tax-produto_category .site-content,
body.page-template-template-partslista-supermercado-php .site-content {
	font-family: var(--gallo-2026-ui-font);
	font-synthesis: none;
}

/* The legacy stylesheet assigns Fira/Georgia directly to common text tags, so
 * inheritance alone is not enough. This boundary deliberately names only the
 * refreshed page templates; pages outside the 2026 programme keep their
 * original typography. Icon elements and third-party symbol fonts are not
 * included. */
:is(
	body.home,
	body.page-template-product,
	body.page-template-inc-product-php,
	body.single-produto,
	body.page-template-recipe_listing,
	body.tax-receitas_categories,
	body.single-receita,
	body.tax-produto_category,
	body.page-template-template-partslista-supermercado-php
) .site-content :is(h1, h2, h3, h4, h5, h6, p, a, button, input, select, textarea, label, li, dt, dd, th, td, small, strong, em) {
	font-family: var(--gallo-2026-ui-font);
}

/* Renewed shell components remain DM Sans even when they are rendered around
 * an intentionally legacy page. These selectors are component-specific and
 * do not change the page content below the shell. */
.header-search,
.header-search input[type="text"],
.country-language-dropdown h5,
.mobile-menu-left .mega-sub-menu li a,
.mobile-menu-left .mega-sub-menu .menu-item a.menu-image-title-below,
.mobile-menu-left .mega-sub-menu .menu-productsubmenu-container a,
.mobile-menu-left .mega-sub-menu .mega-sub-menu > li div a,
.search_popup_main .serch-popup-top-text p,
.search_popup_main .search-field,
.search_popup_main .search-data h2,
.search_popup_main .search-data h6,
.search_popup_main .search-data p,
.search_popup_main .search-data a,
.wp_autosearch_suggestions a,
.wp_autosearch_suggestions .wp_autosearch_category,
.popup-recipe-added p,
.popup-link-copied p {
	font-family: var(--gallo-2026-ui-font);
	font-synthesis: none;
}

.search_popup_main .search-field::placeholder {
	font-family: var(--gallo-2026-ui-font) !important;
}

/* The Shopping List predates the common V3 stylesheet and still carries
 * explicit legacy families. Keep the existing layout/behaviour and replace
 * typography only inside its translated WordPress template. */
body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text h1,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-title {
	font-family: var(--gallo-2026-title-font);
	font-style: normal;
	font-weight: 800;
}

body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-subtitle,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-description-text,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-share-title,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-share-item p,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-item-context-menu p,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-item-category,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-item-title,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-item-ingredients .item-gallo-ingredient,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-item-ingredients p {
	font-family: var(--gallo-2026-ui-font);
}

body.page-template-template-partslista-supermercado-php .recipes-grocery-list-subtitle,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-share-title {
	font-weight: 500;
}

body.page-template-template-partslista-supermercado-php .recipes-grocery-list-item-category,
body.page-template-template-partslista-supermercado-php .recipes-grocery-list-item-title {
	font-weight: 700;
}

/* ========================================================================== */
/* Product category archive 2026 V3                                           */
/*                                                                            */
/* Scoped continuation of the Product listing/detail system. Taxonomy, query, */
/* WPML, ACF and PALOP remain controlled by the archive template and WordPress.*/
/* ========================================================================== */

body.tax-produto_category {
	--gallo-product-category-paper: #ffffff;
	--gallo-product-category-cream: #f8f5ed;
	--gallo-product-category-line: #e1dacb;
	overflow-x: hidden;
	background: var(--gallo-product-category-paper);
}

/* The archive opens on a split hero. Preserve the normal transparent Header
 * until the existing legacy scroll handler applies `.fixed`. */
body.tax-produto_category .header-section-inner:not(.fixed) {
	border-bottom-color: rgba(255, 255, 255, .22);
	background: linear-gradient(180deg, rgba(8, 17, 31, .5), rgba(8, 17, 31, .06));
	box-shadow: none;
}

body.tax-produto_category .header-section-inner:not(.fixed) .logo a {
	height: auto;
	border-color: rgba(255, 255, 255, .24);
	background: none;
}

body.tax-produto_category .header-section-inner:not(.fixed) .logo img {
	display: inline;
	opacity: 1;
}

body.tax-produto_category .header-section-inner:not(.fixed) .menu-ic span,
body.tax-produto_category .header-section-inner:not(.fixed) .menu-ic span::before,
body.tax-produto_category .header-section-inner:not(.fixed) .menu-ic span::after {
	background: var(--gallo-2026-white);
}

body.tax-produto_category .header-section-inner:not(.fixed) .header-nav ul li a,
body.tax-produto_category .header-section-inner:not(.fixed) .header-language,
body.tax-produto_category .header-section-inner:not(.fixed) .header-language a,
body.tax-produto_category .header-section-inner:not(.fixed) .header-lista-de-compras a {
	color: var(--gallo-2026-white);
}

body.tax-produto_category .header-section-inner:not(.fixed) .header-nav ul li a::after,
body.tax-produto_category .header-section-inner:not(.fixed) .header-language a::after,
body.tax-produto_category .header-section-inner:not(.fixed) .header-lista-de-compras a::after {
	background: var(--gallo-2026-white);
}

body.tax-produto_category .header-section-inner:not(.fixed) .header-language a::before {
	background-image: url("../images/angle-left-white.svg");
	background-size: contain;
}

body.tax-produto_category .header-section-inner:not(.fixed) .lang-img::before {
	background-image: url("../images/lang-map.svg");
}

body.tax-produto_category .header-section-inner:not(.fixed) .header-lista-de-compras::before,
body.tax-produto_category .header-section-inner:not(.fixed) .header-search::before {
	background: rgba(255, 255, 255, .5);
}

body.tax-produto_category .header-section-inner:not(.fixed) .header-lista-de-compras svg path {
	stroke: var(--gallo-2026-white);
}

body.tax-produto_category .header-section-inner:not(.fixed) .header-search,
body.tax-produto_category .header-section-inner:not(.fixed) .header-search input[type="text"] {
	color: var(--gallo-2026-white);
}

body.tax-produto_category .header-section-inner:not(.fixed) .header-search::after,
body.tax-produto_category .header-section-inner:not(.fixed) .header-search input[type="submit"] {
	background-image: url("../images/search-white.svg");
	background-size: contain;
}

body.tax-produto_category .gallo-2026-product-category-hero {
	position: relative;
	min-height: 590px;
	overflow: hidden;
	color: var(--gallo-2026-white);
	background: var(--gallo-2026-market-primary);
}

body.tax-produto_category .gallo-2026-product-category-hero::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 52%;
	background: linear-gradient(135deg, #f6f1e5, #fff 74%);
	content: "";
}

body.tax-produto_category .gallo-2026-product-category-hero-inner {
	position: relative;
	z-index: 1;
	display: grid;
	width: min(1380px, 100%);
	min-height: 590px;
	margin: 0 auto;
	padding: 100px 48px 0;
	grid-template-columns: .92fr 1.08fr;
}

body.tax-produto_category .gallo-2026-product-category-copy {
	display: flex;
	max-width: 560px;
	padding: 86px 58px 54px 0;
	justify-content: center;
	flex-direction: column;
}

body.tax-produto_category .gallo-2026-product-category-eyebrow,
body.tax-produto_category .gallo-2026-product-category-heading > span {
	display: block;
	margin: 0 0 18px;
	color: var(--gallo-2026-market-highlight);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 750;
	line-height: 1.25;
	letter-spacing: .19em;
	text-transform: uppercase;
}

body.tax-produto_category .gallo-2026-product-category-copy h1 {
	margin: 0;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(76px, 7vw, 112px);
	font-weight: 800;
	line-height: .88;
	letter-spacing: -.035em;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

body.tax-produto_category .gallo-2026-product-category-description {
	max-width: 440px;
	margin: 25px 0 0;
	color: rgba(255, 255, 255, .82);
	font-family: var(--gallo-2026-highlight-font);
	font-size: clamp(22px, 2vw, 31px);
	font-weight: 500;
	line-height: 1.14;
}

body.tax-produto_category .gallo-2026-product-category-description > * {
	margin: 0;
	font-family: inherit;
	font-weight: inherit;
}

body.tax-produto_category .gallo-2026-product-category-back {
	display: inline-flex;
	width: fit-content;
	margin-top: 44px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(255, 255, 255, .55);
	align-items: center;
	gap: 12px;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
}

body.tax-produto_category .gallo-2026-product-category-back::before {
	color: var(--gallo-2026-market-highlight);
	content: "\2190";
	font-size: 17px;
}

body.tax-produto_category .gallo-2026-product-category-media {
	position: relative;
	z-index: 1;
	display: grid;
	min-width: 0;
	place-items: end center;
}

body.tax-produto_category .gallo-2026-product-category-media::after {
	position: absolute;
	right: 3%;
	bottom: 8%;
	width: 66%;
	height: 16%;
	border-radius: 50%;
	background: rgba(79, 57, 22, .13);
	filter: blur(22px);
	content: "";
}

body.tax-produto_category .gallo-2026-product-category-orbit {
	position: absolute;
	top: 51%;
	left: 50%;
	width: min(34vw, 480px);
	aspect-ratio: 1;
	border: 1px solid rgba(173, 128, 55, .25);
	border-radius: 50%;
	transform: translate(-50%, -48%);
}

body.tax-produto_category .gallo-2026-product-category-orbit::after {
	position: absolute;
	inset: 9%;
	border: 1px solid rgba(173, 128, 55, .12);
	border-radius: 50%;
	content: "";
}

body.tax-produto_category .gallo-2026-product-category-media img {
	position: relative;
	z-index: 2;
	display: block;
	width: min(720px, 100%);
	max-height: 500px;
	object-fit: contain;
	object-position: center bottom;
}

body.tax-produto_category .gallo-2026-product-category-media .gallo-2026-product-category-fallback-icon {
	width: min(230px, 42%);
	height: min(230px, 42%);
	margin: auto;
	object-fit: contain;
	filter: sepia(1) saturate(.55) brightness(.74);
}

body.tax-produto_category .gallo-2026-product-category-fallback-mark,
body.tax-produto_category .gallo-2026-product-placeholder-mark {
	position: relative;
	z-index: 2;
	display: block;
	width: 126px;
	aspect-ratio: 1;
	border: 1px solid rgba(173, 128, 55, .38);
	border-radius: 50%;
}

body.tax-produto_category .gallo-2026-product-category-fallback-mark::before,
body.tax-produto_category .gallo-2026-product-placeholder-mark::before {
	position: absolute;
	inset: 22%;
	border: 1px solid rgba(173, 128, 55, .3);
	border-radius: 50%;
	content: "";
}

body.tax-produto_category .gallo-2026-product-subcategories {
	border-bottom: 1px solid var(--gallo-product-category-line);
	background: var(--gallo-product-category-cream);
}

body.tax-produto_category .gallo-2026-product-subcategories-inner {
	display: flex;
	width: min(1320px, calc(100% - 96px));
	min-height: 74px;
	margin: 0 auto;
	align-items: stretch;
	justify-content: center;
	gap: clamp(24px, 3.1vw, 52px);
}

body.tax-produto_category .gallo-2026-product-subcategories a {
	position: relative;
	display: flex;
	align-items: center;
	color: #727a88;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
	white-space: nowrap;
}

body.tax-produto_category .gallo-2026-product-subcategories a::after {
	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;
	height: 2px;
	background: var(--gallo-2026-market-accent);
	content: "";
	transform: scaleX(0);
	transition: transform 280ms ease;
}

body.tax-produto_category .gallo-2026-product-subcategories a:hover,
body.tax-produto_category .gallo-2026-product-subcategories a:focus-visible,
body.tax-produto_category .gallo-2026-product-subcategories a.is-active {
	color: var(--gallo-2026-market-primary);
	font-weight: 700;
}

body.tax-produto_category .gallo-2026-product-subcategories a:hover::after,
body.tax-produto_category .gallo-2026-product-subcategories a:focus-visible::after,
body.tax-produto_category .gallo-2026-product-subcategories a.is-active::after {
	transform: scaleX(1);
}

body.tax-produto_category .gallo-2026-product-category-products.product-list-middle {
	padding-top: 84px;
	padding-bottom: 110px;
}

body.tax-produto_category .gallo-2026-product-category-heading {
	margin-bottom: 42px;
	text-align: left;
}

body.tax-produto_category .gallo-2026-product-category-heading > span {
	margin-bottom: 13px;
	color: var(--gallo-2026-market-accent);
}

body.tax-produto_category .gallo-2026-product-category-heading h2 {
	margin: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(48px, 4.7vw, 68px);
	font-weight: 800;
	line-height: .94;
	letter-spacing: -.025em;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

body.tax-produto_category .product-list-image.is-placeholder {
	place-content: center;
}

body.tax-produto_category .product-list-image .gallo-2026-product-placeholder-icon {
	width: 96px;
	height: 96px;
	object-fit: contain;
	filter: sepia(1) saturate(.45) brightness(.85);
	opacity: .66;
}

body.tax-produto_category .product-list-image .gallo-2026-product-placeholder-mark {
	width: 94px;
	opacity: .72;
}

body.tax-produto_category .gallo-2026-product-category-empty {
	grid-column: 1 / -1;
	margin: 0;
	padding: 48px;
	color: var(--gallo-2026-muted);
	background: var(--gallo-product-category-cream);
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	line-height: 1.6;
	text-align: center;
}

body.tax-produto_category .gallo-2026-product-category-back:focus-visible,
body.tax-produto_category .gallo-2026-product-subcategories a:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 4px;
}

@media (hover: hover) and (pointer: fine) {
	body.tax-produto_category .gallo-2026-product-category-back:hover::before {
		transform: translateX(-4px);
	}

	body.tax-produto_category .gallo-2026-product-category-back::before {
		transition: transform 260ms ease;
	}
}

@media only screen and (max-width: 1199px) {
	body.tax-produto_category .gallo-2026-product-category-hero-inner {
		padding-right: 32px;
		padding-left: 32px;
	}

	body.tax-produto_category .gallo-2026-product-category-copy {
		padding-right: 30px;
	}

	body.tax-produto_category .gallo-2026-product-subcategories-inner {
		width: calc(100% - 64px);
		justify-content: flex-start;
		gap: 30px;
		overflow-x: auto;
		scrollbar-width: none;
	}

	body.tax-produto_category .gallo-2026-product-subcategories-inner::-webkit-scrollbar {
		display: none;
	}
}

@media only screen and (max-width: 767px) {
	body.tax-produto_category .gallo-2026-product-category-hero {
		min-height: 570px;
	}

	body.tax-produto_category .gallo-2026-product-category-hero::after {
		top: 60%;
		width: 100%;
		height: 40%;
	}

	body.tax-produto_category .gallo-2026-product-category-hero-inner {
		display: block;
		min-height: 570px;
		padding: 82px 0 0;
	}

	body.tax-produto_category .gallo-2026-product-category-copy {
		height: 342px;
		padding: 54px 24px 24px;
		justify-content: flex-start;
	}

	body.tax-produto_category .gallo-2026-product-category-eyebrow {
		margin-bottom: 13px;
	}

	body.tax-produto_category .gallo-2026-product-category-copy h1 {
		font-size: clamp(60px, 19vw, 82px);
		line-height: .9;
	}

	body.tax-produto_category .gallo-2026-product-category-description {
		max-height: 3.5em;
		margin-top: 15px;
		overflow: hidden;
		font-size: 22px;
	}

	body.tax-produto_category .gallo-2026-product-category-back {
		margin-top: 27px;
		font-size: 10px;
	}

	body.tax-produto_category .gallo-2026-product-category-media {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		height: 228px;
	}

	body.tax-produto_category .gallo-2026-product-category-orbit {
		width: 265px;
	}

	body.tax-produto_category .gallo-2026-product-category-media img {
		width: min(410px, 108%);
		max-height: 232px;
	}

	body.tax-produto_category .gallo-2026-product-category-media .gallo-2026-product-category-fallback-icon {
		width: 120px;
		height: 120px;
		margin: auto;
	}

	body.tax-produto_category .gallo-2026-product-subcategories-inner {
		width: 100%;
		min-height: 64px;
		padding: 0 20px;
		gap: 27px;
	}

	body.tax-produto_category .gallo-2026-product-subcategories a {
		font-size: 11px;
	}

	body.tax-produto_category .gallo-2026-product-category-products.product-list-middle {
		padding-top: 60px;
		padding-bottom: 76px;
	}

	body.tax-produto_category .gallo-2026-product-category-heading {
		margin-bottom: 31px;
	}

	body.tax-produto_category .gallo-2026-product-category-heading h2 {
		max-width: 340px;
		font-size: 43px;
	}

	body.tax-produto_category .gallo-2026-product-category-empty {
		padding: 34px 22px;
		font-size: 13px;
	}
}

@media only screen and (max-width: 360px) {
	body.tax-produto_category .gallo-2026-product-category-copy h1 {
		font-size: clamp(54px, 18vw, 68px);
	}

	body.tax-produto_category .gallo-2026-product-category-description {
		font-size: 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.tax-produto_category .gallo-2026-product-category-back::before,
	body.tax-produto_category .gallo-2026-product-subcategories a {
		transition-duration: .01ms !important;
	}
}

/* ========================================================================== */
/* Product listing 2026 V3                                                    */
/*                                                                            */
/* Isolated to the legacy Product list containers. The initial PHP loop and   */
/* `filter_posts_by_category` AJAX response deliberately keep their existing  */
/* markup, queries, URLs and handlers.                                         */
/* ========================================================================== */

.product-list-page .product-list-menu,
.page-template-product .product-list-menu,
.page-template-inc-product-php .product-list-menu {
	min-height: 72px;
	padding: 0 32px;
	border-bottom: 1px solid #e4dfd4;
	background: #faf8f2;
}

.product-list-page .product-list-menu ul,
.page-template-product .product-list-menu ul,
.page-template-inc-product-php .product-list-menu ul {
	max-width: 1080px;
	min-height: 71px;
	align-items: stretch;
	gap: clamp(28px, 4vw, 68px);
}

.product-list-page .product-list-menu ul li,
.page-template-product .product-list-menu ul li,
.page-template-inc-product-php .product-list-menu ul li {
	min-width: 0;
}

.product-list-page .product-list-menu ul li a,
.page-template-product .product-list-menu ul li a,
.page-template-inc-product-php .product-list-menu ul li a {
	display: flex;
	height: 100%;
	padding: 0 0 0 40px;
	align-items: center;
	color: #777d89;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 650;
	line-height: 1.3;
	text-decoration: none;
	white-space: nowrap;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 29px 24px;
}

.product-list-page .product-list-menu ul li a::before,
.page-template-product .product-list-menu ul li a::before,
.page-template-inc-product-php .product-list-menu ul li a::before {
	display: none;
	content: none;
}

.product-list-page .product-list-menu ul li a::after,
.page-template-product .product-list-menu ul li a::after,
.page-template-inc-product-php .product-list-menu ul li a::after {
	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;
	height: 2px;
	background: var(--gallo-2026-market-accent);
	content: "";
	opacity: 0;
	transition: opacity 240ms ease;
}

.product-list-page .product-list-menu ul li a:hover,
.product-list-page .product-list-menu ul li a:focus-visible,
.product-list-page .product-list-menu ul li a.active,
.page-template-product .product-list-menu ul li a:hover,
.page-template-product .product-list-menu ul li a:focus-visible,
.page-template-product .product-list-menu ul li a.active,
.page-template-inc-product-php .product-list-menu ul li a:hover,
.page-template-inc-product-php .product-list-menu ul li a:focus-visible,
.page-template-inc-product-php .product-list-menu ul li a.active {
	color: var(--gallo-2026-market-primary);
}

.product-list-page .product-list-menu ul li a:hover::after,
.product-list-page .product-list-menu ul li a:focus-visible::after,
.product-list-page .product-list-menu ul li a.active::after,
.page-template-product .product-list-menu ul li a:hover::after,
.page-template-product .product-list-menu ul li a:focus-visible::after,
.page-template-product .product-list-menu ul li a.active::after,
.page-template-inc-product-php .product-list-menu ul li a:hover::after,
.page-template-inc-product-php .product-list-menu ul li a:focus-visible::after,
.page-template-inc-product-php .product-list-menu ul li a.active::after {
	opacity: 1;
}

.product-list-middle {
	width: min(1320px, calc(100% - 96px));
	max-width: none;
	margin: 0 auto;
	/* 72px fixed category navigation + the approved 52px content spacing. */
	padding: 124px 0 104px;
}

.product-list-middle > .row {
	width: 100%;
	margin: 0;
}

.product-list-middle .product-list {
	padding-bottom: 0;
}

.product-list-middle .product-list + .product-list {
	margin-top: 52px;
	padding-top: 46px;
	border-top: 1px solid #e4dfd4;
}

.product-list-middle .product-list-wrapper {
	display: grid;
	justify-items: center;
	text-align: center;
}

.product-list-middle .product-list-wrapper h1,
.product-list-middle .product-list-wrapper h2 {
	display: flex;
	margin: 0;
	align-items: center;
	gap: 14px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(38px, 3.34vw, 48px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: .01em;
}

.product-list-middle .product-list-wrapper h1::before,
.product-list-middle .product-list-wrapper h2::before {
	display: none;
}

.product-list-middle .product-list-wrapper h1 a,
.product-list-middle .product-list-wrapper h2 a,
.product-list-middle .product-list-wrapper h1 span,
.product-list-middle .product-list-wrapper h2 span {
	display: flex;
	padding: 0;
	align-items: center;
	gap: 14px;
	color: inherit;
	background: transparent;
	text-decoration: none;
}

.product-list-middle .product-list-wrapper h1 img,
.product-list-middle .product-list-wrapper h2 img {
	width: 42px;
	height: 35px;
	margin: 0;
	padding: 0;
	object-fit: contain;
}

.product-list-middle .product-filter {
	display: flex;
	min-height: 58px;
	margin: 30px auto 38px;
	align-items: center;
	justify-content: center;
	gap: 34px;
	border-bottom: 1px solid #e4dfd4;
	flex-wrap: wrap;
}

.product-list-middle .product-filter ul {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 34px;
	flex-wrap: wrap;
}

.product-list-middle .product-filter ul li,
.product-list-middle .product-filter ul li:first-child {
	padding: 0;
}

.product-list-middle .product-filter a,
.product-list-middle .product-filter ul li a {
	display: inline-flex;
	margin: 0;
	padding: 20px 0 17px;
	align-items: center;
	color: #777d89;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 550;
	line-height: 1.3;
	text-decoration: none;
	white-space: nowrap;
}

.product-list-middle .product-filter a::after,
.product-list-middle .product-filter ul li a::after {
	right: 0;
	bottom: -1px;
	left: 0;
	width: auto;
	height: 2px;
	background: var(--gallo-2026-market-accent);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 280ms ease;
}

.product-list-middle .product-filter a:hover,
.product-list-middle .product-filter a:focus-visible,
.product-list-middle .product-filter a.active,
.product-list-middle .product-filter a.selected_cat,
.product-list-middle .product-filter li.active a,
.product-list-middle .product-filter li.active_sub_cat a {
	color: var(--gallo-2026-market-primary);
	font-weight: 700;
}

.product-list-middle .product-filter a:hover::after,
.product-list-middle .product-filter a:focus-visible::after,
.product-list-middle .product-filter a.active::after,
.product-list-middle .product-filter a.selected_cat::after,
.product-list-middle .product-filter li.active a::after,
.product-list-middle .product-filter li.active_sub_cat a::after {
	width: auto;
	transform: scaleX(1);
}

.product-list-middle .product-list-item-row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin: 0;
}

.product-list-middle .product-list-item-row::before,
.product-list-middle .product-list-item-row::after {
	display: none;
	content: none;
}

.product-list-middle .product-list-block {
	display: flex;
	float: none;
	min-width: 0;
	width: auto;
	margin: 0;
	padding: 0;
	text-align: center;
}

.product-list-middle .product-list-block > a,
.product-list-middle .product-list-block-inner,
.product-list-middle .product-list-block-inner > a.cat-title {
	min-width: 0;
	width: 100%;
	height: 100%;
}

.product-list-middle .product-list-block > a,
.product-list-middle .product-list-block-inner > a.cat-title {
	display: block;
	color: inherit;
	text-decoration: none;
}

.product-list-middle .product-list-block-inner {
	position: relative;
	display: grid;
	min-height: 453px;
	padding: 0;
	overflow: hidden;
	border-bottom: 1px solid rgba(173, 128, 55, .45);
	background: #fff;
	cursor: pointer;
	isolation: isolate;
	transition: box-shadow 380ms ease, transform 380ms cubic-bezier(.2, .7, .2, 1);
}

.product-list-middle .product-list-block-inner > a.cat-title {
	display: grid;
	grid-template-rows: 330px minmax(123px, auto);
}

.product-list-middle .product-list-block > a > .product-list-block-inner {
	grid-template-rows: 330px minmax(123px, auto);
}

.product-list-middle .product-list-image {
	position: relative;
	z-index: 1;
	display: grid;
	min-width: 0;
	height: 330px;
	margin: 0;
	padding: 24px 28px 14px;
	background: linear-gradient(145deg, #fbfaf6 0%, #f7f3e9 100%);
	place-items: center;
	transition: opacity 360ms ease, transform 380ms cubic-bezier(.2, .7, .2, 1);
}

.product-list-middle .product-list-image img {
	display: block;
	max-width: 88%;
	width: auto;
	max-height: 294px;
	height: 100%;
	margin: 0 auto;
	object-fit: contain;
}

/* The Squeeze source PNG contains a larger transparent safety area than the
 * remaining 200x460 packshots. Compensate that canvas only, preserving the
 * product proportions and the common card geometry. */
.product-list-middle .product-list-image img[src*="squeeze"],
.product-list-middle .product-list-image img[src*="Squeeze"] {
	transform: translateY(6px) scale(1.1);
	transform-origin: center;
}

.product-list-middle .product-list-image-text {
	position: static;
	z-index: auto;
	display: block;
	min-height: 123px;
	padding: 0;
	overflow: visible;
	background: #fff;
}

.product-list-middle .product-list-block-inner-hover {
	position: absolute;
	top: 0;
	right: 0;
	bottom: auto;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 330px;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #fff;
	opacity: 0;
	pointer-events: none;
	transform: scale(1.03);
	transition: opacity 360ms ease, transform 400ms cubic-bezier(.2, .7, .2, 1);
}

.product-list-middle .product-list-image-text::after,
.product-list-middle .product-list-block-inner::after {
	display: none;
	content: none;
}

.product-list-middle .product-list-image-text-inner {
	position: relative;
	right: auto;
	bottom: auto;
	left: auto;
	z-index: 3;
	display: flex;
	min-height: 123px;
	width: 100%;
	padding: 16px 18px 38px;
	align-items: center;
	flex-direction: column;
	justify-content: flex-start;
	background: #fff;
	transition: none;
}

.product-list-middle .product-list-image-text h3 {
	display: grid;
	max-width: 260px;
	min-height: 2.12em;
	margin: 0 auto;
	align-items: start;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(20px, 1.62vw, 25px);
	font-weight: 800;
	line-height: 1.06;
	text-wrap: balance;
}

.product-list-middle .product-list-image-text p {
	order: -1;
	min-height: 1.3em;
	margin: 0 0 6px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-weight: 750;
	line-height: 1.3;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.product-list-middle .view-product-link {
	position: absolute;
	bottom: 12px;
	left: 50%;
	z-index: 4;
	display: inline-flex;
	width: auto;
	min-height: 18px;
	margin: 0;
	padding: 0;
	align-items: center;
	border: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	opacity: 0;
	visibility: visible;
	transform: translate(-50%, 5px);
	transition: opacity 300ms ease, transform 360ms ease;
	white-space: nowrap;
}

.product-list-middle .view-product-link::after {
	position: absolute;
	right: 0;
	bottom: -4px;
	left: 0;
	height: 1px;
	background: var(--gallo-2026-market-accent);
	content: "";
}

.product-list-middle .product-list-block-inner:hover .product-list-image-text-inner,
.product-list-middle a:focus-visible .product-list-image-text-inner {
	padding-bottom: 38px;
}

.product-list-middle .product-list-block-inner:hover .product-list-image-text h3,
.product-list-middle a:focus-visible .product-list-image-text h3 {
	color: var(--gallo-2026-market-primary);
}

.product-list-middle .product-list-block-inner:hover .product-list-image-text p,
.product-list-middle a:focus-visible .product-list-image-text p {
	color: var(--gallo-2026-market-accent);
}

.product-list-middle .product-list-block a:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
	.product-list-middle .product-list-block-inner:hover,
	.product-list-middle .product-list-block a:focus-visible .product-list-block-inner,
	.product-list-middle .product-list-block-inner:focus-within {
		box-shadow: 0 14px 34px rgba(0, 21, 40, .075);
		transform: translateY(-2px);
	}

	.product-list-middle .product-list-block-inner:hover .product-list-block-inner-hover,
	.product-list-middle .product-list-block a:focus-visible .product-list-block-inner-hover,
	.product-list-middle .product-list-block-inner:focus-within .product-list-block-inner-hover {
		top: 0;
		opacity: 1;
		transform: scale(1);
	}

	.product-list-middle .product-list-block-inner:hover .product-list-image,
	.product-list-middle .product-list-block a:focus-visible .product-list-image,
	.product-list-middle .product-list-block-inner:focus-within .product-list-image {
		opacity: 1;
		transform: scale(1.015);
	}

	.product-list-middle .product-list-block-inner:hover .view-product-link,
	.product-list-middle .product-list-block a:focus-visible .view-product-link,
	.product-list-middle .product-list-block-inner:focus-within .view-product-link {
		position: absolute;
		opacity: 1;
		visibility: visible;
		transform: translate(-50%, 0);
	}
}

@media (hover: none), (pointer: coarse) {
	.product-list-middle .product-list-block-inner:hover .product-list-image {
		opacity: 1;
		transform: none;
	}

	.product-list-middle .product-list-block-inner:hover .product-list-block-inner-hover {
		display: block;
		opacity: 0;
		transform: scale(1.03);
	}

	.product-list-middle .view-product-link,
	.product-list-middle .product-list-block-inner:hover .view-product-link {
		position: absolute;
		display: inline-flex;
		opacity: 1;
		visibility: visible;
		transform: translate(-50%, 0);
	}
}

@media only screen and (max-width: 1199px) {
	.product-list-middle {
		width: min(100% - 64px, 920px);
		padding-top: 116px;
	}

	.product-list-middle .product-list-item-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 28px 22px;
	}

	.product-list-middle .product-list-image,
	.product-list-middle .product-list-block-inner-hover {
		height: 310px;
	}

	.product-list-middle .product-list-block-inner > a.cat-title,
	.product-list-middle .product-list-block > a > .product-list-block-inner {
		grid-template-rows: 310px minmax(123px, auto);
	}

	.product-list-middle .product-list-image img {
		max-height: 274px;
	}
}

@media only screen and (max-width: 767px) {
	.product-list-filter-menu-mobile {
		font-family: var(--gallo-2026-ui-font);
		border-bottom-color: #e4dfd4;
		background: #faf8f2;
	}

	.product-list-filter-menu-mobile .filter-menu-mobile-cat-dropdown {
		border-color: #e4dfd4;
	}

	.product-list-filter-menu-mobile select,
	.product-list-filter-menu-mobile .nice-select {
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-ui-font);
	}

	.product-list-middle {
		width: calc(100% - 36px);
		/* 54px mobile filter + the approved 36px content spacing. */
		padding: 90px 0 72px;
	}

	.product-list-middle .product-list + .product-list {
		margin-top: 40px;
		padding-top: 36px;
	}

	.product-list-middle .product-list-wrapper h1,
	.product-list-middle .product-list-wrapper h2 {
		font-size: clamp(30px, 9vw, 40px);
	}

	.product-list-middle .product-list-wrapper h1 img,
	.product-list-middle .product-list-wrapper h2 img {
		width: 34px;
		height: 29px;
	}

	.product-list-middle .product-filter,
	.product-list-middle .product-filter ul {
		gap: 10px 24px;
	}

	.product-list-middle .product-filter {
		margin: 22px auto 28px;
		padding-bottom: 4px;
	}

	.product-list-middle .product-filter a,
	.product-list-middle .product-filter ul li a {
		padding: 13px 0 12px;
		white-space: normal;
	}

	.product-list-middle .product-list-item-row {
		gap: 20px 14px;
	}

	.product-list-middle .product-list-block-inner {
		min-height: 386px;
	}

	.product-list-middle .product-list-image,
	.product-list-middle .product-list-block-inner-hover {
		height: 250px;
	}

	.product-list-middle .product-list-block-inner > a.cat-title,
	.product-list-middle .product-list-block > a > .product-list-block-inner {
		grid-template-rows: 250px minmax(136px, auto);
	}

	.product-list-middle .product-list-image {
		padding: 20px 18px 12px;
	}

	.product-list-middle .product-list-image img {
		max-width: 92%;
		max-height: 218px;
	}

	.product-list-middle .product-list-image img[src*="squeeze"],
	.product-list-middle .product-list-image img[src*="Squeeze"] {
		transform: translateY(4px) scale(1.07);
	}

	.product-list-middle .product-list-image-text-inner {
		min-height: 136px;
		padding: 14px 12px 40px;
	}

	.product-list-middle .product-list-image-text h3 {
		max-width: 100%;
		font-size: clamp(18px, 5.2vw, 23px);
	}

	.product-list-middle .product-list-image-text p {
		font-size: 9px;
		letter-spacing: .1em;
	}

	.product-list-middle .view-product-link {
		font-size: 13px;
	}
}

@media only screen and (max-width: 360px) {
	.product-list-middle {
		width: calc(100% - 32px);
	}

	.product-list-middle .product-list-item-row {
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
	}

	.product-list-middle .product-list-block-inner {
		min-height: 419px;
	}

	.product-list-middle .product-list-image,
	.product-list-middle .product-list-block-inner-hover {
		height: 284px;
	}

	.product-list-middle .product-list-block-inner > a.cat-title,
	.product-list-middle .product-list-block > a > .product-list-block-inner {
		grid-template-rows: 284px minmax(135px, auto);
	}

	.product-list-middle .product-list-image img {
		max-height: 252px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.product-list-page .product-list-menu ul li a,
	.page-template-product .product-list-menu ul li a,
	.page-template-inc-product-php .product-list-menu ul li a,
	.product-list-middle .product-filter a,
	.product-list-middle .product-list-block-inner,
	.product-list-middle .product-list-image,
	.product-list-middle .product-list-block-inner-hover,
	.product-list-middle .view-product-link {
		transition-duration: .01ms !important;
	}
}

body.gallo-market-pt-pt {
	--gallo-2026-market-primary: #152c62;
	--gallo-2026-market-accent: #ad8037;
	--gallo-2026-market-highlight: #fbe882;
	--gallo-2026-title-color: #152c62;
	--gallo-2026-logo-on-light: url("../images/gallo-logo-pt-on-light.png");
	--gallo-2026-header-logo-scale: 1.28;
	--gallo-2026-header-logo-surface-size: 68px;
	--gallo-2026-footer-logo-scale: 1.72;
}

body:not(.gallo-market-pt-pt) {
	--gallo-2026-logo-on-light: url("../images/gallo-logo-international-on-light.jpg");
}

/* Header: preserve every existing state and change only brand assets/colour. */
.header-section-inner.fixed {
	background-color: var(--gallo-2026-white);
}

/* The existing per-slide `lightimage` flag now controls the transparent
 * header contrast as the legacy slider changes slide. Sticky keeps priority. */
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .logo {
	border-color: rgba(0, 21, 40, .18);
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .logo img,
body.home .header-section-inner.gallo-header-safe-surface:not(.fixed) .logo img {
	opacity: 0;
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .logo a,
body.home .header-section-inner.gallo-header-safe-surface:not(.fixed) .logo a {
	background-image: var(--gallo-2026-logo-on-light);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto var(--gallo-2026-header-logo-surface-size);
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .menu-ic span,
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .menu-ic span::before,
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .menu-ic span::after {
	background: var(--gallo-2026-market-primary);
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-nav ul li a,
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-language,
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-language a,
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-lista-de-compras a {
	color: var(--gallo-2026-market-primary);
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-nav ul li a::after,
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-language a::after,
body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-lista-de-compras a::after {
	background: var(--gallo-2026-gold);
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-lista-de-compras::before {
	background: rgba(0, 21, 40, .2);
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-lista-de-compras svg path {
	stroke: var(--gallo-2026-market-primary);
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .header-search::after {
	background-image: url("../images/search-black.svg");
	background-size: contain;
}

body.home .header-section-inner.gallo-header-on-light:not(.fixed) .lang-img::before {
	background-image: url("../images/lang-map-hover.svg");
}

/* Some editorial assets deliberately combine a dark copy area with a light
 * product area. When the existing CMS signals both light imagery and light
 * copy, a white safety surface is the only uniform contrast state available
 * to the single global header. */
body.home .header-section-inner.gallo-header-safe-surface:not(.fixed) {
	background: var(--gallo-2026-white);
	box-shadow: 0 1px 0 rgba(0, 21, 40, .12);
}

.header-section-inner .logo img {
	width: auto;
	max-height: 73px;
	object-fit: contain;
	transform: scale(var(--gallo-2026-header-logo-scale));
	transform-origin: center;
}

.header-section .header-section-inner.fixed .logo a {
	background-image: var(--gallo-2026-logo-on-light);
	height: 52px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto var(--gallo-2026-header-logo-surface-size);
}

/* Legacy templates that deliberately start with a light, non-overlay header
 * already hide the inline image and use the logo link as their surface. Keep
 * those established states while replacing only the referenced lockup. */
body.page-template-contact .header-section-inner:not(.fixed) .logo a,
body.page-template-template-flipbook .header-section-inner:not(.fixed) .logo a,
body.page-template-compare .header-section-inner:not(.fixed) .logo a,
body.page-template-news_listing .header-section-inner:not(.fixed) .logo a,
body.page-template-product .header-section-inner:not(.fixed) .logo a,
body.page-template-faq .header-section-inner:not(.fixed) .logo a,
body.search .header-section-inner:not(.fixed) .logo a,
body.page-template-tmp-cookie .header-section-inner:not(.fixed) .logo a,
body.archive .header-section-inner:not(.fixed) .logo a,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-populated .header-section-inner:not(.fixed) .logo a {
	background-image: var(--gallo-2026-logo-on-light);
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto var(--gallo-2026-header-logo-surface-size);
}

/* The empty Shopping List starts over its photographic hero. Neutralise the
 * legacy light Header only before scroll; `.fixed` remains the shared sticky
 * surface and PT-BR keeps its existing `keep-fixed fixed` state. */
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) {
	border-bottom-color: rgba(255, 255, 255, .22);
	background: transparent;
	box-shadow: none;
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .logo {
	border-color: rgba(255, 255, 255, .24);
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .logo a {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	background: none;
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .logo img {
	display: inline;
	opacity: 1;
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .menu-ic span,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .menu-ic span::before,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .menu-ic span::after {
	background: var(--gallo-2026-white);
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-nav ul li a,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-language,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-language a,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-lista-de-compras a,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-search {
	color: var(--gallo-2026-white);
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-nav ul li a::after,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-language a::after,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-lista-de-compras a::after {
	background: var(--gallo-2026-white);
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-language a::before {
	background-image: url("../images/angle-left-white.svg");
	background-size: contain;
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .lang-img::before {
	background-image: url("../images/lang-map.svg");
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-lista-de-compras::before,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-search::before {
	background: rgba(255, 255, 255, .5);
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-lista-de-compras svg path {
	stroke: var(--gallo-2026-white);
}

body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-search::after,
body.page-template-template-partslista-supermercado-php.gallo-shopping-list-empty .header-section-inner:not(.fixed) .header-search input[type="submit"] {
	background-image: url("../images/search-white.svg");
	background-size: contain;
}

.header-nav ul li a,
.header-language a,
.header-lista-de-compras a {
	font-family: var(--gallo-2026-ui-font);
}

/* Keep the legacy header fluid without changing its navigation structure. */
@media only screen and (min-width: 1920px) {
	.header-section-inner {
		padding-right: calc((100vw - 1920px) / 2 + 53px);
		padding-left: calc((100vw - 1920px) / 2 + 18px);
	}
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
	.header-section-inner {
		padding-right: 20px;
		padding-left: 14px;
	}

	.header-section-inner .logo {
		width: 84px;
		padding-right: 14px;
	}

	.header-section-inner .menu-ic {
		left: 24px;
		width: 32px;
	}

	.header-section-inner .menu-ic span,
	.header-section-inner .menu-ic span::before {
		width: 32px;
	}

	.header-section-inner .header-nav {
		min-width: 0;
		padding-left: 58px;
	}

	.header-section-inner .header-nav ul {
		display: flex;
		align-items: center;
		flex-wrap: nowrap;
		gap: 18px;
	}

	.header-section-inner .header-nav ul li,
	.header-section-inner .header-nav ul li:first-child {
		padding-left: 0;
	}

	.header-section-inner .header-nav ul li a {
		font-size: 14px;
		white-space: nowrap;
	}

	.header-section-inner > .header-language {
		padding-right: 18px;
	}

	.header-section-inner > .header-language a {
		font-size: 13px;
		white-space: nowrap;
	}

	.header-section-inner .header-lista-de-compras {
		padding-right: 20px;
		padding-left: 18px;
	}

	.header-section-inner .header-lista-de-compras a span {
		display: none;
	}

	.header-section-inner .header-lista-de-compras svg {
		margin-left: 0;
	}

	.header-section-inner .header-search {
		padding-right: 28px;
		padding-left: 20px;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1099px) {
	/* The same market control remains available in the existing full menu. */
	.header-section-inner > .header-language {
		display: none;
	}
}

.header-section-inner.fixed .lang-img::before,
.product-list-page .header-section-inner:not(.fixed) .lang-img::before,
.page-template-contact .header-section-inner:not(.fixed) .lang-img::before,
.page-template-compare .header-section-inner:not(.fixed) .lang-img::before,
.page-template-news_listing .header-section-inner:not(.fixed) .lang-img::before,
.page-template-product .header-section-inner:not(.fixed) .lang-img::before,
.page-template-faq .header-section-inner:not(.fixed) .lang-img::before,
.search .header-section-inner:not(.fixed) .lang-img::before,
.page-template-tmp-cookie .header-section-inner:not(.fixed) .lang-img::before,
.archive .header-section-inner:not(.fixed) .lang-img::before,
.page-template-template-flipbook .header-section-inner:not(.fixed) .lang-img::before {
	background-image: url("../images/lang-map-hover.svg");
}

.header-section a:focus-visible,
.header-section button:focus-visible,
.footer-section a:focus-visible,
.footer-section [role="button"]:focus-visible {
	outline: 2px solid #ff9601;
	outline-offset: 4px;
}

/* Footer shell */
.site-footer,
.footer-section {
	position: relative;
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-white);
}

.footer-section {
	border-top: 1px solid var(--gallo-2026-line);
	border-bottom: 6px solid var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
}

.footer-top.container {
	width: 100%;
	max-width: none;
	padding: 34px clamp(32px, 5vw, 96px) 32px;
}

.footer-top .row {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 4fr) minmax(0, 3fr);
	align-items: center;
	width: 100%;
	max-width: 2048px;
	min-height: 320px;
	margin: 0 auto;
}

.footer-top .row::before,
.footer-top .row::after {
	position: absolute;
	top: 20px;
	bottom: 20px;
	z-index: 1;
	display: block;
	clear: none;
	width: 1px;
	background: var(--gallo-2026-divider);
	content: "";
	pointer-events: none;
}

.footer-top .row::before { left: 30%; }
.footer-top .row::after { right: 30%; }

.footer-section .follow-us,
.footer-section .talk-to-us,
.footer-section .fb_lang {
	position: relative;
	z-index: 2;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0 32px;
}

.footer-section .follow-us {
	display: flex;
	align-items: center;
	flex-direction: column;
	grid-column: 1;
	justify-self: stretch;
	text-align: center;
}

.footer-section .follow-us-inner {
	display: flex;
	align-items: center;
	flex-direction: column;
	min-width: 0;
}

.footer-section .follow-us span,
.footer-market-title {
	display: block;
	margin: 0 0 15px;
	padding: 0;
  color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .14em;
	text-align: center;
	text-transform: uppercase;
}

.footer-section .follow-us ul {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.footer-section .follow-us ul li,
.footer-section .follow-us ul li:first-child {
	padding: 0;
}

.footer-section .follow-us ul li a {
	display: block;
	width: 46px;
	height: 46px;
	border: 1px solid #cbd3dd;
	border-radius: 50%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px auto;
	transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

/* The legacy expanding ::before layer covers the ACF background image on
 * hover. The 2026 footer keeps that editable image visible at every state. */
.footer-section .follow-us ul li a::before {
	display: none;
}

.footer-section .follow-us ul li:first-child a {
	background-size: auto 22px;
}

.footer-section .follow-us ul li a:hover,
.footer-section .follow-us ul li a:focus-visible {
	border-color: var(--gallo-2026-market-accent);
	background-color: var(--gallo-2026-white);
	box-shadow: 0 5px 14px rgba(0, 21, 40, .09);
	transform: translateY(-2px);
}

.footer-section .talk-to-us {
	grid-column: 2;
	justify-self: stretch;
	text-align: center;
}

.footer-section .talk-to-us_inner {
	display: flex;
	align-items: center;
	flex-direction: column;
	max-width: 430px;
	margin: 0 auto;
}

.footer-section .ft-logo {
	position: relative;
	z-index: 3;
	width: 62px;
	height: 82px;
	margin: 0 auto;
}

.footer-section .ft-logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	transform: scale(var(--gallo-2026-footer-logo-scale));
	/* Scale the official lockup around its centre. This increases its visible
	 * dimensions without changing the Footer box model or the planned spacing. */
	transform-origin: center;
}

.footer-section .footer-logo-signature {
	display: flex;
	align-items: center;
	flex-direction: column;
	margin: 0 0 14px;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .16em;
	text-align: center;
	text-transform: uppercase;
}

.footer-section .footer-logo-signature::after {
	display: block;
	width: 28px;
	height: 1px;
	margin-top: 8px;
	background: currentColor;
	content: "";
}

.footer-section .talk-to-us h3 {
	margin: 0 0 14px;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-title-font);
	font-size: 26px;
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: 0;
}

.footer-section .talk-to-us .footer-copyright {
	width: 100%;
	margin: 0;
	padding: 0 0 2px !important;
	text-align: center;
}

.footer-section .talk-to-us .footer-copyright p {
	margin: 0;
	color: var(--gallo-2026-muted);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 400;
	line-height: 1.5;
}

.footer-section .talk-to-us .footer-copyright strong,
.footer-section .talk-to-us .footer-copyright b {
	color: var(--gallo-2026-market-primary);
	font-weight: 700;
}

.footer-section .talk-to-us .btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 232px;
	max-width: none;
	height: auto;
	min-height: 48px;
	margin-top: 17px;
	padding: 13px 16px;
	color: var(--gallo-2026-title-color);
	border: 1px solid var(--gallo-2026-title-color);
	background: var(--gallo-2026-white);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	transition: color .22s ease, border-color .22s ease, background-color .22s ease;
}

.footer-section .talk-to-us .btn::after {
	position: static;
	display: block;
	width: auto;
	height: auto;
	margin-left: 20px;
	color: var(--gallo-2026-market-accent);
	background: none;
	content: "→";
	font-size: 20px;
	line-height: 1;
	transform: none;
	transition: color .22s ease, transform .22s ease;
}

.footer-section .talk-to-us .btn::before { display: none; }

.footer-section .talk-to-us .btn:hover,
.footer-section .talk-to-us .btn:focus-visible {
	color: var(--gallo-2026-white);
	border-color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-market-primary);
}

.footer-section .talk-to-us .btn:hover::after,
.footer-section .talk-to-us .btn:focus-visible::after {
	color: var(--gallo-2026-market-highlight);
	transform: translateX(4px);
}

.footer-section .fb_lang {
	display: flex;
	align-items: center;
	flex-direction: column;
	grid-column: 3;
	justify-self: stretch;
	min-width: 0;
	top: -9px;
	text-align: center;
}

.footer-section .fb_lang .header-language {
	display: flex;
	align-items: center;
	justify-content: center;
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.footer-section .fb_lang .header-language a {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-highlight-font);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.15;
	white-space: nowrap;
	cursor: pointer;
}

.footer-section .fb_lang .header-language a::before,
.footer-section .fb_lang .header-language a::after {
	display: none;
}

.footer-section .fb_lang .footer-language-arrow {
	display: inline-block;
	flex: 0 0 auto;
	margin: -3px 11px 0;
	color: var(--gallo-2026-market-accent);
	font-size: 18px;
	line-height: 1;
}

.footer-section .fb_lang .lang-img {
	flex: 0 0 56px;
	width: 56px;
	height: 28px;
	padding: 0;
	transform: none;
}

.footer-section .fb_lang .lang-img::before {
	top: 0;
	left: 0;
	display: block;
	width: 56px;
	height: 28px;
	background: var(--gallo-2026-gold);
	-webkit-mask: url("../images/lang-map-black.svg") center / contain no-repeat;
	mask: url("../images/lang-map-black.svg") center / contain no-repeat;
	transform: none;
	transition: none;
}

.footer-section .fb_lang .header-language:hover .lang-img::before,
.footer-section .fb_lang .header-language:focus-within .lang-img::before {
	width: 56px;
	height: 28px;
	background: var(--gallo-2026-gold);
	-webkit-mask: url("../images/lang-map-black.svg") center / contain no-repeat;
	mask: url("../images/lang-map-black.svg") center / contain no-repeat;
	transform: none;
}

.footer-section .fb_lang .lang-img img,
.footer-mobile-globe {
	display: none;
}

.footer-section .fb_lang .header-language:hover a {
	color: var(--gallo-2026-market-accent);
}

/* Existing dynamic footer menu becomes the approved compact link rail. */
.footer-menu.container {
	width: 100%;
	max-width: none;
	padding: 0 50px;
	border-top: 1px solid var(--gallo-2026-line);
	border-bottom: 1px solid var(--gallo-2026-line);
}

.footer-menu .row,
.footer-menu .navigation-top,
.footer-menu .wrap,
.footer-menu .menu-footer-container {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.footer-menu ul {
	display: flex;
	align-items: stretch;
	justify-content: center;
	width: 100%;
}

.footer-menu ul li,
.footer-menu ul li:first-child {
	display: flex;
	flex: 1 1 0;
	align-items: stretch;
	justify-content: center;
	margin: 0;
}

.footer-menu ul li a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 74px;
	padding: 0 14px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.3;
	text-align: center;
}

.footer-menu ul li a::before {
	right: 22%;
	bottom: 18px;
	left: 22%;
	width: auto;
	height: 1px;
	background: var(--gallo-2026-market-accent);
	transform: scaleX(0);
	transform-origin: center;
}

.footer-menu ul li a:hover,
.footer-menu ul li a:focus-visible {
	color: var(--gallo-2026-market-accent);
}

.footer-menu ul li a:hover::before,
.footer-menu ul li a:focus-visible::before {
	width: auto;
	transform: scaleX(1);
}

.footer-section > .footer-copyright.container {
	width: 100%;
	max-width: none;
	min-height: 62px;
	padding: 0 68px;
	text-align: left;
}

.footer-section > .footer-copyright p {
	display: flex;
	align-items: center;
	min-height: 62px;
	margin: 0;
	color: var(--gallo-2026-muted);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 400;
	line-height: 1.4;
}

.footer-section .scroll-top {
	position: absolute !important;
	top: auto !important;
	right: 68px !important;
	bottom: 15px !important;
	box-sizing: border-box;
	min-width: 34px !important;
	width: 34px !important;
	max-width: 34px !important;
	min-height: 34px !important;
	height: 34px !important;
	max-height: 34px !important;
	padding: 0;
	overflow: visible;
	border: 1px solid #cbd3dd;
	border-radius: 50%;
	background: var(--gallo-2026-white);
	box-shadow: none;
	line-height: 0;
	transition: border-color .2s ease, background-color .2s ease;
}

.footer-section .scroll-top::before {
	top: 50%;
	width: auto;
	height: auto;
	color: var(--gallo-2026-market-accent);
	background: none;
	content: "↑";
	font-size: 17px;
	font-weight: 700;
	line-height: 1;
	transform: translateY(-50%);
}

@keyframes gallo-2026-arrow-up {
	0% {
		transform: translateY(-50%);
	}
	50% {
		transform: translateY(-70%);
	}
	100% {
		transform: translateY(-50%);
	}
}

.footer-section .scroll-top span {
	position: absolute;
	top: 50%;
	right: 44px;
	width: max-content;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	transform: translateY(-50%);
}

.footer-section .scroll-top:hover {
	border-color: var(--gallo-2026-market-accent);
	background: #f8f2d8;
}

.footer-section .scroll-top:hover::before,
.footer-section .scroll-top:focus-visible::before {
	animation: gallo-2026-arrow-up 1.35s ease-in-out infinite;
}

@media only screen and (min-width: 768px) and (max-width: 1100px) {
	.footer-top.container {
		padding-right: 32px;
		padding-left: 32px;
	}

	.footer-top .row {
		grid-template-columns: minmax(0, .85fr) minmax(0, 1.3fr) minmax(0, .85fr);
	}

	.footer-top .row::before {
		left: 28.333%;
	}

	.footer-top .row::after {
		right: 28.333%;
	}

	.footer-section .follow-us,
	.footer-section .talk-to-us,
	.footer-section .fb_lang {
		padding-right: 8px;
		padding-left: 8px;
	}

	.footer-section .talk-to-us h3 {
		font-size: 22px;
	}

	.footer-section .fb_lang .header-language a {
		font-size: 14px;
	}

	.footer-language-arrow {
		margin-right: 7px;
		margin-left: 7px;
	}

	.footer-section .fb_lang .lang-img,
	.footer-section .fb_lang .lang-img::before {
		width: 42px;
	}

	.footer-menu.container {
		padding-right: 24px;
		padding-left: 24px;
	}

	.footer-menu ul {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.footer-menu ul li a {
		min-height: 56px;
	}
}

@media only screen and (max-width: 767px) {
	body.gallo-market-pt-pt {
		--gallo-2026-footer-logo-scale: 1.433;
	}

	body:not(.gallo-market-pt-pt) {
		--gallo-2026-footer-logo-scale: 1.302;
	}

	/* The compact mobile header no longer needs legacy dividers between the
	 * brand and icon-only actions. Removing them prevents the search divider
	 * from entering the magnifier's touch/visual area at 320--390px. */
	.header-section-inner .logo {
		border-right: 0 !important;
	}

	.header-section-inner .logo a {
		border-right: 0 !important;
	}

	.header-section-inner .header-search::before,
	.header-section-inner .header-lista-de-compras::before {
		display: none !important;
	}

	.header-section-inner .logo img {
		max-height: 52px;
	}

	.header-section-inner .header-lista-de-compras {
		align-items: center;
		justify-content: center;
	}

	.header-section-inner .header-lista-de-compras a {
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		gap: 10px;
		margin-top: 0;
		text-align: center;
		white-space: nowrap;
	}

	.header-section-inner .header-lista-de-compras a span,
	.header-section-inner .header-lista-de-compras #lista-de-compras-btn span {
		display: none;
	}

	.header-section-inner .header-lista-de-compras svg {
		display: block;
		width: 22px;
		height: 22px;
		flex: 0 0 22px;
		margin-left: 0;
	}

	.header-section .header-section-inner.fixed .logo a {
		background-position: left center;
		background-size: auto var(--gallo-2026-header-logo-surface-size);
	}

	.footer-top.container {
		padding: 30px 18px 20px;
	}

	.footer-top .row {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		align-items: stretch;
		min-height: 0;
		text-align: left;
	}

	.footer-top .row::before,
	.footer-top .row::after {
		display: none;
	}

	.footer-section .talk-to-us {
		grid-column: 1 / -1;
		grid-row: 1;
		width: 100%;
		padding: 0;
	}

	.footer-section .talk-to-us_inner {
		max-width: none;
	}

	.footer-section .ft-logo {
		width: 58px;
		height: 74px;
		margin-bottom: 0;
	}

	.footer-section .footer-logo-signature {
		margin-bottom: 12px;
		font-size: 9px;
		letter-spacing: .14em;
	}

	.footer-section .footer-logo-signature::after {
		width: 24px;
		margin-top: 6px;
	}

	.footer-section .talk-to-us h3 {
		margin-bottom: 10px;
		font-size: 20px;
		line-height: 1.08;
	}

	.footer-section .talk-to-us .footer-copyright p {
		max-width: 290px;
		margin: 0 auto;
		font-size: 10px;
		line-height: 1.5;
	}

	.footer-section .talk-to-us .btn {
		width: 100%;
		min-height: 48px;
		margin-top: 14px;
	}

	.footer-section .follow-us,
	.footer-section .fb_lang {
		align-self: stretch;
		width: 100%;
		margin-top: 21px;
		padding-top: 18px;
		border-top: 1px solid var(--gallo-2026-line);
	}

	.footer-section .follow-us {
		align-items: stretch;
		grid-column: 1;
		grid-row: 2;
		justify-self: stretch;
		padding-right: 10px;
		padding-left: 0;
		text-align: left;
	}

	.footer-section .follow-us-inner {
		align-items: flex-start;
	}

	.footer-section .follow-us span,
	.footer-market-title {
		margin-bottom: 9px;
		font-size: 9px;
		text-align: left;
	}

	.footer-section .follow-us ul {
		justify-content: flex-start;
		gap: 4px;
	}

	.footer-section .follow-us ul li a {
		width: 44px;
		height: 44px;
		background-size: 17px auto;
	}

	.footer-section .follow-us ul li:first-child a {
		background-size: auto 19px;
	}

	.footer-section .fb_lang {
		align-items: stretch;
		grid-column: 2;
		grid-row: 2;
		justify-self: stretch;
		padding-right: 0;
		padding-left: 16px;
		border-left: 1px solid var(--gallo-2026-line);
		top: auto;
	}

	.footer-section .fb_lang .header-language {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		justify-content: stretch;
		gap: 6px;
		margin: 0;
		text-align: left;
	}

	.footer-section .fb_lang .header-language a {
		justify-content: flex-start;
		min-width: 0;
		font-size: 13px;
		line-height: 1.2;
		white-space: normal;
	}

	.footer-language-arrow {
		margin: -2px 0 0 6px;
		font-size: 15px;
	}

	.footer-section .fb_lang .lang-img {
		display: none;
	}

	.footer-mobile-globe {
		display: block;
		width: 31px;
		height: 31px;
	}

	.footer-mobile-globe svg {
		display: block;
		width: 100%;
		height: 100%;
		fill: none;
		stroke: var(--gallo-2026-gold);
		stroke-width: 1.2;
	}

	.footer-menu.container {
		padding: 6px 18px;
		border-top: 1px solid var(--gallo-2026-line);
		border-bottom: 1px solid var(--gallo-2026-line);
	}

	.footer-menu .row {
		padding: 0;
		border: 0;
	}

	.footer-menu ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.footer-menu ul li,
	.footer-menu ul li:first-child {
		display: flex;
		margin: 0;
		border-bottom: 1px solid var(--gallo-2026-line);
	}

	.footer-menu ul li:nth-last-child(-n + 2) {
		border-bottom: 0;
	}

	.footer-menu ul li a {
		justify-content: flex-start;
		min-height: 44px;
		padding: 0 8px 0 0;
		font-size: 10px;
		text-align: left;
	}

	.footer-menu ul li a::before {
		display: none;
	}

	.footer-section > .footer-copyright.container {
		min-height: 70px;
		padding: 15px 58px 15px 18px;
	}

	.footer-section > .footer-copyright p {
		min-height: 40px;
		font-size: 9px;
		line-height: 1.45;
	}

	.footer-section .scroll-top {
		right: 18px !important;
		bottom: 18px !important;
		width: 34px !important;
		height: 34px;
	}

	.footer-section .scroll-top span {
		display: none;
	}
}

@media only screen and (max-width: 359px) {
	.header-section-inner .header-lista-de-compras a {
		gap: 6px;
		font-size: 11px;
	}

	.footer-section .follow-us ul {
		gap: 2px;
	}

	.footer-section .follow-us ul li a {
		width: 40px;
		height: 40px;
	}

	.footer-section .fb_lang {
		padding-left: 12px;
	}

	.footer-section .fb_lang .header-language a {
		font-size: 12px;
	}

	.footer-mobile-globe {
		width: 28px;
		height: 28px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.header-section *,
	.footer-section *,
	.header-section *::before,
	.header-section *::after,
	.footer-section *::before,
	.footer-section *::after {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/* Homepage — About Gallo 2026 (international markets only) */
body.home:not(.gallo-market-pt-pt) {
	--gallo-2026-home-section-gap: clamp(56px, 5vw, 80px);
	--gallo-2026-home-section-gap-remainder: max(0px, calc(var(--gallo-2026-home-section-gap) - clamp(46px, 4.2vw, 60px)));
}

body.home:not(.gallo-market-pt-pt) .about-gallo-section {
	box-sizing: border-box;
	width: min(1440px, 100%);
	max-width: none;
	margin: 0 auto;
	padding: var(--gallo-2026-home-section-gap) clamp(20px, 3.35vw, 48px) 0;
	color: #fff;
	font-family: var(--gallo-2026-ui-font);
}

/* Recipes already owns its internal lower breathing room. When About follows it,
 * add only the remainder required to reach the shared inter-section rhythm. */
body.home:not(.gallo-market-pt-pt) .recipes-moments-section + .about-gallo-section {
	padding-top: var(--gallo-2026-home-section-gap-remainder);
}

body.home:not(.gallo-market-pt-pt) .about-gallo-section > .row {
	width: 100%;
	max-width: 1344px;
	margin: 0 auto;
	padding: 0;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-section:not(.w3n_about_video) .about-gallo-image {
	position: relative;
	display: flex;
	box-sizing: border-box;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	padding: clamp(56px, 6vw, 86px) clamp(34px, 5vw, 70px);
	overflow: hidden;
	background-color: var(--gallo-2026-market-primary);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-section:not(.w3n_about_video) .about-gallo-image::before {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, rgba(35, 46, 10, .92) 0%, rgba(35, 46, 10, .84) 34%, rgba(35, 46, 10, .78) 58%, rgba(35, 46, 10, .7) 70%, rgba(35, 46, 10, .24) 86%, rgba(35, 46, 10, 0) 100%);
	content: "";
	pointer-events: none;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image > h6 {
	position: relative;
	z-index: 2;
	max-width: 620px;
	margin: 0 0 18px;
	padding: 0;
	color: var(--gallo-2026-market-highlight);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .205em;
	text-transform: uppercase;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image > h6::before {
	display: none;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image-inner {
	position: relative;
	z-index: 2;
	width: min(700px, 62%);
	margin: 0;
	padding: 0;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image h2 {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	color: #fff;
	font-family: var(--gallo-2026-ui-font);
	font-size: clamp(40px, 3.5vw, 50px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -.015em;
	text-wrap: pretty;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta {
	position: static;
	display: inline-flex;
	box-sizing: border-box;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	width: auto;
	min-width: 190px;
	min-height: 52px;
	max-width: 100%;
	height: auto;
	margin: 28px 0 0;
	padding: 10px 16px;
	border: 0;
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-market-highlight);
	font-family: var(--gallo-2026-ui-font);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
	text-align: left;
	text-decoration: none;
	transition: color 250ms ease, background-color 250ms ease, transform 250ms ease;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta::before {
	display: none;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta::after {
	position: static;
	display: block;
	width: auto;
	height: auto;
	border: 0;
	color: currentColor;
	background: transparent;
	content: "\2192";
	font-family: var(--gallo-2026-ui-font);
	font-size: 21px;
	font-weight: 400;
	line-height: 1;
	transform: none;
	transition: transform 180ms ease;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:hover,
body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:focus-visible {
	color: #fff;
	background: var(--gallo-2026-gold);
	transform: translateY(-2px);
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:hover::after,
body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:focus-visible::after {
	transform: translateX(4px);
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

@media (max-width: 767px) {
	body.home:not(.gallo-market-pt-pt) {
		--gallo-2026-home-section-gap: clamp(40px, 11vw, 48px);
		--gallo-2026-home-section-gap-remainder: max(0px, calc(var(--gallo-2026-home-section-gap) - 30px));
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-section {
		padding: var(--gallo-2026-home-section-gap) 18px 0;
	}

	body.home:not(.gallo-market-pt-pt) .recipes-moments-section + .about-gallo-section {
		padding-top: var(--gallo-2026-home-section-gap-remainder);
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-section:not(.w3n_about_video) .about-gallo-image {
		padding: 44px 24px;
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-section:not(.w3n_about_video) .about-gallo-image::before {
		background: linear-gradient(90deg, rgba(35, 46, 10, .92) 0%, rgba(35, 46, 10, .72) 100%);
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-image > h6 {
		margin-bottom: 14px;
		font-size: 10px;
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-image h2 {
		font-size: clamp(32px, 9.4vw, 40px);
		line-height: 1.04;
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-image-inner {
		width: 100%;
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta {
		width: auto;
		min-width: 0;
		margin-top: 24px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta,
	body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta::after {
		transition: none;
	}

	body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:hover::after,
	body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:focus-visible::after {
		transform: none;
	}
}

/* Homepage — Prémios 2026
 * Reuses the ACF background image, independent packshot and existing dynamic
 * product/award loops. Legacy mobile duplicates remain in PHP as a fallback,
 * but the visible 2026 layout uses the complete canonical desktop loop.
 */
.gallo-awards-section,
.gold-medal-section {
	--gallo-awards-deep: var(--gallo-2026-market-primary);
	--gallo-awards-accent: var(--gallo-2026-gold);
	--gallo-awards-paper: #f8f2d8;
	box-sizing: border-box;
	color: var(--gallo-awards-deep);
}

.gallo-awards-section,
.gallo-awards-section > .row,
.gold-medal-section,
.gold-medal-section > .row {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.gallo-awards-section {
	margin: 0 auto;
}

body.home #main > .gallo-awards-section:last-of-type {
	margin-bottom: 72px;
}

.gallo-awards-inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 52%) minmax(0, 48%);
	grid-template-rows: auto 1fr;
	width: min(1440px, 100%);
	height: clamp(454px, 33.5vw, 482px);
	margin: 0 auto;
	padding: clamp(46px, 4.3vw, 62px) clamp(48px, 6vw, 88px);
	overflow: hidden;
	color: var(--gallo-2026-white);
	background-color: var(--gallo-awards-deep);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 0 0;
}

/* The ACF background stays on the original element and is art-directed here. */
.gallo-awards-inner::before {
	position: absolute;
	z-index: 0;
	inset: 0 0 0 auto;
	width: 100%;
	background-image: inherit;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
}

.gallo-awards-inner::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	width: 100%;
	background: linear-gradient(90deg, rgba(0, 0, 0, .72) 0%, rgba(0, 0, 0, .54) 38%, rgba(0, 0, 0, .12) 70%, transparent 100%);
	content: "";
	pointer-events: none;
}

.gallo-awards-inner > h6 {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	align-self: start;
	grid-column: 1;
	gap: 14px;
	margin: 0 0 22px;
	padding: 0;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .205em;
	text-transform: uppercase;
}

.gallo-awards-inner > h6::before {
	display: none;
}

.gallo-awards-text {
	position: relative;
	z-index: 3;
	align-self: center;
	grid-column: 1;
	padding: 0 34px 12px 0;
}

.gallo-awards-text h2,
.gallo-awards-inner .gallo-awards-text h2 {
	max-width: 590px;
	margin: 0;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(42px, 3.75vw, 54px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.01;
	letter-spacing: -.008em;
	text-wrap: pretty;
}

.gallo-awards-btn {
	margin: 27px 0 0;
	text-align: left;
}

.gallo-awards-btn .btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	min-width: 284px;
	min-height: 50px;
	padding: 12px 18px;
	overflow: hidden;
	border: 1px solid var(--gallo-2026-market-highlight);
	color: var(--gallo-2026-market-highlight);
	background-color: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
	text-decoration: none;
}

.gallo-awards-btn .btn::after {
	position: static;
	display: block;
	width: auto;
	height: auto;
	margin: 0 0 0 24px;
	border: 0;
	background: none;
	content: "\2192";
	font-size: 21px;
	line-height: 1;
	transform: none;
}

.gallo-awards-btn .btn::before {
	display: none;
}

.gallo-awards-btn .btn:hover,
.gallo-awards-btn .btn:focus-visible {
	color: var(--gallo-awards-deep);
}

.gallo-awards-btn .btn:hover::after,
.gallo-awards-btn .btn:focus-visible::after {
	transform: translateX(4px);
}

.gallo-awards-btn .btn:focus-visible,
.gallo-awards-btn .btn:focus {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 4px;
}

/* A full-height flex layer centres varying packshot proportions without the
 * translate offset that conflicts with the legacy parallax plugin. */
.gallo-awards-section .awards-product-image {
	position: absolute;
	z-index: 2;
	inset: 0 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48%;
	margin: 0;
	pointer-events: none;
	transform: none !important;
}

.gallo-awards-section .awards-product-image img {
	display: block;
	width: clamp(258px, 22vw, 318px);
	height: auto;
	max-height: 418px;
	object-fit: contain;
	filter: drop-shadow(0 24px 24px rgba(0, 0, 0, .32));
}

.awards-slider-mobile {
	display: none !important;
}

.gold-medal-section {
	width: min(1440px, 100%);
	margin: 0 auto;
	padding: clamp(44px, 3.5vw, 50px) clamp(48px, 6vw, 88px) clamp(44px, 3.5vw, 50px);
	overflow: visible;
	background: linear-gradient(to bottom, var(--gallo-awards-paper) 0%, var(--gallo-awards-paper) 84%, var(--gallo-2026-white) 100%);
}

.gold-medal-section h4 {
	margin: 0 0 22px;
	padding: 0 0 14px;
	border-bottom: 1px solid rgba(38, 19, 7, .18);
	color: var(--gallo-awards-deep);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(32px, 2.8vw, 40px);
	font-style: normal;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -.008em;
	text-transform: none;
}

.gold-medal-inner.w3n_gold_medal_1,
.gold-medal-inner.w3n_gold_medal_2,
.gold-medal-inner.w3n_gold_medal_3 {
	display: grid;
	margin: 0;
	justify-content: stretch;
}

.gold-medal-inner.w3n_gold_medal_1 {
	grid-template-columns: minmax(0, 360px);
	justify-content: center;
}

.gold-medal-inner.w3n_gold_medal_2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 920px;
	margin-right: auto;
	margin-left: auto;
}

.gold-medal-inner.w3n_gold_medal_3 {
	grid-template-columns: minmax(0, 1fr) minmax(0, .675fr) minmax(0, 1fr);
}

.gold-medal-section .product_inner {
	display: grid;
	align-content: start;
	align-items: start;
	justify-items: center;
	width: auto;
	padding: 0 35px;
	border-left: 1px solid rgba(38, 19, 7, .16);
}

.gold-medal-section .product_inner:first-child {
	padding-left: 36px;
	border-left: 0;
}

.gold-medal-section .product_inner:last-child {
	padding-right: 36px;
}

.gold-medal-section .product_inner .gold-medal-box {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	gap: 15px;
	width: min(100%, 250px);
	min-height: 100px;
	margin: 0;
	padding: 0 0 15px;
	border-bottom: 1px solid rgba(38, 19, 7, .12);
}

.gold-medal-section .product_inner .gold-medal-box + .gold-medal-box {
	margin-top: 15px;
	padding-bottom: 0;
	border-bottom: 0;
}

.gold-medal-section .gold-medal-ic {
	float: none;
	width: 40px;
	padding-top: 2px;
}

.gold-medal-section .gold-medal-ic img {
	display: block;
	width: 40px;
	height: auto;
}

.gold-medal-section .gold-medal-text {
	overflow: visible;
	padding: 0;
}

.gold-medal-section .product_inner .gold-medal-text h3 {
	height: auto !important;
	min-height: 0;
	margin: 0 0 4px;
	color: var(--gallo-awards-deep);
	font-family: var(--gallo-2026-highlight-font);
	font-size: 19px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.06;
}

.gold-medal-section .product_inner .gold-medal-text p {
	height: auto !important;
	min-height: 0;
	margin: 0 0 9px;
	color: #6c6157;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	line-height: 1.4;
	letter-spacing: 0;
}

.gold-medal-section .product_inner .gold-medal-text h6 {
	display: block;
	margin: 0;
	padding: 0;
	color: var(--gallo-awards-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.gold-medal-section .product_inner .gold-medal-text h6::before {
	display: none;
}

.gold-medal-inner-mobile {
	display: none !important;
}

@media only screen and (max-width: 1100px) {
	.gallo-awards-inner {
		grid-template-columns: 55% 45%;
		height: 458px;
		padding-right: 52px;
		padding-left: 52px;
	}

	.gallo-awards-inner::before {
		width: 100%;
	}

	.gallo-awards-inner::after {
		width: 100%;
	}

	.gallo-awards-text h2,
	.gallo-awards-inner .gallo-awards-text h2 {
		font-size: clamp(39px, 4.5vw, 49px);
	}

	.gallo-awards-section .awards-product-image {
		width: 45%;
	}

	.gallo-awards-section .awards-product-image img {
		width: 270px;
	}

	.gold-medal-section {
		padding-right: 52px;
		padding-left: 52px;
	}

	.gold-medal-section .product_inner {
		padding-right: 23px;
		padding-left: 23px;
	}

	.gold-medal-section .product_inner .gold-medal-box {
		width: min(100%, 235px);
	}
}

@media only screen and (max-width: 767px) {
	body.home #main > .gallo-awards-section:last-of-type {
		margin-bottom: 40px;
	}

	.gallo-awards-inner {
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: 188px auto auto;
		height: auto;
		min-height: 0;
		padding: 0 24px 21px;
	}

	.gallo-awards-inner::before {
		inset: 0 0 auto;
		width: 100%;
		height: 188px;
		background-position: 55% 48%;
	}

	.gallo-awards-inner::after {
		inset: 108px 0 auto;
		width: 100%;
		height: 80px;
		background: linear-gradient(0deg, rgba(0, 0, 0, .72), rgba(0, 0, 0, 0));
	}

	.gallo-awards-section .awards-product-image {
		position: relative;
		inset: auto;
		z-index: 2;
		align-self: end;
		justify-self: end;
		grid-row: 1;
		width: 129px;
		height: 188px;
		margin-right: 12px;
	}

	.gallo-awards-section .awards-product-image img {
		width: 129px;
		max-height: 183px;
		filter: drop-shadow(0 12px 12px rgba(0, 0, 0, .32));
	}

	.gallo-awards-inner > h6 {
		grid-row: 2;
		margin: 18px 0 10px;
		font-size: 10px;
	}

	.gallo-awards-inner > h6::before {
		width: 30px;
	}

	.gallo-awards-text {
		grid-column: 1;
		grid-row: 3;
		padding: 0;
	}

	.gallo-awards-text h2,
	.gallo-awards-inner .gallo-awards-text h2 {
		max-width: 326px;
		font-size: clamp(29px, 8.5vw, 34px);
		line-height: 1;
	}

	.gallo-awards-btn {
		display: block;
		margin-top: 16px;
	}

	.gallo-awards-btn .btn {
		width: 100%;
		max-width: 318px;
		min-width: 0;
		min-height: 48px;
		white-space: normal;
	}

	.gold-medal-section {
		padding: 34px 24px 32px;
	}

	.gold-medal-section h4 {
		margin-bottom: 17px;
		padding-bottom: 12px;
		font-size: 30px;
	}

	.gold-medal-inner.w3n_gold_medal_1,
	.gold-medal-inner.w3n_gold_medal_2,
	.gold-medal-inner.w3n_gold_medal_3 {
		display: block;
		max-width: none;
		margin: 0;
	}

	.gold-medal-section .product_inner,
	.gold-medal-section .product_inner:first-child,
	.gold-medal-section .product_inner:last-child {
		display: block;
		width: 100%;
		padding: 0;
		border: 0;
	}

	.gold-medal-section .product_inner + .product_inner {
		margin-top: 9px;
		padding-top: 9px;
		border-top: 1px solid rgba(38, 19, 7, .17);
	}

	.gold-medal-section .product_inner .gold-medal-box {
		grid-template-columns: 35px minmax(0, 1fr);
		gap: 12px;
		width: 100%;
		max-width: none;
		min-height: 0;
		padding-bottom: 10px;
	}

	.gold-medal-section .product_inner .gold-medal-box + .gold-medal-box {
		margin-top: 10px;
	}

	.gold-medal-section .gold-medal-ic,
	.gold-medal-section .gold-medal-ic img {
		width: 35px;
		height: auto;
	}

	.gold-medal-section .product_inner .gold-medal-text h3 {
		font-size: 17px;
	}

	.gold-medal-section .product_inner .gold-medal-text p {
		margin-bottom: 6px;
		font-size: 11px;
	}
}

@media only screen and (max-width: 340px) {
	.gallo-awards-inner {
		padding-right: 18px;
		padding-left: 18px;
	}

	.gold-medal-section {
		padding-right: 18px;
		padding-left: 18px;
	}

	.gallo-awards-section .awards-product-image {
		width: 120px;
		margin-right: 0;
	}

	.gallo-awards-section .awards-product-image img {
		width: 120px;
	}

	.gallo-awards-text h2,
	.gallo-awards-inner .gallo-awards-text h2 {
		font-size: 29px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gallo-awards-section[data-aos],
	.gold-medal-section[data-aos] {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	.gallo-awards-section .btn {
		transition: none !important;
	}
}

/* Homepage — Redes Sociais 2026
 * Keeps the ACF background, three editorial fields and dynamic Slick items.
 * The selectors are deliberately isolated from the footer's .follow-us block.
 */
#socialnetworkingsection.social-networking-section {
	--gallo-social-core-height: clamp(380px, 28vw, 404px);
	--gallo-social-footer-gap: 40px;
	position: relative;
	z-index: 0;
	box-sizing: border-box;
	width: min(1440px, 100%);
	max-width: none;
	min-height: calc(var(--gallo-social-core-height) + var(--gallo-social-footer-gap));
	margin: clamp(16px, 1.6vw, 24px) auto 0;
	padding: 0 0 var(--gallo-social-footer-gap);
	overflow: hidden;
	color: var(--gallo-2026-market-primary);
	background-color: var(--gallo-2026-white);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 0 0 !important;
}

/* Reuses the image selected in ACF without introducing a second media source. */
#socialnetworkingsection.social-networking-section::before {
	position: absolute;
	z-index: 0;
	inset: 0 auto var(--gallo-social-footer-gap) 0;
	display: block;
	width: 55%;
	height: auto;
	background-color: #f2eee6;
	background-image: inherit;
	background-position: 50% 42%;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	transform: scale(1);
	transform-origin: center;
	transition: transform 460ms cubic-bezier(.22, .61, .36, 1);
}

#socialnetworkingsection.social-networking-section::after,
#socialnetworkingsection.social-networking-section .line-drop {
	display: none;
}

#socialnetworkingsection.social-networking-section > .row {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 55% 45%;
	width: 100%;
	max-width: none;
	min-height: var(--gallo-social-core-height);
	margin: 0;
	padding: 0;
}

#socialnetworkingsection .testimonial-slider {
	position: relative;
	grid-column: 2;
	min-width: 0;
	min-height: var(--gallo-social-core-height);
	padding: 0;
	overflow: hidden;
	text-align: left;
}

#socialnetworkingsection .testimonial-slider:not(.slick-initialized) .testimonial-items,
#socialnetworkingsection .testimonial-slider .slick-slide {
	display: flex;
	align-items: center;
	min-height: var(--gallo-social-core-height);
	height: auto;
	padding: 42px clamp(42px, 3.7vw, 60px);
}

#socialnetworkingsection .testimonial-slider .slick-list,
#socialnetworkingsection .testimonial-slider .slick-track,
#socialnetworkingsection .testimonial-slider .slick-slide > div {
	height: 100%;
}

#socialnetworkingsection .testimonial-slider .slick-track {
	display: flex;
	align-items: stretch;
}

#socialnetworkingsection .testimonial-items,
#socialnetworkingsection .testimonial-items-inner {
	width: 100%;
}

#socialnetworkingsection .testimonial-items-inner {
	max-width: 590px;
	margin: 0;
}

#socialnetworkingsection .testimonial-items-inner h6 {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 15px;
	padding: 0;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: .205em;
	text-transform: uppercase;
}

#socialnetworkingsection .testimonial-items-inner h6::before {
	display: none;
}

#socialnetworkingsection .testimonial-items-inner h2 {
	max-width: none;
	margin: 0 0 17px;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(38px, 3.55vw, 52px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.01;
	letter-spacing: -.008em;
	text-wrap: pretty;
}

#socialnetworkingsection .testimonial-items-inner .follow-us {
	width: 100%;
	margin: 0;
}

/* The existing ACF follow-us title is the editable CTA label. */
#socialnetworkingsection .testimonial-items-inner .follow-us > span {
	display: block;
	max-width: 430px;
	margin: 0 0 6px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
}

#socialnetworkingsection .follow-us ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 24px;
	margin: 0;
	padding: 0;
	font-size: inherit;
	list-style: none;
}

#socialnetworkingsection .follow-us ul li,
#socialnetworkingsection .follow-us ul li:first-child {
	display: block;
	margin: 0;
	padding: 0;
}

#socialnetworkingsection .follow-us ul li a {
	position: relative;
	z-index: 0;
	display: inline-flex;
	align-items: center;
	width: auto;
	height: auto;
	min-height: 44px;
	overflow: visible;
	padding: 8px 0;
	border: 0;
	border-radius: 0;
	color: var(--gallo-2026-market-primary);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .015em;
	transition: color .2s ease, transform .2s ease;
}

#socialnetworkingsection .follow-us ul li a::before {
	position: static;
	z-index: 1;
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 0;
	background: var(--gallo-2026-market-primary);
	content: "";
	transition: background-color .22s ease;
}

#socialnetworkingsection .follow-us ul li a::after {
	position: static;
	display: block;
	width: auto;
	height: auto;
	margin-left: 9px;
	border: 0;
	border-bottom: 1px solid transparent;
	border-radius: 0;
	background: transparent;
	content: attr(title);
	transition: border-color .2s ease;
}

#socialnetworkingsection .follow-us ul li.fb-ic a,
#socialnetworkingsection .follow-us ul li.insta-ic a,
#socialnetworkingsection .follow-us ul li.youtube-ic a,
#socialnetworkingsection .follow-us ul li.fb-ic a:hover,
#socialnetworkingsection .follow-us ul li.insta-ic a:hover,
#socialnetworkingsection .follow-us ul li.youtube-ic a:hover {
	background-image: none;
}

#socialnetworkingsection .follow-us ul li.fb-ic a::before {
	width: 11px;
	-webkit-mask: url("../images/fb-dark.svg") center / contain no-repeat;
	mask: url("../images/fb-dark.svg") center / contain no-repeat;
}

#socialnetworkingsection .follow-us ul li.insta-ic a::before {
	-webkit-mask: url("../images/insta-dark.svg") center / contain no-repeat;
	mask: url("../images/insta-dark.svg") center / contain no-repeat;
}

#socialnetworkingsection .follow-us ul li.youtube-ic a::before {
	width: 22px;
	-webkit-mask: url("../images/youtube-dark.svg") center / contain no-repeat;
	mask: url("../images/youtube-dark.svg") center / contain no-repeat;
}

#socialnetworkingsection .follow-us ul li a:hover,
#socialnetworkingsection .follow-us ul li a:focus-visible {
	color: var(--gallo-2026-market-accent);
	background: transparent;
	transform: translateX(2px);
}

#socialnetworkingsection .follow-us ul li a:hover::before,
#socialnetworkingsection .follow-us ul li a:focus-visible::before {
	background: var(--gallo-2026-market-accent);
}

#socialnetworkingsection .follow-us ul li a:hover::after,
#socialnetworkingsection .follow-us ul li a:focus-visible::after {
	border-color: currentColor;
}

#socialnetworkingsection .follow-us ul li a:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

/* The legacy template always emits this empty placeholder after the section. */
#socialnetworkingsection + .social-image-section {
	margin: 0;
	padding: 0;
}

@media (hover: hover) and (pointer: fine) {
	#socialnetworkingsection.social-networking-section:hover::before {
		transform: scale(1.03);
	}
}

@media only screen and (max-width: 1100px) {
	#socialnetworkingsection.social-networking-section {
		--gallo-social-core-height: 380px;
		--gallo-social-footer-gap: 36px;
	}

	#socialnetworkingsection.social-networking-section::before {
		width: 54%;
	}

	#socialnetworkingsection.social-networking-section > .row {
		grid-template-columns: 54% 46%;
	}

	#socialnetworkingsection .testimonial-slider:not(.slick-initialized) .testimonial-items,
	#socialnetworkingsection .testimonial-slider .slick-slide {
		padding: 38px 32px;
	}

	#socialnetworkingsection .testimonial-items-inner h2 {
		font-size: clamp(34px, 4.2vw, 46px);
	}
}

@media only screen and (max-width: 767px) {
	#socialnetworkingsection.social-networking-section {
		--gallo-social-footer-gap: 36px;
		min-height: 0;
	}

	#socialnetworkingsection.social-networking-section::before {
		inset: 0 0 auto;
		width: 100%;
		height: clamp(190px, 56.25vw, 250px);
		background-position: 50% 44%;
	}

	#socialnetworkingsection.social-networking-section > .row {
		display: block;
		min-height: 0;
		padding-top: clamp(190px, 56.25vw, 250px);
	}

	#socialnetworkingsection .testimonial-slider {
		min-height: 0;
		overflow: visible;
	}

	#socialnetworkingsection .testimonial-slider:not(.slick-initialized) .testimonial-items,
	#socialnetworkingsection .testimonial-slider .slick-slide {
		align-items: flex-start;
		min-height: 0;
		padding: 28px 24px 26px;
	}

	#socialnetworkingsection .testimonial-slider .slick-list,
	#socialnetworkingsection .testimonial-slider .slick-track,
	#socialnetworkingsection .testimonial-slider .slick-slide > div {
		height: auto;
	}

	#socialnetworkingsection .testimonial-items-inner {
		max-width: none;
	}

	#socialnetworkingsection .testimonial-items-inner h6 {
		margin-bottom: 13px;
		font-size: 11px;
	}

	#socialnetworkingsection .testimonial-items-inner h6::before {
		flex-basis: 28px;
		width: 28px;
	}

	#socialnetworkingsection .testimonial-items-inner h2 {
		margin-bottom: 14px;
		font-size: clamp(31px, 8.8vw, 36px);
		line-height: 1.03;
	}

	#socialnetworkingsection .testimonial-items-inner .follow-us > span {
		margin-bottom: 5px;
		font-size: 12px;
		line-height: 1.4;
	}

	#socialnetworkingsection .follow-us ul {
		gap: 2px 18px;
	}

	#socialnetworkingsection .follow-us ul li a {
		min-height: 44px;
	}

	/*
	 * The button is a child of .footer-top .row. On mobile that positioned row
	 * made bottom:18px overlap the market selector. The footer remains the
	 * positioning context, so the control sits inside its copyright strip.
	 */
	.footer-top .row {
		position: static;
	}
}

@media (prefers-reduced-motion: reduce) {
	#socialnetworkingsection.social-networking-section::before,
	#socialnetworkingsection .follow-us ul li a,
	#socialnetworkingsection .follow-us ul li a::before {
		transition: none;
	}

	#socialnetworkingsection.social-networking-section:hover::before {
		transform: none;
	}

	#socialnetworkingsection .follow-us ul li a:hover,
	#socialnetworkingsection .follow-us ul li a:focus-visible {
		transform: none;
	}
}

/* Homepage — Products V2
 * Visual layer over the existing taxonomy/ACF loop. The first term remains the
 * editorial Azeites feature; links, content, icons and hover images stay dynamic.
 */
.our-product-section {
	width: min(1440px, 100%);
	max-width: none;
	margin: 0 auto;
	padding: clamp(68px, 6vw, 92px) clamp(28px, 5.5vw, 80px) clamp(64px, 5vw, 76px);
	overflow: visible;
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-white);
}

body.home:not(.gallo-market-pt-pt) .our-product-section {
	padding-top: var(--gallo-2026-home-section-gap);
	padding-bottom: var(--gallo-2026-home-section-gap);
}

.our-product-section > .row {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.our-product-text {
	padding: 0 0 clamp(34px, 3.6vw, 50px);
}

.our-product-text h6 {
	display: flex;
	align-items: center;
	gap: 0;
	margin: 0 0 22px;
	padding: 0;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .205em;
	text-transform: uppercase;
}

.our-product-text h6::before {
	display: none;
	content: none;
}

.our-product-text h2 {
	max-width: 1220px;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-highlight-font);
	font-size: clamp(50px, 5.1vw, 74px);
	font-style: normal;
	font-weight: 700;
	line-height: 1.01;
	letter-spacing: -.008em;
	text-wrap: balance;
}

.our-product-wrapper,
.our-product-wrapper.work-fadein {
	display: grid;
	grid-template-columns: clamp(310px, 28vw, 390px) repeat(4, minmax(0, 1fr));
	gap: clamp(12px, 1.15vw, 18px);
	width: 100%;
	margin: 0;
	opacity: 1;
	transform: none;
	transition: none;
}

.our-product-section .product-item,
.our-product-section .four_categories .product-item {
	float: none;
	width: auto;
	min-width: 0;
	min-height: 0;
	height: auto !important;
	padding: 0;
	text-align: center;
	transform: none !important;
}

.our-product-section .product-item:nth-child(odd) {
	clear: none;
	padding-top: 0;
}

.our-product-section .product-item-bg {
	float: none;
	width: 100%;
	height: 100%;
	min-height: clamp(470px, 38vw, 548px);
	padding: 0;
	overflow: hidden;
	border: 1px solid rgba(173, 128, 55, .34);
	background: #fbfaf6;
	isolation: isolate;
}

.our-product-section .product-item-bg > a {
	position: relative;
	z-index: 0;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	min-height: inherit;
	padding: 56px 20px 31px;
	color: inherit;
	text-decoration: none;
	flex-direction: column;
}

.our-product-section .product-item-ic {
	position: absolute;
	z-index: 4;
	top: 24px;
	left: 50%;
	display: block;
	width: 38px;
	height: 38px;
	margin: 0;
	transform: translateX(-50%);
}

.our-product-section .product-item-ic img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.our-product-section .product-item-ic .hover-block {
	display: none;
}

.our-product-section .product-image {
	position: relative;
	z-index: 2;
	width: 100%;
	min-height: 0;
	height: clamp(270px, 24vw, 330px) !important;
	margin: 0 0 18px;
	overflow: hidden;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	line-height: normal;
	transition: opacity .45s ease, transform .45s cubic-bezier(.2, .7, .2, 1);
}

.our-product-section .product-item-hover-img {
	position: absolute;
	z-index: 0;
	inset: 0;
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: 0;
	visibility: hidden;
	transform: scale(1.035);
	transition: opacity .45s ease, visibility .45s ease, transform .5s cubic-bezier(.2, .7, .2, 1);
}

.our-product-section .product-item-bg > a::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(180deg, transparent 37%, rgba(0, 21, 40, .84) 100%);
	content: "";
	opacity: 0;
	pointer-events: none;
	transition: opacity .4s ease;
}

.our-product-section .product-item h5,
.our-product-section .product-item:hover h5 {
	position: relative;
	z-index: 3;
	display: block;
	max-width: 100%;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(22px, 1.8vw, 28px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.04;
	text-transform: none;
	transition: color .35s ease, transform .4s ease;
}

body.gallo-market-pt-pt .our-product-section .product-item:nth-child(2) h5 {
	max-width: 100%;
	font-size: clamp(18px, 1.35vw, 20px);
}

.our-product-section .product-item h5::after {
	display: none;
	content: none;
}

.our-product-section .product-item h3,
.our-product-section .product-item:hover h3 {
	position: relative;
	z-index: 3;
	width: 100%;
	max-width: 210px;
	min-height: 2.2em;
	margin: 0 auto;
	color: var(--gallo-2026-brown);
	font-family: var(--gallo-2026-highlight-font);
	font-size: clamp(18px, 1.45vw, 23px);
	font-style: normal;
	font-weight: 500;
	line-height: 1.1;
	transition: color .35s ease, transform .4s ease;
}

.our-product-section .product-item-bg .normal_div {
	position: absolute;
	right: 20px;
	bottom: 16px;
	left: 20px;
	z-index: 4;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: auto;
	margin: 0;
	padding: 13px 0 0;
	border-top: 1px solid rgba(255, 255, 255, .72);
	color: #fff;
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity .35s ease, visibility .35s ease, transform .4s ease;
}

.our-product-section .product-item-bg .normal_div::after {
	content: "\2192";
	font-size: 18px;
	font-style: normal;
	line-height: 1;
}

/* First category: Azeites editorial feature. Its image remains the existing
 * product_category_image ACF output; production should select the supplied trio.
 */
.our-product-section .product-item:first-child .product-item-hover-img {
	opacity: 0;
	visibility: hidden;
	transform: scale(1.01);
}

.our-product-section .product-item:first-child .product-item-bg > a::before {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(180deg, rgba(248, 242, 216, .35) 0%, rgba(251, 250, 246, .88) 70%, #fbfaf6 100%);
	content: "";
	opacity: 1;
	pointer-events: none;
	transition: opacity .42s ease;
}

.our-product-section .product-item:first-child .product-image {
	height: clamp(285px, 27vw, 360px) !important;
}

.our-product-section .product-item-bg > a:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: -4px;
}

/* The approved Products block meets the already integrated Awards block with
 * no legacy 108px gap; both sections retain their own internal spacing.
 */
.our-product-section + .gallo-awards-section {
	margin-top: 0;
}

@media (hover: hover) and (pointer: fine) {
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover .product-item-hover-img,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible .product-item-hover-img {
		opacity: 1;
		visibility: visible;
		transform: scale(1);
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover::after,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible::after {
		opacity: 1;
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover .product-image,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible .product-image {
		visibility: visible;
		margin-bottom: 18px;
		opacity: 0;
		transform: scale(1.025);
	}

	.our-product-section .product-item-bg > a:hover .hover-none,
	.our-product-section .product-item-bg > a:focus-visible .hover-none {
		display: none;
	}

	.our-product-section .product-item-bg > a:hover .hover-block,
	.our-product-section .product-item-bg > a:focus-visible .hover-block {
		display: block;
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover h5,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover h3,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible h5,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible h3 {
		color: #fff;
		transform: translateY(-34px);
	}

	.our-product-section .product-item-bg > a:hover .normal_div,
	.our-product-section .product-item-bg > a:focus-visible .normal_div {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover .product-item-hover-img,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible .product-item-hover-img {
		opacity: 1;
		visibility: visible;
		transform: scale(1);
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover .product-image,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible .product-image {
		visibility: visible;
		margin-bottom: 18px;
		opacity: 0;
		transform: translateY(-4px) scale(1.018);
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover::before,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible::before {
		opacity: 0;
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover::after,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible::after {
		opacity: 1;
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover h5,
	.our-product-section .product-item:first-child .product-item-bg > a:hover h3,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible h5,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible h3 {
		color: #fff;
		transform: translateY(-34px);
	}
}

@media only screen and (max-width: 1199px) {
	.our-product-wrapper,
	.our-product-wrapper.work-fadein {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.our-product-section .product-item:first-child {
		grid-column: span 2;
	}

	.our-product-section .product-item-bg {
		min-height: 500px;
	}
}

@media only screen and (min-width: 768px) and (max-width: 899px) {
	.our-product-section .product-item-bg {
		min-height: 440px;
	}

	.our-product-section .product-image {
		height: 246px !important;
	}

	.our-product-section .product-item:first-child .product-image {
		height: 286px !important;
	}
}

@media only screen and (max-width: 767px) {
	.our-product-section {
		padding: 52px 22px 40px;
	}

	.our-product-text {
		padding-bottom: 30px;
	}

	.our-product-text h6 {
		gap: 0;
		margin-bottom: 17px;
		font-size: 10px;
	}

	.our-product-text h6::before {
		display: none;
		content: none;
	}

	.our-product-text h2 {
		font-size: clamp(37px, 9.8vw, 43px);
		line-height: .99;
	}

	.our-product-wrapper,
	.our-product-wrapper.work-fadein {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.our-product-section .product-item:first-child {
		grid-column: 1 / -1;
	}

	.our-product-section .product-item-bg,
	.our-product-section .product-item:first-child .product-item-bg {
		height: 100%;
		min-height: 0;
		border-color: rgba(173, 128, 55, .28);
	}

	.our-product-section .product-item-bg > a {
		min-height: 0;
		padding: 43px 12px 18px;
	}

	.our-product-section .product-item-ic {
		top: 17px;
		width: 29px;
		height: 29px;
	}

	.our-product-section .product-image,
	.our-product-section .product-item:hover .product-image {
		height: clamp(166px, 43vw, 188px) !important;
		margin-bottom: 8px;
		opacity: 1;
		visibility: visible;
		transform: none;
	}

	.our-product-section .product-item:first-child .product-image,
	.our-product-section .product-item:first-child:hover .product-image {
		height: clamp(286px, 76vw, 326px) !important;
		margin-bottom: 10px;
	}

	.our-product-section .product-item .product-item-hover-img,
	.our-product-section .product-item:hover .product-item-hover-img {
		opacity: 0;
		visibility: hidden;
		transform: scale(1.035);
	}

	.our-product-section .product-item:first-child .product-item-hover-img,
	.our-product-section .product-item:first-child:hover .product-item-hover-img {
		opacity: 0;
		visibility: hidden;
		transform: scale(1.01);
	}

	.our-product-section .product-item:first-child .product-item-bg > a::before {
		background: linear-gradient(180deg, rgba(248, 242, 216, .2) 0%, rgba(248, 242, 216, .32) 48%, rgba(251, 250, 246, .68) 72%, rgba(251, 250, 246, .96) 94%, #fbfaf6 100%);
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover .product-item-hover-img,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible .product-item-hover-img {
		opacity: 0;
		visibility: hidden;
		transform: scale(1.035);
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover::after,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible::after,
	.our-product-section .product-item:first-child .product-item-bg > a:hover::after,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible::after {
		opacity: 0;
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover .product-image,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible .product-image {
		visibility: visible;
		margin-bottom: 8px;
		opacity: 1;
		transform: none;
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover .product-item-hover-img,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible .product-item-hover-img {
		opacity: 0;
		visibility: hidden;
		transform: scale(1.01);
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover .product-image,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible .product-image {
		visibility: visible;
		margin-bottom: 10px;
		opacity: 1;
		transform: none;
	}

	.our-product-section .product-item:first-child .product-item-bg > a:hover::before,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible::before {
		opacity: 1;
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover h5,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible h5,
	.our-product-section .product-item:first-child .product-item-bg > a:hover h5,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible h5 {
		color: var(--gallo-2026-market-primary);
		transform: none;
	}

	.our-product-section .product-item:not(:first-child) .product-item-bg > a:hover h3,
	.our-product-section .product-item:not(:first-child) .product-item-bg > a:focus-visible h3,
	.our-product-section .product-item:first-child .product-item-bg > a:hover h3,
	.our-product-section .product-item:first-child .product-item-bg > a:focus-visible h3 {
		color: var(--gallo-2026-brown);
		transform: none;
	}

	.our-product-section .product-item h5,
	.our-product-section .product-item:hover h5 {
		font-size: clamp(18px, 5.7vw, 23px);
	}

	.our-product-section .product-item h5::after {
		display: none;
		content: none;
	}

	.our-product-section .product-item h3,
	.our-product-section .product-item:hover h3 {
		min-height: 2.2em;
		font-size: clamp(15px, 4.6vw, 19px);
	}

	.our-product-section .product-item-bg .normal_div,
	.our-product-section .product-item-bg > a:hover .normal_div,
	.our-product-section .product-item-bg > a:focus-visible .normal_div {
		display: none;
		opacity: 0;
		visibility: hidden;
		transform: none;
	}

	.our-product-section .product-item-ic .hover-none {
		display: block !important;
	}

	.our-product-section .product-item-ic .hover-block {
		display: none !important;
	}
}

@media only screen and (max-width: 359px) {
	.our-product-section {
		padding-right: 18px;
		padding-left: 18px;
	}

	.our-product-wrapper,
	.our-product-wrapper.work-fadein {
		grid-template-columns: 1fr;
	}

	.our-product-section .product-item:first-child {
		grid-column: auto;
	}

	.our-product-section .product-image {
		height: 230px !important;
	}

	.our-product-section .product-item:first-child .product-image {
		height: 284px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.our-product-section *,
	.our-product-section *::before,
	.our-product-section *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/* Homepage — Receitas 2026
 * Visual layer over the existing WP_Query/ACF/WPML markup and slider2.
 * Deliberately scoped to body.home so recipe listings and legacy sliders keep
 * their current presentation and behaviour.
 */
body.home .recipes-moments-section {
	position: relative;
	box-sizing: border-box;
	width: min(1440px, 100%);
	margin: 0 auto;
	padding: clamp(46px, 4.2vw, 60px) clamp(20px, 3.35vw, 48px);
	overflow: hidden;
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-white);
}

/* Tighten only the boundary between the approved Recipes and Products sections.
 * Their internal padding and layout remain unchanged. */
body.home .recipes-moments-section + .our-product-section {
	margin-top: -52px;
}

body.home .recipes-moments-section .slideshow2 {
	position: relative;
	width: 100%;
	height: auto;
	max-width: 1344px;
	margin: 0 auto;
	overflow: hidden;
	border: 0;
	background: var(--gallo-2026-white);
}

body.home .recipes-moments-section .slideshow2::after {
	display: none;
}

body.home .recipes-moments-section .slide2 {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

body.home .recipes-moments-section .slide2.slide--current {
	position: relative;
	z-index: 2;
	height: auto;
	opacity: 1;
	pointer-events: auto;
}

body.home .recipes-moments-section .slide__wrap2 {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.48fr) minmax(410px, .92fr);
	width: 100%;
	height: auto;
	min-height: 530px;
	overflow: hidden;
}

body.home .recipes-moments-section .slide__img2 {
	position: relative;
	top: auto;
	left: auto;
	width: 100%;
	height: 100%;
	min-height: 530px;
	overflow: hidden;
	background-color: #d9cfa4;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	pointer-events: none;
}

body.home .recipes-moments-section .slide__img2::before {
	display: none;
}

body.home .recipes-moments-section .slide__title-wrap2 {
	position: relative;
	top: auto;
	left: auto;
	display: flex;
	width: 100%;
	height: auto;
	min-width: 0;
	max-width: none;
	margin: 0;
	padding: clamp(42px, 3.5vw, 52px) clamp(42px, 4vw, 60px) 102px;
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-white);
	text-align: left;
	flex-direction: column;
	justify-content: flex-start;
}

body.home .recipes-moments-section .slide__title-wrap2::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 8px;
	background: var(--gallo-2026-market-highlight);
	content: "";
}

body.home .recipes-moments-section .slide__title-wrap2 h6 {
	position: static;
	display: flex;
	align-items: center;
	gap: 15px;
	max-width: none;
	margin: 0 0 30px;
	padding: 0;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .205em;
	text-align: left;
	text-transform: uppercase;
}

body.home .recipes-moments-section .slide__title-wrap2 h6::before {
	display: none;
}

body.home .recipes-moments-section .slide__title-wrap2 .title-wrap-inner {
	width: 100%;
	max-width: 500px;
	margin: 0;
	padding: 0;
	text-align: left;
}

body.home .recipes-moments-section .product-detail-recipes-text-top {
	margin: 0 0 22px;
}

body.home .recipes-moments-section .product-detail-recipes-text-top ul {
	display: flex;
	align-items: center;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.home .recipes-moments-section .product-detail-recipes-text-top ul li {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0 16px;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .045em;
	text-transform: uppercase;
}

body.home .recipes-moments-section .product-detail-recipes-text-top ul li:first-child {
	padding-left: 0;
}

body.home .recipes-moments-section .product-detail-recipes-text-top ul li + li::before {
	position: absolute;
	top: 2px;
	left: 0;
	width: 1px;
	height: 18px;
	background: rgba(173, 128, 55, .4);
	content: "";
	transform: none;
}

body.home .recipes-moments-section .product-detail-recipes-text-top ul li img {
	display: block;
	width: 20px;
	height: 20px;
	margin: 0;
	object-fit: contain;
	filter: brightness(0) saturate(100%) invert(52%) sepia(27%) saturate(1088%) hue-rotate(358deg) brightness(91%) contrast(87%);
	mix-blend-mode: multiply;
}

/* Category icons may be JPEGs with a white canvas in the current ACF data. */
body.home .recipes-moments-section .product-detail-recipes-text-top ul li:first-child img {
	filter: none;
}

/* Round 2 asks the complete recipe metadata set to follow Pantone 2301 C in
 * every international market. Hue-shifting the supplied gold/brown ACF icons
 * preserves transparent and white pixels without introducing market-specific
 * duplicate media. Portugal retains the approved gold icon treatment. */
body.home:not(.gallo-market-pt-pt) .recipes-moments-section .product-detail-recipes-text-top ul li img {
	filter: hue-rotate(43deg) saturate(1.18) brightness(.94);
	mix-blend-mode: multiply;
}

body.home .recipes-moments-section .slide__title-wrap2 .slide__title {
	position: static;
	display: block;
	max-width: none;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(40px, 3.45vw, 52px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.01;
	letter-spacing: -.008em;
	text-align: left;
	text-decoration: none;
	text-wrap: balance;
}

body.home .recipes-moments-section .slide__title-wrap2 h2.slide__title {
	min-height: 3em;
}

body.home .recipes-moments-section .slide__title-wrap2 h2.slide__title > a {
	min-height: 0;
}

body.home .recipes-moments-section .slide__title-wrap2 .slide__title a:hover,
body.home .recipes-moments-section .slide__title-wrap2 .slide__title a:focus-visible {
	color: var(--gallo-2026-gold);
}

body.home .recipes-moments-section .slide__title-wrap2 .slide__title a:focus-visible,
body.home .recipes-moments-section .know-recipes-btn a:focus-visible,
body.home .recipes-moments-section .boxnav2 button:focus-visible {
	outline: 2px solid #ff9601;
	outline-offset: 4px;
}

body.home .recipes-moments-section .know-recipes-btn {
	position: static;
	width: auto;
	max-width: none;
	margin: 28px 0 0;
	padding: 0;
	text-align: left;
}

body.home .recipes-moments-section .know-recipes-btn .btn {
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 36px;
	width: auto;
	min-width: 244px;
	min-height: 54px;
	max-width: none;
	padding: 15px 20px;
	border: 1px solid var(--gallo-2026-market-primary);
	color: var(--gallo-2026-white);
	background: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	text-decoration: none;
	transition: color .28s ease, background-color .28s ease;
}

body.home .recipes-moments-section .know-recipes-btn .btn::before {
	display: none;
}

body.home .recipes-moments-section .know-recipes-btn .btn::after {
	position: static;
	top: auto;
	left: auto;
	z-index: auto;
	display: block;
	width: auto;
	height: auto;
	color: var(--gallo-2026-market-highlight);
	background: transparent;
	content: "\2192";
	font-family: var(--gallo-2026-ui-font);
	font-size: 21px;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	transition: color .28s ease, transform .28s ease;
}

body.home .recipes-moments-section .know-recipes-btn .btn:hover {
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-white);
}

body.home .recipes-moments-section .know-recipes-btn .btn:hover::after,
body.home .recipes-moments-section .know-recipes-btn .btn:focus-visible::after {
	color: var(--gallo-2026-gold);
	transform: translateX(4px);
}

body.home .recipes-moments-section .boxnav2 {
	position: absolute;
	/* slider2.js gives the incoming/current slide z-index 1000/999. */
	z-index: 1001;
	right: clamp(62px, 7.2vw, 104px);
	bottom: calc(clamp(46px, 4.2vw, 60px) + 30px);
	left: auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 13px;
	width: auto;
	text-align: left;
}

body.home .recipes-moments-section .boxnav2 .boxnav__item2 {
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(21, 44, 98, .32);
	border-radius: 50%;
	color: var(--gallo-2026-market-primary);
	background: transparent;
	cursor: pointer;
	transition: color .25s ease, border-color .25s ease, background-color .25s ease;
}

body.home .recipes-moments-section .boxnav2 .boxnav__item--prev2,
body.home .recipes-moments-section .boxnav2 .boxnav__item--next2,
body.home .recipes-moments-section .boxnav2 .boxnav__item--prev2:focus,
body.home .recipes-moments-section .boxnav2 .boxnav__item--next2:focus {
	background-image: none !important;
}

body.home .recipes-moments-section .boxnav2 .boxnav__item2:hover,
body.home .recipes-moments-section .boxnav2 .boxnav__item2:focus-visible {
	border-color: var(--gallo-2026-market-primary);
	color: var(--gallo-2026-white);
	background-color: var(--gallo-2026-market-primary) !important;
	background-image: none !important;
}

body.home .recipes-moments-section .boxnav2 .boxnav__item--prev2::before,
body.home .recipes-moments-section .boxnav2 .boxnav__item--next2::before {
	position: static;
	inset: auto;
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	color: currentColor;
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	transform: none;
	transition: none;
}

body.home .recipes-moments-section .boxnav2 .boxnav__item--prev2::before {
	content: "\2190";
}

body.home .recipes-moments-section .boxnav2 .boxnav__item--next2::before {
	content: "\2192";
}

body.home .recipes-moments-section .boxnav2 .boxnav__item--prev2:hover,
body.home .recipes-moments-section .boxnav2 .boxnav__item--next2:hover,
body.home .recipes-moments-section .boxnav2 .boxnav__item--prev2:focus-visible,
body.home .recipes-moments-section .boxnav2 .boxnav__item--next2:focus-visible {
	transform: none;
}

body.home .recipes-moments-section .boxnav2 .boxnav__item--label2 {
	width: auto;
	min-width: 72px;
	border: 0;
	border-radius: 0;
	color: var(--gallo-2026-market-primary);
	background: transparent;
	cursor: default;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	transition: color .25s ease, background-color .25s ease;
}

body.home .recipes-moments-section .boxnav2 .boxnav__item--label2 span {
	padding: 0;
	color: var(--gallo-2026-market-primary);
}

body.home .recipes-moments-section .boxnav2 .boxnav__label--total2::before {
	position: static;
	top: auto;
	right: auto;
	display: inline-block;
	width: auto;
	height: auto;
	padding: 0 7px;
	color: var(--gallo-2026-gold);
	background: transparent;
	content: "/";
	transform: none;
}

@media (hover: hover) and (pointer: fine) {
	body.home .recipes-moments-section .boxnav2 .boxnav__item--label2:hover {
		color: var(--gallo-2026-white);
		background-color: var(--gallo-2026-market-primary);
	}

	body.home .recipes-moments-section .boxnav2 .boxnav__item--label2:hover span {
		color: var(--gallo-2026-white);
	}

	body.home .recipes-moments-section .boxnav2 .boxnav__item--label2:hover .boxnav__label--total2::before {
		color: var(--gallo-2026-market-highlight);
	}
}

@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
	body.home .recipes-moments-section .slide__img2 {
		pointer-events: auto;
		transition: transform 460ms cubic-bezier(.2, .7, .2, 1);
		will-change: transform;
	}

	/* This also wins over the two legacy title/CTA inline hover handlers,
	 * without changing custom.js or the slider's navigation animation. */
	body.home .recipes-moments-section .slide__wrap2:hover .slide__img2,
	body.home .recipes-moments-section .slide__wrap2:focus-within .slide__img2 {
		transform: scale(1.03) !important;
	}
}

@media only screen and (max-width: 900px) {
	body.home .recipes-moments-section {
		padding: 48px 24px;
	}

	body.home .recipes-moments-section .slide__wrap2 {
		grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr);
		min-height: 510px;
	}

	body.home .recipes-moments-section .slide__img2 {
		min-height: 510px;
	}

	body.home .recipes-moments-section .slide__title-wrap2 {
		padding: 39px 34px 96px;
	}

	body.home .recipes-moments-section .boxnav2 {
		right: 58px;
		bottom: 78px;
	}
}

@media only screen and (max-width: 767px) {
	body.home .recipes-moments-section + .our-product-section {
		margin-top: -46px;
	}

	body.home .recipes-moments-section {
		width: 100%;
		margin: 0;
		padding: 20px 0 30px;
	}

	body.home .recipes-moments-section .slideshow2 {
		height: auto;
		margin: 0;
	}

	body.home .recipes-moments-section .slide2,
	body.home .recipes-moments-section .slide2.slide--current {
		height: auto;
	}

	body.home .recipes-moments-section .slide__wrap2 {
		display: grid;
		grid-template-columns: 1fr;
		min-height: 0;
	}

	body.home .recipes-moments-section .slide__img2 {
		height: clamp(230px, 68vw, 264px);
		min-height: 0;
		background-position: 57% center;
		pointer-events: none;
		transform: none;
	}

	body.home .recipes-moments-section .slide__title-wrap2 {
		min-height: 374px;
		padding: 29px 28px 82px;
		justify-content: flex-start;
	}

	body.home .recipes-moments-section .slide__title-wrap2::before {
		right: 0;
		bottom: auto;
		width: auto;
		height: 6px;
	}

	body.home .recipes-moments-section .slide__title-wrap2 h6 {
		max-width: none;
		margin: 0 0 23px;
		font-size: 11px;
	}

	body.home .recipes-moments-section .slide__title-wrap2 .title-wrap-inner {
		max-width: none;
		padding: 0;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top {
		margin-bottom: 20px;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto auto;
		align-items: center;
		gap: 0;
		width: 100%;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li {
		gap: 5px;
		min-width: 0;
		padding-right: 6px;
		padding-left: 6px;
		font-size: 10px;
		line-height: 1.25;
		white-space: normal;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li:last-child {
		padding-right: 0;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li:first-child span {
		min-width: 0;
		word-break: normal;
		overflow-wrap: break-word;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li:not(:first-child) span {
		white-space: nowrap;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li + li::before {
		top: 50%;
		height: 14px;
		transform: translateY(-50%);
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li img {
		width: 15px;
		height: 15px;
	}

	body.home .recipes-moments-section .slide__title-wrap2 .slide__title {
		font-size: clamp(34px, 10.5vw, 41px);
		line-height: 1;
	}

	body.home .recipes-moments-section .know-recipes-btn {
		margin-top: 24px;
	}

	body.home .recipes-moments-section .know-recipes-btn .btn {
		width: 100%;
		min-width: 0;
		min-height: 50px;
	}

	body.home .recipes-moments-section .boxnav2 {
		right: 28px;
		bottom: 42px;
		gap: 9px;
	}

	body.home .recipes-moments-section .boxnav2 .boxnav__item2 {
		width: 38px;
		height: 38px;
	}

	body.home .recipes-moments-section .boxnav2 .boxnav__item--label2 {
		width: auto;
		min-width: 62px;
		font-size: 11px;
	}
}

@media only screen and (max-width: 359px) {
	body.home .recipes-moments-section .product-detail-recipes-text-top ul {
		grid-template-columns: 1fr 1fr;
		row-gap: 8px;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li:first-child {
		grid-column: 1 / -1;
		justify-content: center;
		padding-right: 0;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li:nth-child(2) {
		justify-content: flex-end;
		padding-right: 12px;
		padding-left: 0;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li:nth-child(2)::before {
		display: none;
	}

	body.home .recipes-moments-section .product-detail-recipes-text-top ul li:last-child {
		justify-content: flex-start;
		padding-left: 12px;
	}

	body.home .recipes-moments-section .slide__title-wrap2 {
		padding-right: 20px;
		padding-left: 20px;
	}

	body.home .recipes-moments-section .boxnav2 {
		right: 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.home .recipes-moments-section *,
	body.home .recipes-moments-section *::before,
	body.home .recipes-moments-section *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}

	body.home .recipes-moments-section .slide__wrap2:hover .slide__img2,
	body.home .recipes-moments-section .slide__wrap2:focus-within .slide__img2 {
		transform: none !important;
	}
}

/* --------------------------------------------------------------------------
 * Homepage Hero 2026
 *
 * Visual layer over the existing ACF slider. The legacy structural selectors
 * remain intact for slider.js, autoplay, swipe and the responsive image swap.
 * No rule below depends on a slide index or a campaign-specific class.
 * -------------------------------------------------------------------------- */
body.home .hero-2026 {
	--hero-2026-height: clamp(620px, 47.9vw, 690px);
	--hero-2026-header-safe: 118px;
	position: relative;
	height: var(--hero-2026-height);
	min-height: var(--hero-2026-height);
	overflow: hidden;
	background: var(--gallo-2026-navy);
	isolation: isolate;
}

body.home .hero-2026 .slideshow,
body.home .hero-2026 .hero-2026__slide,
body.home .hero-2026 .hero-2026__frame,
body.home .hero-2026 .hero-2026__media {
	height: var(--hero-2026-height) !important;
	min-height: var(--hero-2026-height);
}

body.home .hero-2026 .slideshow {
	margin: 0;
	overflow: hidden;
}

body.home .hero-2026 .hero-2026__slide {
	overflow: hidden;
}

body.home .hero-2026 .hero-2026__frame {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

body.home .banner-slider.hero-2026 .slideshow .slide .hero-2026__media {
	position: absolute;
	inset: 0;
	width: 100%;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	pointer-events: none;
}

/* Editorial mode needs only a short lateral contrast field. */
body.home .hero-2026 .hero-2026__slide--editorial .hero-2026__media::before {
	z-index: 1;
	background: linear-gradient(
		90deg,
		rgba(0, 21, 40, .92) 0%,
		rgba(0, 21, 40, .82) 17%,
		rgba(0, 21, 40, .58) 30%,
		rgba(0, 21, 40, .20) 42%,
		rgba(0, 21, 40, 0) 50%
	) !important;
}

/* Campaign artwork remains unobstructed because lettering is part of the asset. */
body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__media::before {
	background: transparent !important;
}

body.home .hero-2026 .hero-2026__content {
	position: absolute;
	z-index: 2;
	inset: 0;
	display: block;
	width: 100%;
	max-width: none;
	height: 100%;
	min-height: 0;
	margin: 0;
	padding: 0;
	text-align: left;
	pointer-events: none;
}

body.home .hero-2026 .hero-2026__content-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	width: min(1312px, calc(100% - 96px));
	max-width: none;
	height: 100%;
	margin: 0 auto;
	padding: calc(var(--hero-2026-header-safe) + 24px) 0 92px;
	text-align: left;
	pointer-events: none;
}

body.home .hero-2026 .hero-2026__content-inner > * {
	max-width: 520px;
	pointer-events: auto;
}

/* Neutralise the mobile absolute-link treatment only inside the new hero. */
body.home .hero-2026 .hero-2026__content a {
	position: relative !important;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	display: block;
	width: auto;
	max-width: 520px;
	margin-right: 0;
	margin-left: 0;
	text-align: left;
}

body.home .hero-2026 .hero-2026__eyebrow {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 18px;
	padding: 0;
	color: var(--gallo-2026-market-highlight);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: .16em;
	text-transform: uppercase;
}

body.home .hero-2026 .hero-2026__eyebrow::before {
	display: none;
}

body.home .hero-2026 .hero-2026__title,
body.home .hero-2026 .slideshow h1.hero-2026__title {
	margin: 0;
	color: currentColor;
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(50px, 4.4vw, 68px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.01;
	letter-spacing: -.008em;
	text-transform: uppercase;
}

body.home .hero-2026 .hero-2026__subtitle,
body.home .hero-2026 .slide__title-wrap p.hero-2026__subtitle {
	display: block;
	max-width: 390px;
	margin: 22px 0 0;
	color: currentColor;
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	opacity: .86;
}

body.home .hero-2026 .hero-2026__cta,
body.home .hero-2026 .btnflip_,
body.home .hero-2026 .slideshow .hero-2026__cta {
	position: relative !important;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	width: auto;
	min-width: 190px;
	max-width: 350px;
	height: auto;
	min-height: 52px;
	margin: 28px 0 0 !important;
	padding: 10px 20px;
	border: 1px solid currentColor !important;
	color: var(--gallo-2026-white);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
	text-align: left !important;
	transition: color 250ms ease, background 250ms ease, transform 250ms ease;
}

body.home .hero-2026 .hero-2026__cta::before,
body.home .hero-2026 .hero-2026__cta::after {
	display: none;
}

body.home .hero-2026 .hero-2026__cta-arrow {
	flex: 0 0 auto;
	font-size: 22px;
	line-height: 1;
	transition: transform 250ms ease;
}

body.home .hero-2026 .hero-2026__cta:hover,
body.home .hero-2026 .hero-2026__cta:focus-visible {
	color: var(--gallo-2026-white);
	border-color: var(--gallo-2026-title-color) !important;
	background: var(--gallo-2026-title-color);
	transform: translateY(-2px);
}

body.home .hero-2026 .hero-2026__cta:hover .hero-2026__cta-arrow,
body.home .hero-2026 .hero-2026__cta:focus-visible .hero-2026__cta-arrow {
	transform: translateX(4px);
}

body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__content-inner {
	align-items: flex-start;
	justify-content: flex-end;
	padding-bottom: 94px;
}

body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__cta,
body.home .hero-2026 .hero-2026__slide--campaign .slideshow .hero-2026__cta {
	min-width: 190px;
	min-height: 52px;
	margin: 0 !important;
	padding: 10px 20px;
	border: 1px solid currentColor !important;
	color: var(--gallo-2026-white);
	background: transparent;
	box-shadow: none;
}

body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__cta:hover,
body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__cta:focus-visible {
	color: var(--gallo-2026-white);
	border-color: var(--gallo-2026-title-color) !important;
	background: var(--gallo-2026-title-color);
	transform: translateY(-2px);
}

body.home .hero-2026 .hero-2026__slide--campaign.lightimage .hero-2026__cta,
body.home .hero-2026 .hero-2026__slide--campaign.lightimage .slideshow .hero-2026__cta {
	min-height: 52px;
	padding: 10px 18px;
	border: 1px solid var(--gallo-2026-title-color) !important;
	color: var(--gallo-2026-title-color);
	background: transparent;
	box-shadow: none;
}

body.home .hero-2026 .hero-2026__slide--campaign.lightimage .hero-2026__cta:hover,
body.home .hero-2026 .hero-2026__slide--campaign.lightimage .hero-2026__cta:focus-visible {
	color: var(--gallo-2026-white);
	background: var(--gallo-2026-title-color);
	transform: translateY(-2px);
}

/* First PT campaign banner: the approved copy is editorial HTML over the
 * text-free desktop/mobile artwork. hp-slide-sec is emitted only for pt-pt,
 * so the BR slide and every other market keep their existing composition. */
body.home .hp-slide-sec .hero-2026__slide:first-child.hero-2026__slide--editorial .hero-2026__media::before {
	background: transparent !important;
}

body.home .hp-slide-sec .slideshow > .hero-2026__slide:first-child .hero-2026__content-inner {
	text-align: left;
}

body.home .hp-slide-sec .slideshow > .hero-2026__slide:first-child .hero-2026__content-inner > a:not(.hero-2026__cta) {
	margin-right: auto !important;
	margin-left: 0 !important;
	text-align: left !important;
}

body.home .hp-slide-sec .hero-2026__slide:first-child.hero-2026__slide--editorial .hero-2026__title,
body.home .hp-slide-sec .hero-2026__slide:first-child.hero-2026__slide--editorial h1.hero-2026__title {
	max-width: 650px;
	color: #f8f2d8;
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(70px, 4.8vw, 92px);
	font-weight: 800;
	line-height: .92;
	letter-spacing: -.012em;
}

body.home .hp-slide-sec .hero-2026__slide:first-child .hero-2026__title-block {
	display: block;
	white-space: nowrap;
}

body.home .hp-slide-sec .hero-2026__slide:first-child .hero-2026__title-block + .hero-2026__title-block {
	margin-top: .38em;
}

body.home .hero-2026 .hero-2026__nav {
	position: absolute;
	z-index: 1001;
	right: auto;
	bottom: 34px;
	left: max(48px, calc((100vw - 1312px) / 2));
	display: flex;
	align-items: center;
	gap: 16px;
	width: auto;
	opacity: .88;
	transition: opacity 250ms ease;
}

body.home .hero-2026 .hero-2026__nav:hover,
body.home .hero-2026 .hero-2026__nav:focus-within {
	opacity: 1;
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--prev,
body.home .hero-2026 .hero-2026__nav .boxnav__item--next {
	position: relative;
	right: auto;
	bottom: auto;
	left: auto;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, .36);
	border-radius: 50%;
	color: var(--gallo-2026-white);
	background: rgba(0, 21, 40, .12) !important;
	font-family: var(--gallo-2026-ui-font);
	line-height: 1;
	transition: color 250ms ease, border-color 250ms ease, background 250ms ease;
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--prev::before,
body.home .hero-2026 .hero-2026__nav .boxnav__item--next::before {
	position: static;
	inset: auto;
	display: block;
	width: 14px;
	height: 14px;
	margin: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: contain;
	content: "";
	transform: none;
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--prev::before {
	background-image: url("../images/angle-left-white.svg");
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--next::before {
	background-image: url("../images/angle-right-white.svg");
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--prev:hover,
body.home .hero-2026 .hero-2026__nav .boxnav__item--prev:focus-visible,
body.home .hero-2026 .hero-2026__nav .boxnav__item--next:hover,
body.home .hero-2026 .hero-2026__nav .boxnav__item--next:focus-visible {
	border-color: var(--gallo-2026-market-highlight);
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-2026-market-highlight) !important;
	transform: none;
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--prev:hover::before,
body.home .hero-2026 .hero-2026__nav .boxnav__item--prev:focus-visible::before {
	background-image: url("../images/angle-left-black.svg");
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--next:hover::before,
body.home .hero-2026 .hero-2026__nav .boxnav__item--next:focus-visible::before {
	background-image: url("../images/angle-right-black1.svg");
}

body.home .hero-2026 .hero-2026__nav .boxnav__item--label {
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: auto;
	min-width: 55px;
	height: auto;
	padding: 0;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 500;
	line-height: 1;
}

body.home .hero-2026 .hero-2026__nav .boxnav__label {
	color: currentColor;
	padding: 0;
}

body.home .hero-2026 .hero-2026__nav .boxnav__label--total {
	position: relative;
	padding-left: 24px;
	opacity: .7;
}

body.home .hero-2026 .hero-2026__nav .boxnav__label--total::before {
	top: 50%;
	right: auto;
	left: 4px;
	width: 16px;
	height: 1px;
	background: var(--gallo-2026-gold);
	transform: rotate(-52deg);
}

body.home .hero-2026 a:focus-visible,
body.home .hero-2026 button:focus-visible {
	outline: 2px solid #ff9601;
	outline-offset: 3px;
}

/* This editorial remnant stays in the CMS/DOM but is superseded visually by
 * the approved Hero V3 navigation and would otherwise collide with it. */
body.home .hero-2026 > .explorar-text {
	display: none;
}

@media only screen and (max-width: 1080px) {
	body.home .hero-2026 .hero-2026__content-inner {
		width: calc(100% - 64px);
	}

	body.home .hero-2026 .hero-2026__nav {
		left: 32px;
	}
}

@media only screen and (max-width: 767px) {
	body.home .hero-2026 {
		--hero-2026-height: clamp(700px, 190vw, 760px);
		--hero-2026-header-safe: 86px;
		height: var(--hero-2026-height);
		min-height: var(--hero-2026-height);
		overflow: hidden;
	}

	body.home .hero-2026 .slideshow,
	body.home .hero-2026 .hero-2026__slide,
	body.home .hero-2026 .hero-2026__frame,
	body.home .hero-2026 .hero-2026__media,
	body.home .hero-2026 .not_smallimg_slid,
	body.home .hero-2026 .smallimg_slid {
		height: var(--hero-2026-height) !important;
		min-height: var(--hero-2026-height);
	}

	body.home .banner-slider.hero-2026 .slideshow .slide .hero-2026__media {
		background-position: center center !important;
		background-repeat: no-repeat !important;
		background-size: cover !important;
	}

	body.home .hero-2026 .hero-2026__slide--editorial .hero-2026__media::before {
		background: linear-gradient(
			180deg,
			rgba(0, 21, 40, .18) 0%,
			rgba(0, 21, 40, 0) 28%,
			rgba(0, 21, 40, .08) 48%,
			rgba(0, 21, 40, .76) 69%,
			rgba(0, 21, 40, .97) 100%
		) !important;
	}

	/* Asset-independent safe area for Campaign CTA and navigation. */
	body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__frame::after {
		position: absolute;
		z-index: 1;
		right: 0;
		bottom: 0;
		left: 0;
		height: 148px;
		background: linear-gradient(
			180deg,
			rgba(0, 21, 40, 0) 0%,
			rgba(0, 21, 40, .58) 48%,
			rgba(0, 21, 40, .92) 100%
		);
		content: "";
		pointer-events: none;
	}

	body.home .hero-2026 .hero-2026__content {
		z-index: 2;
	}

	body.home .hero-2026 .hero-2026__content-inner {
		align-items: flex-start;
		justify-content: flex-end;
		width: calc(100% - 40px);
		padding: var(--hero-2026-header-safe) 0 92px;
	}

	body.home .hero-2026 .hero-2026__content-inner > * {
		max-width: 345px;
	}

	body.home .hero-2026 .hero-2026__eyebrow {
		gap: 12px;
		margin-bottom: 12px;
		font-size: 11px;
	}

	body.home .hero-2026 .hero-2026__eyebrow::before {
		flex-basis: 30px;
		width: 30px;
	}

	body.home .hero-2026 .hero-2026__title,
	body.home .hero-2026 .slideshow h1.hero-2026__title {
		max-width: 345px;
		font-size: clamp(38px, 10.5vw, 46px);
		line-height: .99;
	}

	body.home .hero-2026 .hero-2026__subtitle,
	body.home .hero-2026 .slide__title-wrap p.hero-2026__subtitle {
		max-width: 330px;
		margin-top: 14px;
		font-size: 14px;
		line-height: 1.42;
	}

	body.home .hero-2026 .hero-2026__cta,
	body.home .hero-2026 .slideshow .hero-2026__cta {
		min-width: 166px;
		min-height: 48px;
		margin-top: 18px !important;
	}

	body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__content-inner {
		align-items: flex-start;
		padding-bottom: 92px;
	}

	body.home .hero-2026 .hero-2026__slide--campaign .hero-2026__cta,
	body.home .hero-2026 .hero-2026__slide--campaign .slideshow .hero-2026__cta {
		min-height: 48px;
		margin-top: 0 !important;
	}

	body.home .hp-slide-sec .hero-2026__slide:first-child.hero-2026__slide--editorial .hero-2026__content-inner {
		justify-content: flex-start;
		padding-top: calc(var(--hero-2026-header-safe) + 18px);
	}

	body.home .hp-slide-sec .hero-2026__slide:first-child.hero-2026__slide--editorial .hero-2026__title,
	body.home .hp-slide-sec .hero-2026__slide:first-child.hero-2026__slide--editorial h1.hero-2026__title {
		max-width: 350px;
		font-size: clamp(36px, 9.8vw, 40px);
		line-height: .88;
	}

	body.home .hp-slide-sec .hero-2026__slide:first-child .hero-2026__title-block + .hero-2026__title-block {
		margin-top: .34em;
	}

	body.home .hp-slide-sec .hero-2026__slide:first-child .hero-2026__cta,
	body.home .hp-slide-sec .hero-2026__slide:first-child .slideshow .hero-2026__cta {
		margin-top: 18px !important;
	}

	body.home .hero-2026 .hero-2026__nav {
		bottom: 28px;
		left: 20px;
		gap: 12px;
	}

	body.home .hero-2026 .hero-2026__nav .boxnav__item--prev,
	body.home .hero-2026 .hero-2026__nav .boxnav__item--next {
		width: 36px;
		height: 36px;
	}
}

@media only screen and (max-width: 340px) {
	body.home .hero-2026 {
		--hero-2026-height: 700px;
	}

	body.home .hero-2026 .hero-2026__content-inner {
		width: calc(100% - 30px);
	}

	body.home .hero-2026 .hero-2026__title,
	body.home .hero-2026 .slideshow h1.hero-2026__title {
		font-size: 38px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.home .hero-2026 *,
	body.home .hero-2026 *::before,
	body.home .hero-2026 *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}

	body.home .hero-2026 .hero-2026__frame,
	body.home .hero-2026 .hero-2026__media,
	body.home .hero-2026 .hero-2026__content {
		transform: none !important;
	}
}

/* --------------------------------------------------------------------------
 * Products mega menu V2
 *
 * Visual-only layer over the dynamic shortcode/Max Mega Menu markup. Product
 * categories, child categories, cards, links and Owl navigation remain owned
 * by WordPress, ACF, WPML and the existing JavaScript.
 * ----------------------------------------------------------------------- */
@media only screen and (min-width: 921px) {
	.products-menu-list .mega-sub-menu,
	.products-menu-list .sub-menu {
		max-width: 100vw;
		max-height: calc(100vh - 112px);
		overflow-x: hidden;
		overflow-y: auto;
		background: var(--gallo-2026-white);
		border-top: 1px solid rgba(21, 44, 98, .1) !important;
		box-shadow: 0 18px 34px rgba(0, 21, 40, .12);
	}

	.header-section-inner.fixed:not(.maintain-height) .products-menu-list .mega-sub-menu,
	.header-section-inner.fixed:not(.maintain-height) .products-menu-list .sub-menu {
		max-height: calc(100vh - 72px);
	}

	.products-menu-list .products-submenu-container {
		width: 100%;
		max-width: 100vw;
		background: var(--gallo-2026-white);
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-ui-font);
	}

	.products-menu-list .products-submenu-parents-cats-container {
		display: flex;
		padding: 0 clamp(28px, 4vw, 64px);
		background: #fffdf8;
		border-bottom: 1px solid rgba(21, 44, 98, .13);
	}

	.products-menu-list .products-submenu-parents-cats-container > .col {
		flex: 1 1 0;
		gap: 12px;
		min-width: 0;
		min-height: 76px;
		padding: 13px 16px;
		border: 0;
		border-right: 1px solid rgba(21, 44, 98, .13);
		color: var(--gallo-2026-title-color);
		background: transparent;
	}

	.products-menu-list .products-submenu-parents-cats-container > .col:first-child {
		border-left: 1px solid rgba(21, 44, 98, .13);
	}

	.products-menu-list .products-submenu-parents-cats-container > .col::before {
		position: absolute;
		z-index: 0;
		top: 0;
		bottom: 0;
		left: 0;
		width: 0;
		height: 100%;
		background: var(--gallo-2026-title-color);
		content: "";
		transition: width 320ms ease;
	}

	.products-menu-list .products-submenu-parents-cats-container > .col:hover::before,
	.products-menu-list .products-submenu-parents-cats-container > .col.active::before {
		width: 100%;
		transition-duration: 320ms;
	}

	.products-menu-list .products-submenu-parents-cats-container > .col > div {
		position: relative;
		z-index: 1;
	}

	.products-menu-list .products-cat-submenu-image {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 34px;
		width: 34px;
		height: 34px;
		margin-right: 0;
	}

	.products-menu-list .products-cat-submenu-image img {
		display: block;
		max-width: 34px;
		max-height: 34px;
		object-fit: contain;
	}

	.products-menu-list .products-cat-submenu-name {
		min-width: 0;
		color: var(--gallo-2026-title-color);
		font-family: var(--gallo-2026-ui-font);
		font-size: 13px;
		font-weight: 600;
		line-height: 1.2;
		text-align: center;
	}

	.products-menu-list .products-submenu-parents-cats-container > .col:hover .products-cat-submenu-name,
	.products-menu-list .products-submenu-parents-cats-container > .col.active .products-cat-submenu-name {
		color: var(--gallo-2026-white);
	}

	.products-menu-list .products-submenu-parents-cats-container > .col:hover .products-cat-submenu-image img,
	.products-menu-list .products-submenu-parents-cats-container > .col.active .products-cat-submenu-image img {
		filter: brightness(0) invert(1);
	}

	.products-menu-list .list-child-cat-products {
		min-height: 0;
		margin: 0;
		padding: 22px clamp(28px, 4vw, 64px) 18px !important;
		background: #f8f4e9 !important;
		border: 0 !important;
	}

	.products-menu-list .list-child-cat-products.active:not(.padding-fix-menu) {
		display: grid !important;
		grid-template-columns: clamp(190px, 17vw, 236px) minmax(0, 1fr);
		align-items: stretch;
	}

	.products-menu-list .list-child-cat-products.active.padding-fix-menu {
		display: block !important;
	}

	.products-menu-list .list-child-cats-names {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: stretch;
		width: auto;
		min-width: 0;
		padding: 2px 28px 2px 0;
		border-right: 1px solid rgba(21, 44, 98, .13);
	}

	.products-menu-list .list-child-cats-names > li {
		position: relative;
		display: block !important;
		margin: 0;
		padding: 6px 0 !important;
		color: #5f6673;
		font-family: var(--gallo-2026-ui-font);
		font-size: 13px;
		font-weight: 400;
		line-height: 1.25;
		text-align: left;
		transition: color 180ms ease;
	}

	.products-menu-list .list-child-cats-names > li:hover,
	.products-menu-list .list-child-cats-names > li.active {
		color: var(--gallo-2026-title-color);
	}

	.products-menu-list .list-child-cats-names > li.active {
		font-weight: 700;
	}

	.products-menu-list .list-child-cats-names > li.active::after {
		position: absolute;
		top: 50%;
		right: -29px;
		width: 2px;
		height: 18px;
		background: var(--gallo-2026-title-color);
		content: "";
		transform: translateY(-50%);
	}

	.products-menu-list .list-child-cats-products {
		display: block;
		width: auto;
		min-width: 0;
		padding: 0 54px 0 32px;
	}

	.products-menu-list .product-cat-container {
		position: relative;
		min-width: 0;
	}

	.products-menu-list .product-cat-container.active {
		height: auto;
		min-height: 232px;
		overflow: visible;
	}

	.products-menu-list .product-cat-container .owl-stage-outer {
		overflow: hidden;
	}

	.products-menu-list .product-cat-container .owl-item {
		margin-right: 0 !important;
		border-right: 1px solid rgba(21, 44, 98, .12);
	}

	.products-menu-list .product-cat-container .product-card-block {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-end;
		width: clamp(190px, 17vw, 230px) !important;
		min-height: 232px;
		padding: 0 20px 8px;
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-ui-font);
		transform: translateY(0);
		transition: transform 280ms ease;
	}

	.products-menu-list .product-cat-container .product-card-block,
	.products-menu-list .product-cat-container .product-card-block img,
	.products-menu-list .product-cat-container .product-card-block h3,
	.products-menu-list .product-cat-container .product-card-block:hover,
	.products-menu-list .product-cat-container .product-card-block:hover img,
	.products-menu-list .product-cat-container .product-card-block:hover h3 {
		top: 0;
	}

	.products-menu-list .product-cat-container .product-card-block:hover,
	.products-menu-list .product-cat-container .product-card-block:focus-visible {
		transform: translateY(-3px);
	}

	.products-menu-list .product-cat-container .product-card-block:focus-visible {
		outline: 2px solid var(--gallo-2026-gold);
		outline-offset: -2px;
	}

	.products-menu-list .owl-carousel .owl-item img,
	.products-menu-list .product-cat-container .product-card-block > img {
		display: block;
		width: auto;
		height: 180px;
		max-width: 100%;
		margin: 0 auto;
		object-fit: contain;
		object-position: center bottom;
	}

	.products-menu-list .product-cat-container .product-card-block h3 {
		width: 100%;
		margin: 5px 0 0;
		padding: 12px 0 0;
		border-top: 1px solid rgba(21, 44, 98, .16);
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-title-font);
		font-size: 19px;
		font-weight: 700;
		line-height: 1.08;
		text-align: center;
	}

	.products-menu-list .product-cat-container .owl-nav {
		position: absolute;
		top: 50%;
		right: -48px;
		display: flex;
		flex-direction: column;
		gap: 8px;
		margin: 0;
		padding: 0;
		opacity: 0;
		pointer-events: none;
		transform: translateY(-50%);
		transition: opacity 200ms ease;
	}

	.products-menu-list .product-cat-container:hover .owl-nav,
	.products-menu-list .product-cat-container:focus-within .owl-nav {
		opacity: .82;
		pointer-events: auto;
	}

	.products-menu-list .product-cat-container .owl-prev,
	.products-menu-list .product-cat-container .owl-next {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 36px;
		height: 36px;
		margin: 0;
		padding: 0;
		border: 1px solid rgba(21, 44, 98, .18);
		border-radius: 50%;
		background: transparent;
	}

	.products-menu-list .product-cat-container .owl-prev.disabled,
	.products-menu-list .product-cat-container .owl-next.disabled {
		opacity: .3;
	}

	.products-menu-list .product-cat-container .owl-prev:focus-visible,
	.products-menu-list .product-cat-container .owl-next:focus-visible {
		outline: 2px solid var(--gallo-2026-gold);
		outline-offset: 2px;
	}

	.products-menu-list .menu-carousel-arrow-left,
	.products-menu-list .menu-carousel-arrow-right {
		width: 13px;
		height: 13px;
		background: var(--gallo-2026-market-primary);
		-webkit-mask-position: center;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		mask-position: center;
		mask-repeat: no-repeat;
		mask-size: contain;
	}

	.products-menu-list .menu-carousel-arrow-left {
		-webkit-mask-image: url("../images/angle-left-green.svg");
		mask-image: url("../images/angle-left-green.svg");
	}

	.products-menu-list .menu-carousel-arrow-right {
		-webkit-mask-image: url("../images/angle-right-green.svg");
		mask-image: url("../images/angle-right-green.svg");
	}
}

@media only screen and (min-width: 921px) and (max-width: 1279px) {
	.products-menu-list .products-submenu-parents-cats-container,
	.products-menu-list .list-child-cat-products {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.products-menu-list .products-submenu-parents-cats-container > .col {
		gap: 8px;
		min-height: 70px;
		padding-right: 9px;
		padding-left: 9px;
	}

	.products-menu-list .products-cat-submenu-image {
		flex-basis: 29px;
		width: 29px;
		height: 29px;
	}

	.products-menu-list .products-cat-submenu-image img {
		max-width: 29px;
		max-height: 29px;
	}

	.products-menu-list .products-cat-submenu-name {
		font-size: 12px;
	}

	.products-menu-list .list-child-cat-products.active:not(.padding-fix-menu) {
		grid-template-columns: 200px minmax(0, 1fr);
	}

	.products-menu-list .list-child-cats-names {
		padding-right: 22px;
	}

	.products-menu-list .list-child-cats-names > li.active::after {
		right: -23px;
	}

	.products-menu-list .list-child-cats-products {
		padding-left: 24px;
	}

	.products-menu-list .product-cat-container .product-card-block {
		width: 190px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.products-menu-list .products-submenu-parents-cats-container > .col::before,
	.products-menu-list .product-cat-container .product-card-block,
	.products-menu-list .product-cat-container .owl-nav {
		transition: none !important;
	}
}

/* --------------------------------------------------------------------------
 * Country / language popup V3
 *
 * Visual layer over the existing footer.php markup and the select elements
 * emitted by my_footer_languages_list(). ACF data, WPML URLs, session state,
 * AJAX and redirects remain owned by the legacy implementation.
 * ----------------------------------------------------------------------- */
body.language-menu-popup-open .header-section {
	z-index: 1000000000;
}

body.language-menu-popup-open .language-menu-popup {
	display: grid;
	place-items: start center;
	width: 100%;
	height: 100%;
	padding: 160px 48px 48px;
	overflow-x: hidden;
	overflow-y: auto;
	background-image:
		linear-gradient(rgba(10, 21, 40, .38), rgba(10, 21, 40, .38)),
		url("../images/background-img.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	font-family: var(--gallo-2026-ui-font);
	text-align: left;
}

body.language-menu-popup-open .language-menu-popup-inner {
	position: relative;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	display: grid;
	grid-template-columns: minmax(0, .87fr) minmax(560px, 1.13fr);
	grid-template-rows: 1fr 1fr;
	width: min(1180px, 100%);
	max-width: 1180px;
	min-height: 476px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	background: var(--gallo-2026-white);
	box-shadow: 0 26px 70px rgba(11, 26, 50, .24);
}

body.language-menu-popup-open .language-menu-popup-inner::before {
	display: block;
	grid-column: 1;
	grid-row: 1 / 3;
	width: 100%;
	height: 100%;
	background: #f8f4e9;
	content: "";
	z-index: 0;
}

body.language-menu-popup-open .language-menu-popup h2,
body.language-menu-popup-open .language-menu-popup p,
body.language-menu-popup-open .language-menu-popup .country-language-dropdown {
	position: relative;
	z-index: 1;
}

body.language-menu-popup-open .language-menu-popup h2 {
	grid-column: 1;
	grid-row: 1;
	align-self: end;
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 58px 64px 11px;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(36px, 2.85vw, 44px);
	font-style: normal;
	font-weight: 800;
	letter-spacing: -.028em;
	line-height: 1;
	text-align: left;
}

body.language-menu-popup-open .language-menu-popup p {
	grid-column: 1;
	grid-row: 2;
	align-self: start;
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 12px 64px 60px;
	color: var(--gallo-2026-body-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.55;
	text-align: left;
}

body.language-menu-popup-open .language-menu-popup .country-language-dropdown {
	grid-column: 2;
	grid-row: 1 / 3;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 52px 58px 48px;
	background: var(--gallo-2026-white);
}

body.language-menu-popup-open .country-language-dropdown > .language-select {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 86px;
	gap: 15px;
	align-items: end;
	width: 100%;
	text-align: left;
}

body.language-menu-popup-open .country-language-dropdown > .language-select > .w3n-lag-sec {
	display: block;
	width: auto;
	max-width: none;
	min-width: 0;
	margin: 0;
}

body.language-menu-popup-open .gallo-2026-language-label {
	display: block;
	margin: 0 0 10px;
	color: #ad8037;
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: .09em;
	line-height: 1.2;
	text-transform: uppercase;
}

body.language-menu-popup-open .country-language-dropdown .wpml-ls,
body.language-menu-popup-open .country-language-dropdown .language-select,
body.language-menu-popup-open .country-language-dropdown .w3nlaguage_select {
	width: 100%;
	max-width: none;
	margin: 0;
}

body.language-menu-popup-open .country-language-dropdown .nice-select {
	float: none;
	width: 100%;
	max-width: none;
	height: 62px;
	margin: 0;
	padding: 0 46px 0 18px;
	border: 1px solid #cfc8b8;
	border-radius: 0;
	background: var(--gallo-2026-white);
	box-shadow: none;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-style: normal;
	font-weight: 650;
	line-height: 60px;
	text-align: left;
}

/* Native-select fallback used before/without the existing nice-select plugin. */
body.language-menu-popup-open .country-language-dropdown select.mainlanguage,
body.language-menu-popup-open .country-language-dropdown select.sel_lang_opt {
	width: 100%;
	max-width: none;
	height: 62px;
	margin: 0;
	padding: 0 46px 0 18px;
	appearance: none;
	border: 1px solid #cfc8b8;
	border-radius: 0;
	background:
		linear-gradient(45deg, transparent 50%, #ad8037 50%) calc(100% - 19px) 27px / 6px 6px no-repeat,
		linear-gradient(135deg, #ad8037 50%, transparent 50%) calc(100% - 13px) 27px / 6px 6px no-repeat,
		var(--gallo-2026-white);
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-style: normal;
	font-weight: 650;
	line-height: 60px;
	text-align: left;
}

body.language-menu-popup-open .country-language-dropdown .nice-select::after {
	top: 50%;
	right: 18px;
	left: auto;
	width: 7px;
	height: 7px;
	margin: -5px 0 0;
	border-color: #ad8037;
	border-width: 0 1px 1px 0;
}

body.language-menu-popup-open .country-language-dropdown .nice-select:focus,
body.language-menu-popup-open .country-language-dropdown .nice-select:focus-visible {
	border-color: var(--gallo-2026-title-color);
	outline: 0;
	box-shadow: 0 0 0 3px var(--gallo-2026-market-highlight);
}

body.language-menu-popup-open .country-language-dropdown .nice-select .list {
	width: 100%;
	height: auto !important;
	max-height: 280px !important;
	margin: 4px 0 0;
	padding: 8px 0;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	border: 1px solid #d8d1c1;
	border-radius: 0;
	background: var(--gallo-2026-white);
	box-shadow: 0 16px 34px rgba(11, 26, 50, .14);
	color: var(--gallo-2026-market-primary);
	text-align: left;
	z-index: 30;
}

body.language-menu-popup-open .country-language-dropdown .nice-select .option {
	float: none;
	clear: both;
	width: 100%;
	min-height: 38px;
	margin: 0;
	padding: 9px 18px;
	color: var(--gallo-2026-body-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px;
}

body.language-menu-popup-open .country-language-dropdown .nice-select .option:hover,
body.language-menu-popup-open .country-language-dropdown .nice-select .option.focus,
body.language-menu-popup-open .country-language-dropdown .nice-select .option.selected {
	background: #f8f4e9;
	color: var(--gallo-2026-title-color);
}

body.language-menu-popup-open .country-language-dropdown .nice-select .option.selected {
	font-weight: 700;
}

body.language-menu-popup-open .country-language-dropdown .nice-select .option.selected::after {
	display: none;
}

body.language-menu-popup-open .country-language-dropdown .nice-select .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	width: 4px;
	background-color: var(--gallo-2026-title-color) !important;
}

body.language-menu-popup-open .country-language-dropdown .lag-go-btn,
body.language-menu-popup-open .country-language-dropdown .language-select > .w3n-lag-sec:last-child a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 86px;
	max-width: none;
	height: 62px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--gallo-2026-title-color);
	border-radius: 0;
	background: var(--gallo-2026-title-color);
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 750;
	letter-spacing: .12em;
	line-height: 1;
	text-align: center;
}

body.language-menu-popup-open .country-language-dropdown .lag-go-btn::before,
body.language-menu-popup-open .country-language-dropdown .lag-go-btn::after,
body.language-menu-popup-open .country-language-dropdown .orvisit-sec .btn::before,
body.language-menu-popup-open .country-language-dropdown .orvisit-sec .btn::after {
	display: none;
}

body.language-menu-popup-open .country-language-dropdown .lag-go-btn:hover,
body.language-menu-popup-open .country-language-dropdown .lag-go-btn:focus-visible {
	border-color: var(--gallo-2026-title-color);
	background: var(--gallo-2026-title-color);
	color: var(--gallo-2026-white);
	outline: 2px solid #ad8037;
	outline-offset: 3px;
	filter: brightness(.84);
}

body.language-menu-popup-open .country-language-dropdown .orvisit-sec {
	margin: 32px 0 0;
	padding: 26px 0 0;
	border-top: 1px solid #ddd7c8;
	text-align: left;
}

body.language-menu-popup-open .country-language-dropdown .orvisit-sec h5 {
	display: block;
	margin: 0 0 13px;
	padding: 0;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.35;
	text-align: left;
	text-transform: uppercase;
}

body.language-menu-popup-open .country-language-dropdown .orvisit-sec .btn {
	display: inline-flex;
	width: auto;
	max-width: none;
	height: auto;
	min-width: 0;
	margin: 0 28px 0 0;
	padding: 5px 0 4px;
	border: 0;
	border-bottom: 1px solid transparent;
	background: transparent;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	font-style: normal;
	font-weight: 650;
	line-height: 1.35;
	text-align: left;
}

body.language-menu-popup-open .country-language-dropdown .orvisit-sec .btn:hover,
body.language-menu-popup-open .country-language-dropdown .orvisit-sec .btn:focus-visible {
	border-bottom-color: #ad8037;
	color: var(--gallo-2026-title-color);
	outline: 0;
}

body.language-menu-popup-open .language-menu-popup .w3n-lmp-logo {
	display: none;
}

body.language-menu-popup-open .language-menu-close {
	top: 180px;
	right: max(66px, calc((100vw - 1180px) / 2 + 18px));
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	line-height: 44px;
	z-index: 3;
}

body.language-menu-popup-open .language-menu-close img {
	display: none;
}

body.language-menu-popup-open .language-menu-close::before,
body.language-menu-popup-open .language-menu-close::after {
	position: absolute;
	top: 21px;
	left: 11px;
	width: 22px;
	height: 1px;
	background: var(--gallo-2026-market-primary);
	content: "";
}

body.language-menu-popup-open .language-menu-close::before {
	transform: rotate(45deg);
}

body.language-menu-popup-open .language-menu-close::after {
	transform: rotate(-45deg);
}

body.language-menu-popup-open .language-menu-close:hover {
	background: transparent;
}

body.language-menu-popup-open .language-menu-close:focus-visible {
	outline: 2px solid #ad8037;
	outline-offset: 2px;
}

@media only screen and (min-width: 768px) and (max-width: 1100px) {
	body.language-menu-popup-open .language-menu-popup {
		padding-right: 28px;
		padding-left: 28px;
	}

	body.language-menu-popup-open .language-menu-popup-inner {
		grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
	}

	body.language-menu-popup-open .language-menu-popup h2 {
		padding-right: 38px;
		padding-left: 38px;
		font-size: 36px;
	}

	body.language-menu-popup-open .language-menu-popup p {
		padding-right: 38px;
		padding-left: 38px;
	}

	body.language-menu-popup-open .language-menu-popup .country-language-dropdown {
		padding-right: 34px;
		padding-left: 34px;
	}

	body.language-menu-popup-open .country-language-dropdown > .language-select {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	body.language-menu-popup-open .country-language-dropdown > .language-select > .w3n-lag-sec:last-child {
		grid-column: 1 / 3;
	}

	body.language-menu-popup-open .country-language-dropdown .lag-go-btn,
	body.language-menu-popup-open .country-language-dropdown .language-select > .w3n-lag-sec:last-child a {
		width: 100%;
	}

	body.language-menu-popup-open .language-menu-close {
		right: 46px;
	}
}

@media only screen and (max-width: 767px) {
	body.language-menu-popup-open .header-section {
		z-index: 999999999;
	}

	body.language-menu-popup-open .language-menu-popup {
		display: block;
		width: 100vw;
		max-width: 100%;
		padding: 24px 16px;
		overflow-x: hidden;
		background-position: center;
	}

	body.language-menu-popup-open .language-menu-popup-inner {
		display: block;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		min-height: 0;
		margin: 0 auto;
		overflow: hidden;
		box-shadow: 0 18px 45px rgba(11, 26, 50, .22);
	}

	body.language-menu-popup-open .language-menu-popup-inner::before {
		display: none;
	}

	body.language-menu-popup-open .language-menu-popup h2 {
		display: block;
		margin: 0;
		padding: 54px 24px 10px;
		background: #f8f4e9;
		font-size: clamp(32px, 10vw, 40px);
		line-height: 1;
		white-space: normal;
		overflow-wrap: break-word;
	}

	body.language-menu-popup-open .language-menu-popup p {
		display: block;
		margin: 0;
		padding: 12px 24px 38px;
		background: #f8f4e9;
		font-size: 15px;
		line-height: 1.5;
		white-space: normal;
		overflow-wrap: break-word;
	}

	body.language-menu-popup-open .language-menu-popup .country-language-dropdown {
		display: block;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin: 0;
		padding: 32px 22px 34px;
		background: var(--gallo-2026-white);
	}

	body.language-menu-popup-open .country-language-dropdown > .language-select {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
		width: 100%;
		min-width: 0;
	}

	body.language-menu-popup-open .country-language-dropdown .nice-select {
		height: 56px;
		line-height: 54px;
	}

	body.language-menu-popup-open .country-language-dropdown select.mainlanguage,
	body.language-menu-popup-open .country-language-dropdown select.sel_lang_opt {
		height: 56px;
		background-position: calc(100% - 19px) 24px, calc(100% - 13px) 24px, 0 0;
		line-height: 54px;
	}

	body.language-menu-popup-open .country-language-dropdown .lag-go-btn,
	body.language-menu-popup-open .country-language-dropdown .language-select > .w3n-lag-sec:last-child a {
		width: 100%;
		height: 56px;
	}

	body.language-menu-popup-open .country-language-dropdown .orvisit-sec {
		margin-top: 28px;
		padding-top: 24px;
	}

	body.language-menu-popup-open .country-language-dropdown .orvisit-sec .btn {
		margin-right: 22px;
	}

	body.language-menu-popup-open .language-menu-close {
		top: 34px;
		right: 26px;
		width: 40px;
		height: 40px;
		line-height: 40px;
	}

	body.language-menu-popup-open .language-menu-close::before,
	body.language-menu-popup-open .language-menu-close::after {
		top: 19px;
		left: 10px;
		width: 20px;
	}
}

@media only screen and (max-width: 359px) {
	body.language-menu-popup-open .language-menu-popup {
		padding-right: 10px;
		padding-left: 10px;
	}

	body.language-menu-popup-open .language-menu-popup h2 {
		padding-right: 20px;
		padding-left: 20px;
		font-size: 31px;
	}

	body.language-menu-popup-open .language-menu-popup p,
	body.language-menu-popup-open .language-menu-popup .country-language-dropdown {
		padding-right: 20px;
		padding-left: 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.language-menu-popup-open .language-menu-popup,
	body.language-menu-popup-open .language-menu-popup *,
	body.language-menu-popup-open .language-menu-popup *::before,
	body.language-menu-popup-open .language-menu-popup *::after {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}
}

/* --------------------------------------------------------------------------
 * Mobile menu V2
 *
 * Visual layer over the two WordPress/Max Mega Menu locations and the dynamic
 * Products shortcode already rendered by footer.php. The existing .open,
 * .active and .mobile-ul-open states remain controlled by custom.js/plugins.
 * ----------------------------------------------------------------------- */
@media only screen and (max-width: 767px) {
	body.menu-open .mobile-menu {
		display: block;
		width: 100%;
		height: 100%;
		padding: 0;
		overflow: hidden;
		background: var(--gallo-2026-white);
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-ui-font);
		transform: translateY(0);
	}

	body.menu-open .mobile-menu-logo {
		position: absolute;
		top: 10px;
		left: 22px;
		right: auto;
		bottom: auto;
		display: flex;
		align-items: center;
		width: 68px;
		height: 62px;
		margin: 0;
		z-index: 3;
	}

	body.menu-open .mobile-menu-logo img {
		display: block;
		width: auto;
		max-width: 66px;
		max-height: 60px;
		object-fit: contain;
	}

	body.menu-open .mobile-menu-close {
		position: absolute;
		top: 17px;
		right: 17px;
		left: auto;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		padding: 12px;
		z-index: 4;
		transform: none;
	}

	body.menu-open .mobile-menu-close img {
		display: block;
		width: 24px;
		height: 24px;
		object-fit: contain;
	}

	body.menu-open .mobile-menu-inner {
		position: absolute;
		top: 82px;
		right: 0;
		bottom: 109px;
		left: 0;
		display: block;
		height: auto;
		min-height: 0;
		padding: 0 24px 28px;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		border-top: 1px solid rgba(21, 44, 98, .14);
		-webkit-overflow-scrolling: touch;
	}

	body.menu-open .mobile-menu-left,
	body.menu-open .mobile-menu-right {
		width: 100%;
		padding: 0;
		background: transparent;
		border: 0;
	}

	body.menu-open .mobile-menu-left ul,
	body.menu-open .mobile-menu-right ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li {
		width: 100%;
		margin: 0;
		padding: 0;
		border: 0;
		border-bottom: 1px solid rgba(21, 44, 98, .14);
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li > a.mega-menu-link {
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 56px;
		padding: 8px 44px 8px 0 !important;
		background: transparent !important;
		color: var(--gallo-2026-market-primary) !important;
		font-family: var(--gallo-2026-title-font) !important;
		font-size: clamp(25px, 7.4vw, 29px) !important;
		font-style: normal !important;
		font-weight: 700 !important;
		line-height: 1.05 !important;
		opacity: 1;
		transform: none;
		animation: none;
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li > a.mega-menu-link::before {
		display: none;
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li.mega-menu-item-has-children > a.mega-menu-link::after,
	body.menu-open .mobile-menu-left ul.max-mega-menu > li.menu-item-has-children > a.mega-menu-link::after,
	body.menu-open .mobile-menu-left ul.max-mega-menu > li.products-menu-list > a.mega-menu-link::after {
		position: absolute;
		top: 50%;
		right: 8px;
		width: 32px;
		color: var(--gallo-2026-gold);
		font-family: var(--gallo-2026-ui-font);
		font-size: 25px;
		font-weight: 400;
		line-height: 32px;
		text-align: center;
		content: "+";
		transform: translateY(-50%);
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li.mega-toggle-on > a.mega-menu-link::after,
	body.menu-open .mobile-menu-left ul.max-mega-menu > li.mobile-ul-open > a.mega-menu-link::after {
		content: "\2212";
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li > .mega-sub-menu {
		display: none !important;
		margin: 0 !important;
		padding: 0 0 14px !important;
		background: transparent;
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li.mega-toggle-on > .mega-sub-menu,
	body.menu-open .mobile-menu-left ul.max-mega-menu > li.mobile-ul-open > .mega-sub-menu {
		display: block !important;
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li.open {
		padding-left: 0;
		border-left: 0;
	}

	body.menu-open .mobile-menu-left .mega-sub-menu > li,
	body.menu-open .mobile-menu-left .mega-sub-menu > li div li {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	body.menu-open .mobile-menu-left .mega-sub-menu li > a.mega-menu-link,
	body.menu-open .mobile-menu-left .mega-sub-menu li > a:not(.product-card-block) {
		display: flex;
		align-items: center;
		min-height: 44px;
		padding: 7px 0 7px 18px !important;
		border-left: 1px solid rgba(173, 128, 55, .48);
		background: transparent !important;
		color: #667080 !important;
		font-family: var(--gallo-2026-ui-font) !important;
		font-size: 14px !important;
		font-style: normal !important;
		font-weight: 500 !important;
		line-height: 1.3 !important;
		text-align: left;
		opacity: 1;
		transform: none;
		animation: none;
	}

	body.menu-open .mobile-menu-left .mega-sub-menu li > a:focus-visible,
	body.menu-open .mobile-menu-left ul.max-mega-menu > li > a:focus-visible,
	body.menu-open .mobile-menu-right-nav a:focus-visible,
	body.menu-open .mobile-menu .header-language a:focus-visible {
		outline: 2px solid var(--gallo-2026-gold);
		outline-offset: -2px;
	}

	/* Products keeps its complete dynamic hierarchy: parent taxonomies,
	 * child taxonomies and every product-card permalink. */
	body.menu-open .products-submenu-container-mobile {
		width: 100%;
		padding: 2px 0 8px;
		font-family: var(--gallo-2026-ui-font);
	}

	body.menu-open .products-submenu-container-mobile .products-submenu-parents-cats-container {
		display: block;
		width: 100%;
	}

	body.menu-open .products-submenu-container-mobile .products-submenu-parents-cats-container > .col {
		position: relative;
		display: flex;
		align-items: center;
		gap: 10px;
		width: 100%;
		min-height: 48px;
		padding: 7px 42px 7px 8px;
		border-top: 1px solid rgba(21, 44, 98, .11);
		color: var(--gallo-2026-market-primary);
		cursor: pointer;
	}

	body.menu-open .products-submenu-container-mobile .products-submenu-parents-cats-container > .col::after {
		position: absolute;
		top: 50%;
		right: 8px;
		width: 30px;
		color: var(--gallo-2026-gold);
		font-size: 20px;
		line-height: 30px;
		text-align: center;
		content: "+";
		transform: translateY(-50%);
	}

	body.menu-open .products-submenu-container-mobile .products-submenu-parents-cats-container > .col.active::after {
		content: "\2212";
	}

	body.menu-open .products-submenu-container-mobile .products-cat-submenu-image {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 28px;
		width: 28px;
		height: 28px;
		margin: 0;
	}

	body.menu-open .products-submenu-container-mobile .products-cat-submenu-image img {
		display: block;
		max-width: 25px;
		max-height: 25px;
		object-fit: contain;
	}

	body.menu-open .products-submenu-container-mobile .products-cat-submenu-name {
		min-width: 0;
		color: inherit;
		font-size: 15px;
		font-weight: 650;
		line-height: 1.25;
		text-align: left;
	}

	body.menu-open .products-submenu-container-mobile .list-child-cat-products {
		display: none;
		width: 100%;
		margin: 0;
		padding: 4px 8px 14px !important;
		background: #f8f4e9;
	}

	body.menu-open .products-submenu-container-mobile .list-child-cat-products.active {
		display: block;
	}

	body.menu-open .products-submenu-container-mobile .list-child-cats-names {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0 14px;
		width: 100%;
		padding: 0;
	}

	body.menu-open .products-submenu-container-mobile .list-child-cats-names > li {
		position: relative;
		display: flex;
		align-items: center;
		min-width: 0;
		min-height: 42px;
		margin: 0;
		padding: 5px 0;
		border-bottom: 1px solid rgba(21, 44, 98, .1);
		color: #667080;
		font-size: 13px;
		line-height: 1.25;
		text-align: left;
		cursor: pointer;
	}

	body.menu-open .products-submenu-container-mobile .list-child-cats-names > li.active {
		color: var(--gallo-2026-market-primary);
		font-weight: 700;
	}

	body.menu-open .products-submenu-container-mobile .list-child-cats-names > li.active::after {
		position: absolute;
		right: 0;
		bottom: -1px;
		left: 0;
		width: 28px;
		height: 2px;
		background: var(--gallo-2026-gold);
		content: "";
	}

	body.menu-open .products-submenu-container-mobile .product-cat-container {
		display: none;
		width: 100%;
		padding-top: 10px;
	}

	body.menu-open .products-submenu-container-mobile .product-cat-container.active {
		display: block;
	}

	body.menu-open .products-submenu-container-mobile .product-cat-container .owl-stage-outer {
		overflow: hidden;
	}

	body.menu-open .products-submenu-container-mobile .product-card-block {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-end;
		width: 132px;
		min-height: 176px;
		padding: 5px 9px 9px;
		color: var(--gallo-2026-market-primary) !important;
		font-family: var(--gallo-2026-ui-font);
		opacity: 1;
		transform: none;
	}

	body.menu-open .products-submenu-container-mobile .product-card-block img {
		display: block;
		width: auto;
		height: 132px;
		max-width: 100%;
		margin: 0 auto;
		object-fit: contain;
		object-position: center bottom;
	}

	body.menu-open .products-submenu-container-mobile .product-card-block h3 {
		width: 100%;
		margin: 4px 0 0;
		padding-top: 7px;
		border-top: 1px solid rgba(21, 44, 98, .14);
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-ui-font);
		font-size: 12px;
		font-weight: 650;
		line-height: 1.2;
		text-align: center;
	}

	body.menu-open .products-submenu-container-mobile .owl-nav {
		display: none;
	}

	body.menu-open .mobile-menu-right {
		padding: 20px 0 4px;
	}

	body.menu-open .mobile-menu-right-image {
		display: none;
	}

	body.menu-open .mobile-menu-right-nav {
		padding: 0;
		text-align: left;
	}

	body.menu-open .mobile-menu-right-nav ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0 14px;
	}

	body.menu-open .mobile-menu-right-nav li {
		display: block;
		min-width: 0;
		margin: 0;
		padding: 0;
		border-bottom: 1px solid rgba(21, 44, 98, .1);
	}

	body.menu-open .mobile-menu-right-nav li a {
		display: flex;
		align-items: center;
		min-height: 46px;
		padding: 6px 0;
		color: #667080;
		font-family: var(--gallo-2026-ui-font);
		font-size: 13px;
		font-weight: 500;
		line-height: 1.25;
		opacity: 1;
		transform: none;
		animation: none;
	}

	body.menu-open .mobile-menu-right-nav li a::before {
		display: none;
	}

	body.menu-open .mobile-menu > .header-language {
		position: absolute;
		right: 0;
		bottom: 52px;
		left: 0;
		display: grid;
		grid-template-columns: minmax(0, 1fr) 34px;
		align-items: center;
		min-height: 57px;
		padding: 5px 24px;
		border-top: 1px solid rgba(21, 44, 98, .14);
		border-bottom: 1px solid rgba(21, 44, 98, .14);
		background: #f8f4e9;
		text-align: left;
		z-index: 3;
	}

	body.menu-open .mobile-menu > .header-language a {
		display: flex;
		align-items: center;
		min-height: 46px;
		padding: 0 0 0 40px;
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-ui-font);
		font-size: 14px;
		font-weight: 650;
		line-height: 1.25;
	}

	body.menu-open .mobile-menu > .header-language a::before {
		right: 0;
		left: auto;
		width: 10px;
		height: 16px;
		background-color: var(--gallo-2026-gold);
		background-image: none;
		-webkit-mask: url("../images/angle-right-green.svg") center / contain no-repeat;
		mask: url("../images/angle-right-green.svg") center / contain no-repeat;
	}

	body.menu-open .mobile-menu > .header-language .lang-img {
		position: absolute;
		top: 50%;
		left: 24px;
		float: none;
		width: 28px;
		height: 22px;
		transform: translateY(-50%);
	}

	body.menu-open .mobile-menu > .header-language .lang-img::before {
		width: 28px;
		height: 22px;
		background-image: url("../images/lang-map-hover.svg");
		background-position: center;
		background-size: contain;
	}

	/* The original header controls stay functional and are simply positioned
	 * over the lower utility row while the full-screen menu is open. */
	body.menu-open .header-section {
		z-index: 1000000000;
		pointer-events: none;
	}

	body.menu-open .header-section-inner {
		background: transparent !important;
		box-shadow: none !important;
		pointer-events: none;
	}

	body.menu-open .header-section-inner > .logo,
	body.menu-open .header-section-inner > .menu-ic,
	body.menu-open .header-section-inner > .header-nav,
	body.menu-open .header-section-inner > .header-language {
		opacity: 0;
		visibility: hidden;
	}

	body.menu-open .header-section-inner .header-search {
		position: fixed;
		top: auto;
		right: 0;
		bottom: 0;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 52px;
		padding: 0;
		border: 0;
		background: #f8f4e9;
		z-index: 1000000001;
		pointer-events: auto;
	}

	body.gallo-shopping-list-enabled.menu-open .header-section-inner .header-search {
		right: 50%;
		width: 50%;
	}

	body.menu-open .header-section-inner .header-search .search-popup {
		position: absolute;
		inset: 0;
		display: block;
		cursor: pointer;
	}

	body.menu-open .header-section-inner .header-search::after {
		top: 50%;
		right: 50%;
		width: 22px;
		height: 22px;
		background-image: url("../images/search-black.svg");
		background-position: center;
		background-size: contain;
		transform: translate(50%, -50%);
		pointer-events: none;
	}

	body.gallo-shopping-list-enabled.menu-open .header-section-inner .header-lista-de-compras {
		position: fixed;
		right: 0;
		bottom: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 50%;
		height: 52px;
		padding: 0;
		border-left: 1px solid rgba(21, 44, 98, .14);
		background: #f8f4e9;
		z-index: 1000000002;
		pointer-events: auto;
	}

	body.gallo-shopping-list-enabled.menu-open .header-section-inner .header-lista-de-compras::before {
		display: none;
	}

	body.gallo-shopping-list-enabled.menu-open .header-section-inner .header-lista-de-compras a {
		min-height: 48px;
		margin: 0;
		padding: 0 12px;
		color: var(--gallo-2026-market-primary);
		font-size: 12px;
		font-weight: 650;
	}

	body.gallo-shopping-list-enabled.menu-open .header-section-inner .header-lista-de-compras svg {
		width: 20px;
		height: 20px;
	}

	body.gallo-shopping-list-enabled.menu-open .header-section-inner .header-lista-de-compras svg path {
		stroke: var(--gallo-2026-market-primary);
	}
}

@media only screen and (max-width: 359px) {
	body.menu-open .mobile-menu-inner {
		padding-right: 18px;
		padding-left: 18px;
	}

	body.menu-open .mobile-menu-right-nav ul,
	body.menu-open .products-submenu-container-mobile .list-child-cats-names {
		grid-template-columns: minmax(0, 1fr);
	}

	body.menu-open .mobile-menu-left ul.max-mega-menu > li > a.mega-menu-link {
		font-size: 24px;
	}

	body.gallo-shopping-list-enabled.menu-open .header-section-inner .header-lista-de-compras a {
		gap: 6px;
		padding: 0 8px;
		font-size: 11px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.menu-open .mobile-menu,
	body.menu-open .mobile-menu * {
		transition: none !important;
		animation: none !important;
	}
}

/* ========================================================================== */
/* Product detail 2026                                                       */
/*                                                                            */
/* Visual layer over single-produto.php. Flexible ACF modules, Slick sliders, */
/* sticky behaviour, links, popups and their existing JavaScript are kept.    */
/* ========================================================================== */

/* The desktop hero is split between dark photography and a light content
 * surface. Keep the established transparent header, but give the controls
 * that sit over the light half the same dark contrast as the sticky state. */
@media only screen and (min-width: 768px) {
	body.single-produto:not(.gallo-market-pt-pt) .header-section-inner:not(.fixed) {
		--gallo-2026-market-primary: #232e0a;
	}

	body.single-produto .header-section-inner:not(.fixed) .header-language,
	body.single-produto .header-section-inner:not(.fixed) .header-language a,
	body.single-produto .header-section-inner:not(.fixed) .header-lista-de-compras a,
	body.single-produto .header-section-inner:not(.fixed) .header-search {
		color: var(--gallo-2026-market-primary) !important;
	}

	body.single-produto .header-section-inner:not(.fixed) .header-language a::before {
		background-image: url("../images/angle-left-black.svg");
		background-size: contain;
	}

	body.single-produto .header-section-inner:not(.fixed) .header-language a::after,
	body.single-produto .header-section-inner:not(.fixed) .header-lista-de-compras a::after {
		background: var(--gallo-2026-gold);
	}

	body.single-produto .header-section-inner:not(.fixed) .lang-img::before {
		background-image: url("../images/lang-map-hover.svg");
	}

	body.single-produto .header-section-inner:not(.fixed) .header-lista-de-compras svg path {
		stroke: var(--gallo-2026-market-primary);
	}

	body.single-produto .header-section-inner:not(.fixed) .header-lista-de-compras::before,
	body.single-produto .header-section-inner:not(.fixed) .header-search::before {
		background: rgba(0, 21, 40, .18);
	}

	body.single-produto .header-section-inner:not(.fixed) .header-search::after {
		background-image: url("../images/search-black.svg");
		background-size: contain;
	}

	/* Desktop legacy declarations still hardcode the PT blue above 1200px.
	 * Keep the established international token explicit on the light half. */
	body.single-produto:not(.gallo-market-pt-pt) .header-section-inner:not(.fixed) .header-language,
	body.single-produto:not(.gallo-market-pt-pt) .header-section-inner:not(.fixed) .header-language a,
	body.single-produto:not(.gallo-market-pt-pt) .header-section-inner:not(.fixed) .header-lista-de-compras a,
	body.single-produto:not(.gallo-market-pt-pt) .header-section-inner:not(.fixed) .header-search {
		color: #232e0a !important;
	}

	body.single-produto:not(.gallo-market-pt-pt) .header-section-inner:not(.fixed) .header-lista-de-compras svg path {
		stroke: #232e0a;
	}
}

body.single-produto .product-detail-bg {
	position: relative;
	overflow: hidden;
	background: #f8f5ed;
}

body.single-produto .product-detail-top-section {
	position: relative;
	display: grid;
	height: auto;
	min-height: 660px;
	grid-template-columns: 54% 46%;
	background: #f8f5ed;
}

body.single-produto .product-detail-image,
body.single-produto .product-detail-content {
	float: none;
	width: auto;
	height: auto;
}

body.single-produto .product-detail-image {
	position: relative;
	grid-column: 1;
	height: auto;
	min-height: 660px;
	overflow: hidden;
}

body.single-produto .product-detail-image::before {
	position: absolute;
	z-index: 1;
	inset: 0;
	width: auto;
	height: auto;
	background: linear-gradient(90deg, rgba(8, 25, 31, .02), rgba(8, 25, 31, .08));
	content: "";
	opacity: 1;
	pointer-events: none;
}

body.single-produto .product-detail-image img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
}

body.single-produto .product-detail-content {
	position: relative;
	top: auto;
	display: flex;
	height: auto;
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
	min-height: 660px;
	padding: 132px 64px 106px 118px;
	align-items: flex-start;
	background: #f8f5ed;
	transform: none;
}

body.single-produto .product-detail-content-inner {
	display: flex;
	width: 100%;
	max-width: 550px;
	flex-direction: column;
}

body.single-produto .product-detail-content-inner h5 {
	order: -1;
	margin: 0;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 750;
	line-height: 1.3;
	letter-spacing: .18em;
	text-transform: uppercase;
}

body.single-produto .product-detail-content-inner h1 {
	margin: 14px 0 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(60px, 4.75vw, 86px);
	font-weight: 800;
	line-height: .95;
	letter-spacing: .008em;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
	text-wrap: balance;
}

body.single-produto .product-detail-content-inner h3 {
	max-width: 470px;
	margin: 26px 0 14px;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-highlight-font);
	font-size: 29px;
	font-weight: 500;
	line-height: 1.1;
}

body.single-produto .product-detail-content-inner > p {
	max-width: 500px;
	margin: 0;
	color: #41495b;
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	line-height: 1.65;
}

body.single-produto .cart-compare-btn {
	display: flex;
	margin-top: 32px;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 14px;
}

body.single-produto .cart-compare-btn .add-cart-btn,
body.single-produto .cart-compare-btn .button-action {
	float: none;
	margin: 0;
}

body.single-produto .cart-compare-btn .btn,
body.single-produto .descarregarebook .btn {
	display: inline-flex;
	height: auto;
	min-width: 162px;
	min-height: 54px;
	margin: 0 !important;
	padding: 0 24px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--gallo-2026-market-primary);
	border-radius: 0;
	color: #fff;
	background: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13.5px;
	font-style: normal;
	font-weight: 750;
	line-height: 1.2;
	text-decoration: none;
	box-shadow: none;
}

body.single-produto .cart-compare-btn .compare-btn {
	color: var(--gallo-2026-market-primary);
	background: transparent;
}

body.single-produto .cart-compare-btn .remove_compare_property {
	display: none;
}

body.single-produto .cart-compare-btn .btn:focus-visible,
body.single-produto .descarregarebook .btn:focus-visible,
body.single-produto .product-detail-arrow a:focus-visible,
body.single-produto .product-detail-recipes a:focus-visible,
body.single-produto .product-detail-range-wrapper a:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

body.single-produto .product-detail-slider.w3n-prod-detail-img {
	position: absolute;
	z-index: 4;
	top: 50%;
	left: 54%;
	width: min(282px, 22vw);
	height: 560px;
	margin: 0;
	padding: 0;
	transform: translate(-50%, -50%) !important;
	pointer-events: auto;
}

body.single-produto .product-detail-slider .detail-oil-image,
body.single-produto .product-detail-slider .detail-oil-image a {
	display: block;
	width: 100%;
	height: 100%;
}

body.single-produto .product-detail-slider .detail-oil-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

body.single-produto .product-detail-arrow {
	position: absolute;
	z-index: 6;
	right: 46px;
	top: auto;
	bottom: 22px;
	left: 46px;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	transform: none;
	pointer-events: none;
}

body.single-produto .product-detail-arrow ul {
	display: grid;
	margin: 0;
	padding: 0;
	align-items: flex-end;
	grid-template-columns: 54% 46%;
	list-style: none;
}

body.single-produto .product-detail-arrow li {
	position: static;
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	overflow: visible;
	background: transparent;
	line-height: normal;
	transform: none;
	pointer-events: auto;
}

body.single-produto .product-detail-arrow li::before,
body.single-produto .product-detail-arrow li::after {
	display: none !important;
	content: none !important;
}

body.single-produto .product-detail-arrow .detail-next {
	grid-column: 2;
	justify-self: end;
	margin-left: 0;
}

body.single-produto .product-detail-arrow .nav-detail-wrap-image {
	display: none;
}

body.single-produto .product-detail-arrow .nav-detail-wrap {
	display: block;
	width: auto;
	height: auto;
	background: transparent;
	opacity: 1;
}

body.single-produto .product-detail-arrow .slick-arrow,
body.single-produto .product-detail-arrow .slick-arrow:hover {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	overflow: visible;
	background: transparent;
	line-height: normal;
}

body.single-produto .product-detail-arrow a {
	display: flex;
	width: min(260px, 100%);
	max-width: 260px;
	min-width: 0;
	min-height: 52px;
	align-items: center;
	gap: 10px;
	color: #fff;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 650;
	line-height: 1.3;
	text-decoration: none;
}

body.single-produto .product-detail-arrow .nav-detail-wrap-title {
	display: -webkit-box;
	flex: 1 1 auto;
	min-width: 0;
	max-width: 198px;
	overflow: hidden;
	white-space: normal;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body.single-produto .product-detail-arrow .detail-next a {
	margin-left: auto;
	color: var(--gallo-2026-market-primary);
	text-align: right;
}

body.single-produto .product-detail-arrow a::before,
body.single-produto .product-detail-arrow a::after {
	display: grid;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	border: 1px solid currentColor;
	border-radius: 50%;
	place-items: center;
}

body.single-produto .product-detail-arrow .detail-prev a::before {
	content: "\2190";
}

body.single-produto .product-detail-arrow .detail-next a::after {
	content: "\2192";
}

body.single-produto .product-detail-middle {
	width: min(1240px, calc(100% - 112px));
	max-width: none;
	margin: 0 auto;
	padding: 76px 0 64px;
}

body.single-produto .product-detail-middle > .row {
	width: 100%;
	margin: 0;
}

body.single-produto .product-detail-middle > .row::after,
body.single-produto .product-detail-middle::after {
	display: table;
	clear: both;
	content: "";
}

body.single-produto .product-detail-middle-left {
	float: left;
	width: 32%;
	min-height: 0;
	padding: 36px 30px 30px;
	background: #f8f5ed !important;
	text-align: center;
}

body.single-produto .product-detail-middle-left-inner-image {
	display: grid;
	height: auto;
	min-height: 500px;
	place-items: center;
}

body.single-produto .product-detail-middle-left-inner-image img {
	display: block;
	width: 100%;
	height: 500px;
	object-fit: contain;
}

body.single-produto .product-detail-middle-right {
	float: right;
	width: 68%;
	min-height: 0;
	padding: 0 0 0 68px;
}

body.single-produto .product-detail-middle-right > .image_left_text_right,
body.single-produto .product-detail-middle-right > .intensity-flavor,
body.single-produto .product-detail-middle-right > .flavor-note,
body.single-produto .product-detail-middle-right > .ideal-wrap,
body.single-produto .product-detail-middle-right > .product-award,
body.single-produto .product-detail-middle-right > .available-in,
body.single-produto .product-detail-middle-right > .product-detail-recipes,
body.single-produto .product-detail-middle-right > .product-detail-range-wrapper,
body.single-produto .product-detail-middle-right > .share-page-wrapper,
body.single-produto .product-detail-middle-right > .w3ncustomspace,
body.single-produto .product-detail-middle-right > .saiba-como-reciclar-link-container {
	float: none;
	clear: both;
	width: 100%;
	margin-top: 0;
	margin-bottom: 0;
}

body.single-produto .product-detail-middle-right > *:not(:first-child) {
	margin-top: clamp(32px, 3vw, 40px) !important;
}

body.single-produto .product-detail-middle-right h2,
body.single-produto .common-question-section h2 {
	margin: 0 0 18px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(42px, 4vw, 60px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: .008em;
}

body.single-produto .product-detail-middle-right p,
body.single-produto .product-detail-middle-right li,
body.single-produto .product-detail-middle-right span {
	font-family: var(--gallo-2026-ui-font);
}

body.single-produto .image_left_text_right {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: stretch;
	gap: 0;
	background: #f8f5ed;
}

body.single-produto .image_left_text_right .w3n_title-blk {
	grid-column: 1 / -1;
	padding: 0 0 24px;
	background: #fff;
}

body.single-produto .image_left_text_right .left-img-block,
body.single-produto .image_left_text_right .right-text-block {
	float: none;
	width: auto;
	min-height: 330px;
}

body.single-produto .image_left_text_right .left-img-bg,
body.single-produto .image_left_text_right .w3n-video-sec,
body.single-produto .image_left_text_right video {
	width: 100%;
	height: 100%;
	min-height: 330px;
	background-position: center;
	background-size: cover;
	object-fit: cover;
}

body.single-produto .image_left_text_right .right-text-block {
	display: flex;
	padding: 42px;
	justify-content: center;
	flex-direction: column;
	color: #4b5363;
	font-size: 15px;
	line-height: 1.72;
}

body.single-produto .reverse-img-block .left-img-block {
	grid-column: 2;
}

body.single-produto .reverse-img-block .right-text-block {
	grid-column: 1;
	grid-row: 2;
}

body.single-produto .intensity-flavor,
body.single-produto .flavor-note {
	padding: 26px 0;
	border-top: 1px solid #ddd5c5;
	border-bottom: 1px solid #ddd5c5;
}

body.single-produto .intensity-flavor .intens-div {
	min-height: 84px;
	margin-top: 18px;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: auto 64px;
}

body.single-produto .intensity-flavor .intens-div span {
	display: flex;
	min-height: 84px;
	padding-left: 108px;
	align-items: center;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-highlight-font);
	font-size: 28px;
	font-weight: 500;
}

body.single-produto .flavor-note-wrapper {
	max-width: 610px;
}

body.single-produto .flavor-note-row {
	display: grid;
	margin-top: 14px;
	grid-template-columns: minmax(100px, 1fr) repeat(3, 1fr);
	align-items: center;
	gap: 8px;
}

body.single-produto .flavor-note-row .note-title {
	display: block;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	font-size: 13px;
	font-style: normal;
	font-weight: 650;
	line-height: 1.35;
	overflow-wrap: break-word;
}

body.single-produto .flavor-note-row .note-progress {
	display: block;
	width: 100%;
	height: 5px;
	margin: 0;
	padding: 0;
	background: var(--gallo-2026-gold);
}

body.single-produto .flavor-note-row .note-progress-disable {
	background: #e7e1d4;
}

body.single-produto .flavor-note-row .note-progress span {
	display: none;
}

body.single-produto .ideal-wrap {
	padding: 26px 0;
	border-bottom: 1px solid #ddd5c5;
}

body.single-produto .ideal-wrap p,
body.single-produto .ideal-wrap .codimento_text {
	max-width: 650px;
	margin: 0;
	color: #4b5363;
	font-size: 15px;
	line-height: 1.72;
}

body.single-produto .available-in {
	padding-top: 26px;
	border-top: 1px solid #ddd5c5;
}

body.single-produto .product-detail-middle .product-detail-middle-right .available-wrap.w3n-pda_sec {
	display: flex;
	width: 100%;
	max-width: none;
	margin: 0;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: 26px;
}

body.single-produto .product-detail-middle .available-wrap.w3n-pda_sec .available-stock {
	display: flex;
	float: none;
	width: auto;
	min-width: 130px;
	max-width: 160px;
	margin: 0;
	padding: 0 0 18px;
	align-items: center !important;
	justify-content: flex-end;
	flex: 0 1 150px;
	flex-direction: column;
	border: 0;
	border-bottom: 1px solid #ddd5c5;
	background: transparent;
	text-align: center;
}

body.single-produto .available-stock-img {
	display: flex;
	width: 130px;
	height: 210px;
	margin: 0 auto 14px;
	overflow: visible;
	flex: 0 0 210px;
	align-items: flex-end;
	justify-content: center;
}

body.single-produto .available-stock-img img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center bottom;
}

body.single-produto .available-stock-text {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

body.single-produto .available-stock-text h6 {
	margin: 0 0 4px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-weight: 700;
}

body.single-produto .available-stock-text span,
body.single-produto .available-wrap > p {
	color: #667080;
	font-size: 11px;
	line-height: 1.5;
}

body.single-produto .available-wrap > p {
	flex: 1 1 100%;
	margin: 0;
}

body.single-produto .product-award-w3n {
	padding: clamp(32px, 4vw, 46px) 0;
	border-top: 1px solid #ddd5c5;
	border-bottom: 1px solid #ddd5c5;
	color: var(--gallo-2026-body-color);
	background: var(--gallo-2026-white);
}

body.single-produto .product-award-w3n h2 {
	color: var(--gallo-2026-title-color);
}

body.single-produto .product-award-w3n .awards-text-container {
	margin: 22px 0 0;
	color: var(--gallo-2026-body-color);
}

body.single-produto .product-award-w3n .awards-text-container p {
	color: inherit;
}

body.single-produto .product-award-w3n .map-sec-title {
	padding: 0;
}

body.single-produto .product-award-w3n .scroll-icon {
	display: none;
}

body.single-produto .product-award-w3n .bottom_map_more {
	display: flex;
	margin-top: 30px;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

body.single-produto .product-award-w3n .left_dtl_map {
	align-items: center;
}

body.single-produto .product-award-w3n .left_counts {
	color: var(--gallo-2026-detail-color);
	font-family: var(--gallo-2026-title-font);
	font-size: 66px;
	font-weight: 650;
	line-height: .9;
}

body.single-produto .product-award-w3n .right_txt_dtl {
	padding-left: 14px;
}

body.single-produto .product-award-w3n .premios_header {
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.35;
}

body.single-produto .product-award-w3n .premios_dtl {
	color: var(--gallo-2026-muted);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	line-height: 1.4;
}

body.single-produto .product-award-w3n .see-certification-button {
	width: auto;
	margin: 0;
}

body.single-produto .product-award-w3n .cart-btn {
	position: relative;
	display: inline-flex;
	width: auto;
	min-width: 190px;
	min-height: 52px;
	margin: 0 !important;
	padding: 14px 18px;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	border: 1px solid var(--gallo-2026-title-color);
	border-radius: 0;
	color: var(--gallo-2026-title-color);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	box-shadow: none;
}

body.single-produto .product-award-w3n .cart-btn::before {
	display: none;
	content: none;
}

body.single-produto .product-award-w3n .cart-btn::after {
	position: static;
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	color: var(--gallo-2026-detail-color);
	background: transparent;
	content: "\2192";
	font-family: var(--gallo-2026-ui-font);
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	transform: none;
}

body.single-produto .product-award-w3n .cart-btn:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

body.single-produto .product-detail-recipes,
body.single-produto .product-detail-range-wrapper {
	width: 100%;
	padding-top: 30px;
	border-top: 1px solid #ddd5c5;
}

body.single-produto .product-detail-recipes > h2,
body.single-produto .product-detail-range-wrapper > h2 {
	margin-bottom: 0;
}

body.single-produto .product-detail-recipes-slider,
body.single-produto .product-detail-range-slider {
	margin: 22px 0 0;
}

body.single-produto .product-detail-recipes-slider .slick-list,
body.single-produto .product-detail-range-slider .slick-list {
	margin: 0;
}

body.single-produto .product-detail-recipes-slider .slick-track,
body.single-produto .product-detail-range-slider .slick-track {
	display: flex;
}

body.single-produto .product-detail-recipes-slider .slick-slide,
body.single-produto .product-detail-range-slider .slick-slide,
body.single-produto .product-detail-recipes-slider .slick-slide > div,
body.single-produto .product-detail-range-slider .slick-slide > div {
	height: auto;
	min-height: 100%;
}

body.single-produto .product-detail-recipes-items,
body.single-produto .product-detail-range-items {
	height: 100%;
	padding: 0 10px;
}

body.single-produto .product-detail-recipes-items > a,
body.single-produto .product-detail-range-items > a {
	display: block;
	height: 100%;
	color: inherit;
	text-decoration: none;
}

body.single-produto .product-detail-recipes-image {
	height: 210px;
	overflow: hidden;
	background: #f8f5ed;
}

body.single-produto .product-detail-recipes-image img {
	position: static;
	width: 100%;
	height: 100%;
	min-width: 0 !important;
	margin: 0;
	object-fit: cover;
	transform: none;
}

body.single-produto .product-detail-recipes-image::before,
body.single-produto .product-detail-recipes-text::before {
	display: none;
	content: none;
}

body.single-produto .product-detail-range-items:hover .product-detail-range-image {
	transform: none;
}

body.single-produto .product-detail-recipes-text {
	min-height: 148px;
	padding: 22px 0 0;
	background: #fff;
}

body.single-produto .product-detail-recipes-text-top ul {
	display: flex;
	margin: 0 0 14px;
	padding: 0;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 16px;
	list-style: none;
}

body.single-produto .product-detail-recipes-text-top li {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #667080;
	font-size: 10px;
}

body.single-produto .product-detail-recipes-text-top img {
	width: 18px;
	height: 18px;
	object-fit: contain;
}

body.single-produto .product-detail-recipes-text h3 {
	margin: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: 25px;
	font-weight: 800;
	line-height: 1.08;
	word-break: normal;
	overflow-wrap: anywhere;
}

body.single-produto .product-detail-range-image {
	position: relative;
	display: grid;
	height: 270px;
	margin: 0;
	padding: 22px;
	overflow: hidden;
	background: #f8f5ed;
	place-items: center;
}

body.single-produto .product-detail-range-image img {
	position: static;
	display: block;
	width: 100%;
	height: 100%;
	min-width: 0 !important;
	max-width: 100%;
	max-height: 100%;
	margin: 0 auto;
	object-fit: contain;
	transform: none;
}

body.single-produto .product-detail-range-text {
	position: relative;
	z-index: 1;
	clear: both;
	min-height: 102px;
	padding: 22px 8px 0;
	background: #fff;
	text-align: center;
}

body.single-produto .product-detail-range-text h5 {
	margin: 0 0 7px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: 27px;
	font-weight: 800;
	line-height: 1.08;
	word-break: normal;
	overflow-wrap: anywhere;
}

body.single-produto .product-detail-range-text p {
	margin: 0;
	color: #667080;
	font-size: 11px;
	line-height: 1.45;
}

body.single-produto .product-detail-recipes .slick-arrow,
body.single-produto .product-detail-range-wrapper .slick-arrow {
	z-index: 5;
	top: 105px;
	bottom: auto;
	display: grid !important;
	width: 42px;
	height: 42px;
	margin: 0;
	padding: 0;
	border: 1px solid #b8beca;
	border-radius: 50%;
	color: var(--gallo-2026-market-primary);
	border-color: #b8beca;
	background: #fff !important;
	font-size: 0;
	box-shadow: none;
	place-items: center;
	transform: none;
}

body.single-produto .product-detail-range-wrapper .slick-arrow {
	top: 114px;
}

body.single-produto .product-detail-recipes .slick-prev,
body.single-produto .product-detail-range-wrapper .slick-prev {
	right: auto;
	left: -12px;
}

body.single-produto .product-detail-recipes .slick-next,
body.single-produto .product-detail-range-wrapper .slick-next {
	right: -12px;
	left: auto;
}

body.single-produto .product-detail-recipes .slick-arrow::before,
body.single-produto .product-detail-range-wrapper .slick-arrow::before {
	position: static;
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	color: currentColor;
	background: none !important;
	font-family: var(--gallo-2026-ui-font);
	font-size: 18px;
	font-weight: 400;
	line-height: 1;
	transform: none;
}

body.single-produto .product-detail-recipes .slick-prev::before,
body.single-produto .product-detail-range-wrapper .slick-prev::before {
	content: "\2190";
}

body.single-produto .product-detail-recipes .slick-next::before,
body.single-produto .product-detail-range-wrapper .slick-next::before {
	content: "\2192";
}

body.single-produto .product-detail-recipes .slide-count-wrap,
body.single-produto .product-detail-range-wrapper .slide-count-wrap {
	color: #667080;
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
}

body.single-produto .share-page-wrapper {
	position: relative;
	display: flex;
	width: 100%;
	height: auto;
	min-height: 62px;
	padding: 20px 0;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	border-top: 1px solid #ddd5c5;
	border-bottom: 1px solid #ddd5c5;
	background: #fff;
}

body.single-produto .share-page-wrapper h4,
body.single-produto .share-page-wrapper h4 span {
	position: static;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .14em;
	text-transform: uppercase;
}

body.single-produto .share-page-wrapper h4::after {
	display: none;
	content: none;
}

body.single-produto .share-page-wrapper .share-social-icon {
	position: static;
	width: auto;
	height: auto;
	overflow: visible;
	background: transparent;
}

body.single-produto .saiba-como-reciclar-link-container {
	display: grid;
	width: 100%;
	margin-right: 0;
	margin-left: 0;
	padding: 32px 34px;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 28px;
	background: #f8f5ed;
}

body.single-produto .saiba-como-reciclar-link-container h2 {
	margin: 0;
	font-size: 34px;
}

/* Product-detail calls to action use the same 2026 primary/secondary language
 * as the approved Homepage, recipe and Footer actions. */
body.single-produto .cart-compare-btn .compare-btn,
body.single-produto .product-detail-recipes > .see-certification-button .btn,
body.single-produto .saiba-como-reciclar-link-container > .btn {
	position: static;
	display: inline-flex;
	width: auto;
	height: auto;
	min-width: 190px;
	min-height: 52px;
	max-width: none;
	margin: 0 !important;
	padding: 14px 18px;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	border: 1px solid var(--gallo-2026-market-primary);
	border-radius: 0;
	color: var(--gallo-2026-market-primary);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	text-decoration: none;
	box-shadow: none;
	transition: color .28s ease, background-color .28s ease, border-color .28s ease;
}

body.single-produto .product-detail-recipes > .see-certification-button {
	position: static;
	float: none;
	width: auto;
	margin: 26px 0 0 !important;
	text-align: left;
}

body.single-produto .product-detail-recipes > .see-certification-button .btn {
	color: #fff;
	background: var(--gallo-2026-market-primary);
}

body.single-produto .cart-compare-btn .compare-btn .compare-ic {
	display: none;
}

body.single-produto .cart-compare-btn .compare-btn::before,
body.single-produto .product-detail-recipes > .see-certification-button .btn::before,
body.single-produto .saiba-como-reciclar-link-container > .btn::before {
	display: none;
	content: none;
}

body.single-produto .cart-compare-btn .compare-btn::after,
body.single-produto .product-detail-recipes > .see-certification-button .btn::after,
body.single-produto .saiba-como-reciclar-link-container > .btn::after {
	position: static;
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	color: var(--gallo-2026-market-accent);
	background: transparent;
	content: "\2192";
	font-family: var(--gallo-2026-ui-font);
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	transform: none;
	transition: color .28s ease, transform .28s ease;
}

body.single-produto .product-detail-recipes > .see-certification-button .btn::after {
	color: var(--gallo-2026-market-highlight);
}

body.single-produto .cart-compare-btn .compare-btn:focus-visible,
body.single-produto .product-detail-recipes > .see-certification-button .btn:focus-visible,
body.single-produto .saiba-como-reciclar-link-container > .btn:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

body.single-produto .common-question-section {
	min-height: 300px;
	background: #f8f5ed;
}

body.single-produto .common-question-left,
body.single-produto .common-question-right {
	min-height: 300px;
}

body.single-produto .common-question-left-text h6 {
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .18em;
	text-transform: uppercase;
}

@media (hover: hover) and (pointer: fine) {
	body.single-produto .cart-compare-btn .btn,
	body.single-produto .descarregarebook .btn,
	body.single-produto .product-detail-recipes > .see-certification-button .btn,
	body.single-produto .saiba-como-reciclar-link-container > .btn,
	body.single-produto .product-detail-arrow a,
	body.single-produto .product-detail-recipes .slick-arrow,
	body.single-produto .product-detail-range-wrapper .slick-arrow,
	body.single-produto .product-detail-recipes-image img,
	body.single-produto .product-detail-range-image img {
		transition: opacity 260ms ease, transform 460ms cubic-bezier(.2, .7, .2, 1), background-color 260ms ease;
	}

	body.single-produto .cart-compare-btn .btn:hover,
	body.single-produto .descarregarebook .btn:hover,
	body.single-produto .product-detail-arrow a:hover {
		opacity: .78;
	}

	body.single-produto .cart-compare-btn .compare-btn:hover,
	body.single-produto .cart-compare-btn .compare-btn:focus-visible,
	body.single-produto .saiba-como-reciclar-link-container > .btn:hover,
	body.single-produto .saiba-como-reciclar-link-container > .btn:focus-visible {
		color: #fff;
		background: var(--gallo-2026-market-primary);
		opacity: 1;
	}

	body.single-produto .product-detail-recipes > .see-certification-button .btn:hover,
	body.single-produto .product-detail-recipes > .see-certification-button .btn:focus-visible {
		color: var(--gallo-2026-market-primary);
		background: #fff;
		opacity: 1;
	}

	body.single-produto .cart-compare-btn .compare-btn:hover::after,
	body.single-produto .cart-compare-btn .compare-btn:focus-visible::after,
	body.single-produto .product-award-w3n .cart-btn:hover::after,
	body.single-produto .product-award-w3n .cart-btn:focus-visible::after,
	body.single-produto .product-detail-recipes > .see-certification-button .btn:hover::after,
	body.single-produto .product-detail-recipes > .see-certification-button .btn:focus-visible::after,
	body.single-produto .saiba-como-reciclar-link-container > .btn:hover::after,
	body.single-produto .saiba-como-reciclar-link-container > .btn:focus-visible::after {
		color: var(--gallo-2026-market-highlight);
		transform: translateX(4px);
	}

	body.single-produto .product-detail-recipes .slick-arrow:hover,
	body.single-produto .product-detail-range-wrapper .slick-arrow:hover {
		border-color: var(--gallo-2026-market-primary);
		color: #fff;
		background: var(--gallo-2026-market-primary) !important;
		transform: none;
	}

	body.single-produto .product-detail-recipes-items a:hover .product-detail-recipes-image img,
	body.single-produto .product-detail-range-items a:hover .product-detail-range-image img {
		transform: scale(1.025);
	}
}

@media only screen and (max-width: 1199px) {
	body.single-produto .product-detail-top-section {
		height: auto;
		min-height: 640px;
	}

	body.single-produto .product-detail-image {
		height: auto;
		min-height: 640px;
	}

	body.single-produto .product-detail-content {
		height: auto;
		min-height: 640px;
		padding: 122px 38px 100px 82px;
	}

	body.single-produto .product-detail-content-inner h1 {
		font-size: clamp(48px, 5.4vw, 64px);
	}

	body.single-produto .product-detail-slider.w3n-prod-detail-img {
		width: min(250px, 24vw);
		height: 470px;
	}

	body.single-produto .product-detail-arrow {
		right: 28px;
		bottom: 20px;
		left: 28px;
	}

	body.single-produto .product-detail-arrow a {
		max-width: 220px;
	}

	body.single-produto .product-detail-arrow .nav-detail-wrap-title {
		max-width: 168px;
		font-size: 11px;
	}

	body.single-produto .product-detail-middle {
		width: calc(100% - 64px);
		padding-top: 66px;
	}

	body.single-produto .product-detail-middle-left {
		width: 31%;
		padding: 30px 22px;
	}

	body.single-produto .product-detail-middle-left-inner-image,
	body.single-produto .product-detail-middle-left-inner-image img {
		height: 430px;
		min-height: 430px;
	}

	body.single-produto .product-detail-middle-right {
		width: 69%;
		padding-left: 38px;
	}

	body.single-produto .image_left_text_right {
		grid-template-columns: 1fr;
	}

	body.single-produto .image_left_text_right .w3n_title-blk,
	body.single-produto .image_left_text_right .left-img-block,
	body.single-produto .image_left_text_right .right-text-block,
	body.single-produto .reverse-img-block .left-img-block,
	body.single-produto .reverse-img-block .right-text-block {
		grid-column: 1;
		grid-row: auto;
	}

	body.single-produto .product-detail-recipes-image {
		height: 190px;
	}

	body.single-produto .product-detail-range-image {
		height: 245px;
	}

	body.single-produto .product-detail-recipes .slick-arrow {
		top: 94px;
	}

	body.single-produto .product-detail-range-wrapper .slick-arrow {
		top: 102px;
	}
}

@media only screen and (max-width: 767px) {
	body.single-produto .product-detail-top-section {
		display: block;
		height: auto;
		min-height: 0;
	}

	body.single-produto .product-detail-image,
	body.single-produto .product-detail-image img {
		width: 100%;
		height: 430px;
		min-height: 430px;
	}

	body.single-produto .product-detail-content {
		display: flex;
		width: 100%;
		height: auto;
		min-height: 0;
		padding: 74px 24px 44px;
	}

	body.single-produto .product-detail-content-inner {
		max-width: none;
	}

	body.single-produto .product-detail-content-inner h1 {
		font-size: clamp(44px, 13vw, 58px);
	}

	body.single-produto .product-detail-content-inner h3 {
		margin-top: 20px;
		font-size: 25px;
	}

	body.single-produto .product-detail-content-inner > p {
		font-size: 15px;
	}

	body.single-produto .cart-compare-btn {
		margin-top: 26px;
		flex-direction: column;
	}

	body.single-produto .cart-compare-btn .add-cart-btn,
	body.single-produto .cart-compare-btn .button-action,
	body.single-produto .cart-compare-btn .btn,
	body.single-produto .descarregarebook,
	body.single-produto .descarregarebook .btn {
		width: 100%;
	}

	body.single-produto .product-detail-slider.w3n-prod-detail-img {
		top: 74px;
		left: 50%;
		width: 190px;
		height: 330px;
		transform: translateX(-50%) !important;
	}

	body.single-produto .product-detail-arrow {
		right: 18px;
		top: 376px;
		bottom: auto;
		left: 18px;
	}

	body.single-produto .product-detail-arrow ul {
		grid-template-columns: 1fr 1fr;
	}

	body.single-produto .product-detail-arrow a {
		width: 40px;
		max-width: 40px;
		min-height: 40px;
		font-size: 0;
	}

	body.single-produto .product-detail-arrow a .nav-detail-wrap-title {
		display: none;
	}

	body.single-produto .product-detail-arrow a::before,
	body.single-produto .product-detail-arrow a::after {
		width: 40px;
		height: 40px;
		flex-basis: 40px;
	}

	body.single-produto .product-detail-middle {
		width: 100%;
		padding: 52px 24px 56px;
	}

	body.single-produto .product-detail-middle-left {
		display: none;
	}

	body.single-produto .product-detail-middle-right {
		float: none;
		width: 100%;
		padding: 0;
	}

	body.single-produto .product-detail-middle-right > *:not(:first-child) {
		margin-top: 32px !important;
	}

	body.single-produto .product-detail-recipes + .product-detail-recipes-slider-mobile {
		margin-top: 24px !important;
	}

	body.single-produto .product-detail-middle-right h2,
	body.single-produto .common-question-section h2 {
		font-size: 36px;
	}

	body.single-produto .image_left_text_right .left-img-block,
	body.single-produto .image_left_text_right .right-text-block,
	body.single-produto .image_left_text_right .left-img-bg,
	body.single-produto .image_left_text_right .w3n-video-sec,
	body.single-produto .image_left_text_right video {
		min-height: 280px;
	}

	body.single-produto .image_left_text_right .right-text-block {
		min-height: 0;
		padding: 30px 24px;
	}

	body.single-produto .intensity-flavor,
	body.single-produto .flavor-note {
		padding: 24px 0;
	}

	body.single-produto .intensity-flavor .intens-div span {
		padding-left: 100px;
		font-size: 24px;
	}

	body.single-produto .flavor-note-row {
		grid-template-columns: minmax(82px, 1fr) repeat(3, 1fr);
	}

	body.single-produto .ideal-wrap {
		padding: 24px 0;
	}

	body.single-produto .product-detail-middle .product-detail-middle-right .available-wrap.w3n-pda_sec {
		gap: 20px 16px;
	}

	body.single-produto .product-detail-middle .available-wrap.w3n-pda_sec .available-stock {
		width: auto;
		min-width: 0;
		max-width: calc(50% - 8px);
		flex: 1 1 calc(50% - 8px);
	}

	body.single-produto .available-stock-img {
		width: 110px;
		height: 176px;
		flex-basis: 176px;
	}

	body.single-produto .product-award-w3n {
		padding: 28px 0;
	}

	body.single-produto .product-award-w3n .bottom_map_more {
		align-items: flex-start;
		flex-direction: column;
	}

	body.single-produto .product-detail-recipes,
	body.single-produto .product-detail-range-wrapper {
		padding-top: 26px;
	}

	body.single-produto .product-detail-recipes-slider,
	body.single-produto .product-detail-range-slider {
		margin-right: 0;
		margin-left: 0;
	}

	body.single-produto .product-detail-recipes-items,
	body.single-produto .product-detail-range-items {
		padding: 0 6px;
	}

	body.single-produto .product-detail-recipes-image {
		height: 210px;
	}

	body.single-produto .product-detail-range-image {
		height: 260px;
	}

	body.single-produto .product-detail-recipes-slider-mobile {
		margin-bottom: 0;
	}

	body.single-produto .product-detail-recipes .slick-arrow,
	body.single-produto .product-detail-range-wrapper .slick-arrow {
		display: none !important;
	}

	body.single-produto .share-page-wrapper {
		position: relative;
		bottom: auto;
		left: auto;
		padding: 18px 0;
		align-items: flex-start;
		flex-direction: column;
		gap: 16px;
	}

	body.single-produto .saiba-como-reciclar-link-container {
		padding: 26px 22px;
		grid-template-columns: 1fr;
		align-items: start;
		gap: 20px;
	}

	body.single-produto .saiba-como-reciclar-link-container h2 {
		font-size: 30px;
	}

	body.single-produto .product-detail-recipes > .see-certification-button,
	body.single-produto .product-detail-recipes > .see-certification-button .btn,
	body.single-produto .product-award-w3n .see-certification-button,
	body.single-produto .product-award-w3n .see-certification-button .btn,
	body.single-produto .saiba-como-reciclar-link-container > .btn {
		width: 100%;
	}

	body.single-produto .common-question-section,
	body.single-produto .common-question-left,
	body.single-produto .common-question-right {
		min-height: 240px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.single-produto .product-detail-slider,
	body.single-produto .product-detail-recipes *,
	body.single-produto .product-detail-range-wrapper * {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}
}

/* ========================================================================== */
/* Recipe listing 2026 V3                                                     */
/*                                                                            */
/* Visual layer only. The body template class is the scope; the legacy ACF,    */
/* WPML, autocomplete, Nice Select, AJAX and slider selectors remain intact.   */
/* ========================================================================== */

.page-template-recipe_listing {
	--gallo-recipes-paper: #ffffff;
	--gallo-recipes-cream: #f8f5ed;
	--gallo-recipes-soft: #f0f4e8;
	--gallo-recipes-ink: #34392c;
	--gallo-recipes-muted: #667083;
	--gallo-recipes-line: #ded8ca;
	overflow-x: hidden;
}

.page-template-recipe_listing.gallo-market-pt-pt {
	--gallo-recipes-soft: #eef2f9;
	--gallo-recipes-ink: #172443;
}

/* Hero and real autocomplete/search controls. */
.page-template-recipe_listing .recipes-banner-section {
	position: relative;
	display: flex;
	height: auto !important;
	min-height: 548px;
	padding: 168px max(48px, calc((100vw - 1320px) / 2)) 82px;
	align-items: center;
	overflow: visible;
	color: var(--gallo-2026-white);
	background-color: var(--gallo-2026-market-primary);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.page-template-recipe_listing .recipes-banner-section::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: linear-gradient(90deg, rgba(24, 35, 8, .9) 0%, rgba(24, 35, 8, .62) 39%, rgba(24, 35, 8, .08) 78%);
	content: "";
	pointer-events: none;
}

.page-template-recipe_listing.gallo-market-pt-pt .recipes-banner-section::before {
	background: linear-gradient(90deg, rgba(10, 26, 46, .88) 0%, rgba(10, 26, 46, .62) 39%, rgba(10, 26, 46, .08) 78%);
}

.page-template-recipe_listing .recipes-banner-section.animate-banner-top {
	min-height: 460px;
}

.page-template-recipe_listing .recipes-banner-middle-text {
	position: static;
	z-index: 2;
	width: min(1320px, 100%);
	margin: 0 auto;
	text-align: left;
}

.page-template-recipe_listing .recipes-banner-middle-text h1 {
	position: relative;
	z-index: 2;
	max-width: 720px;
	margin: 0;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(60px, 6vw, 88px);
	font-style: normal;
	font-weight: 800;
	line-height: .93;
	letter-spacing: .01em;
	text-align: left;
	text-wrap: balance;
}

/* A short, single-token ACF heading (for example “Inspire-se”) has enough
 * room at every supported breakpoint and should not acquire an orphan line.
 * Longer translated headings retain the normal balanced wrapping above. */
.page-template-recipe_listing .recipes-banner-middle-text h1.is-single-line-title {
	max-width: none;
	text-wrap: nowrap;
	white-space: nowrap;
}

.page-template-recipe_listing .search-recipes-bar {
	position: absolute;
	z-index: 4;
	top: auto;
	right: 0;
	bottom: 0;
	left: 0;
	width: min(900px, calc(100% - 96px));
	margin: 0 auto;
	transform: translateY(50%);
}

.page-template-recipe_listing .search-recipes-bar-inner {
	position: relative;
	display: grid;
	min-height: 78px;
	grid-template-columns: 62px minmax(0, 1fr) 138px;
	align-items: center;
	border: 1px solid rgba(173, 128, 55, .35);
	background: var(--gallo-recipes-paper);
	box-shadow: 0 18px 50px rgba(18, 28, 43, .14);
}

.page-template-recipe_listing .search-recipes-bar-inner > input[type="submit"] {
	position: static;
	display: block;
	width: 62px;
	height: 76px;
	margin: 0;
	border: 0;
	background-color: transparent;
	background-image: url("../images/search-black.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 21px auto;
	font-size: 0;
	cursor: pointer;
}

.page-template-recipe_listing .search-recipes-bar .wp_autosearch_form_sec,
.page-template-recipe_listing .search-recipes-bar .wp_autosearch_form_wrapper {
	position: relative;
	width: 100% !important;
	height: 76px !important;
	padding: 0;
	border: 0 !important;
	background: transparent !important;
}

.page-template-recipe_listing .search-recipes-bar .wp_autosearch_form_wrapper::before {
	display: none;
}

.page-template-recipe_listing .search-recipes-bar input[type="text"],
.page-template-recipe_listing .search-recipes-bar input[type="search"] {
	width: 100%;
	height: 76px !important;
	padding: 0 24px 0 4px !important;
	border: 0;
	outline: 0;
	color: var(--gallo-recipes-ink) !important;
	background: transparent !important;
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	font-style: normal;
	line-height: 76px;
	text-overflow: ellipsis;
	transition: box-shadow .22s ease;
}

.page-template-recipe_listing .search-recipes-bar input[type="text"]::placeholder,
.page-template-recipe_listing .search-recipes-bar input[type="search"]::placeholder {
	color: #747b88;
	opacity: 1;
}

.page-template-recipe_listing .search-recipes-bar input[type="text"]:focus,
.page-template-recipe_listing .search-recipes-bar input[type="search"]:focus {
	box-shadow: inset 0 -3px var(--gallo-2026-market-highlight);
}

.page-template-recipe_listing .search-recipes-filter {
	position: static;
	width: auto;
	height: 100%;
	min-height: 76px;
	padding: 0;
	overflow: hidden;
	box-sizing: border-box;
	background: var(--gallo-2026-market-primary);
}

.page-template-recipe_listing .search-recipes-filter a {
	display: flex;
	width: 100%;
	height: 100%;
	min-height: 76px;
	padding: 0;
	align-items: center;
	box-sizing: border-box;
}

.page-template-recipe_listing .search-recipes-filter span {
	display: flex;
	width: 100%;
	height: 100%;
	min-height: 76px;
	padding: 0 18px;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	gap: 12px;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.page-template-recipe_listing .search-recipes-filter span::before,
.page-template-recipe_listing .search-recipes-filter span::after {
	display: none;
}

.page-template-recipe_listing .search-recipes-filter img {
	position: static;
	display: block;
	width: 21px;
	height: auto;
	margin: 0;
}

.page-template-recipe_listing .search-recipes-filter .onopen {
	display: none;
}

.page-template-recipe_listing .search-recipes-filter.open .defaultimg {
	display: none;
}

.page-template-recipe_listing .search-recipes-filter.open .onopen {
	display: block;
}

.page-template-recipe_listing .explorar-recipes-btn {
	z-index: 2;
	bottom: 102px;
}

.page-template-recipe_listing .explorar-recipes-btn .btn {
	min-height: 50px;
	border-color: rgba(255, 255, 255, .72);
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-ui-font);
	font-style: normal;
}

.page-template-recipe_listing .explorar-text {
	z-index: 2;
	bottom: 96px;
}

/* Workspace and real Nice Select filter controls. */
.page-template-recipe_listing .recipes-middle-section.container {
	width: min(1320px, calc(100% - 96px));
	max-width: none;
	margin: 0 auto;
	padding: 88px 0 46px;
}

.page-template-recipe_listing .recipes-middle-section > .row {
	width: 100%;
	margin: 0;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new {
	margin: 0 0 68px;
	border-top: 1px solid rgba(173, 128, 55, .3);
	border-bottom: 1px solid rgba(173, 128, 55, .3);
	text-align: left;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new form {
	display: grid;
	min-height: 86px;
	grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
	align-items: stretch;
	font-size: initial;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new form::before {
	display: none;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .filter-box {
	position: relative;
	display: flex;
	width: auto;
	min-width: 0;
	min-height: 84px;
	padding: 15px 13px 14px 42px;
	align-items: stretch;
	justify-content: center;
	flex-direction: column;
	border-left: 1px solid rgba(222, 216, 202, .72);
	text-align: left;
	transition: background-color .22s ease, box-shadow .22s ease;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .filter-box:first-of-type {
	border-left: 0;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .filter-box:focus-within,
.page-template-recipe_listing .search-recipes-bar-popup-menu-new .filter-box.popup-open {
	background: var(--gallo-recipes-soft);
	box-shadow: inset 0 -2px var(--gallo-2026-market-accent);
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .tiny-icon {
	position: absolute;
	top: 50% !important;
	left: 13px;
	z-index: 8;
	width: 22px;
	max-width: 22px;
	height: 22px;
	margin: 0 !important;
	padding: 0;
	transform: translateY(-50%);
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .tiny-icon img,
.page-template-recipe_listing .search-recipes-bar-popup-menu-new .tiny-icon svg {
	display: block;
	width: 22px;
	height: 22px;
	object-fit: contain;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select {
	position: static;
	width: 100%;
	height: auto;
	min-height: 38px;
	margin: 0;
	padding: 0 20px 0 0;
	border: 0;
	border-radius: 0;
	color: var(--gallo-recipes-ink);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: 1.35;
	text-align: left;
	white-space: normal;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select .select_label,
.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select .current {
	display: flex;
	min-height: 38px;
	padding: 11px 0;
	align-items: center;
	overflow: visible;
	color: var(--gallo-recipes-ink);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
	text-overflow: clip;
	white-space: normal;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select::after {
	top: 50%;
	right: 13px;
	bottom: auto;
	left: auto;
	width: 10px;
	height: 10px;
	margin: -6px 0 0;
	border: 0;
	border-right: 1.5px solid var(--gallo-2026-market-accent);
	border-bottom: 1.5px solid var(--gallo-2026-market-accent);
	background: transparent;
	transform: rotate(45deg);
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select.open::after {
	transform: rotate(225deg);
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select .list {
	top: calc(100% + 14px);
	right: -14px;
	left: -42px;
	z-index: 40;
	width: auto;
	height: auto;
	max-height: 260px;
	padding: 14px 16px;
	overflow-y: auto;
	border: 1px solid var(--gallo-recipes-line);
	border-radius: 0;
	background: var(--gallo-recipes-paper);
	box-shadow: 0 15px 30px rgba(18, 28, 43, .12);
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select .option,
.page-template-recipe_listing .search-recipes-bar-popup-menu-new .list .optgroup .label {
	min-height: 34px;
	margin: 0;
	padding: 8px 24px 8px 2px;
	color: var(--gallo-recipes-ink);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	line-height: 1.4;
}

.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select .option:hover,
.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select .option.focus,
.page-template-recipe_listing .search-recipes-bar-popup-menu-new .nice-select .option.selected {
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-recipes-soft);
}

/* Editorial gallery heading and the unchanged slider2 markup. */
.page-template-recipe_listing .recipes-middle-text {
	display: grid;
	width: 100%;
	max-width: none;
	margin: 0 0 34px;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 440px);
	align-items: end;
	gap: 44px;
	text-align: left;
}

.page-template-recipe_listing .recipes-middle-text h2,
.page-template-recipe_listing .recipes-inspiration-section > h2,
.page-template-recipe_listing .recipes-search-suggestion-section-add-new > h2,
.page-template-recipe_listing .tips-inspiration-section > h2 {
	margin: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(42px, 4vw, 60px);
	font-style: normal;
	font-weight: 800;
	line-height: .98;
	letter-spacing: .008em;
	text-align: left;
	text-wrap: balance;
}

.page-template-recipe_listing .recipes-middle-text p {
	margin: 0 0 4px;
	color: var(--gallo-recipes-muted);
	font-family: var(--gallo-2026-ui-font);
	font-size: 14px;
	line-height: 1.65;
}

.page-template-recipe_listing .recipes-middle-section .recipes-moments-section {
	position: relative;
	width: 100%;
	margin: 0 0 88px;
	padding: 0;
	overflow: hidden;
}

.page-template-recipe_listing .recipes-moments-section .slideshow2 {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
	overflow: hidden;
	background: var(--gallo-recipes-cream);
}

.page-template-recipe_listing .recipes-moments-section .slide2 {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

.page-template-recipe_listing .recipes-moments-section .slide2.slide--current {
	position: relative;
	z-index: 2;
	height: auto;
	opacity: 1;
	pointer-events: auto;
}

.page-template-recipe_listing .recipes-moments-section .slide__wrap2 {
	position: relative;
	display: grid;
	width: 100%;
	height: auto;
	min-height: 500px;
	grid-template-columns: minmax(0, 1.45fr) minmax(390px, .8fr);
	overflow: hidden;
}

.page-template-recipe_listing .recipes-moments-section .slide__img2 {
	position: relative;
	top: auto;
	left: auto;
	width: 100%;
	height: 100%;
	min-height: 500px;
	overflow: hidden;
	background-color: #d9cfa4;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	pointer-events: none;
}

.page-template-recipe_listing .recipes-moments-section .slide__img2::before {
	display: none;
}

.page-template-recipe_listing .recipes-moments-section .slide__title-wrap2 {
	position: relative;
	top: auto;
	left: auto;
	display: flex;
	width: 100%;
	height: auto;
	min-width: 0;
	max-width: none;
	margin: 0;
	padding: 46px 48px 98px;
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-recipes-cream);
	text-align: left;
	flex-direction: column;
	justify-content: flex-start;
}

.page-template-recipe_listing .recipes-moments-section .slide__title-wrap2::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 6px;
	background: var(--gallo-2026-market-highlight);
	content: "";
}

.page-template-recipe_listing .recipes-moments-section .slide__title-wrap2 h6 {
	position: static;
	display: block;
	max-width: none;
	margin: 0 0 30px;
	padding: 0;
	color: var(--gallo-2026-gold);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .19em;
	text-align: left;
	text-transform: uppercase;
}

.page-template-recipe_listing .recipes-moments-section .slide__title-wrap2 h6::before {
	display: none;
}

.page-template-recipe_listing .recipes-moments-section .slide__title-wrap2 .title-wrap-inner {
	width: 100%;
	max-width: 500px;
	margin: 0;
	padding: 0;
	text-align: left;
}

.page-template-recipe_listing .recipes-moments-section .product-detail-recipes-text-top {
	margin: 0 0 22px;
}

.page-template-recipe_listing .recipes-moments-section .product-detail-recipes-text-top ul {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	flex-wrap: wrap;
	list-style: none;
}

.page-template-recipe_listing .recipes-moments-section .product-detail-recipes-text-top ul li {
	position: relative;
	display: inline-flex;
	margin: 0;
	padding: 0 14px;
	align-items: center;
	gap: 8px;
	color: var(--gallo-recipes-muted);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.page-template-recipe_listing .recipes-moments-section .product-detail-recipes-text-top ul li:first-child {
	padding-left: 0;
}

.page-template-recipe_listing .recipes-moments-section .product-detail-recipes-text-top ul li + li::before {
	position: absolute;
	top: 2px;
	left: 0;
	width: 1px;
	height: 18px;
	background: rgba(173, 128, 55, .4);
	content: "";
}

.page-template-recipe_listing .recipes-moments-section .product-detail-recipes-text-top ul li img {
	display: block;
	width: 20px;
	height: 20px;
	margin: 0;
	object-fit: contain;
	filter: brightness(0) saturate(100%) invert(52%) sepia(27%) saturate(1088%) hue-rotate(358deg) brightness(91%) contrast(87%);
	mix-blend-mode: multiply;
}

.page-template-recipe_listing .recipes-moments-section .slide__title {
	position: static;
	display: block;
	max-width: none;
	min-height: 2.05em;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(39px, 3.6vw, 55px);
	font-style: normal;
	font-weight: 800;
	line-height: .99;
	letter-spacing: 0;
	text-align: left;
	text-wrap: balance;
}

.page-template-recipe_listing .recipes-moments-section .know-recipes-btn {
	position: static;
	width: auto;
	max-width: none;
	margin: 28px 0 0;
	padding: 0;
	text-align: left;
}

.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn {
	position: static;
	display: inline-flex;
	width: auto;
	min-width: 210px;
	min-height: 50px;
	max-width: none;
	height: auto;
	padding: 14px 20px;
	border: 1px solid var(--gallo-2026-market-primary);
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	color: var(--gallo-2026-white);
	background: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	text-align: left;
	text-decoration: none;
	transition: color .28s ease, background-color .28s ease;
}

.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn::before,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn::before {
	display: none;
}

.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn::after,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn::after {
	position: static;
	display: block;
	width: auto;
	height: auto;
	color: var(--gallo-2026-market-highlight);
	background: transparent;
	content: "\2192";
	font-family: var(--gallo-2026-ui-font);
	font-size: 19px;
	font-style: normal;
	line-height: 1;
	transition: transform .25s ease;
}

.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn:hover,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn:hover {
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-recipes-paper);
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 {
	position: absolute;
	z-index: 10;
	right: 42px;
	bottom: 34px;
	left: auto;
	display: flex;
	width: auto;
	margin: 0;
	padding: 0;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item2 {
	position: static;
	display: flex;
	width: 40px;
	height: 40px;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(21, 44, 98, .25);
	border-radius: 50%;
	align-items: center;
	justify-content: center;
	color: var(--gallo-2026-market-primary);
	background: transparent !important;
	background-image: none !important;
	cursor: pointer;
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item--prev2::before,
.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item--next2::before {
	position: static;
	display: block;
	width: auto;
	height: auto;
	margin: 0;
	color: currentColor;
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	line-height: 1;
	transform: none;
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item--prev2::before {
	content: "\2190";
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item--next2::before {
	content: "\2192";
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item--label2 {
	width: auto;
	min-width: 64px;
	border: 0;
	border-radius: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em;
	cursor: default;
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item--label2 span {
	padding: 0;
	color: var(--gallo-2026-market-primary);
}

.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__label--total2::before {
	display: inline-block;
	padding: 0 7px;
	color: var(--gallo-2026-gold);
	content: "/";
}

/* ACF category cards. */
.page-template-recipe_listing .recipes-inspiration-section {
	padding: 0 0 88px;
	text-align: left;
}

.page-template-recipe_listing .recipes-inspiration-section > h2 {
	margin-bottom: 34px;
}

.page-template-recipe_listing .recipes-inspiration-inner {
	display: grid;
	margin: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: start;
	gap: 18px;
}

.page-template-recipe_listing .recipes-inspiration-inner::before,
.page-template-recipe_listing .recipes-inspiration-inner::after,
.page-template-recipe_listing .recipes-search-suggestion-section-add-new::before,
.page-template-recipe_listing .recipes-search-suggestion-section-add-new::after,
.page-template-recipe_listing .recipes-search-suggestion-section::before,
.page-template-recipe_listing .recipes-search-suggestion-section::after,
.page-template-recipe_listing .tips-inspiration-section::before,
.page-template-recipe_listing .tips-inspiration-section::after,
.page-template-recipe_listing .tips-inspiration-inner::before,
.page-template-recipe_listing .tips-inspiration-inner::after {
	display: none;
	content: none;
}

.page-template-recipe_listing .recipes-inspiration-box {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

.page-template-recipe_listing .recipes-inspiration-box:nth-child(3n+2) {
	margin-top: 28px;
}

.page-template-recipe_listing .recipes-inspiration-box:nth-child(3n+3) {
	margin-top: 14px;
}

.page-template-recipe_listing .recipes-inspiration-image {
	position: relative;
	display: block;
	min-height: 354px;
	overflow: hidden;
	background: var(--gallo-recipes-cream);
}

.page-template-recipe_listing .recipes-inspiration-image::before {
	z-index: 2;
	background: linear-gradient(0deg, rgba(10, 24, 42, .66), rgba(10, 24, 42, 0) 64%);
	opacity: 1;
}

.page-template-recipe_listing:not(.gallo-market-pt-pt) .recipes-inspiration-image::before {
	background: linear-gradient(0deg, rgba(24, 35, 8, .7), rgba(24, 35, 8, 0) 64%);
}

.page-template-recipe_listing .recipes-inspiration-image img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s cubic-bezier(.2, .7, .2, 1);
}

.page-template-recipe_listing .recipes-inspiration-text {
	bottom: 0;
	z-index: 3;
	padding: 28px;
	text-align: left;
}

.page-template-recipe_listing .recipes-inspiration-section .recipes-inspiration-text h2 {
	margin: 0 0 6px;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-title-font);
	font-size: 34px;
	font-style: normal;
	font-weight: 800;
	line-height: 1;
	text-align: left;
}

.page-template-recipe_listing .recipes-inspiration-text h5 {
	margin: 0;
	color: rgba(255, 255, 255, .78);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.page-template-recipe_listing .recipes-inspiration-image .line-drop {
	display: none;
}

/* Initial/fallback and AJAX recipe result cards share the same response HTML. */
.page-template-recipe_listing #receipe_data {
	width: 100%;
}

.page-template-recipe_listing .recipes-search-suggestion-section-add-new {
	padding: 0 0 88px;
}

.page-template-recipe_listing .recipes-search-suggestion-section-add-new + .recipes-search-suggestion-section-add-new {
	padding-top: 0;
}

.page-template-recipe_listing .recipes-search-suggestion-section-add-new > h2 {
	margin-bottom: 34px;
}

.page-template-recipe_listing .recipes-search-suggestion-section {
	display: grid;
	margin: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-items {
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-items:nth-child(3n+1) {
	clear: none;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-items > a {
	display: flex;
	height: 100%;
	padding: 0;
	flex-direction: column;
	border-bottom: 1px solid rgba(173, 128, 55, .45);
	background: var(--gallo-recipes-paper);
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-image {
	position: relative;
	width: 100%;
	height: auto;
	aspect-ratio: 1.36 / 1;
	overflow: hidden;
	background: var(--gallo-recipes-cream);
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-image::before,
.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text::before {
	display: none;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-image img {
	position: static;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	transform: none;
	transition: transform .4s cubic-bezier(.2, .7, .2, 1);
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text {
	display: flex;
	width: 100%;
	min-height: 170px;
	padding: 22px 4px 20px;
	flex: 1;
	flex-direction: column;
	text-align: left;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text-top {
	margin: 0 0 17px;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text-top ul {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 15px;
	list-style: none;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text-top li {
	position: relative;
	display: inline-flex;
	margin: 0;
	padding: 0;
	align-items: center;
	gap: 6px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 9.5px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text-top li img {
	display: block;
	width: 19px;
	height: 18px;
	margin: 0;
	object-fit: contain;
}

.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text h3 {
	min-height: 2.08em;
	margin: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: 28px;
	font-style: normal;
	font-weight: 800;
	line-height: 1.04;
	text-align: left;
	text-wrap: balance;
}

/* ACF Tips close the page directly before the global footer. */
.page-template-recipe_listing .tips-inspiration-section {
	display: grid;
	width: 100%;
	margin: 0;
	padding: 66px 58px 68px;
	grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr);
	align-items: center;
	gap: 52px;
	background: var(--gallo-recipes-cream);
	text-align: left;
}

.page-template-recipe_listing .tips-inspiration-section > h2 {
	margin: 0;
	font-size: clamp(42px, 3.35vw, 48px);
}

.page-template-recipe_listing .tips-inspiration-inner {
	display: grid;
	margin: 0;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 16px;
}

.page-template-recipe_listing .tips-inspiration-inner .tips-inspiration-item {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

.page-template-recipe_listing .tips-inspiration-item > a {
	display: grid;
	height: 100%;
	grid-template-rows: 188px auto;
	background: var(--gallo-recipes-paper);
}

.page-template-recipe_listing .tips-inspiration-item .product-detail-recipes-image {
	width: 100%;
	height: 188px;
	overflow: hidden;
}

.page-template-recipe_listing .tips-inspiration-item .product-detail-recipes-image::before {
	display: none;
}

.page-template-recipe_listing .tips-inspiration-item .product-detail-recipes-text::before {
	display: none;
}

.page-template-recipe_listing .tips-inspiration-item .product-detail-recipes-image img {
	position: static;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	transform: none;
	transition: transform .4s cubic-bezier(.2, .7, .2, 1);
}

.page-template-recipe_listing .tips-inspiration-section .tips-inspiration-item .product-detail-recipes-text {
	display: flex;
	width: 100%;
	min-height: 154px;
	padding: 22px 24px;
	flex-direction: column;
	text-align: left;
}

.page-template-recipe_listing .tips-inspiration-section .tips-inspiration-item .product-detail-recipes-text h2 {
	margin: 0 0 11px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 9px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .14em;
	text-align: left;
	text-transform: uppercase;
}

.page-template-recipe_listing .tips-inspiration-section .tips-inspiration-item .product-detail-recipes-text h3 {
	max-width: none;
	margin: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: 24px;
	font-style: normal;
	font-weight: 800;
	line-height: 1.05;
	text-align: left;
	text-wrap: balance;
}

/* Keyboard and fine-pointer states; touch never depends on hover. */
.page-template-recipe_listing a:focus-visible,
.page-template-recipe_listing button:focus-visible,
.page-template-recipe_listing input:focus-visible,
.page-template-recipe_listing select:focus-visible,
.page-template-recipe_listing .nice-select:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
	.page-template-recipe_listing .recipes-moments-section .slide__img2 {
		pointer-events: auto;
		transition: transform .46s cubic-bezier(.2, .7, .2, 1);
		will-change: transform;
	}

	.page-template-recipe_listing .recipes-moments-section .slide__wrap2:hover .slide__img2,
	.page-template-recipe_listing .recipes-moments-section .slide__wrap2:focus-within .slide__img2,
	.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-items > a:hover .product-detail-recipes-image img,
	.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-items > a:focus-visible .product-detail-recipes-image img,
	.page-template-recipe_listing .tips-inspiration-item > a:hover .product-detail-recipes-image img,
	.page-template-recipe_listing .tips-inspiration-item > a:focus-visible .product-detail-recipes-image img {
		transform: scale(1.03) !important;
	}

	.page-template-recipe_listing .recipes-inspiration-box a:hover .recipes-inspiration-image img,
	.page-template-recipe_listing .recipes-inspiration-box a:focus-visible .recipes-inspiration-image img {
		transform: scale(1.025);
	}

	.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item2:hover,
	.page-template-recipe_listing .recipes-moments-section .boxnav2 .boxnav__item2:focus-visible {
		border-color: var(--gallo-2026-market-primary);
		color: var(--gallo-2026-white);
		background-color: var(--gallo-2026-market-primary) !important;
	}
}

@media only screen and (max-width: 1199px) {
	.page-template-recipe_listing .recipes-middle-section.container {
		width: min(1120px, calc(100% - 56px));
	}

	.page-template-recipe_listing .search-recipes-bar-popup-menu-new form {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.page-template-recipe_listing .search-recipes-bar-popup-menu-new .filter-box {
		border-bottom: 1px solid var(--gallo-recipes-line);
	}

	.page-template-recipe_listing .recipes-moments-section .slide__wrap2 {
		grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
	}

	.page-template-recipe_listing .tips-inspiration-section {
		padding: 56px 42px 58px;
		gap: 36px;
	}
}

@media only screen and (max-width: 1023px) {
	.page-template-recipe_listing .recipes-banner-section {
		min-height: 510px;
		padding-right: 36px;
		padding-left: 36px;
	}

	.page-template-recipe_listing .recipes-middle-section.container {
		width: calc(100% - 48px);
	}

	.page-template-recipe_listing .recipes-moments-section .slide__wrap2 {
		min-height: 470px;
		grid-template-columns: minmax(0, 1.05fr) minmax(330px, .95fr);
	}

	.page-template-recipe_listing .recipes-moments-section .slide__img2 {
		min-height: 470px;
	}

	.page-template-recipe_listing .recipes-moments-section .slide__title-wrap2 {
		padding: 38px 34px 92px;
	}

	.page-template-recipe_listing .recipes-inspiration-image {
		min-height: 310px;
	}

	.page-template-recipe_listing .tips-inspiration-section {
		display: block;
	}

	.page-template-recipe_listing .tips-inspiration-section > h2 {
		margin-bottom: 32px;
	}
}

@media only screen and (max-width: 767px) {
	.page-template-recipe_listing .recipes-banner-section,
	.page-template-recipe_listing .recipes-banner-section.animate-banner-top {
		min-height: 452px;
		padding: 136px 24px 88px;
		align-items: flex-start;
		background-position: 54% center;
	}

	.page-template-recipe_listing .recipes-banner-section::before,
	.page-template-recipe_listing.gallo-market-pt-pt .recipes-banner-section::before {
		background: linear-gradient(180deg, rgba(24, 35, 8, .78), rgba(24, 35, 8, .48) 56%, rgba(24, 35, 8, .8));
	}

	.page-template-recipe_listing.gallo-market-pt-pt .recipes-banner-section::before {
		background: linear-gradient(180deg, rgba(10, 26, 46, .72), rgba(10, 26, 46, .48) 56%, rgba(10, 26, 46, .76));
	}

	.page-template-recipe_listing .recipes-banner-middle-text h1 {
		font-size: clamp(45px, 14vw, 58px);
		line-height: .94;
	}

	.page-template-recipe_listing .search-recipes-bar {
		width: calc(100% - 32px);
	}

	.page-template-recipe_listing .search-recipes-bar-inner {
		min-height: 64px;
		grid-template-columns: 48px minmax(0, 1fr) 58px;
	}

	.page-template-recipe_listing .search-recipes-bar-inner > input[type="submit"] {
		width: 48px;
		height: 62px;
	}

	.page-template-recipe_listing .search-recipes-bar .wp_autosearch_form_sec,
	.page-template-recipe_listing .search-recipes-bar .wp_autosearch_form_wrapper,
	.page-template-recipe_listing .search-recipes-bar input[type="text"],
	.page-template-recipe_listing .search-recipes-bar input[type="search"] {
		height: 62px !important;
	}

	.page-template-recipe_listing .search-recipes-bar input[type="text"],
	.page-template-recipe_listing .search-recipes-bar input[type="search"] {
		padding-right: 8px !important;
		font-size: 12px;
		line-height: 62px;
	}

	.page-template-recipe_listing .search-recipes-filter {
		min-height: 62px;
	}

	.page-template-recipe_listing .search-recipes-filter a,
	.page-template-recipe_listing .search-recipes-filter span {
		min-height: 62px;
		padding: 0;
		justify-content: center;
	}

	.page-template-recipe_listing .search-recipes-filter .searchTxt {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	.page-template-recipe_listing .explorar-recipes-btn,
	.page-template-recipe_listing .explorar-text {
		display: none;
	}

	.page-template-recipe_listing .recipes-middle-section.container {
		width: 100%;
		padding: 60px 18px 30px;
	}

	/* Legacy opens a separate mobile filter panel from footer.php. */
	.page-template-recipe_listing .search-recipes-bar-popup {
		background: var(--gallo-recipes-paper);
	}

	.page-template-recipe_listing .search-recipes-bar-popup-header {
		height: 72px;
		padding: 24px 20px;
		border-color: var(--gallo-recipes-line);
	}

	.page-template-recipe_listing .search-recipes-bar-popup-middle {
		padding: 26px 20px 50px;
	}

	.page-template-recipe_listing .search-recipes-bar-popup .filter-box {
		padding: 18px 0 18px 44px;
		border-color: var(--gallo-recipes-line);
	}

	.page-template-recipe_listing .search-recipes-bar-popup .tiny-icon {
		left: 4px;
	}

	.page-template-recipe_listing .search-recipes-bar-popup .filter-box .nice-select {
		padding-left: 0;
		color: var(--gallo-recipes-ink);
		font-family: var(--gallo-2026-ui-font);
	}

	.page-template-recipe_listing .search-recipes-bar-popup .nice-select::after {
		right: 4px;
	}

	.page-template-recipe_listing .recipes-middle-text {
		display: block;
		margin-bottom: 25px;
	}

	.page-template-recipe_listing .recipes-middle-text h2,
	.page-template-recipe_listing .recipes-inspiration-section > h2,
	.page-template-recipe_listing .recipes-search-suggestion-section-add-new > h2,
	.page-template-recipe_listing .tips-inspiration-section > h2 {
		font-size: 40px;
	}

	.page-template-recipe_listing .recipes-middle-text p {
		margin-top: 14px;
		font-size: 13px;
	}

	.page-template-recipe_listing .recipes-middle-section .recipes-moments-section {
		display: none;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-wrapper {
		display: block;
		margin: 0 0 62px;
		padding: 0;
		background: var(--gallo-recipes-cream);
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-img {
		width: 100%;
		height: clamp(220px, 62vw, 260px);
		margin: 0;
		overflow: hidden;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-img img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-text {
		padding: 27px 24px 25px;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile .product-detail-recipes-text-top {
		margin-bottom: 18px;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile .product-detail-recipes-text-top ul {
		display: flex;
		margin: 0;
		padding: 0;
		flex-wrap: wrap;
		gap: 8px 14px;
		list-style: none;
	}

	.page-template-recipe_listing .recipes-middle-section .summer-recipes-slider-mobile .product-detail-recipes-text-top ul li {
		display: inline-flex;
		margin: 0;
		padding: 0;
		align-items: center;
		gap: 6px;
		color: var(--gallo-2026-market-accent);
		font-family: var(--gallo-2026-ui-font);
		font-size: 9px;
		font-weight: 700;
		line-height: 1.4;
		letter-spacing: .05em;
		text-transform: uppercase;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile .product-detail-recipes-text-top img {
		width: 18px;
		height: 18px;
		object-fit: contain;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-text h2.slide__title {
		min-height: 0;
		margin: 0 0 24px;
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-title-font);
		font-size: 36px;
		font-style: normal;
		font-weight: 800;
		line-height: 1;
		text-wrap: balance;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn {
		width: 100%;
		min-width: 0;
		float: none;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-wrapper .slide-count-wrap {
		margin: 0;
		padding: 0 24px 24px;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-wrapper .slide-count-wrap-inner {
		padding: 16px 0 0;
		border-color: var(--gallo-recipes-line);
		color: var(--gallo-2026-market-primary);
		font-family: var(--gallo-2026-ui-font);
		font-size: 11px;
		font-weight: 700;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile .slick-prev,
	.page-template-recipe_listing .summer-recipes-slider-mobile .slick-next {
		bottom: -48px;
		width: 38px;
		height: 38px;
		border: 1px solid rgba(21, 44, 98, .26);
		border-radius: 50%;
		background-color: var(--gallo-recipes-paper);
		background-size: 7px auto;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile .slick-prev {
		left: auto;
		right: 68px;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile .slick-next {
		right: 24px;
	}

	.page-template-recipe_listing .recipes-inspiration-section,
	.page-template-recipe_listing .recipes-search-suggestion-section-add-new {
		padding-bottom: 62px;
	}

	.page-template-recipe_listing .recipes-inspiration-section > h2,
	.page-template-recipe_listing .recipes-search-suggestion-section-add-new > h2 {
		margin-bottom: 25px;
	}

	.page-template-recipe_listing .recipes-inspiration-inner,
	.page-template-recipe_listing .recipes-search-suggestion-section {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.page-template-recipe_listing .recipes-inspiration-box:nth-child(n) {
		margin-top: 0;
	}

	.page-template-recipe_listing .recipes-inspiration-image {
		min-height: 260px;
	}

	.page-template-recipe_listing .recipes-inspiration-text {
		padding: 22px;
	}

	.page-template-recipe_listing .recipes-inspiration-section .recipes-inspiration-text h2 {
		font-size: 31px;
	}

	.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-image {
		aspect-ratio: 1.48 / 1;
	}

	.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text {
		min-height: 148px;
		padding-top: 18px;
	}

	.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text h3 {
		min-height: 0;
		font-size: 27px;
	}

	.page-template-recipe_listing .tips-inspiration-section {
		display: block;
		margin-right: -18px;
		margin-left: -18px;
		padding: 48px 18px 52px;
	}

	.page-template-recipe_listing .tips-inspiration-section > h2 {
		margin-bottom: 30px;
	}

	.page-template-recipe_listing .tips-inspiration-inner {
		grid-template-columns: 1fr;
	}

	.page-template-recipe_listing .tips-inspiration-item > a {
		grid-template-rows: 180px auto;
	}
}

@media only screen and (max-width: 340px) {
	.page-template-recipe_listing .recipes-banner-section,
	.page-template-recipe_listing .recipes-banner-section.animate-banner-top {
		padding-right: 18px;
		padding-left: 18px;
	}

	.page-template-recipe_listing .recipes-banner-middle-text h1 {
		font-size: 42px;
	}

	.page-template-recipe_listing .recipes-middle-section.container {
		padding-right: 14px;
		padding-left: 14px;
	}

	.page-template-recipe_listing .tips-inspiration-section {
		margin-right: -14px;
		margin-left: -14px;
		padding-right: 14px;
		padding-left: 14px;
	}

	.page-template-recipe_listing .summer-recipes-slider-mobile-text h2.slide__title {
		font-size: 33px;
	}

	.page-template-recipe_listing .tips-inspiration-section > h2 {
		font-size: 36px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.page-template-recipe_listing *,
	.page-template-recipe_listing *::before,
	.page-template-recipe_listing *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}

	.page-template-recipe_listing .recipes-moments-section .slide__img2,
	.page-template-recipe_listing .recipes-moments-section .slide__wrap2:hover .slide__img2,
	.page-template-recipe_listing .recipes-moments-section .slide__wrap2:focus-within .slide__img2,
	.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-image img,
	.page-template-recipe_listing .tips-inspiration-item .product-detail-recipes-image img,
	.page-template-recipe_listing .recipes-inspiration-image img {
		transform: none !important;
	}
}

/* ========================================================================== */
/* Recipe category archive 2026 V3                                            */
/*                                                                            */
/* Scoped continuation of the Recipe listing V3. The existing taxonomy query, */
/* WPML filtering, ACF media and autocomplete shortcode remain authoritative.  */
/* ========================================================================== */

body.tax-receitas_categories {
	--gallo-recipes-paper: #ffffff;
	--gallo-recipes-cream: #f8f5ed;
	--gallo-recipes-soft: #f0f4e8;
	--gallo-recipes-ink: #34392c;
	--gallo-recipes-muted: #667083;
	--gallo-recipes-line: #ded8ca;
	overflow-x: hidden;
	color: var(--gallo-recipes-ink);
	background: var(--gallo-recipes-paper);
}

body.tax-receitas_categories.gallo-market-pt-pt {
	--gallo-recipes-soft: #eef2f9;
	--gallo-recipes-ink: #172443;
}

/* The legacy archive rules force a light header on every taxonomy archive.
 * Recipe categories now start over a photographic hero, so keep the normal
 * overlay state until the existing scroll handler adds `.fixed`. */
body.tax-receitas_categories .header-section-inner:not(.fixed) {
	border-bottom-color: transparent;
	background: transparent;
	box-shadow: none;
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .logo a {
	height: auto;
	border-color: rgba(255, 255, 255, .24);
	background: none;
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .logo img {
	display: inline;
	opacity: 1;
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .menu-ic span,
body.tax-receitas_categories .header-section-inner:not(.fixed) .menu-ic span::before,
body.tax-receitas_categories .header-section-inner:not(.fixed) .menu-ic span::after {
	background: var(--gallo-2026-white);
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .header-nav ul li a,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-language,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-language a,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-lista-de-compras a {
	color: var(--gallo-2026-white);
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .header-nav ul li a::after,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-language a::after,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-lista-de-compras a::after {
	background: var(--gallo-2026-white);
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .header-language a::before {
	background-image: url("../images/angle-left-white.svg");
	background-size: contain;
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .lang-img::before {
	background-image: url("../images/lang-map.svg");
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .header-lista-de-compras::before,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-search::before {
	background: rgba(255, 255, 255, .5);
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .header-lista-de-compras svg path {
	stroke: var(--gallo-2026-white);
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .header-search,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-search input[type="text"] {
	color: var(--gallo-2026-white);
}

body.tax-receitas_categories .header-section-inner:not(.fixed) .header-search::after,
body.tax-receitas_categories .header-section-inner:not(.fixed) .header-search input[type="submit"] {
	background-image: url("../images/search-white.svg");
	background-size: contain;
}

body.tax-receitas_categories .recipes-suggestion-banner-section {
	position: relative;
	display: flex;
	width: 100%;
	height: auto !important;
	min-height: 500px;
	padding: 168px max(48px, calc((100vw - 1320px) / 2)) 72px;
	align-items: center;
	overflow: visible;
	color: var(--gallo-2026-white);
	background-color: var(--gallo-2026-market-primary);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

body.tax-receitas_categories .recipes-suggestion-banner-section::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: linear-gradient(90deg, rgba(24, 35, 8, .9) 0%, rgba(24, 35, 8, .64) 39%, rgba(24, 35, 8, .1) 78%);
	content: "";
	pointer-events: none;
}

body.tax-receitas_categories.gallo-market-pt-pt .recipes-suggestion-banner-section::before {
	background: linear-gradient(90deg, rgba(10, 26, 46, .9) 0%, rgba(10, 26, 46, .64) 39%, rgba(10, 26, 46, .1) 78%);
}

body.tax-receitas_categories .recipes-banner-middle-text {
	position: static;
	z-index: 2;
	width: min(1320px, 100%);
	margin: 0 auto;
	text-align: left;
}

body.tax-receitas_categories .gallo-2026-recipe-category-eyebrow {
	display: block;
	margin: 0 0 13px;
	color: var(--gallo-2026-market-highlight);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .18em;
	text-transform: uppercase;
}

body.tax-receitas_categories .recipes-banner-middle-text h1 {
	position: relative;
	z-index: 2;
	max-width: 760px;
	margin: 0;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(70px, 7vw, 108px);
	font-style: normal;
	font-weight: 800;
	line-height: .9;
	letter-spacing: -.035em;
	text-align: left;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

body.tax-receitas_categories .search-recipes-bar {
	position: absolute;
	z-index: 4;
	top: auto;
	right: 0;
	bottom: 0;
	left: 0;
	width: min(1040px, calc(100% - 96px));
	margin: 0 auto;
	transform: translateY(50%);
}

body.tax-receitas_categories .search-recipes-bar-inner {
	position: relative;
	display: grid;
	min-height: 80px;
	grid-template-columns: 70px minmax(0, 1fr);
	align-items: stretch;
	border: 1px solid rgba(173, 128, 55, .36);
	background: var(--gallo-recipes-paper);
	box-shadow: 0 20px 48px rgba(20, 28, 40, .14);
}

body.tax-receitas_categories .search-recipes-bar-inner > input[type="submit"] {
	position: static;
	display: block;
	width: 70px;
	height: 78px;
	margin: 0;
	padding: 0;
	border: 0;
	background-color: transparent;
	background-image: url("../images/search-black.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 22px auto;
	font-size: 0;
	pointer-events: none;
}

body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_sec,
body.tax-receitas_categories .search-recipes-bar .wizardinfosys_autosearch_wrapper,
body.tax-receitas_categories .search-recipes-bar #wizardinfosys_autosearch_form,
body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_wrapper {
	position: static;
	width: 100% !important;
	height: 78px !important;
	margin: 0;
	padding: 0;
	border: 0 !important;
	background: transparent !important;
}

body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_sec {
	position: relative;
}

body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_wrapper {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 170px;
	align-items: stretch;
}

body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_wrapper::before,
body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_label {
	display: none;
}

body.tax-receitas_categories .search-recipes-bar input[type="text"],
body.tax-receitas_categories .search-recipes-bar input[type="search"] {
	position: static;
	width: 100% !important;
	height: 78px !important;
	margin: 0;
	padding: 0 20px 0 0 !important;
	border: 0;
	outline: 0;
	color: var(--gallo-recipes-ink) !important;
	background: transparent !important;
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	font-style: normal;
	line-height: 78px;
	text-overflow: ellipsis;
	transition: box-shadow .22s ease;
}

body.tax-receitas_categories .search-recipes-bar input[type="text"]::placeholder,
body.tax-receitas_categories .search-recipes-bar input[type="search"]::placeholder {
	color: #747b88;
	opacity: 1;
}

body.tax-receitas_categories .search-recipes-bar input[type="text"]:focus,
body.tax-receitas_categories .search-recipes-bar input[type="search"]:focus {
	box-shadow: inset 0 -3px var(--gallo-2026-market-highlight);
}

body.tax-receitas_categories .search-recipes-bar .wp_autosearch_submit {
	position: static;
	display: flex !important;
	width: 100% !important;
	height: 78px !important;
	margin: 0;
	padding: 0 20px !important;
	border: 0;
	align-items: center;
	justify-content: center;
	color: transparent !important;
	background: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 0;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .07em;
	text-transform: uppercase;
	cursor: pointer;
	transition: color .25s ease, background-color .25s ease;
}

body.tax-receitas_categories .search-recipes-bar .gallo-2026-category-search-label {
	position: absolute;
	/* The autocomplete plugin assigns 9999 to its transparent submit. */
	z-index: 10000;
	top: 0;
	right: 0;
	display: flex;
	width: 170px;
	height: 78px;
	padding: 0 20px;
	align-items: center;
	justify-content: center;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .07em;
	pointer-events: none;
	text-transform: uppercase;
}

body.tax-receitas_categories .search-recipes-bar .wp_autosearch_submit:hover,
body.tax-receitas_categories .search-recipes-bar .wp_autosearch_submit:focus-visible {
	color: transparent !important;
	background: var(--gallo-2026-market-accent);
}

body.tax-receitas_categories .wp_autosearch_suggestions {
	z-index: 40;
	max-width: none;
	color: var(--gallo-recipes-ink);
	background: var(--gallo-recipes-paper);
	font-family: var(--gallo-2026-ui-font);
}

body.tax-receitas_categories .recipes-suggestion-middle-section.container {
	width: min(1240px, calc(100% - 96px));
	max-width: none;
	margin: 0 auto;
	padding: 118px 0 104px;
}

body.tax-receitas_categories .gallo-2026-recipe-category-heading {
	display: flex;
	margin: 0 0 42px;
	align-items: flex-end;
	justify-content: space-between;
	gap: 32px;
}

body.tax-receitas_categories .gallo-2026-recipe-category-heading > div > span {
	display: block;
	margin: 0 0 12px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .16em;
	text-transform: uppercase;
}

body.tax-receitas_categories .gallo-2026-recipe-category-heading h2 {
	margin: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(48px, 5vw, 68px);
	font-style: normal;
	font-weight: 800;
	line-height: .95;
	letter-spacing: -.025em;
	overflow-wrap: anywhere;
	text-align: left;
	text-wrap: balance;
}

body.tax-receitas_categories .gallo-2026-recipe-category-heading > a {
	display: inline-flex;
	padding: 9px 0;
	align-items: center;
	gap: 10px;
	border-bottom: 1px solid var(--gallo-2026-market-accent);
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
}

body.tax-receitas_categories .gallo-2026-recipe-category-heading > a::after {
	color: var(--gallo-2026-market-accent);
	content: "\2192";
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	transition: transform .2s ease;
}

body.tax-receitas_categories .recipes-suggestion-middle-section > .row {
	display: block;
	margin: 0;
}

body.tax-receitas_categories .recipes-suggestion-middle-section > .row::before,
body.tax-receitas_categories .recipes-suggestion-middle-section > .row::after {
	display: none;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .recipes-search-suggestion-section {
	display: grid;
	width: 100%;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 54px 24px;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .recipes-search-suggestion-section::before,
body.tax-receitas_categories .recipes-suggestion-middle-section .recipes-search-suggestion-section::after {
	display: none;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-items {
	float: none;
	width: auto;
	min-width: 0;
	height: 100%;
	margin: 0;
	padding: 0;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-items:nth-child(3n+1) {
	clear: none;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-items > a {
	display: flex;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	flex-direction: column;
	border-bottom: 1px solid rgba(173, 128, 55, .45);
	color: var(--gallo-recipes-ink);
	background: var(--gallo-recipes-paper);
	text-decoration: none;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-image {
	position: relative;
	width: 100%;
	height: auto;
	aspect-ratio: 1.36 / 1;
	overflow: hidden;
	background: var(--gallo-recipes-cream);
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-image::before,
body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text::before {
	display: none;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-image.gallo-2026-no-image {
	background-color: var(--gallo-recipes-cream);
	background-image: var(--gallo-2026-logo-on-light);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 64px auto;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-image img {
	position: static;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	transform: none;
	transition: transform .4s cubic-bezier(.2, .7, .2, 1);
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text {
	display: flex;
	width: 100%;
	min-height: 180px;
	padding: 22px 4px 20px;
	flex: 1;
	flex-direction: column;
	text-align: left;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text-top {
	margin: 0 0 17px;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text-top ul {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 15px;
	list-style: none;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text-top li {
	position: relative;
	display: inline-flex;
	margin: 0;
	padding: 0;
	align-items: center;
	gap: 6px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 9.5px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .06em;
	text-transform: uppercase;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text-top li img {
	display: block;
	width: 19px;
	height: 18px;
	margin: 0;
	object-fit: contain;
}

body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text h3 {
	min-height: 2.08em;
	margin: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: 28px;
	font-style: normal;
	font-weight: 800;
	line-height: 1.04;
	overflow-wrap: anywhere;
	text-align: left;
	text-wrap: balance;
}

body.tax-receitas_categories .gallo-2026-recipe-card-cta {
	display: inline-flex;
	margin-top: auto;
	padding-top: 18px;
	align-items: center;
	gap: 8px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
}

body.tax-receitas_categories .gallo-2026-recipe-card-cta::after {
	color: var(--gallo-2026-market-accent);
	content: "\2192";
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	transition: transform .2s ease;
}

body.tax-receitas_categories a:focus-visible,
body.tax-receitas_categories button:focus-visible,
body.tax-receitas_categories input:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-items > a:hover .product-detail-recipes-image img,
	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-items > a:focus-visible .product-detail-recipes-image img {
		transform: scale(1.03);
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-items > a:hover .gallo-2026-recipe-card-cta::after,
	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-items > a:focus-visible .gallo-2026-recipe-card-cta::after,
	body.tax-receitas_categories .gallo-2026-recipe-category-heading > a:hover::after,
	body.tax-receitas_categories .gallo-2026-recipe-category-heading > a:focus-visible::after {
		transform: translateX(4px);
	}
}

@media only screen and (max-width: 1023px) {
	body.tax-receitas_categories .recipes-suggestion-banner-section {
		min-height: 470px;
		padding-right: 36px;
		padding-left: 36px;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section.container {
		width: calc(100% - 48px);
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section .recipes-search-suggestion-section {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 767px) {
	body.tax-receitas_categories .recipes-suggestion-banner-section {
		min-height: 410px;
		padding: 132px 22px 74px;
		align-items: flex-start;
		background-position: 54% center;
	}

	body.tax-receitas_categories .recipes-suggestion-banner-section::before,
	body.tax-receitas_categories.gallo-market-pt-pt .recipes-suggestion-banner-section::before {
		background: linear-gradient(180deg, rgba(24, 35, 8, .82), rgba(24, 35, 8, .46) 58%, rgba(24, 35, 8, .82));
	}

	body.tax-receitas_categories.gallo-market-pt-pt .recipes-suggestion-banner-section::before {
		background: linear-gradient(180deg, rgba(10, 26, 46, .78), rgba(10, 26, 46, .44) 58%, rgba(10, 26, 46, .78));
	}

	body.tax-receitas_categories .recipes-banner-middle-text h1 {
		font-size: clamp(46px, 15vw, 60px);
		line-height: .94;
	}

	body.tax-receitas_categories .search-recipes-bar {
		width: calc(100% - 32px);
	}

	body.tax-receitas_categories .search-recipes-bar-inner {
		min-height: 64px;
		grid-template-columns: 48px minmax(0, 1fr);
	}

	body.tax-receitas_categories .search-recipes-bar-inner > input[type="submit"] {
		width: 48px;
		height: 62px;
		background-size: 20px auto;
	}

	body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_sec,
	body.tax-receitas_categories .search-recipes-bar .wizardinfosys_autosearch_wrapper,
	body.tax-receitas_categories .search-recipes-bar #wizardinfosys_autosearch_form,
	body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_wrapper,
	body.tax-receitas_categories .search-recipes-bar input[type="text"],
	body.tax-receitas_categories .search-recipes-bar input[type="search"],
	body.tax-receitas_categories .search-recipes-bar .wp_autosearch_submit {
		height: 62px !important;
	}

	body.tax-receitas_categories .search-recipes-bar .wp_autosearch_form_wrapper {
		grid-template-columns: minmax(0, 1fr) 58px;
	}

	body.tax-receitas_categories .search-recipes-bar input[type="text"],
	body.tax-receitas_categories .search-recipes-bar input[type="search"] {
		padding-right: 8px !important;
		font-size: 12px;
		line-height: 62px;
	}

	body.tax-receitas_categories .search-recipes-bar .wp_autosearch_submit {
		overflow: hidden;
		padding: 0 !important;
		color: transparent !important;
		font-size: 0;
	}

	body.tax-receitas_categories .search-recipes-bar .wp_autosearch_submit::before {
		content: none;
	}

	body.tax-receitas_categories .search-recipes-bar .gallo-2026-category-search-label {
		width: 58px;
		height: 62px;
		padding: 0;
		font-size: 0;
	}

	body.tax-receitas_categories .search-recipes-bar .gallo-2026-category-search-label::before {
		content: "\2192";
		font-family: var(--gallo-2026-ui-font);
		font-size: 20px;
		line-height: 1;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section.container {
		width: 100%;
		padding: 86px 18px 68px;
	}

	body.tax-receitas_categories .gallo-2026-recipe-category-heading {
		display: block;
		margin-bottom: 30px;
	}

	body.tax-receitas_categories .gallo-2026-recipe-category-heading h2 {
		font-size: 43px;
	}

	body.tax-receitas_categories .gallo-2026-recipe-category-heading > a {
		margin-top: 18px;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section .recipes-search-suggestion-section {
		grid-template-columns: 1fr;
		gap: 38px;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-image {
		aspect-ratio: 1.48 / 1;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text {
		min-height: 148px;
		padding-top: 18px;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text h3 {
		min-height: 0;
		font-size: 27px;
	}
}

@media only screen and (max-width: 340px) {
	body.tax-receitas_categories .recipes-suggestion-banner-section {
		padding-right: 18px;
		padding-left: 18px;
	}

	body.tax-receitas_categories .recipes-banner-middle-text h1 {
		font-size: 42px;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section.container {
		padding-right: 14px;
		padding-left: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.tax-receitas_categories *,
	body.tax-receitas_categories *::before,
	body.tax-receitas_categories *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}

	body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-image img {
		transform: none !important;
	}
}

/* ========================================================================== */
/* Single recipe 2026                                                         */
/*                                                                            */
/* Scoped skin over the two existing ACF recipe models. Dose selectors,       */
/* ingredient IDs, Slick structures, sharing, print, video and WPML content    */
/* deliberately retain their legacy markup and behaviour.                     */
/* ========================================================================== */

body.single-receita {
	--gallo-recipe-paper: #ffffff;
	--gallo-recipe-cream: #f8f5ed;
	--gallo-recipe-soft: #f0f4e8;
	--gallo-recipe-ink: #34392c;
	--gallo-recipe-muted: #687181;
	--gallo-recipe-line: #ded8ca;
	overflow-x: hidden;
	color: var(--gallo-recipe-ink);
	background: var(--gallo-recipe-paper);
	font-family: var(--gallo-2026-ui-font);
}

body.single-receita.gallo-market-pt-pt {
	--gallo-recipe-soft: #eef2f9;
	--gallo-recipe-ink: #172443;
}

/* Hero: the background remains supplied by the existing desktop/mobile ACF. */
body.single-receita .recipes-detail-banner-section {
	position: relative;
	display: grid;
	width: 100%;
	height: auto;
	min-height: 700px;
	padding: 170px max(56px, calc((100vw - 1320px) / 2)) 112px;
	grid-template-columns: minmax(0, 640px) minmax(0, 1fr);
	align-content: end;
	align-items: end;
	overflow: hidden;
	color: var(--gallo-2026-white);
	background-color: var(--gallo-2026-navy);
	background-position: center 56%;
	background-repeat: no-repeat;
	background-size: cover;
}

body.single-receita .recipes-detail-banner-section::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(180deg, rgba(24, 35, 8, .58) 0%, rgba(24, 35, 8, .3) 82px, transparent 160px),
		linear-gradient(90deg, rgba(24, 35, 8, .82) 0%, rgba(24, 35, 8, .54) 32%, rgba(24, 35, 8, .08) 64%, transparent 80%);
	content: "";
	pointer-events: none;
}

body.single-receita.gallo-market-pt-pt .recipes-detail-banner-section::before {
	background:
		linear-gradient(180deg, rgba(0, 21, 40, .58) 0%, rgba(0, 21, 40, .3) 82px, transparent 160px),
		linear-gradient(90deg, rgba(0, 21, 40, .8) 0%, rgba(0, 21, 40, .54) 32%, rgba(0, 21, 40, .08) 64%, transparent 80%);
}

body.single-receita .recipes-detail-banner-section .news-detail-slider {
	position: relative;
	top: auto;
	z-index: 2;
	width: 100%;
	margin: 0;
	padding: 0;
	transform: none;
}

body.single-receita .recipes-detail-banner-section .news-detail-slider-items {
	position: static;
	width: 100%;
	padding: 0;
	text-align: left;
	transform: none;
}

body.single-receita .recipes-detail-banner-section .news-detail-slider-items h5 {
	margin: 0 0 18px;
	color: #f6d78f;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .18em;
	text-transform: uppercase;
}

body.single-receita .recipes-detail-banner-section .news-detail-slider-items h1 {
	max-width: 640px;
	margin: 0;
	color: var(--gallo-2026-white);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(64px, 7vw, 106px);
	font-style: normal;
	font-weight: 800;
	line-height: .86;
	letter-spacing: -.025em;
	text-align: left;
	text-transform: uppercase;
	text-wrap: balance;
}

body.single-receita .recipes-detail-banner-section > .smoothscroll.btn {
	position: relative;
	bottom: auto;
	left: auto;
	z-index: 3;
	display: inline-flex;
	width: auto;
	min-width: 205px;
	min-height: 52px;
	margin: 38px 0 0;
	padding: 14px 20px;
	align-items: center;
	justify-content: space-between;
	border: 1px solid rgba(255, 255, 255, .72);
	border-radius: 0;
	color: var(--gallo-2026-white);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	grid-column: 1;
	transform: none;
	transition: color 250ms ease, background-color 250ms ease, border-color 250ms ease;
}

body.single-receita .recipes-detail-banner-section > .smoothscroll.btn::before,
body.single-receita .recipes-detail-banner-section > .smoothscroll.btn::after {
	display: none;
}

body.single-receita .recipes-detail-banner-section .explorar-text {
	display: none;
}

body.single-receita .recipes-detail-banner-section .product-detail-arrow {
	position: absolute;
	right: max(56px, calc((100vw - 1320px) / 2));
	bottom: 32px;
	left: auto;
	z-index: 3;
	width: auto;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	transform: none;
}

body.single-receita .recipes-detail-banner-section .product-detail-arrow ul {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: stretch;
	border-top: 1px solid rgba(255, 255, 255, .42);
	list-style: none;
}

body.single-receita .recipes-detail-banner-section .product-detail-arrow li {
	position: static;
	width: 270px;
	height: auto;
	margin: 0;
	padding: 0;
	background: none;
}

body.single-receita .recipes-detail-banner-section .product-detail-arrow li + li {
	border-left: 1px solid rgba(255, 255, 255, .24);
}

body.single-receita .recipes-detail-banner-section .nav-detail-wrap,
body.single-receita .recipes-detail-banner-section .nav-detail-wrap a {
	display: block;
	width: 100%;
	height: 100%;
}

body.single-receita .recipes-detail-banner-section .nav-detail-wrap {
	opacity: 1;
}

body.single-receita .recipes-detail-banner-section .nav-detail-wrap a {
	position: relative;
	min-height: 64px;
	padding: 16px 32px;
	color: var(--gallo-2026-white);
	background: rgba(7, 16, 20, .32);
	font-family: var(--gallo-2026-ui-font);
	text-decoration: none;
	transition: background-color 220ms ease;
}

body.single-receita .recipes-detail-banner-section .detail-prev .nav-detail-wrap a {
	padding-left: 42px;
}

body.single-receita .recipes-detail-banner-section .detail-next .nav-detail-wrap a {
	padding-right: 42px;
	text-align: right;
}

body.single-receita .recipes-detail-banner-section .nav-detail-wrap-image {
	display: none;
}

body.single-receita .recipes-detail-banner-section .nav-detail-wrap-title {
	width: auto;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
	color: inherit;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.35;
	overflow-wrap: break-word;
	white-space: normal;
	word-break: normal;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body.single-receita .recipes-detail-banner-section .detail-prev a::before,
body.single-receita .recipes-detail-banner-section .detail-next a::after {
	position: absolute;
	top: 50%;
	font-size: 21px;
	line-height: 1;
	transform: translateY(-50%);
}

body.single-receita .recipes-detail-banner-section .detail-prev a::before {
	left: 10px;
	content: "\2190";
}

body.single-receita .recipes-detail-banner-section .detail-next a::after {
	right: 10px;
	content: "\2192";
}

body.single-receita .recipes-detail-banner-section .slick-arrow::before,
body.single-receita .recipes-detail-banner-section .slick-arrow::after {
	display: none;
}

/* Metadata panel and variable real fields. */
body.single-receita .recipes-detail-middle-section.container {
	position: relative;
	z-index: 4;
	width: min(1320px, calc(100% - 56px));
	max-width: none;
	margin: -48px auto 0;
	padding: 0 0 70px;
}

body.single-receita .recipes-detail-middle-section > .row {
	width: 100%;
	max-width: none;
	margin: 0;
}

body.single-receita .recipes-detail-middle-top.w3n_rdmt_sec {
	display: grid;
	width: 100%;
	max-width: none;
	margin: 0;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	align-items: stretch;
	border: 1px solid rgba(173, 128, 55, .18);
	background: var(--gallo-recipe-paper);
	box-shadow: 0 18px 50px rgba(24, 39, 66, .1);
	font-size: initial;
}

body.single-receita .recipes-detail-middle-top-box {
	position: relative;
	display: flex;
	width: auto !important;
	min-width: 0;
	min-height: 132px;
	margin: 0;
	padding: 22px 14px;
	float: none;
	clear: none;
	align-items: stretch;
	justify-content: center;
	background: transparent;
}

body.single-receita .recipes-detail-middle-top.w3n_rdmt_sec > .recipes-detail-middle-top-box {
	width: auto !important;
	margin: 0;
	float: none;
	clear: none;
}

body.single-receita .recipes-detail-middle-top-box + .recipes-detail-middle-top-box::before {
	position: absolute;
	top: 25px;
	bottom: 25px;
	left: 0;
	width: 1px;
	background: #e7e3da;
	content: "";
}

body.single-receita .recipes-detail-middle-top-box.n_of_people {
	background: var(--gallo-recipe-soft);
}

body.single-receita .recipes-detail-top-ic {
	position: relative;
	display: flex;
	width: 100%;
	padding: 0;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	border: 0;
	text-align: center;
}

body.single-receita .recipes-detail-top-ic::before,
body.single-receita .recipes-detail-top-ic::after {
	display: none;
}

body.single-receita .recipes-detail-top-ic .w3n-rdt-icon {
	display: flex;
	width: 29px;
	height: 29px;
	margin: 0 0 9px;
	align-items: center;
	justify-content: center;
	order: 1;
}

body.single-receita .recipes-detail-top-ic .w3n-rdt-icon img,
body.single-receita .recipes-detail-top-ic .w3n-rdt-icon svg {
	position: static !important;
	display: block;
	width: 27px;
	max-width: 27px;
	height: 27px;
	object-fit: contain;
	order: initial;
}

body.single-receita .recipes-detail-top-ic h5 {
	position: static !important;
	max-width: 100%;
	margin: 0 !important;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .08em;
	text-transform: uppercase;
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: normal;
	hyphens: auto;
	order: 2;
}

body.single-receita .recipes-detail-top-ic > span:not(.w3n-rdt-icon),
body.single-receita .recipes-detail-top-ic div#no_ppl,
body.single-receita .recipes-detail-top-ic select#no_ppl {
	position: static !important;
	display: block;
	width: auto !important;
	max-width: 100%;
	margin: 7px 0 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.25;
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: normal;
	hyphens: auto;
	order: 3;
}

body.single-receita .recipes-detail-top-ic select#no_ppl {
	min-width: 116px;
	height: 38px;
	padding: 0 32px 0 14px;
	border: 1px solid rgba(173, 128, 55, .48);
	border-radius: 999px;
	outline: 0;
	background-color: #fff;
	background-image: linear-gradient(45deg, transparent 50%, var(--gallo-2026-market-accent) 50%), linear-gradient(135deg, var(--gallo-2026-market-accent) 50%, transparent 50%);
	background-position: calc(100% - 14px) 51%, calc(100% - 9px) 51%;
	background-repeat: no-repeat;
	background-size: 5px 5px;
	appearance: none;
	cursor: pointer;
}

body.single-receita .recipes-detail-top-ic select#no_ppl:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

/* Nice Select is generated by the legacy JavaScript from the native dose select. */
body.single-receita .recipes-detail-top-ic .nice-select {
	position: relative;
	display: block;
	order: 3;
	width: auto !important;
	min-width: 116px;
	max-width: 100%;
	height: 38px;
	min-height: 38px;
	margin: 7px 0 0;
	padding: 0 34px 0 14px;
	float: none;
	clear: none;
	border: 1px solid rgba(173, 128, 55, .48);
	border-radius: 999px;
	background: #fff;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 14px;
	font-weight: 700;
	line-height: 36px;
	text-align: left;
	white-space: nowrap;
	box-shadow: none;
}

body.single-receita .recipes-detail-top-ic .nice-select::after {
	top: 50%;
	right: 14px;
	left: auto;
	display: block;
	width: 7px;
	height: 7px;
	margin-top: -5px;
	border-color: var(--gallo-2026-market-accent);
	background: none;
}

body.single-receita .recipes-detail-top-ic .nice-select .current {
	position: static;
	display: block;
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: inherit;
	font-weight: 700;
	line-height: 36px;
	text-align: left;
	text-transform: none;
	white-space: nowrap;
}

body.single-receita .recipes-detail-top-ic .nice-select .list {
	min-width: 100%;
	margin-top: 6px;
	border: 1px solid var(--gallo-recipe-line);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(21, 44, 98, .12);
	z-index: 12;
}

body.single-receita .recipes-detail-top-ic .nice-select .option {
	min-height: 38px;
	padding: 0 14px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-weight: 500;
	line-height: 38px;
	text-align: left;
}

body.single-receita .recipes-detail-top-ic .nice-select .option.selected,
body.single-receita .recipes-detail-top-ic .nice-select .option.focus,
body.single-receita .recipes-detail-top-ic .nice-select .option:hover {
	background: var(--gallo-recipe-soft);
	font-weight: 700;
}

body.single-receita .recipes-detail-top-ic .nice-select:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

/* Main recipe body: 35/65, shared by both ACF content models. */
body.single-receita .ingredients-preparation-section.w3nstepsnew {
	display: grid;
	width: 100%;
	padding: 94px 0 0;
	grid-template-columns: minmax(280px, 7fr) minmax(0, 13fr);
	gap: clamp(48px, 5vw, 80px);
	clear: both;
}

body.single-receita .ingredients-preparation-section::before,
body.single-receita .ingredients-preparation-section::after {
	display: none;
}

body.single-receita .ingredients-column,
body.single-receita .preparation-column {
	float: none;
	width: auto;
	min-width: 0;
	padding: 0;
}

body.single-receita .ingredients-column {
	align-self: start;
}

body.single-receita .ingredients-preparation-section h3,
body.single-receita .ingredients-preparation-section.w3nstepsnew .preparation-methods-step h3,
body.single-receita .product-used-slider-wrapper h3 {
	margin: 0 0 28px;
	padding: 0 0 22px;
	border-bottom: 1px solid var(--gallo-recipe-line);
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(38px, 3.5vw, 48px);
	font-style: normal;
	font-weight: 800;
	line-height: .96;
	letter-spacing: 0;
}

body.single-receita .ingredients-preparation-section.w3nstepsnew .preparation-methods-step h3:not(:first-child) {
	margin-top: 48px;
}

body.single-receita .ingredients-column > a {
	display: block;
	text-decoration: none;
}

body.single-receita .ingredients-title {
	position: relative;
	display: flex;
	width: 100%;
	min-height: 50px;
	margin: 0 0 8px;
	padding: 12px 16px 12px 42px;
	align-items: center;
	border: 0;
	border-radius: 0;
	color: var(--gallo-2026-market-primary);
	background: var(--gallo-recipe-soft);
	font-family: var(--gallo-2026-ui-font);
}

body.single-receita .ingredients-title::before {
	top: 50%;
	left: 16px;
	width: 14px;
	height: 18px;
	background-position: center;
	background-size: contain;
	transform: translateY(-50%);
}

body.single-receita .ingredients-title p {
	margin: 0;
	color: inherit;
	font-family: inherit;
	font-size: 13px;
	font-style: normal;
	font-weight: 650;
	line-height: 1.45;
}

body.single-receita .ingredients-column ul {
	margin: 0;
	padding: 6px 0 0;
	list-style: none;
}

body.single-receita .ingredients-column ul li,
body.single-receita .ingredients-column ul li:first-child,
body.single-receita .ingredients-preparation-section.w3nstepsnew .ingredients-column ul li.active {
	position: relative;
	margin: 0;
	padding: 12px 4px 12px 24px;
	border-bottom: 1px solid #ece9e1;
	color: #303946;
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.48;
}

body.single-receita .ingredients-column ul li::before {
	top: 20px;
	left: 3px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--gallo-2026-market-accent);
}

body.single-receita .ingredients-column .ing_title {
	margin: 24px 0 6px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* Existing shopping-list control, shared by the WordPress markets without
 * changing the recipe layout or the confirmation popup. */
body.single-receita .add-recipe-to-list {
	display: inline-flex;
	width: auto;
	min-height: 44px;
	margin: 28px 0 0;
	padding: 0;
	align-items: center;
	gap: 10px;
	border: 0;
	border-radius: 0;
	color: var(--gallo-2026-market-accent);
	background: transparent;
	font: inherit;
	text-align: left;
	appearance: none;
	cursor: pointer;
}

body.single-receita .add-recipe-to-list svg {
	position: static;
	flex: 0 0 auto;
	margin: 0;
}

body.single-receita .add-recipe-to-list span {
	color: inherit;
	font-family: var(--gallo-2026-ui-font);
	font-size: 15px;
	font-weight: 650;
	line-height: 1.3;
}

body.single-receita .add-recipe-to-list:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 4px;
}

/* Associated product: retained Slick and ACF links, editorial treatment only. */
body.single-receita .ingredients-column > .product-used-slider-wrapper {
	min-height: 222px;
	margin: 32px 0 0;
	padding: 24px 18px 0;
	overflow: hidden;
	background: var(--gallo-recipe-cream);
}

body.single-receita .product-used-slider-wrapper h3 {
	margin-bottom: 16px;
	padding-bottom: 0;
	border: 0;
	font-size: 29px;
	line-height: 1;
}

body.single-receita .product-used-slider {
	min-height: 148px;
}

body.single-receita .product-used-slider-items {
	text-align: center;
}

body.single-receita .product-used-slider-items a {
	display: grid;
	min-height: 148px;
	grid-template-columns: minmax(0, 1fr) 94px;
	align-items: center;
	gap: 14px;
	color: inherit;
	text-decoration: none;
}

body.single-receita .product-used-slider-img {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	align-self: end;
}

body.single-receita .product-used-slider-img img {
	display: block;
	width: auto;
	max-width: 90px;
	height: 150px;
	margin: 0 auto;
	object-fit: contain;
}

body.single-receita .product-used-slider-text {
	grid-column: 1;
	grid-row: 1;
	text-align: left;
}

body.single-receita .product-used-slider-text h5 {
	margin: 0 0 6px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: 24px;
	font-style: normal;
	font-weight: 800;
	line-height: 1.05;
}

body.single-receita .product-used-slider-text p {
	margin: 0;
	color: var(--gallo-recipe-muted);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	line-height: 1.4;
}

body.single-receita .product-used-slider .slick-arrow {
	z-index: 3;
	top: auto;
	bottom: 12px;
	width: 34px;
	height: 34px;
	margin: 0;
	border: 1px solid rgba(173, 128, 55, .44);
	border-radius: 50%;
	background-color: rgba(255, 255, 255, .88);
	background-size: 6px auto;
	opacity: .78;
}

body.single-receita .product-used-slider .slick-arrow::before,
body.single-receita .product-used-slider .slick-arrow::after {
	display: none;
}

/* Preparation, optional video, chef tips and existing action controls. */
body.single-receita .preparation-methods-step {
	padding-top: 0;
}

body.single-receita .preparation-methods-step-box {
	display: grid;
	min-height: 0;
	margin: 0;
	padding: 25px 0;
	grid-template-columns: 52px minmax(0, 1fr);
	align-items: start;
	gap: 20px;
	border-bottom: 1px solid #ece9e1;
	background: transparent;
}

body.single-receita .methods-step-count {
	display: flex;
	width: 46px;
	height: 46px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--gallo-2026-market-accent);
	border-radius: 50%;
	color: var(--gallo-2026-market-accent);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
}

body.single-receita .methods-step-text {
	width: auto;
	padding: 0;
}

body.single-receita .methods-step-text p {
	max-width: 680px;
	margin: 3px 0 0;
	color: #303946;
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.65;
}

body.single-receita .preparation-see-tip {
	display: grid;
	margin: 28px 0 0;
	padding: 25px 28px;
	grid-template-columns: 44px minmax(0, 1fr);
	align-items: start;
	gap: 16px;
	border: 0;
	border-left: 4px solid var(--gallo-2026-market-accent);
	background: var(--gallo-recipe-soft);
}

body.single-receita .preparation-see-tip-ic {
	display: flex;
	width: 40px;
	height: 40px;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, .7);
}

body.single-receita .preparation-see-tip-ic img {
	max-width: 24px;
	max-height: 24px;
}

body.single-receita .preparation-see-tip-text {
	width: auto;
	padding: 0;
}

body.single-receita .preparation-see-tip-text h5 {
	display: block;
	margin: 0 0 7px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 11px;
	font-style: normal;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: .13em;
	text-transform: uppercase;
}

body.single-receita .preparation-see-tip-text span,
body.single-receita .preparation-see-tip-text p {
	display: block;
	width: auto;
	margin: 0;
	padding: 0;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 16px;
	font-style: italic;
	line-height: 1.55;
}

body.single-receita .preparation-see-tip-text a {
	color: inherit;
}

body.single-receita .preparation-see-tip .see-tip-arrow {
	right: 22px;
	display: block;
}

body.single-receita .w3n-video-sec {
	position: relative;
	width: 100%;
	margin: 0 0 28px;
	overflow: hidden;
	background: var(--gallo-2026-navy);
}

body.single-receita .w3n-video-sec video {
	display: block;
	width: 100%;
	height: auto;
	min-height: 280px;
	object-fit: cover;
}

body.single-receita .w3n-video-plybtn {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 56px;
	height: 56px;
	transform: translate(-50%, -50%);
	cursor: pointer;
}

body.single-receita .preparation-column .share-page-wrapper {
	position: static;
	display: flex;
	bottom: auto;
	left: auto;
	width: 100%;
	height: auto;
	min-height: 46px;
	margin: 26px 0 0;
	padding: 0;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	background: transparent;
}

body.single-receita .share-page-wrapper h4 {
	margin: 0 8px 0 0;
}

body.single-receita .share-page-wrapper h4 span {
	color: var(--gallo-recipe-muted);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .1em;
	text-transform: uppercase;
}

body.single-receita .share-social-icon,
body.single-receita .print-icon-sec {
	position: static;
	display: flex;
	width: auto;
	height: auto;
	margin: 0;
	align-items: center;
}

body.single-receita .share-page-wrapper .share-ic,
body.single-receita .share-page-wrapper .print-ic,
body.single-receita .share-page-wrapper .addtoany_list a {
	display: inline-flex;
	width: 36px;
	height: 36px;
	margin: 0 0 0 6px;
	align-items: center;
	justify-content: center;
	border: 1px solid #d7d3ca;
	border-radius: 50%;
	background: #fff;
}

body.single-receita .share-page-wrapper .share-ic img,
body.single-receita .share-page-wrapper .print-ic img {
	max-width: 18px;
	max-height: 18px;
}

/* Related recipes: three balanced Slick cards and a compact page ending. */
body.single-receita .see-recipes-slider-section.container,
body.single-receita .see-other-recipes-slider-section.container {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 68px max(32px, calc((100vw - 1320px) / 2)) 86px;
	background: var(--gallo-recipe-cream);
}

body.single-receita .see-other-recipes-slider-section.container {
	padding-top: 58px;
	padding-bottom: 92px;
	border-top: 1px solid rgba(173, 128, 55, .18);
	background: var(--gallo-recipe-paper);
}

body.single-receita .see-recipes-slider-section > .row,
body.single-receita .see-other-recipes-slider-section > .row {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
}

body.single-receita .see-recipes-slider-section h2,
body.single-receita .see-other-recipes-slider-section h2 {
	max-width: none;
	margin: 0 0 36px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(44px, 4.5vw, 62px);
	font-style: normal;
	font-weight: 800;
	line-height: .95;
	letter-spacing: 0;
}

@media only screen and (min-width: 768px) {
	body.single-receita .see-recipes-slider-section h2,
	body.single-receita .see-other-recipes-slider-section h2 {
		font-size: clamp(40px, 4.2vw, 62px);
		white-space: nowrap;
	}
}

body.single-receita .see-recipes-slider-section .see-recipes-slider,
body.single-receita .see-other-recipes-slider-section .see-recipes-slider {
	margin: 0 -11px;
}

body.single-receita .see-recipes-slider .slick-list {
	overflow: hidden;
}

body.single-receita .see-recipes-slider .slick-track {
	display: flex;
	align-items: stretch;
}

body.single-receita .see-recipes-slider .slick-slide {
	display: flex;
	height: auto;
}

body.single-receita .see-recipes-slider .slick-slide > div,
body.single-receita .see-recipes-slider .slick-slide .product-detail-recipes-items {
	display: flex;
	width: 100%;
	height: 100%;
}

body.single-receita .see-recipes-slider .product-detail-recipes-items {
	width: 33.333%;
	min-width: 0;
	margin: 0;
	padding: 0 11px;
}

body.single-receita .see-recipes-slider .product-detail-recipes-items > a,
body.single-receita .see-other-recipes-slider-section .aromatizer-slider-items-inner {
	display: grid;
	width: 100%;
	height: 100%;
	min-height: 430px;
	padding: 0;
	grid-template-rows: auto 1fr;
	color: inherit;
	background: #fff;
	text-decoration: none;
}

body.single-receita .see-recipes-slider .product-detail-recipes-image,
body.single-receita .see-other-recipes-slider-section .aromatizer-slider-image {
	position: relative;
	display: block;
	float: none;
	width: 100%;
	height: auto;
	margin: 0;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #e9e6df;
}

body.single-receita .see-recipes-slider .product-detail-recipes-image::before,
body.single-receita .see-recipes-slider .product-detail-recipes-text::before,
body.single-receita .see-other-recipes-slider-section .aromatizer-slider-image::before {
	display: none;
}

body.single-receita .see-recipes-slider .product-detail-recipes-image img,
body.single-receita .see-other-recipes-slider-section .aromatizer-slider-image img {
	position: static;
	top: auto;
	left: auto;
	display: block;
	width: 100%;
	height: 100%;
	min-width: 0 !important;
	min-height: 0;
	object-fit: cover;
	transform: none;
	transform-origin: center;
	transition: transform 450ms ease;
}

body.single-receita .see-recipes-slider .product-detail-recipes-text,
body.single-receita .see-other-recipes-slider-section .aromatizer-slider-text {
	display: flex;
	float: none;
	width: 100%;
	height: auto;
	min-height: 190px;
	padding: 24px 26px 23px;
	flex-direction: column;
	border: 0;
	background: #fff;
	text-align: left;
}

body.single-receita .see-recipes-slider .product-detail-recipes-text-top {
	margin: 0 0 12px;
}

body.single-receita .see-recipes-slider .product-detail-recipes-text-top ul {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px 13px;
	list-style: none;
}

body.single-receita .see-recipes-slider .product-detail-recipes-text-top li {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	gap: 5px;
	color: var(--gallo-2026-market-accent);
	font-family: var(--gallo-2026-ui-font);
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: .06em;
	text-transform: uppercase;
}

body.single-receita .see-recipes-slider .product-detail-recipes-text-top img {
	position: static;
	display: block;
	width: 17px;
	height: 17px;
	object-fit: contain;
}

body.single-receita .see-recipes-slider .product-detail-recipes-text h3,
body.single-receita .see-other-recipes-slider-section .aromatizer-slider-text h3 {
	min-height: 66px;
	margin: 0 0 16px;
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(22px, 2vw, 27px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.06;
}

body.single-receita .gallo-2026-recipe-card-cta {
	display: inline-block;
	width: max-content;
	margin-top: auto;
	padding: 0 0 4px;
	border-bottom: 1px solid var(--gallo-2026-market-accent);
	color: var(--gallo-2026-market-primary);
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
}

body.single-receita .see-recipes-slider .slick-arrow {
	z-index: 4;
	top: 50%;
	width: 44px;
	height: 44px;
	margin-top: -22px;
	border: 1px solid rgba(173, 128, 55, .52);
	border-radius: 50%;
	background-color: rgba(255, 255, 255, .94);
	background-size: 7px auto;
	box-shadow: 0 6px 18px rgba(24, 39, 66, .08);
}

body.single-receita .see-recipes-slider .slick-prev {
	left: -11px;
}

body.single-receita .see-recipes-slider .slick-next {
	right: -11px;
}

body.single-receita .see-recipes-slider .slick-arrow::before,
body.single-receita .see-recipes-slider .slick-arrow::after {
	display: none;
}

body.single-receita .new-search-recipe-button {
	display: flex;
	margin: 38px 0 0;
	align-items: center;
	justify-content: center;
	gap: 14px;
}

body.single-receita .new-search-recipe-button .btn {
	display: inline-flex;
	width: auto;
	min-width: 225px;
	height: auto;
	min-height: 52px;
	margin: 0;
	padding: 14px 22px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--gallo-2026-market-primary);
	color: var(--gallo-2026-market-primary);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
}

body.single-receita .new-search-recipe-button .btn:last-child {
	color: #fff;
	background: var(--gallo-2026-market-primary);
}

body.single-receita .new-search-recipe-button .btn::before,
body.single-receita .new-search-recipe-button .btn::after {
	display: none;
}

body.single-receita .share-page-wrapper-mobile {
	margin-top: 26px;
}

body.single-receita .share-page-wrapper-mobile .share-page-wrapper {
	position: static;
	bottom: auto;
	left: auto;
	width: 100%;
	height: auto;
	background: transparent;
}

body.single-receita :focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
	body.single-receita .recipes-detail-banner-section > .smoothscroll.btn:hover,
	body.single-receita .recipes-detail-banner-section > .smoothscroll.btn:focus-visible {
		border-color: #fff;
		color: var(--gallo-2026-market-primary);
		background: #fff;
	}

	body.single-receita .see-recipes-slider .product-detail-recipes-items > a:hover .product-detail-recipes-image img,
	body.single-receita .see-recipes-slider .product-detail-recipes-items > a:focus-visible .product-detail-recipes-image img {
		transform: scale(1.03);
	}

	body.single-receita .see-other-recipes-slider-section .aromatizer-slider-items-inner:hover .aromatizer-slider-image img,
	body.single-receita .see-other-recipes-slider-section .product-detail-recipes-items > a:focus-visible .aromatizer-slider-image img {
		transform: scale(1.03);
	}

	body.single-receita .recipes-detail-banner-section .nav-detail-wrap a:hover,
	body.single-receita .recipes-detail-banner-section .nav-detail-wrap a:focus-visible {
		color: var(--gallo-2026-white);
		background: rgba(7, 16, 20, .56);
	}

	body.single-receita .see-recipes-slider .product-detail-recipes-items > a:hover .gallo-2026-recipe-card-cta,
	body.single-receita .see-recipes-slider .product-detail-recipes-items > a:focus-visible .gallo-2026-recipe-card-cta {
		color: var(--gallo-2026-market-accent);
	}

	body.single-receita .new-search-recipe-button .btn:hover,
	body.single-receita .new-search-recipe-button .btn:focus-visible {
		color: #fff;
		background: var(--gallo-2026-market-primary);
	}
}

@media only screen and (max-width: 1100px) {
	body.single-receita .recipes-detail-banner-section {
		min-height: 640px;
		padding-right: 40px;
		padding-left: 40px;
		grid-template-columns: minmax(0, 600px) minmax(0, 1fr);
	}

	body.single-receita .recipes-detail-banner-section .news-detail-slider {
		width: 100%;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow {
		right: 40px;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow li {
		width: 220px;
	}

	body.single-receita .recipes-detail-middle-section.container {
		width: calc(100% - 48px);
	}

	body.single-receita .recipes-detail-middle-top.w3n_rdmt_sec {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	body.single-receita .recipes-detail-middle-top-box:nth-child(5)::before {
		display: none;
	}

	body.single-receita .ingredients-preparation-section.w3nstepsnew {
		grid-template-columns: minmax(250px, 7fr) minmax(0, 13fr);
		gap: 48px;
	}
}

@media only screen and (max-width: 900px) {
	body.single-receita .recipes-detail-banner-section {
		min-height: 610px;
		padding: 150px 32px 104px;
		grid-template-columns: minmax(0, 560px) minmax(0, 1fr);
		background-position: 62% center;
	}

	body.single-receita .recipes-detail-banner-section::before,
	body.single-receita.gallo-market-pt-pt .recipes-detail-banner-section::before {
		background:
			linear-gradient(180deg, rgba(0, 21, 40, .58) 0%, rgba(0, 21, 40, .28) 78px, transparent 150px),
			linear-gradient(90deg, rgba(0, 21, 40, .82), rgba(0, 21, 40, .3) 76%, transparent);
	}

	body.single-receita:not(.gallo-market-pt-pt) .recipes-detail-banner-section::before {
		background:
			linear-gradient(180deg, rgba(24, 35, 8, .58) 0%, rgba(24, 35, 8, .28) 78px, transparent 150px),
			linear-gradient(90deg, rgba(24, 35, 8, .84), rgba(24, 35, 8, .3) 76%, transparent);
	}

	body.single-receita .recipes-detail-banner-section .news-detail-slider {
		width: 100%;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow {
		right: 28px;
		left: 28px;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow ul {
		width: 100%;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow li {
		width: 50%;
	}

	body.single-receita .recipes-detail-middle-top.w3n_rdmt_sec {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	body.single-receita .recipes-detail-middle-top-box:nth-child(5)::before {
		display: none;
	}

	body.single-receita .ingredients-preparation-section.w3nstepsnew {
		grid-template-columns: 1fr;
		gap: 62px;
	}

	body.single-receita .ingredients-column {
		width: min(100%, 560px);
	}

	body.single-receita .ingredients-column > .product-used-slider-wrapper {
		display: none;
	}

	body.single-receita .product-used-slider-wrapper-mobile {
		display: block;
		width: min(100%, 560px);
		margin: 46px 0 0;
	}

	body.single-receita .product-used-slider-wrapper-mobile .product-used-slider-wrapper {
		min-height: 222px;
		margin: 0;
		padding: 24px 18px 0;
		background: var(--gallo-recipe-cream);
	}

	body.single-receita .product-used-slider-wrapper-mobile .product-used-slider-wrapper h3 {
		font-size: 30px;
	}

	body.single-receita .see-recipes-slider .product-detail-recipes-items {
		width: 50%;
	}
}

@media only screen and (max-width: 767px) {
	body.single-receita .recipes-detail-banner-section {
		min-height: 580px;
		padding: 132px 24px 128px;
		grid-template-columns: 1fr;
		background-position: 59% center;
	}

	body.single-receita .recipes-detail-banner-section::before,
	body.single-receita.gallo-market-pt-pt .recipes-detail-banner-section::before {
		background: linear-gradient(180deg, rgba(0, 21, 40, .58), rgba(0, 21, 40, .2) 18%, rgba(0, 21, 40, .08) 31%, rgba(0, 21, 40, .8) 74%, rgba(0, 21, 40, .92));
	}

	body.single-receita:not(.gallo-market-pt-pt) .recipes-detail-banner-section::before {
		background: linear-gradient(180deg, rgba(24, 35, 8, .58), rgba(24, 35, 8, .2) 18%, rgba(24, 35, 8, .08) 31%, rgba(24, 35, 8, .8) 74%, rgba(24, 35, 8, .92));
	}

	body.single-receita .recipes-detail-banner-section .news-detail-slider {
		width: 100%;
	}

	body.single-receita .recipes-detail-banner-section .news-detail-slider-items h5 {
		margin-bottom: 12px;
		font-size: 11px;
	}

	body.single-receita .recipes-detail-banner-section .news-detail-slider-items h1 {
		font-size: clamp(46px, 14vw, 58px);
		line-height: .9;
	}

	body.single-receita .recipes-detail-banner-section > .smoothscroll.btn {
		min-width: 178px;
		min-height: 48px;
		margin: 26px 0 0;
		font-size: 12px;
		transform: none;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow {
		right: 24px;
		bottom: 20px;
		left: 24px;
	}

	body.single-receita .recipes-detail-banner-section .nav-detail-wrap a {
		min-height: 50px;
		padding-top: 12px;
		padding-bottom: 12px;
	}

	body.single-receita .recipes-detail-banner-section .nav-detail-wrap-title {
		font-size: 10px;
	}

	body.single-receita .recipes-detail-middle-section.container {
		width: 100%;
		margin: 0;
		padding-bottom: 54px;
	}

	body.single-receita .recipes-detail-middle-top.w3n_rdmt_sec {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		border: 0;
		border-bottom: 1px solid var(--gallo-recipe-line);
		box-shadow: none;
	}

	body.single-receita .recipes-detail-middle-top-box {
		width: auto !important;
		min-height: 112px;
		margin: 0;
		padding: 17px 10px;
		float: none;
		clear: none;
		border-bottom: 1px solid rgba(222, 216, 202, .72);
	}

	body.single-receita .recipes-detail-middle-top-box.n_of_people {
		width: auto !important;
		grid-column: 1 / -1;
	}

	body.single-receita .recipes-detail-middle-top-box.n_of_people::before {
		display: none;
	}

	body.single-receita .recipes-detail-middle-top-box.n_of_people .recipes-detail-top-ic {
		padding: 0 12px;
		flex-flow: row wrap;
		gap: 8px 12px;
	}

	body.single-receita .recipes-detail-middle-top-box.n_of_people .w3n-rdt-icon {
		margin: 0;
	}

	body.single-receita .recipes-detail-middle-top-box.n_of_people h5,
	body.single-receita .recipes-detail-middle-top-box.n_of_people div#no_ppl,
	body.single-receita .recipes-detail-middle-top-box.n_of_people select#no_ppl,
	body.single-receita .recipes-detail-middle-top-box.n_of_people .nice-select {
		margin: 0 !important;
	}

	body.single-receita .recipes-detail-middle-top-box:nth-child(odd)::before,
	body.single-receita .recipes-detail-middle-top-box:nth-child(5)::before {
		display: none;
	}

	body.single-receita .recipes-detail-top-ic .w3n-rdt-icon {
		width: 25px;
		height: 25px;
		margin-bottom: 7px;
	}

	body.single-receita .recipes-detail-top-ic .w3n-rdt-icon img,
	body.single-receita .recipes-detail-top-ic .w3n-rdt-icon svg {
		width: 24px;
		height: 24px;
	}

	body.single-receita .recipes-detail-top-ic h5 {
		font-size: 9px;
	}

	body.single-receita .recipes-detail-top-ic > span:not(.w3n-rdt-icon),
	body.single-receita .recipes-detail-top-ic div#no_ppl,
	body.single-receita .recipes-detail-top-ic select#no_ppl,
	body.single-receita .recipes-detail-top-ic .nice-select {
		font-size: 13px;
	}

	body.single-receita .ingredients-preparation-section.w3nstepsnew {
		display: block;
		padding: 64px 24px 0;
	}

	body.single-receita .ingredients-preparation-section h3,
	body.single-receita .ingredients-preparation-section.w3nstepsnew .preparation-methods-step h3 {
		font-size: 38px;
	}

	body.single-receita .preparation-column {
		margin-top: 64px;
	}

	body.single-receita .preparation-methods-step-box {
		padding: 22px 0;
		grid-template-columns: 40px minmax(0, 1fr);
		gap: 14px;
	}

	body.single-receita .methods-step-count {
		width: 38px;
		height: 38px;
	}

	body.single-receita .methods-step-text p {
		margin-top: 0;
		font-size: 15px;
		line-height: 1.58;
	}

	body.single-receita .preparation-see-tip {
		grid-template-columns: 38px minmax(0, 1fr);
		padding: 21px 18px;
	}

	body.single-receita .preparation-see-tip-ic {
		width: 34px;
		height: 34px;
	}

	body.single-receita .preparation-see-tip-text span,
	body.single-receita .preparation-see-tip-text p {
		font-size: 15px;
	}

	body.single-receita .preparation-column .share-page-wrapper {
		display: grid;
		grid-template-columns: auto auto;
		justify-content: start;
		align-items: center;
		gap: 10px 12px;
	}

	body.single-receita .preparation-column .share-page-wrapper h4,
	body.single-receita .share-page-wrapper-mobile .share-page-wrapper h4 {
		grid-column: 1 / -1;
		margin: 0;
	}

	body.single-receita .preparation-column .share-page-wrapper h4 span,
	body.single-receita .share-page-wrapper-mobile .share-page-wrapper h4 span {
		display: block;
		padding: 0;
		white-space: nowrap;
	}

	body.single-receita .share-page-wrapper-mobile .share-page-wrapper {
		display: grid;
		grid-template-columns: auto auto;
		justify-content: start;
		align-items: center;
		gap: 10px 12px;
	}

	body.single-receita .product-used-slider-wrapper-mobile {
		width: 100%;
	}

	body.single-receita .see-recipes-slider-section.container,
	body.single-receita .see-other-recipes-slider-section.container {
		padding: 58px 24px 70px;
	}

	body.single-receita .see-recipes-slider-section h2,
	body.single-receita .see-other-recipes-slider-section h2 {
		margin-bottom: 28px;
		font-size: clamp(28px, 8.5vw, 38px);
		line-height: 1.02;
		overflow-wrap: normal;
		word-break: normal;
	}

	body.single-receita .see-recipes-slider-section > .row > .see-recipes-slider {
		display: none;
	}

	body.single-receita .see-recipes-slider-section-mobile {
		display: flex;
		margin: 0 -8px;
		padding: 0 0 10px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	body.single-receita .see-recipes-slider-section-mobile .product-detail-recipes-items,
	body.single-receita .see-recipes-slider-section-mobile .product-detail-recipes-items:first-child {
		display: block !important;
		width: auto;
		min-width: 0;
		margin: 0;
		padding: 0 8px;
		flex: 0 0 86%;
		scroll-snap-align: start;
	}

	body.single-receita .see-recipes-slider-section-mobile .product-detail-recipes-items > a {
		display: grid;
		height: 100%;
		min-height: 390px;
		grid-template-rows: auto 1fr;
		background: #fff;
	}

	body.single-receita .see-recipes-slider-section-mobile .product-detail-recipes-image {
		height: 220px;
		aspect-ratio: auto;
	}

	body.single-receita .see-recipes-slider-section-mobile .product-detail-recipes-text {
		display: flex;
		min-height: 165px;
		padding: 21px;
		flex-direction: column;
		border: 0;
	}

	body.single-receita .see-recipes-slider-section-mobile .product-detail-recipes-text h3 {
		min-height: 0;
		font-size: 25px;
	}

	body.single-receita .see-recipes-slider-section-mobile .load-suggetion-btn {
		display: none;
	}

	body.single-receita .see-other-recipes-slider-section .see-recipes-slider {
		margin: 0 -8px;
	}

	body.single-receita .see-other-recipes-slider-section .see-recipes-slider .product-detail-recipes-items {
		padding: 0 8px;
	}

	body.single-receita .new-search-recipe-button {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}

	body.single-receita .new-search-recipe-button .btn {
		width: 100%;
		min-width: 0;
	}

	body.single-receita .share-page-wrapper-mobile {
		display: block;
	}
}

@media only screen and (max-width: 359px) {
	body.single-receita .recipes-detail-middle-top.w3n_rdmt_sec {
		grid-template-columns: minmax(0, 1fr);
	}

	body.single-receita .recipes-detail-middle-top-box::before {
		display: none;
	}
}

@media only screen and (max-width: 390px) {
	body.single-receita .recipes-detail-banner-section {
		min-height: 560px;
		padding-right: 20px;
		padding-left: 20px;
	}

	body.single-receita .ingredients-preparation-section.w3nstepsnew {
		padding-right: 20px;
		padding-left: 20px;
	}

	body.single-receita .product-used-slider-items a {
		grid-template-columns: minmax(0, 1fr) 82px;
	}

	body.single-receita .product-used-slider-img img {
		max-width: 80px;
		height: 140px;
	}

	body.single-receita .see-recipes-slider-section.container,
	body.single-receita .see-other-recipes-slider-section.container {
		padding-right: 20px;
		padding-left: 20px;
	}
}

@media only screen and (max-width: 340px) {
	body.single-receita .recipes-detail-banner-section {
		padding-right: 16px;
		padding-left: 16px;
	}

	body.single-receita .recipes-detail-banner-section .news-detail-slider-items h1 {
		font-size: 43px;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow {
		right: 16px;
		left: 16px;
	}

	body.single-receita .recipes-detail-banner-section .detail-prev .nav-detail-wrap a,
	body.single-receita .recipes-detail-banner-section .detail-next .nav-detail-wrap a {
		padding-right: 30px;
		padding-left: 30px;
	}

	body.single-receita .ingredients-preparation-section.w3nstepsnew {
		padding-right: 16px;
		padding-left: 16px;
	}

	body.single-receita .ingredients-preparation-section h3,
	body.single-receita .ingredients-preparation-section.w3nstepsnew .preparation-methods-step h3,
	body.single-receita .see-recipes-slider-section h2,
	body.single-receita .see-other-recipes-slider-section h2 {
		font-size: 35px;
	}

	body.single-receita .see-recipes-slider-section.container,
	body.single-receita .see-other-recipes-slider-section.container {
		padding-right: 16px;
		padding-left: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.single-receita *,
	body.single-receita *::before,
	body.single-receita *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}

	body.single-receita .see-recipes-slider .product-detail-recipes-image img,
	body.single-receita .see-other-recipes-slider-section .aromatizer-slider-image img {
		transform: none !important;
	}
}

/* ========================================================================== */
/* Gallo feedback round 1 — scoped colour and component corrections           */
/* ========================================================================== */

/* Homepage editorial colours. Round 2 confirms that the recipe metadata also
 * follows the title colour: blue in Portugal and Pantone 2301 C elsewhere. */
body.home .our-product-text h2,
body.home .our-product-section .product-item h5,
body.home .recipes-moments-section .slide__title-wrap2 .slide__title,
body.home #socialnetworkingsection .testimonial-items-inner h2 {
	color: var(--gallo-2026-title-color);
}

body.home .our-product-section .product-item h3,
body.home #socialnetworkingsection .testimonial-items-inner .follow-us > span {
	color: var(--gallo-2026-body-color);
}

/* General product catalogue: only inactive categories/subcategories become
 * Black 4; active and focus states retain a clear market-colour distinction. */
.product-list-page .product-list-menu ul li a,
.page-template-product .product-list-menu ul li a,
.page-template-inc-product-php .product-list-menu ul li a,
.product-list-middle .product-filter a,
.product-list-middle .product-filter ul li a,
body.tax-produto_category .gallo-2026-product-subcategories a {
	color: var(--gallo-2026-body-color);
}

.product-list-page .product-list-menu ul li a:hover,
.product-list-page .product-list-menu ul li a:focus-visible,
.product-list-page .product-list-menu ul li a.active,
.page-template-product .product-list-menu ul li a:hover,
.page-template-product .product-list-menu ul li a:focus-visible,
.page-template-product .product-list-menu ul li a.active,
.page-template-inc-product-php .product-list-menu ul li a:hover,
.page-template-inc-product-php .product-list-menu ul li a:focus-visible,
.page-template-inc-product-php .product-list-menu ul li a.active,
.product-list-middle .product-filter a:hover,
.product-list-middle .product-filter a:focus-visible,
.product-list-middle .product-filter a.active,
.product-list-middle .product-filter a.selected_cat,
.product-list-middle .product-filter li.active a,
.product-list-middle .product-filter li.active_sub_cat a,
body.tax-produto_category .gallo-2026-product-subcategories a:hover,
body.tax-produto_category .gallo-2026-product-subcategories a:focus-visible,
body.tax-produto_category .gallo-2026-product-subcategories a.is-active {
	color: var(--gallo-2026-title-color);
}

.product-list-middle .product-list-wrapper h1,
.product-list-middle .product-list-wrapper h2,
body.tax-produto_category .gallo-2026-product-category-heading h2 {
	color: var(--gallo-2026-title-color);
}

.product-list-middle .product-list-image-text p,
body.tax-produto_category .gallo-2026-product-category-heading > span {
	color: var(--gallo-2026-detail-color);
}

/* Product detail copy and the existing recycling destination keep their data;
 * only the refreshed visual language is applied. */
body.single-produto .product-detail-content-inner h1,
body.single-produto .product-detail-middle-right h2,
body.single-produto .common-question-section h2,
body.single-produto .product-detail-recipes-text h3,
body.single-produto .product-detail-range-text h5,
body.single-produto .share-page-wrapper h4,
body.single-produto .share-page-wrapper h4 span {
	color: var(--gallo-2026-title-color);
}

body.single-produto .product-detail-content-inner > p,
body.single-produto .image_left_text_right .right-text-block,
body.single-produto .ideal-wrap p,
body.single-produto .ideal-wrap .codimento_text,
body.single-produto .product-detail-range-text p {
	color: var(--gallo-2026-body-color);
}

body.single-produto .saiba-como-reciclar-link-container,
.page-template-product .saiba-como-reciclar-link-container,
.page-template-inc-product-php .saiba-como-reciclar-link-container {
	display: grid;
	width: 100%;
	margin-right: 0;
	margin-left: 0;
	padding: clamp(28px, 3vw, 40px);
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(22px, 3vw, 40px);
	border: 1px solid rgba(173, 128, 55, .2);
	background: #f8f5ed;
}

body.single-produto .saiba-como-reciclar-link-container::before,
body.single-produto .saiba-como-reciclar-link-container::after,
.page-template-product .saiba-como-reciclar-link-container::before,
.page-template-product .saiba-como-reciclar-link-container::after,
.page-template-inc-product-php .saiba-como-reciclar-link-container::before,
.page-template-inc-product-php .saiba-como-reciclar-link-container::after {
	display: none;
	content: none;
}

body.single-produto .saiba-como-reciclar-link-container h2,
.page-template-product .saiba-como-reciclar-link-container h2,
.page-template-inc-product-php .saiba-como-reciclar-link-container h2 {
	margin: 0;
	color: var(--gallo-2026-title-color);
	font-family: var(--gallo-2026-title-font);
	font-size: clamp(30px, 3vw, 42px);
	font-style: normal;
	font-weight: 800;
	line-height: 1.02;
}

body.single-produto .saiba-como-reciclar-link-container > .btn,
.page-template-product .saiba-como-reciclar-link-container > .btn,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn {
	display: inline-flex;
	width: auto;
	min-width: 178px;
	min-height: 52px;
	margin: 0 !important;
	padding: 13px 18px;
	align-items: center;
	justify-content: center;
	border-color: var(--gallo-2026-title-color);
	color: var(--gallo-2026-title-color);
	background: transparent;
	font-family: var(--gallo-2026-ui-font);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	transition: color .28s ease, background-color .28s ease, border-color .28s ease;
}

.page-template-product .saiba-como-reciclar-link-container > .btn::before,
.page-template-product .saiba-como-reciclar-link-container > .btn::after,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn::before,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn::after {
	display: none;
}

.page-template-product .saiba-como-reciclar-link-container > .btn:hover,
.page-template-product .saiba-como-reciclar-link-container > .btn:focus-visible,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn:hover,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn:focus-visible {
	border-color: var(--gallo-2026-title-color);
	color: var(--gallo-2026-white);
	background: var(--gallo-2026-title-color);
}

/* Recipes: headings follow the market title token, while descriptive copy is
 * Black 4. Search fields and recipe indicators are deliberately excluded. */
.page-template-recipe_listing .recipes-middle-text h2,
.page-template-recipe_listing .recipes-inspiration-section > h2,
.page-template-recipe_listing .recipes-search-suggestion-section-add-new > h2,
.page-template-recipe_listing .tips-inspiration-section > h2,
.page-template-recipe_listing .recipes-moments-section .slide__title,
.page-template-recipe_listing .recipes-inspiration-text h2,
.page-template-recipe_listing .recipes-search-suggestion-section .product-detail-recipes-text h3,
.page-template-recipe_listing .tips-inspiration-item .product-detail-recipes-text h3,
body.tax-receitas_categories .gallo-2026-recipe-category-heading h2,
body.tax-receitas_categories .recipes-suggestion-middle-section .product-detail-recipes-text h3,
body.single-receita .ingredients-preparation-section h3,
body.single-receita .ingredients-preparation-section.w3nstepsnew .preparation-methods-step h3,
body.single-receita .product-used-slider-wrapper h3,
body.single-receita .product-used-slider-text h5,
body.single-receita .see-recipes-slider-section h2,
body.single-receita .see-other-recipes-slider-section h2,
body.single-receita .see-recipes-slider .product-detail-recipes-text h3,
body.single-receita .see-other-recipes-slider-section .aromatizer-slider-text h3 {
	color: var(--gallo-2026-title-color);
}

.page-template-recipe_listing .recipes-middle-text p,
.page-template-recipe_listing .recipes-inspiration-text p,
body.single-receita .ingredients-column ul li,
body.single-receita .methods-step-text p,
body.single-receita .product-used-slider-text p {
	color: var(--gallo-2026-body-color);
}

body.tax-receitas_categories .gallo-2026-recipe-category-heading > a,
body.tax-receitas_categories .gallo-2026-recipe-card-cta,
.page-template-recipe_listing .gallo-2026-recipe-card-cta,
body.single-receita .gallo-2026-recipe-card-cta,
body.single-receita .add-recipe-to-list,
body.single-receita .ingredients-column .ing_title,
body.single-receita .methods-step-count {
	color: var(--gallo-2026-detail-color);
}

body.single-receita .ingredients-column ul li::before {
	background: var(--gallo-2026-detail-color);
}

body.single-receita .methods-step-count {
	border-color: var(--gallo-2026-detail-color);
}

body.single-receita .new-search-recipe-button .btn:first-child {
	border-color: var(--gallo-2026-detail-color);
	color: var(--gallo-2026-detail-color);
}

body.single-receita .new-search-recipe-button .btn:last-child {
	border-color: var(--gallo-2026-title-color);
	color: var(--gallo-2026-white);
	background: var(--gallo-2026-title-color);
}

/* Replace the chromatic recipe veils with a neutral contrast layer. */
.page-template-recipe_listing .recipes-banner-section::before,
.page-template-recipe_listing.gallo-market-pt-pt .recipes-banner-section::before,
body.tax-receitas_categories .recipes-suggestion-banner-section::before,
body.tax-receitas_categories.gallo-market-pt-pt .recipes-suggestion-banner-section::before,
body.single-receita .recipes-detail-banner-section::before,
body.single-receita.gallo-market-pt-pt .recipes-detail-banner-section::before,
body.single-receita:not(.gallo-market-pt-pt) .recipes-detail-banner-section::before {
	background:
		linear-gradient(180deg, rgba(0, 0, 0, .44) 0%, rgba(0, 0, 0, .16) 116px, transparent 190px),
		linear-gradient(90deg, rgba(0, 0, 0, .66) 0%, rgba(0, 0, 0, .42) 34%, rgba(0, 0, 0, .08) 66%, transparent 82%);
}

/* The navigation remains independent from the editorial copy and is anchored
 * to the lower-right hero safe area. */
body.single-receita .recipes-detail-banner-section .product-detail-arrow {
	top: auto;
	right: max(32px, calc((100vw - 1320px) / 2));
	bottom: 28px;
	left: auto;
	height: auto;
}

body.single-receita .recipes-detail-banner-section .product-detail-arrow li {
	width: clamp(190px, 16vw, 220px);
}

body.single-receita .recipes-detail-banner-section .nav-detail-wrap a {
	background: rgba(0, 0, 0, .34);
}

/* Shared Gallo 2026 editorial CTA interaction. Functional controls (filters,
 * forms, doses and list actions) deliberately keep their own behaviour. */
.footer-section .talk-to-us .btn,
body.home .hero-2026 .hero-2026__cta,
body.home .hero-2026 .btnflip_,
body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta,
body.home .more-moments-button .btn,
.gallo-awards-btn .btn,
body.home .gallo-awards-section .gold-medal-box-count .show-more-custom,
body.home .recipes-moments-section .know-recipes-btn .btn,
.page-template-recipe_listing .explorar-recipes-btn .btn,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn,
body.single-produto .cart-compare-btn .btn,
body.single-produto .descarregarebook .btn,
body.single-produto .product-btn .prodbtn,
body.single-produto .product-award-w3n .see-certification-button .btn,
body.single-produto .product-detail-recipes > .see-certification-button .btn,
body.single-produto .saiba-como-reciclar-link-container > .btn,
.page-template-product .saiba-como-reciclar-link-container > .btn,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn,
body.single-receita .read-news-button .btn,
body.single-receita .recipes-detail-banner-section > .smoothscroll.btn,
body.single-receita .new-search-recipe-button .btn,
body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn {
	position: relative;
	overflow: hidden;
	border-width: 1px;
	border-style: solid;
	border-color: var(--gallo-v3-cta-border) !important;
	color: var(--gallo-v3-cta-text) !important;
	background-color: transparent !important;
	background-image: none !important;
	font-family: var(--gallo-2026-ui-font);
	font-style: normal;
	transform: none !important;
	transition: background-color 300ms ease-in-out, color 300ms ease-in-out, border-color 300ms ease-in-out !important;
}

/* Disable the generic legacy .btn::before layer so it cannot paint a second
 * background over the uniform V3 colour transition. */
.footer-section .talk-to-us .btn::before,
body.home .hero-2026 .hero-2026__cta::before,
body.home .hero-2026 .btnflip_::before,
body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta::before,
body.home .more-moments-button .btn::before,
.gallo-awards-btn .btn::before,
body.home .gallo-awards-section .gold-medal-box-count .show-more-custom::before,
body.home .recipes-moments-section .know-recipes-btn .btn::before,
.page-template-recipe_listing .explorar-recipes-btn .btn::before,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn::before,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn::before,
body.single-produto .cart-compare-btn .btn::before,
body.single-produto .descarregarebook .btn::before,
body.single-produto .product-btn .prodbtn::before,
body.single-produto .product-award-w3n .see-certification-button .btn::before,
body.single-produto .product-detail-recipes > .see-certification-button .btn::before,
body.single-produto .saiba-como-reciclar-link-container > .btn::before,
.page-template-product .saiba-como-reciclar-link-container > .btn::before,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn::before,
body.single-receita .read-news-button .btn::before,
body.single-receita .recipes-detail-banner-section > .smoothscroll.btn::before,
body.single-receita .new-search-recipe-button .btn::before,
body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn::before {
	content: none !important;
	display: none !important;
}

.footer-section .talk-to-us .btn:hover,
.footer-section .talk-to-us .btn:focus-visible,
body.home .hero-2026 .hero-2026__cta:hover,
body.home .hero-2026 .hero-2026__cta:focus-visible,
body.home .hero-2026 .btnflip_:hover,
body.home .hero-2026 .btnflip_:focus-visible,
body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:hover,
body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta:focus-visible,
body.home .more-moments-button .btn:hover,
body.home .more-moments-button .btn:focus-visible,
.gallo-awards-btn .btn:hover,
.gallo-awards-btn .btn:focus-visible,
body.home .gallo-awards-section .gold-medal-box-count .show-more-custom:hover,
body.home .gallo-awards-section .gold-medal-box-count .show-more-custom:focus-visible,
body.home .recipes-moments-section .know-recipes-btn .btn:hover,
body.home .recipes-moments-section .know-recipes-btn .btn:focus-visible,
.page-template-recipe_listing .explorar-recipes-btn .btn:hover,
.page-template-recipe_listing .explorar-recipes-btn .btn:focus-visible,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn:hover,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn:focus-visible,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn:hover,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn:focus-visible,
body.single-produto .cart-compare-btn .btn:hover,
body.single-produto .cart-compare-btn .btn:focus-visible,
body.single-produto .descarregarebook .btn:hover,
body.single-produto .descarregarebook .btn:focus-visible,
body.single-produto .product-btn .prodbtn:hover,
body.single-produto .product-btn .prodbtn:focus-visible,
body.single-produto .product-award-w3n .see-certification-button .btn:hover,
body.single-produto .product-award-w3n .see-certification-button .btn:focus-visible,
body.single-produto .product-detail-recipes > .see-certification-button .btn:hover,
body.single-produto .product-detail-recipes > .see-certification-button .btn:focus-visible,
body.single-produto .saiba-como-reciclar-link-container > .btn:hover,
body.single-produto .saiba-como-reciclar-link-container > .btn:focus-visible,
.page-template-product .saiba-como-reciclar-link-container > .btn:hover,
.page-template-product .saiba-como-reciclar-link-container > .btn:focus-visible,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn:hover,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn:focus-visible,
body.single-receita .read-news-button .btn:hover,
body.single-receita .read-news-button .btn:focus-visible,
body.single-receita .recipes-detail-banner-section > .smoothscroll.btn:hover,
body.single-receita .recipes-detail-banner-section > .smoothscroll.btn:focus-visible,
body.single-receita .new-search-recipe-button .btn:hover,
body.single-receita .new-search-recipe-button .btn:focus-visible,
body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn:hover,
body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn:focus-visible {
	color: var(--gallo-v3-cta-hover-text) !important;
	background-color: var(--gallo-v3-cta-fill) !important;
	opacity: 1;
	transform: none !important;
}

/* Keep every visible CTA arrow synchronized with the uniform colour fade. */
body.home .hero-2026 .hero-2026__cta-arrow,
body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta::after,
.gallo-awards-btn .btn::after,
body.home .recipes-moments-section .know-recipes-btn .btn::after,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn::after,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn::after,
body.single-produto .product-award-w3n .see-certification-button .btn::after {
	transition: color 300ms ease-in-out, transform 300ms ease-in-out !important;
}

.footer-section .talk-to-us .btn {
	--gallo-v3-cta-border: var(--gallo-2026-title-color);
	--gallo-v3-cta-text: var(--gallo-2026-title-color);
	--gallo-v3-cta-fill: var(--gallo-2026-title-color);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

body.home .hero-2026 .hero-2026__cta,
body.home .hero-2026 .btnflip_ {
	--gallo-v3-cta-border: var(--gallo-2026-white);
	--gallo-v3-cta-text: var(--gallo-2026-white);
	--gallo-v3-cta-fill: var(--gallo-2026-title-color);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

body.home .hero-2026 .hero-2026__slide--campaign.lightimage .hero-2026__cta {
	--gallo-v3-cta-border: var(--gallo-2026-title-color);
	--gallo-v3-cta-text: var(--gallo-2026-title-color);
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta {
	--gallo-v3-cta-border: var(--gallo-2026-market-highlight);
	--gallo-v3-cta-text: var(--gallo-2026-market-highlight);
	--gallo-v3-cta-fill: var(--gallo-2026-market-highlight);
	--gallo-v3-cta-hover-text: var(--gallo-2026-market-primary);
}

.gallo-awards-btn .btn,
body.home .gallo-awards-section .gold-medal-box-count .show-more-custom {
	--gallo-v3-cta-border: var(--gallo-2026-market-highlight);
	--gallo-v3-cta-text: var(--gallo-2026-market-highlight);
	--gallo-v3-cta-fill: var(--gallo-2026-market-highlight);
	--gallo-v3-cta-hover-text: var(--gallo-awards-deep, var(--gallo-2026-market-primary));
}

body.home .more-moments-button .btn {
	--gallo-v3-cta-border: var(--gallo-2026-detail-color);
	--gallo-v3-cta-text: var(--gallo-2026-detail-color);
	--gallo-v3-cta-fill: var(--gallo-2026-detail-color);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn,
body.single-produto .descarregarebook .btn,
body.single-produto .product-btn .prodbtn,
body.single-produto .product-award-w3n .see-certification-button .btn,
body.single-produto .product-detail-recipes > .see-certification-button .btn,
body.single-produto .saiba-como-reciclar-link-container > .btn {
	--gallo-v3-cta-border: var(--gallo-2026-market-primary);
	--gallo-v3-cta-text: var(--gallo-2026-market-primary);
	--gallo-v3-cta-fill: var(--gallo-2026-market-primary);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

body.home .recipes-moments-section .know-recipes-btn .btn,
body.single-produto .cart-compare-btn .btn {
	--gallo-v3-cta-border: var(--gallo-2026-title-color);
	--gallo-v3-cta-text: var(--gallo-2026-title-color);
	--gallo-v3-cta-fill: var(--gallo-2026-title-color);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

.page-template-product .saiba-como-reciclar-link-container > .btn,
.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn {
	--gallo-v3-cta-border: var(--gallo-2026-title-color);
	--gallo-v3-cta-text: var(--gallo-2026-title-color);
	--gallo-v3-cta-fill: var(--gallo-2026-title-color);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

body.single-receita .read-news-button .btn,
body.single-receita .recipes-detail-banner-section > .smoothscroll.btn,
body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn {
	--gallo-v3-cta-border: var(--gallo-2026-white);
	--gallo-v3-cta-text: var(--gallo-2026-white);
	--gallo-v3-cta-fill: var(--gallo-2026-white);
	--gallo-v3-cta-hover-text: var(--gallo-2026-market-primary);
}

body.single-receita .new-search-recipe-button .btn:first-child {
	--gallo-v3-cta-border: var(--gallo-2026-detail-color);
	--gallo-v3-cta-text: var(--gallo-2026-detail-color);
	--gallo-v3-cta-fill: var(--gallo-2026-detail-color);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

body.single-receita .new-search-recipe-button .btn:last-child {
	--gallo-v3-cta-border: var(--gallo-2026-title-color);
	--gallo-v3-cta-text: var(--gallo-2026-title-color);
	--gallo-v3-cta-fill: var(--gallo-2026-title-color);
	--gallo-v3-cta-hover-text: var(--gallo-2026-white);
}

.page-template-recipe_listing .explorar-recipes-btn .btn {
	--gallo-v3-cta-border: var(--gallo-2026-white);
	--gallo-v3-cta-text: var(--gallo-2026-white);
	--gallo-v3-cta-fill: var(--gallo-2026-white);
	--gallo-v3-cta-hover-text: var(--gallo-2026-market-primary);
}

body.home .more-moments-button .btn::after,
body.home .hero-2026 .btnflip_::after,
body.home .gallo-awards-section .gold-medal-box-count .show-more-custom::after,
body.single-produto .cart-compare-btn .btn::after,
body.single-produto .descarregarebook .btn::after,
body.single-produto .product-btn .prodbtn::after,
body.single-receita .read-news-button .btn::after,
.page-template-recipe_listing .explorar-recipes-btn .btn::after,
body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn::after {
	display: none;
}

body.home .recipes-moments-section .know-recipes-btn .btn::after,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn::after,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn::after {
	color: var(--gallo-2026-market-accent);
}

body.home .recipes-moments-section .know-recipes-btn .btn:hover::after,
body.home .recipes-moments-section .know-recipes-btn .btn:focus-visible::after,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn:hover::after,
.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn:focus-visible::after,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn:hover::after,
.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn:focus-visible::after {
	color: var(--gallo-2026-market-highlight);
	transform: translateX(4px);
}

@media (prefers-reduced-motion: reduce) {
	.footer-section .talk-to-us .btn,
	body.home .hero-2026 .hero-2026__cta,
	body.home .hero-2026 .btnflip_,
	body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta,
	body.home .more-moments-button .btn,
	.gallo-awards-btn .btn,
	body.home .gallo-awards-section .gold-medal-box-count .show-more-custom,
	body.home .recipes-moments-section .know-recipes-btn .btn,
	.page-template-recipe_listing .explorar-recipes-btn .btn,
	.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn,
	.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn,
	body.single-produto .cart-compare-btn .btn,
	body.single-produto .descarregarebook .btn,
	body.single-produto .product-btn .prodbtn,
	body.single-produto .product-award-w3n .see-certification-button .btn,
	body.single-produto .product-detail-recipes > .see-certification-button .btn,
	body.single-produto .saiba-como-reciclar-link-container > .btn,
	.page-template-product .saiba-como-reciclar-link-container > .btn,
	.page-template-inc-product-php .saiba-como-reciclar-link-container > .btn,
	body.single-receita .read-news-button .btn,
	body.single-receita .recipes-detail-banner-section > .smoothscroll.btn,
	body.single-receita .new-search-recipe-button .btn,
	body.page-template-template-partslista-supermercado-php .no-grocery-list-banner .about-banner-middle-text .btn,
	body.home .hero-2026 .hero-2026__cta-arrow,
	body.home:not(.gallo-market-pt-pt) .about-gallo-image .gallo-2026-home-cta::after,
	.gallo-awards-btn .btn::after,
	body.home .recipes-moments-section .know-recipes-btn .btn::after,
	.page-template-recipe_listing .recipes-moments-section .know-recipes-btn .btn::after,
	.page-template-recipe_listing .summer-recipes-slider-mobile-text > .btn::after,
	body.single-produto .product-award-w3n .see-certification-button .btn::after {
		transition: none !important;
	}
}

@media only screen and (max-width: 900px) {
	.page-template-recipe_listing .recipes-banner-section::before,
	.page-template-recipe_listing.gallo-market-pt-pt .recipes-banner-section::before,
	body.tax-receitas_categories .recipes-suggestion-banner-section::before,
	body.tax-receitas_categories.gallo-market-pt-pt .recipes-suggestion-banner-section::before,
	body.single-receita .recipes-detail-banner-section::before,
	body.single-receita.gallo-market-pt-pt .recipes-detail-banner-section::before,
	body.single-receita:not(.gallo-market-pt-pt) .recipes-detail-banner-section::before {
		background:
			linear-gradient(180deg, rgba(0, 0, 0, .48) 0%, rgba(0, 0, 0, .16) 116px, transparent 180px),
			linear-gradient(90deg, rgba(0, 0, 0, .68), rgba(0, 0, 0, .26) 76%, transparent);
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow {
		right: 28px;
		left: 28px;
	}

	body.single-receita .recipes-detail-banner-section .product-detail-arrow li {
		width: 50%;
	}
}

@media only screen and (max-width: 767px) {
	.page-template-recipe_listing .recipes-banner-section::before,
	.page-template-recipe_listing.gallo-market-pt-pt .recipes-banner-section::before,
	body.tax-receitas_categories .recipes-suggestion-banner-section::before,
	body.tax-receitas_categories.gallo-market-pt-pt .recipes-suggestion-banner-section::before,
	body.single-receita .recipes-detail-banner-section::before,
	body.single-receita.gallo-market-pt-pt .recipes-detail-banner-section::before,
	body.single-receita:not(.gallo-market-pt-pt) .recipes-detail-banner-section::before {
		background: linear-gradient(180deg, rgba(0, 0, 0, .48), rgba(0, 0, 0, .14) 32%, rgba(0, 0, 0, .76) 78%, rgba(0, 0, 0, .88));
	}

	body.single-produto .saiba-como-reciclar-link-container,
	.page-template-product .saiba-como-reciclar-link-container,
	.page-template-inc-product-php .saiba-como-reciclar-link-container {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media only screen and (max-width: 340px) {
	body.single-receita .recipes-detail-banner-section .product-detail-arrow {
		right: 16px;
		left: 16px;
	}
}

/* QA 2026-10-30 — banner shadows and Jubilee hierarchy.
 * Keep this block component-scoped so approved PT artwork and interface copy
 * retain their existing presentation. */
body.home:not(.gallo-market-pt-pt) .hero-2026 .hero-2026__media::before,
body.home:not(.gallo-market-pt-pt) .hero-2026 .hero-2026__frame::after,
body.home:not(.gallo-market-pt-pt) .about-gallo-section:not(.w3n_about_video) .about-gallo-image::before,
body.page-template-about_us .about-banner-section::before {
	background: transparent !important;
	box-shadow: none !important;
}

/* Section titles follow the Silver title face; compact section highlights use
 * Golden Medium without changing their established size or spacing. */
body.home .our-product-text h2,
body.home:not(.gallo-market-pt-pt) .about-gallo-image h2,
body.home:not(.gallo-market-pt-pt) .gallo-awards-text h2,
body.home:not(.gallo-market-pt-pt) .gallo-awards-inner .gallo-awards-text h2 {
	font-family: var(--gallo-2026-title-font);
	font-style: normal;
	font-weight: 800;
}

body.home:not(.gallo-market-pt-pt) .about-gallo-image > h6,
body.home:not(.gallo-market-pt-pt) .gallo-awards-inner > h6 {
	font-family: var(--gallo-2026-highlight-font);
	font-style: normal;
	font-weight: 500;
}

/* Product names only: listings, detail, homepage, related-product and compare
 * components. Descriptions, categories, prices and controls stay on DM Sans. */
.product-list-middle .product-list-image-text h3,
body.home .our-product-section .product-item h5,
body.single-produto .product-detail-content-inner h1,
body.single-produto .product-detail-range-text h5,
body.single-receita .product-used-slider-text h5,
.product-info-column h5,
.compare-product-popup-text h5,
.compare-product-text h5,
.our-award-winnig-product-block h5 {
	font-family: var(--gallo-2026-title-font) !important;
	font-style: normal !important;
	font-weight: 800 !important;
}

/* Homepage BR — keep the launch CTA legible over the photographic first
 * banner. The market class and destination together isolate this treatment
 * from every other hero CTA, slide and locale. */
body.home.gallo-market-pt-br .hero-2026 .hero-2026__cta[href*="/pt-br/nova-imagem/"] {
	--gallo-v3-cta-border: var(--gallo-2026-market-accent);
	--gallo-v3-cta-text: var(--gallo-2026-market-primary);
	--gallo-v3-cta-fill: var(--gallo-2026-market-accent);
	--gallo-v3-cta-hover-text: var(--gallo-2026-market-primary);
	border-color: var(--gallo-2026-market-accent) !important;
	color: var(--gallo-2026-market-primary) !important;
	background-color: var(--gallo-2026-market-accent) !important;
}

body.home.gallo-market-pt-br .hero-2026 .hero-2026__cta[href*="/pt-br/nova-imagem/"]:hover,
body.home.gallo-market-pt-br .hero-2026 .hero-2026__cta[href*="/pt-br/nova-imagem/"]:focus-visible {
	border-color: var(--gallo-2026-white) !important;
	color: var(--gallo-2026-market-primary) !important;
	background-color: var(--gallo-2026-white) !important;
}

body.home.gallo-market-pt-br .hero-2026 .hero-2026__cta[href*="/pt-br/nova-imagem/"]:focus-visible {
	outline: 3px solid var(--gallo-2026-market-highlight);
	outline-offset: 3px;
}

/* Colombia catalogue — the two olive-oil family headings reuse the theme's
 * existing olive branch asset. This locale-scoped fallback also covers the
 * legacy category records whose ACF icon value is empty. */
html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceites-de-oliva,
html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceite-de-orujo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
}

html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceites-de-oliva > img,
html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceite-de-orujo > img {
	display: none;
}

html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceites-de-oliva::before,
html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceite-de-orujo::before {
	content: "";
	display: inline-block;
	width: 52px;
	height: 44px;
	flex: 0 0 52px;
	background: url("../images/ic-1.svg") center / contain no-repeat;
}

@media only screen and (max-width: 767px) {
	html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceites-de-oliva,
	html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceite-de-orujo {
		gap: 10px;
	}

	html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceites-de-oliva::before,
	html[lang^="es"] .product-list-middle .product-list-wrapper a.category_list.aceite-de-orujo::before {
		width: 34px;
		height: 29px;
		flex-basis: 34px;
	}
}
