:root {
	--anf-green: #0c6b47;
	--anf-green-dark: #084e35;
	--anf-gold: #d6a742;
	--anf-text: #17211c;
	--anf-border: #d9e2dc;
	--anf-shadow: 0 18px 55px rgba(7, 62, 41, 0.18);
}

.anf-search {
	position: relative;
	width: 100%;
	max-width: 760px;
	z-index: 9998;
}

.anf-search__form {
	display: flex;
	gap: 8px;
	margin: 0;
}

.anf-search__input {
	flex: 1;
	min-width: 0;
	height: 48px;
	padding: 0 16px !important;
	border: 1px solid var(--anf-border) !important;
	border-radius: 10px !important;
	background: #fff !important;
	color: var(--anf-text) !important;
	box-shadow: none !important;
	font-size: 16px !important;
}

.anf-search__input:focus {
	border-color: var(--anf-green) !important;
	outline: 3px solid rgba(11, 93, 59, 0.14) !important;
}

.anf-search__button {
	height: 48px;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: var(--anf-green) !important;
	color: #fff !important;
	font-weight: 700 !important;
	cursor: pointer;
	white-space: nowrap;
}

.anf-search__button:hover,
.anf-search__button:focus {
	background: var(--anf-green-dark) !important;
}

.anf-search__results {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	max-height: min(520px, 70vh);
	overflow-y: auto;
	background: #fff;
	border: 1px solid var(--anf-border);
	border-radius: 12px;
	box-shadow: var(--anf-shadow);
	z-index: 99999;
}

.anf-search__result {
	display: grid;
	grid-template-columns: 58px 1fr;
	gap: 12px;
	align-items: center;
	padding: 11px 13px;
	border-bottom: 1px solid #edf1ee;
	color: var(--anf-text) !important;
	text-decoration: none !important;
}

.anf-search__result:hover,
.anf-search__result:focus {
	background: #f4f8f5;
}

.anf-search__image,
.anf-search__image img,
.anf-search__image-placeholder {
	display: flex;
	width: 58px;
	height: 58px;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #f3f5f4;
	object-fit: contain;
	overflow: hidden;
}

.anf-search__image-placeholder {
	color: var(--anf-green);
	font-weight: 800;
	font-size: 13px;
}

.anf-search__content {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.anf-search__content strong {
	color: var(--anf-green-dark);
	font-size: 15px;
	line-height: 1.3;
}

.anf-search__content small,
.anf-search__content em {
	color: #5c6861;
	font-size: 12px;
	font-style: normal;
	line-height: 1.35;
}

.anf-search__loading,
.anf-search__empty,
.anf-search__view-all {
	display: block;
	padding: 15px;
	text-align: center;
	color: #566159;
}

.anf-search__view-all {
	color: var(--anf-green) !important;
	font-weight: 700;
	text-decoration: none !important;
	background: #f5f8f6;
}

.anf-reach {
	position: fixed;
	right: 18px;
	bottom: 18px;
	display: flex;
	flex-direction: column;
	gap: 9px;
	z-index: 9995;
}

.anf-reach__action {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 46px;
	padding: 10px 14px;
	border: 0;
	border-radius: 999px;
	background: var(--anf-green);
	color: #fff !important;
	box-shadow: 0 8px 26px rgba(7, 62, 41, 0.24);
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none !important;
	cursor: pointer;
}

.anf-reach__action:hover,
.anf-reach__action:focus {
	background: var(--anf-green-dark);
	transform: translateY(-1px);
}

.anf-reach__action > span:first-child {
	display: inline-grid;
	place-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(255,255,255,.15);
	font-size: 16px;
}

.anf-reach__whatsapp {
	background: #128c4e;
}

.anf-reach__search {
	background: #1b2f25;
}

.anf-search-modal[hidden] {
	display: none !important;
}

.anf-search-modal {
	position: fixed;
	inset: 0;
	display: grid;
	place-items: start center;
	padding: min(12vh, 110px) 18px 30px;
	z-index: 100000;
}

.anf-search-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(3, 25, 16, 0.72);
	backdrop-filter: blur(3px);
}

.anf-search-modal__dialog {
	position: relative;
	width: min(720px, 100%);
	padding: 30px;
	border-radius: 18px;
	background: #fff;
	box-shadow: var(--anf-shadow);
	z-index: 1;
}

.anf-search-modal__dialog h2 {
	margin: 0 42px 5px 0;
	color: var(--anf-green-dark);
	font-size: clamp(24px, 4vw, 34px);
	line-height: 1.2;
}

.anf-search-modal__dialog > p {
	margin: 0 0 18px;
	color: #59655e;
}

.anf-search-modal__close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 38px;
	height: 38px;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: #edf2ef !important;
	color: #20342a !important;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

.anf-search-modal__all {
	margin: 18px 0 0 !important;
}

.anf-search-modal__all a {
	color: var(--anf-green) !important;
	font-weight: 700;
}

.anf-modal-open {
	overflow: hidden;
}



/*
 * ANF unified desktop floating controls.
 * Keep Search Products, Call ANF and WhatsApp visually identical to the
 * Language switcher: same footprint, gradient, pill shape, border and shadow.
 */
@media (min-width: 701px) {
	.anf-reach {
		align-items: flex-end;
		gap: 9px;
	}

	.anf-reach__action,
	.anf-reach__search,
	.anf-reach__whatsapp {
		box-sizing: border-box;
		display: grid;
		grid-template-columns: 24px minmax(0, 1fr) 24px;
		align-items: center;
		gap: 8px;
		width: 158px;
		min-width: 158px;
		max-width: 158px;
		height: 48px;
		min-height: 48px;
		max-height: 48px;
		padding: 0 14px !important;
		border: 1px solid rgba(255,255,255,.22) !important;
		border-radius: 999px !important;
		background: linear-gradient(135deg, #0c6b47, #084e35) !important;
		color: #fff !important;
		box-shadow: 0 10px 26px rgba(8, 78, 53, .28);
		font-size: 13px;
		font-weight: 700;
		line-height: 1;
		white-space: nowrap;
		transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
	}

	.anf-reach__action::after {
		content: "";
		display: block;
		width: 24px;
		height: 24px;
	}

	.anf-reach__action > span:first-child {
		width: 24px;
		height: 24px;
		border-radius: 50%;
		background: rgba(255,255,255,.15);
		font-size: 16px;
	}

	.anf-reach__action > span:nth-child(2) {
		min-width: 0;
		text-align: center;
	}

	.anf-reach__action:hover,
	.anf-reach__action:focus,
	.anf-reach__search:hover,
	.anf-reach__search:focus,
	.anf-reach__whatsapp:hover,
	.anf-reach__whatsapp:focus {
		background: linear-gradient(135deg, #0c6b47, #084e35) !important;
		transform: translateY(-2px);
		box-shadow: 0 14px 30px rgba(8, 78, 53, .34);
		filter: brightness(1.03);
	}
}

@media (max-width: 700px) {
	body {
		padding-bottom: 66px;
	}

	.anf-reach {
		right: 0;
		bottom: 0;
		left: 0;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 0;
		padding: 7px max(7px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px, env(safe-area-inset-left));
		background: #fff;
		border-top: 1px solid var(--anf-border);
		box-shadow: 0 -10px 32px rgba(7, 62, 41, 0.13);
	}

	.anf-reach__action {
		flex-direction: column;
		justify-content: center;
		gap: 3px;
		min-height: 50px;
		padding: 6px 4px;
		border-radius: 9px;
		box-shadow: none;
		font-size: 11px;
		text-align: center;
	}

	.anf-reach__action > span:first-child {
		width: 21px;
		height: 21px;
		font-size: 14px;
	}

	.anf-search-modal {
		padding: 24px 12px 90px;
		align-items: start;
	}

	.anf-search-modal__dialog {
		padding: 25px 16px 20px;
		border-radius: 15px;
	}

	.anf-search__form {
		display: grid;
		grid-template-columns: 1fr;
	}

	.anf-search__button {
		width: 100%;
	}

	.anf-search__results {
		position: relative;
		top: 8px;
		margin-bottom: 8px;
		max-height: 50vh;
	}

	.anf-search__result {
		grid-template-columns: 50px 1fr;
	}

	.anf-search__image,
	.anf-search__image img,
	.anf-search__image-placeholder {
		width: 50px;
		height: 50px;
	}
}


/* v1.2.0: Search lives in the header; only the WhatsApp logo remains floating. */
.anf-reach {
    position: fixed !important;
    right: 18px !important;
    left: auto !important;
    bottom: 82px !important;
    display: block !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    z-index: 999997 !important;
}

.anf-reach__whatsapp-icon {
    box-sizing: border-box;
    width: 52px;
    height: 52px;
    min-width: 52px;
    min-height: 52px;
    padding: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    border-radius: 50% !important;
    background: #25D366 !important;
    color: #fff !important;
    box-shadow: 0 10px 26px rgba(8, 78, 53, .28) !important;
    text-decoration: none !important;
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
    -webkit-tap-highlight-color: transparent;
}

.anf-reach__whatsapp-icon svg {
    width: 29px;
    height: 29px;
    display: block;
}

.anf-reach__whatsapp-icon:hover,
.anf-reach__whatsapp-icon:focus-visible {
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(8, 78, 53, .34) !important;
    filter: brightness(1.03);
}

.anf-reach__whatsapp-icon:focus-visible {
    outline: 3px solid rgba(37, 211, 102, .28);
    outline-offset: 3px;
}

/* Header navigation Search item automatically inserted by anf-tools.js. */
.anf-header-search-item {
    list-style: none !important;
}

.anf-header-search-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    cursor: pointer !important;
    text-decoration: none !important;
}

.anf-header-search-link svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    display: block;
}

/* Undo the previous mobile bottom action bar completely. */
@media (max-width: 700px) {
    body { padding-bottom: 0 !important; }
    .anf-reach {
        right: 12px !important;
        bottom: 76px !important;
    }
    .anf-reach__whatsapp-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
        min-height: 48px;
    }
    .anf-reach__whatsapp-icon svg {
        width: 27px;
        height: 27px;
    }

    .anf-header-search-link {
        width: 100%;
    }
}
