/**
 * Homepage-only Abtaz component styling.
 */

/* Existing Elementor hero buttons: shared geometry and approved visual states. */
.home .elementor-element.elementor-element-83c70d8 .elementor-button,
.home .elementor-element.elementor-element-86a1fc3 .elementor-button {
	align-items: center;
	background-color: #ffffff;
	border-color: #ffffff;
	border-width: 2px;
	box-sizing: border-box;
	color: #2b2d42;
	display: inline-flex;
	justify-content: center;
	min-width: 152.172px;
	padding: 16px 28px;
	text-align: center;
	white-space: nowrap;
}

.home .elementor-element.elementor-element-83c70d8 .elementor-button:hover,
.home .elementor-element.elementor-element-86a1fc3 .elementor-button:hover,
.home .elementor-element.elementor-element-83c70d8 .elementor-button:active,
.home .elementor-element.elementor-element-86a1fc3 .elementor-button:active {
	background-color: #00b4d8;
	border-color: #00b4d8;
	color: #212121;
	box-shadow: none;
	transform: none;
}

.home .elementor-element.elementor-element-83c70d8 .elementor-button:focus:not(:focus-visible):not(:hover):not(:active),
.home .elementor-element.elementor-element-86a1fc3 .elementor-button:focus:not(:focus-visible):not(:hover):not(:active) {
	background-color: #ffffff;
	border-color: #ffffff;
	color: #2b2d42;
	outline: none;
	box-shadow: none;
}

.home .elementor-element.elementor-element-83c70d8 .elementor-button:focus-visible,
.home .elementor-element.elementor-element-86a1fc3 .elementor-button:focus-visible {
	background-color: #ffffff;
	border-color: #ffffff;
	color: #2b2d42;
	outline: 2px solid #00b4d8;
	outline-offset: 3px;
	box-shadow: 0 0 0 1px #2b2d42;
}

.abtaz-home-brands,
.abtaz-home-products {
	--abtaz-interactive-hover: #00b4d8;
	--abtaz-section-heading: #007c91;
	box-sizing: border-box;
	width: 100%;
}

/* Homepage closing export CTA. The image and overlay strength come from the
 * reusable shortcode settings; layout remains isolated from Elementor. */
.abtaz-home-export {
	--abtaz-home-export-overlay: .75;
	background-color: #2b2d42;
	background-image: linear-gradient(rgba(43, 45, 66, var(--abtaz-home-export-overlay)), rgba(43, 45, 66, var(--abtaz-home-export-overlay))), var(--abtaz-home-export-image, none);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	box-sizing: border-box;
	color: #fff;
	padding: 82px 20px 86px;
	width: 100%;
}

.abtaz-home-export--has-image { background-attachment: fixed; }
.abtaz-home-export--has-image[data-background-effect="scroll"] { background-attachment: scroll; }

.abtaz-home-export__inner {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1140px;
	text-align: center;
	width: 100%;
}

.abtaz-home-export__heading {
	color: #fff;
	font-family: 'Lato', sans-serif;
	font-size: clamp(30px, 3vw, 44px);
	font-weight: 700;
	letter-spacing: .03em;
	line-height: 1.15;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.abtaz-home-export__subheading {
	color: #fff;
	font-size: clamp(19px, 2vw, 25px);
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 22px;
}

.abtaz-home-export__body {
	color: #fff;
	font-size: 17px;
	line-height: 1.7;
	margin: 0 auto 30px;
	max-width: 1100px;
}

.abtaz-home-export__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
}

.abtaz-home-export__button {
	align-items: center;
	background: #fff;
	border: 2px solid #fff;
	box-sizing: border-box;
	color: #2b2d42;
	display: inline-flex;
	font-size: 15px;
	font-weight: 700;
	justify-content: center;
	letter-spacing: .03em;
	line-height: 1.2;
	min-height: 50px;
	min-width: 152px;
	padding: 14px 26px;
	text-align: center;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.abtaz-home-export__button:hover,
.abtaz-home-export__button:active {
	background: #00b4d8;
	border-color: #00b4d8;
	color: #212121;
}

.abtaz-home-export__button:focus:not(:focus-visible) {
	outline: none;
	box-shadow: none;
}

.abtaz-home-export__button:focus-visible {
	background: #00b4d8;
	border-color: #00b4d8;
	color: #212121;
	outline: 2px solid #fff;
	outline-offset: 3px;
}

@media (max-width: 1024px) {
	.abtaz-home-export {
		background-attachment: scroll;
		padding: 68px 28px 72px;
	}
}

@media (max-width: 767px) {
	.abtaz-home-export { padding: 54px 20px 58px; }
	.abtaz-home-export__body { font-size: 16px; line-height: 1.65; }
	.abtaz-home-export__actions { flex-direction: column; }
	.abtaz-home-export__button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.abtaz-home-export { background-attachment: scroll; }
	.abtaz-home-export__button { transition: none; }
}

.abtaz-home-brands { background: #ffffff; }
.abtaz-home-products { background: #f6f9fb; }

.abtaz-home-brands__inner,
.abtaz-home-products__inner {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 20px;
}

.abtaz-home-brands__inner { padding-block: 52px; }
.abtaz-home-products__inner { padding-block: 62px; }

.abtaz-home-brands__heading,
.abtaz-home-products__heading {
	color: var(--abtaz-section-heading);
	font-family: inherit;
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.25;
	margin: 0;
	text-align: center;
	text-transform: uppercase;
}

.abtaz-home-brands__heading::after,
.abtaz-home-products__heading::after {
	background: var(--abtaz-interactive-hover);
	content: '';
	display: block;
	height: 3px;
	margin: 11px auto 0;
	width: 54px;
}

.abtaz-home-brands__intro {
	color: #2d2d2d;
	font-family: inherit;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.65;
	margin: 15px auto 0;
	max-width: 680px;
	text-align: center;
}

.abtaz-home-brands__carousel,
.abtaz-home-products__carousel {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: 42px minmax(0, 1fr) 42px;
}

.abtaz-home-brands__carousel { margin-top: 30px; }
.abtaz-home-products__carousel { margin-top: 34px; }

.abtaz-home-brands[data-nav-needed="false"] .abtaz-home-brands__carousel,
.abtaz-home-products[data-nav-needed="false"] .abtaz-home-products__carousel {
	display: block;
}

.abtaz-home-brands__viewport,
.abtaz-home-products__viewport { overflow: hidden; }

.abtaz-home-brands__track,
.abtaz-home-products__track {
	display: flex;
	list-style: none;
	margin: 0;
	overflow-x: auto;
	padding: 3px 3px 5px;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.abtaz-home-brands__track { gap: 22px; }
.abtaz-home-products__track { gap: 26px; }

.abtaz-home-brands__track::-webkit-scrollbar,
.abtaz-home-products__track::-webkit-scrollbar { display: none; }

.abtaz-home-brands__slide,
.abtaz-home-products__slide {
	box-sizing: border-box;
	display: flex;
	min-width: 0;
	scroll-snap-align: start;
}

.abtaz-home-brands__slide { flex: 0 0 calc((100% - 66px) / 4); }
.abtaz-home-products__slide { flex: 0 0 calc((100% - 52px) / 3); }

.abtaz-home-brands[data-nav-needed="false"] .abtaz-home-brands__track,
.abtaz-home-products[data-nav-needed="false"] .abtaz-home-products__track { justify-content: center; }

.abtaz-home-brands__card,
.abtaz-home-products__card {
	background: #ffffff;
	border: 1px solid #dce3e7;
	border-radius: 3px;
	box-shadow: 0 4px 12px rgba(43, 45, 66, 0.06);
	box-sizing: border-box;
	height: 100%;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	width: 100%;
}

.abtaz-home-brands__card {
	display: flex;
	flex-direction: column;
	min-height: 232px;
	padding: 18px 20px;
}

.abtaz-home-brands__slide--linked .abtaz-home-brands__card:hover,
.abtaz-home-products__card:hover {
	border-color: var(--abtaz-interactive-hover);
	box-shadow: 0 8px 18px rgba(43, 45, 66, 0.11);
	transform: translateY(-2px);
}

.abtaz-home-brands__logo-area {
	align-items: center;
	display: flex;
	height: 68px;
	justify-content: center;
}

.abtaz-home-brands__logo-link,
.abtaz-home-brands__logo-static {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	max-width: 100%;
}

.abtaz-home-brands__logo-static,
.abtaz-home-brands__family-static { cursor: default; }

.abtaz-home-brands__brand-link,
.abtaz-home-brands__family-link { cursor: pointer; }

.abtaz-home-brands__logo {
	display: block;
	height: auto;
	max-height: 68px;
	max-width: 195px;
	object-fit: contain;
	width: auto;
}

.abtaz-home-brands__name {
	color: #2d2d2d;
	font-family: inherit;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.25;
	margin: 10px 0 0;
	text-align: center;
}

.abtaz-home-brands__name-link {
	color: inherit;
	text-decoration: none;
}

.abtaz-home-brands__families {
	border-top: 1px solid #eef2f4;
	display: grid;
	font-family: inherit;
	font-size: 13.5px;
	gap: 2px;
	line-height: 1.35;
	list-style: none;
	margin: 10px 0 0;
	padding: 8px 0 0;
}

.abtaz-home-brands__families li { margin: 0; }

.abtaz-home-brands__family-link,
.abtaz-home-brands__family-static {
	display: inline-block;
	padding-block: 1px;
}

.abtaz-home-brands__family-link {
	color: #007c91;
	text-decoration: none;
}

.abtaz-home-brands__family-link:hover { color: var(--abtaz-interactive-hover); }

.abtaz-home-brands__brand-link:focus:not(:focus-visible),
.abtaz-home-brands__family-link:focus:not(:focus-visible),
.abtaz-home-products__card:focus:not(:focus-visible) {
	outline: none;
	box-shadow: none;
}

.abtaz-home-brands__brand-link:focus-visible,
.abtaz-home-brands__family-link:focus-visible,
.abtaz-home-products__card:focus-visible {
	outline: 2px solid var(--abtaz-interactive-hover);
	outline-offset: 3px;
}

.abtaz-home-brands[data-brand-count="1"] .abtaz-home-brands__slide {
	flex-basis: 270px;
	max-width: 270px;
}

.abtaz-home-brands[data-nav-needed="false"] .abtaz-home-brands__arrow,
.abtaz-home-brands[data-nav-needed="false"] .abtaz-home-brands__dots,
.abtaz-home-products[data-nav-needed="false"] .abtaz-home-products__arrow,
.abtaz-home-products[data-nav-needed="false"] .abtaz-home-products__dots { display: none; }

.abtaz-home-brands__arrow,
.abtaz-home-products__arrow {
	align-items: center;
	background: #ffffff;
	border: 1px solid #dce3e7;
	border-radius: 50%;
	box-shadow: none;
	color: #007c91;
	cursor: pointer;
	display: inline-flex;
	font-size: 18px;
	height: 42px;
	justify-content: center;
	line-height: 1;
	padding: 0;
	width: 42px;
}

.abtaz-home-brands__arrow:not(:disabled):hover,
.abtaz-home-brands__arrow:not(:disabled):active,
.abtaz-home-products__arrow:not(:disabled):hover,
.abtaz-home-products__arrow:not(:disabled):active {
	background: var(--abtaz-interactive-hover);
	border-color: var(--abtaz-interactive-hover);
	color: #212121;
}

.abtaz-home-brands__arrow:focus:not(:focus-visible),
.abtaz-home-products__arrow:focus:not(:focus-visible) { outline: none; box-shadow: none; }

.abtaz-home-brands__arrow:not(:disabled):focus-visible,
.abtaz-home-products__arrow:not(:disabled):focus-visible {
	background: var(--abtaz-interactive-hover);
	border-color: var(--abtaz-interactive-hover);
	color: #212121;
	outline: 2px solid #2b2d42;
	outline-offset: 2px;
}

.abtaz-home-brands__arrow:disabled,
.abtaz-home-products__arrow:disabled {
	background: #ffffff;
	border-color: #dce3e7;
	color: #007c91;
	cursor: default;
	opacity: 0.35;
}

.abtaz-home-brands__dots,
.abtaz-home-products__dots {
	align-items: center;
	display: flex;
	gap: 9px;
	justify-content: center;
	margin-top: 24px;
}

.abtaz-home-brands__dot,
.abtaz-home-products__dot {
	background: #dce3e7;
	border: 0;
	border-radius: 50%;
	box-shadow: none;
	cursor: pointer;
	height: 8px;
	padding: 0;
	width: 8px;
}

.abtaz-home-brands__dot[data-active="true"],
.abtaz-home-products__dot[data-active="true"] { background: var(--abtaz-interactive-hover); }

.abtaz-home-brands__dot:focus:not(:focus-visible),
.abtaz-home-products__dot:focus:not(:focus-visible) { outline: none; box-shadow: none; }

.abtaz-home-brands__dot:focus-visible,
.abtaz-home-products__dot:focus-visible {
	outline: 2px solid var(--abtaz-interactive-hover);
	outline-offset: 2px;
}

.abtaz-home-products__card {
	color: #2d2d2d;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	text-decoration: none;
}

.abtaz-home-products__image {
	aspect-ratio: 3 / 2;
	background: #eef2f4;
	overflow: hidden;
	width: 100%;
}

.abtaz-home-products__image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.abtaz-home-products__body {
	align-items: center;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 22px 22px 24px;
}

.abtaz-home-products__title {
	color: #2d2d2d;
	font-family: inherit;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.3;
	margin: 0;
	min-height: 55px;
	text-align: center;
}

.abtaz-home-products__action {
	background: #007c91;
	border: 1px solid #007c91;
	color: #ffffff;
	display: inline-flex;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0.02em;
	line-height: 1.3;
	margin-top: 16px;
	padding: 12px 22px;
	text-transform: uppercase;
	transition: background-color 180ms ease, border-color 180ms ease;
	white-space: nowrap;
}

.abtaz-home-products__card:hover .abtaz-home-products__action,
.abtaz-home-products__card:focus-visible .abtaz-home-products__action {
	background: var(--abtaz-interactive-hover);
	border-color: var(--abtaz-interactive-hover);
	color: #212121;
}

@media (min-width: 1025px) {
	.abtaz-home-brands__carousel,
	.abtaz-home-products__carousel {
		display: block;
		position: relative;
	}

	.abtaz-home-brands__arrow,
	.abtaz-home-products__arrow {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}

	.abtaz-home-brands__arrow--prev,
	.abtaz-home-products__arrow--prev { left: -56px; }

	.abtaz-home-brands__arrow--next,
	.abtaz-home-products__arrow--next { right: -56px; }
}

@media (max-width: 1024px) {
	.abtaz-home-brands__inner { padding: 47px 25px; }
	.abtaz-home-products__inner { padding: 52px 25px; }
	.abtaz-home-brands__heading,
	.abtaz-home-products__heading { font-size: 27px; }
	.abtaz-home-brands__slide { flex-basis: calc((100% - 22px) / 2); }
	.abtaz-home-products__slide { flex-basis: calc((100% - 24px) / 2); }
	.abtaz-home-products__track { gap: 24px; }
}

@media (max-width: 767px) {
	.abtaz-home-brands__inner { padding: 37px 20px 41px; }
	.abtaz-home-products__inner { padding: 43px 20px; }
	.abtaz-home-brands__heading,
	.abtaz-home-products__heading { font-size: 24px; }
	.abtaz-home-brands__intro { font-size: 16px; line-height: 1.65; }
	.abtaz-home-brands__carousel,
	.abtaz-home-products__carousel {
		gap: 8px;
		grid-template-columns: 38px minmax(0, 1fr) 38px;
	}
	.abtaz-home-brands__carousel { margin-top: 28px; }
	.abtaz-home-products__carousel { margin-top: 31px; }
	.abtaz-home-brands__track,
	.abtaz-home-products__track { gap: 18px; }
	.abtaz-home-brands__slide,
	.abtaz-home-products__slide { flex-basis: 100%; }
	.abtaz-home-brands__card { min-height: 230px; }
	.abtaz-home-products__title { font-size: 20px; }
	.abtaz-home-brands[data-brand-count="1"] .abtaz-home-brands__slide {
		flex-basis: min(270px, 100%);
		max-width: min(270px, 100%);
	}
	.abtaz-home-brands__arrow,
	.abtaz-home-products__arrow { height: 38px; width: 38px; }
}

@media (prefers-reduced-motion: reduce) {
	.abtaz-home-brands__track,
	.abtaz-home-products__track { scroll-behavior: auto; }
	.abtaz-home-brands__card,
	.abtaz-home-products__card { transition: none; }
}
