/* End Custom Fonts CSS */

.elementor-11920 .elementor-element.elementor-element-179d4121 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--gap: 0px 60px;
	--row-gap: 0px;
	--column-gap: 60px;
	--flex-wrap: wrap;
	--margin-top: 40px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-11920 .elementor-element.elementor-element-ce31b6e {
	--display: flex;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-11920 .elementor-element.elementor-element-1176f3c9 {
	--e-image-carousel-slides-to-show: 1;
}

.elementor-11920 .elementor-element.elementor-element-1176f3c9 .elementor-swiper-button.elementor-swiper-button-prev, .elementor-11920 .elementor-element.elementor-element-1176f3c9 .elementor-swiper-button.elementor-swiper-button-next {
	color: var(--e-global-color-b87cdb8);
}

.elementor-11920 .elementor-element.elementor-element-1176f3c9 .elementor-swiper-button.elementor-swiper-button-prev svg, .elementor-11920 .elementor-element.elementor-element-1176f3c9 .elementor-swiper-button.elementor-swiper-button-next svg {
	fill: var(--e-global-color-b87cdb8);
}

.elementor-11920 .elementor-element.elementor-element-1176f3c9 .swiper-pagination-bullet {
	--swiper-pagination-bullet-horizontal-gap: 8px;
	--swiper-pagination-bullet-vertical-gap: 8px;
	width: 11px;
	height: 11px;
	background: #000;
}

.elementor-11920 .elementor-element.elementor-element-1176f3c9 .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image {
	border-style: none;
	border-radius: 25px 25px 25px 25px;
}

.elementor-11920 .elementor-element.elementor-element-62c0039f {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--justify-content: flex-start;
	--align-items: stretch;
	--gap: 18px 0px;
	--row-gap: 18px;
	--column-gap: 0px;
}

.elementor-11920 .elementor-element.elementor-element-51ad21e3 .elementor-heading-title {
	font-family: "Giga Sans", Sans-serif;
	font-size: 4em;
	font-weight: 600;
	letter-spacing: -1.5px;
	color: #333;
}

.elementor-11920 .elementor-element.elementor-element-5b529522 {
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 400;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: -1px;
}

.elementor-11920 .elementor-element.elementor-element-1c2d9c78 {
	--display: flex;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-11920 .elementor-element.elementor-element-7b3a32dc {
	--e-image-carousel-slides-to-show: 1;
}

.elementor-11920 .elementor-element.elementor-element-7b3a32dc .elementor-swiper-button.elementor-swiper-button-prev, .elementor-11920 .elementor-element.elementor-element-7b3a32dc .elementor-swiper-button.elementor-swiper-button-next {
	color: var(--e-global-color-b87cdb8);
}

.elementor-11920 .elementor-element.elementor-element-7b3a32dc .elementor-swiper-button.elementor-swiper-button-prev svg, .elementor-11920 .elementor-element.elementor-element-7b3a32dc .elementor-swiper-button.elementor-swiper-button-next svg {
	fill: var(--e-global-color-b87cdb8);
}

.elementor-11920 .elementor-element.elementor-element-7b3a32dc .swiper-pagination-bullet {
	--swiper-pagination-bullet-horizontal-gap: 8px;
	--swiper-pagination-bullet-vertical-gap: 8px;
	width: 11px;
	height: 11px;
	background: #000;
}

.elementor-11920 .elementor-element.elementor-element-7b3a32dc .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
	background: #c9c9c9;
	opacity: 1;
}

.elementor-11920 .elementor-element.elementor-element-7b3a32dc .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image {
	border-style: none;
	border-radius: 25px 25px 25px 25px;
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child) {
	padding-block-end: calc(.6em / 2);
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child) {
	margin-block-start: calc(.6em / 2);
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item {
	margin-inline: calc(.6em / 2);
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-items.elementor-inline-items {
	margin-inline: calc(-.6em / 2);
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after {
	inset-inline-end: calc(-.6em / 2);
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-icon i {
	transition: color .3s;
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-icon svg {
	transition: fill .3s;
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 {
	--e-icon-list-icon-size: 14px;
	--icon-vertical-offset: 0px;
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-item > a {
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 200;
	line-height: 1em;
	letter-spacing: -1px;
}

.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-text {
	transition: color .3s;
}

.elementor-11920 .elementor-element.elementor-element-3ef13f98 {
	--display: flex;
}

.elementor-11920 .elementor-element.elementor-element-434b907b {
	font-family: "Giga Sans", Sans-serif;
	font-size: 1em;
	font-weight: 200;
}

.elementor-11920 .elementor-element.elementor-element-69da0edb {
	--display: flex;
}

.elementor-11920 .elementor-element.elementor-element-7fa6311f {
	font-family: "Giga Sans", Sans-serif;
	font-size: 1em;
	font-weight: 200;
}

.elementor-11920 .elementor-element.elementor-element-486e5aa {
	--n-accordion-title-font-size: 1.4em;
	--n-accordion-title-icon-order: -1;
	--n-accordion-item-title-space-between: 0px;
	--n-accordion-item-title-distance-from-content: 0px;
	--n-accordion-icon-size: 15px;
}

.elementor-11920 .elementor-element.elementor-element-486e5aa > .elementor-widget-container {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

:where( .elementor-11920 .elementor-element.elementor-element-486e5aa > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text {
	font-family: "Giga Sans", Sans-serif;
	font-weight: 400;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: -1px;
}

.elementor-11920 .elementor-element.elementor-element-3334e2e {
	text-align: center;
	font-family: "Giga Sans", Sans-serif;
	font-size: 1em;
	font-weight: 400;
	text-transform: uppercase;
	font-style: normal;
	line-height: 1em;
	color: var(--e-global-color-1a0d90e);
}

.elementor-11920 .elementor-element.elementor-element-7e14da67 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
}

.elementor-11920 .elementor-element.elementor-element-7e14da67:not(.elementor-motion-effects-element-type-background), .elementor-11920 .elementor-element.elementor-element-7e14da67 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #f7f7f7;
}

.elementor-11920 .elementor-element.elementor-element-518b1c64 {
	--display: flex;
}

.elementor-11920 .elementor-element.elementor-element-518b1c64.e-con {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-11920 .elementor-element.elementor-element-6698faa0 {
	font-family: "Giga Sans", Sans-serif;
	font-weight: 200;
}

.elementor-11920 .elementor-element.elementor-element-2f729e67 {
	font-family: "Giga Sans", Sans-serif;
	font-weight: 200;
}

.elementor-11920 .elementor-element.elementor-element-4a056e4c {
	font-family: "Giga Sans", Sans-serif;
	font-weight: 200;
}

.elementor-11920 .elementor-element.elementor-element-12de1609 {
	--display: flex;
}

.elementor-11920 .elementor-element.elementor-element-207c641 .elementor-button {
	background-color: #159772;
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 400;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 1.2px;
	border-radius: 25px 25px 25px 25px;
	padding: 16px 16px 16px 16px;
}

.elementor-11920 .elementor-element.elementor-element-207c641 .elementor-button-content-wrapper {
	flex-direction: row-reverse;
}

.elementor-11920 .elementor-element.elementor-element-4340d337 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--gap: 0px 22px;
	--row-gap: 0px;
	--column-gap: 22px;
}

.elementor-11920 .elementor-element.elementor-element-1237ded6 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--gap: 0px 20px;
	--row-gap: 0px;
	--column-gap: 20px;
	--flex-wrap: wrap;
	--margin-top: 40px;
	--margin-bottom: 20px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-11920 .elementor-element.elementor-element-2df937c0 .elementor-button {
	background-color: #1c7c14;
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 600;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 1.2px;
	border-radius: 25px 25px 25px 25px;
	padding: 16px 16px 16px 16px;
}

.elementor-11920 .elementor-element.elementor-element-2df937c0 .elementor-button-content-wrapper {
	flex-direction: row;
}

.elementor-11920 .elementor-element.elementor-element-3e7adf58 .elementor-button {
	background-color: var(--e-global-color-accent);
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 600;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 1.2px;
	fill: #1c7c14;
	color: #1c7c14;
	border-style: solid;
	border-width: 2px 2px 2px 2px;
	border-color: #1c7c14;
	border-radius: 25px 25px 25px 25px;
	padding: 16px 16px 16px 16px;
}

.elementor-11920 .elementor-element.elementor-element-3e7adf58 .elementor-button-content-wrapper {
	flex-direction: row;
}

.elementor-11920 .elementor-element.elementor-element-7b9ce883 {
	text-align: center;
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 200;
	text-transform: none;
	line-height: 1.4em;
}

.elementor-11920 .elementor-element.elementor-element-31e2f55b {
	--display: flex;
	--margin-top: 40px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-11920 .elementor-element.elementor-element-6080d15f {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--gap: 0px 22px;
	--row-gap: 0px;
	--column-gap: 22px;
}

.elementor-11920 .elementor-element.elementor-element-738ce6a {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--gap: 0px 20px;
	--row-gap: 0px;
	--column-gap: 20px;
	--flex-wrap: wrap;
	--margin-top: 40px;
	--margin-bottom: 20px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-11920 .elementor-element.elementor-element-69a9daf9 .elementor-button {
	background-color: #1c7c14;
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 400;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 1.2px;
	border-radius: 25px 25px 25px 25px;
	padding: 16px 16px 16px 16px;
}

.elementor-11920 .elementor-element.elementor-element-69a9daf9 .elementor-button-content-wrapper {
	flex-direction: row;
}

.elementor-11920 .elementor-element.elementor-element-5f72975c .elementor-button {
	background-color: var(--e-global-color-accent);
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 400;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 1.2px;
	fill: #1c7c14;
	color: #1c7c14;
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: #1c7c14;
	border-radius: 25px 25px 25px 25px;
	padding: 16px 16px 16px 16px;
}

.elementor-11920 .elementor-element.elementor-element-5f72975c .elementor-button-content-wrapper {
	flex-direction: row;
}

.elementor-11920 .elementor-element.elementor-element-5641c5ef {
	text-align: center;
	font-family: "Giga Sans", Sans-serif;
	font-size: 1em;
	font-weight: 200;
	font-style: normal;
	color: var(--e-global-color-1a0d90e);
}

.elementor-11920 .elementor-element.elementor-element-6092c8fa {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--margin-top: 0px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-11920 .elementor-element.elementor-element-43e08da6 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--margin-top: 80px;
	--margin-bottom: 80px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-11920 .elementor-element.elementor-element-7716a5ea {
	text-align: center;
}

.elementor-11920 .elementor-element.elementor-element-7716a5ea .elementor-heading-title {
	font-family: "Giga Sans", Sans-serif;
	font-size: 2.8em;
	font-weight: 600;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: -1px;
	color: var(--e-global-color-a368c2a);
}

.elementor-11920 .elementor-element.elementor-element-2f728208 .elementor-button {
	background-color: var(--e-global-color-accent);
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.4em;
	font-weight: 400;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 1.2px;
	fill: #008e7a;
	color: #008e7a;
	border-style: solid;
	border-width: 2px 2px 2px 2px;
	border-color: #008e7a;
	border-radius: 30px 30px 30px 30px;
	padding: 16px 40px 16px 40px;
}

.elementor-11920 .elementor-element.elementor-element-66adb3bd {
	--display: flex;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--margin-top: 0px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-11920 .elementor-element.elementor-element-6c6ddd8b .elementor-button {
	background-color: #f7f7f7;
	font-family: "Giga Sans", Sans-serif;
	font-size: 1.6em;
	font-weight: 200;
	text-transform: none;
	font-style: normal;
	line-height: 1em;
	letter-spacing: -1px;
	fill: var(--e-global-color-1a0d90e);
	color: var(--e-global-color-1a0d90e);
	border-radius: 0px 0px 0px 0px;
	padding: 20px 0px 20px 0px;
}

.elementor-11920 .elementor-element.elementor-element-6c6ddd8b {
	width: 100%;
	max-width: 100%;
}

.elementor-11920 .elementor-element.elementor-element-6c6ddd8b > .elementor-widget-container {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

.elementor-11920 .elementor-element.elementor-element-6c6ddd8b.elementor-element {
	--flex-grow: 0;
	--flex-shrink: 0;
}

.elementor-11920 .elementor-element.elementor-element-6c6ddd8b .elementor-button-content-wrapper {
	flex-direction: row-reverse;
}

.elementor-11920 .elementor-element.elementor-element-623b59c0 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--margin-top: 0px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

:root {
	--page-title-display: none;
}

@media (max-width:1024px) {
	.elementor-11920 .elementor-element.elementor-element-179d4121 {
		--justify-content: center;
		--margin-top: 40px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-ce31b6e {
		--justify-content: center;
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-1176f3c9 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-62c0039f {
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-51ad21e3 .elementor-heading-title {
		font-size: 3.4em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5b529522 {
		font-size: 1.2em;
		letter-spacing: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-1c2d9c78 {
		--justify-content: center;
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-item > a {
		font-size: 1.2em;
		letter-spacing: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-434b907b {
		font-size: 1em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-486e5aa {
		--n-accordion-title-font-size: 1.4em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-3334e2e > .elementor-widget-container {
		margin: 20px 0px 0px 0px;
		padding: 0px 40px 0px 40px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-3334e2e {
		font-size: .8em;
		line-height: 1em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-207c641 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-207c641 .elementor-button {
		font-size: 1.2em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-1237ded6 {
		--margin-top: 20px;
		--margin-bottom: 10px;
		--margin-left: 0px;
		--margin-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-1237ded6.e-con {
		--align-self: center;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2df937c0 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2df937c0 .elementor-button {
		font-size: 1.2em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-3e7adf58 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-3e7adf58 .elementor-button {
		font-size: 1.2em;
		padding: 14px 14px 14px 14px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-7b9ce883 {
		font-size: 1.2em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-31e2f55b {
		--margin-top: 20px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-738ce6a {
		--margin-top: 20px;
		--margin-bottom: 10px;
		--margin-left: 0px;
		--margin-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-738ce6a.e-con {
		--align-self: center;
	}
	
	.elementor-11920 .elementor-element.elementor-element-69a9daf9 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-69a9daf9 .elementor-button {
		font-size: 1.2em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5f72975c > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5f72975c .elementor-button {
		font-size: 1.2em;
		padding: 14px 14px 14px 14px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5641c5ef > .elementor-widget-container {
		margin: 20px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6092c8fa {
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 30px;
		--padding-bottom: 30px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-43e08da6 {
		--margin-top: 40px;
		--margin-bottom: 40px;
		--margin-left: 0px;
		--margin-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-7716a5ea .elementor-heading-title {
		font-size: 2.4em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-37098ad6 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2f728208 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2f728208 .elementor-button {
		font-size: 1.2em;
		padding: 14px 14px 14px 14px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6c6ddd8b .elementor-button {
		font-size: 1.6em;
		padding: 14px 0px 14px 0px;
	}
}

@media (max-width:767px) {
	.elementor-11920 .elementor-element.elementor-element-179d4121 {
		--margin-top: 20px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-62c0039f {
		--gap: 10px 10px;
		--row-gap: 10px;
		--column-gap: 10px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-51ad21e3 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-51ad21e3 .elementor-heading-title {
		font-size: 3em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5b529522 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5b529522 {
		font-size: 1.2em;
		line-height: 1.2em;
		letter-spacing: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-36e5a923 > .elementor-widget-container {
		margin: 0px 0px 20px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-11920 .elementor-element.elementor-element-36e5a923 .elementor-icon-list-item > a {
		font-size: 1.2em;
		line-height: 1em;
		letter-spacing: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-486e5aa > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-486e5aa {
		--n-accordion-title-font-size: 1.2em;
	}
	
	:where( .elementor-11920 .elementor-element.elementor-element-486e5aa > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text {
		letter-spacing: 0px;
	}
	
	:where( .elementor-11920 .elementor-element.elementor-element-486e5aa > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item ) > .e-con {
		--border-radius: 0px 0px 0px 0px;
		--padding-top: 0px;
		--padding-right: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-3334e2e > .elementor-widget-container {
		margin: 20px 0px 0px 0px;
		padding: 0px 10px 0px 10px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-3334e2e {
		font-size: .8em;
		line-height: 1em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-7e14da67 {
		--justify-content: center;
		--gap: 0px 10px;
		--row-gap: 0px;
		--column-gap: 10px;
		--margin-top: 20px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 20px;
		--padding-bottom: 20px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-518b1c64 {
		--width: 40%;
		--flex-direction: column;
		--container-widget-width: 100%;
		--container-widget-height: initial;
		--container-widget-flex-grow: 0;
		--container-widget-align-self: initial;
		--flex-wrap-mobile: wrap;
		--gap: 0px 0px;
		--row-gap: 0px;
		--column-gap: 0px;
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-518b1c64.e-con {
		--align-self: center;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6698faa0 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6698faa0.elementor-element {
		--align-self: flex-start;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6698faa0 {
		font-size: 1.1em;
		line-height: 1em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6698faa0 p {
		margin-block-end: 6px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2f729e67 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2f729e67.elementor-element {
		--align-self: flex-start;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2f729e67 {
		font-size: 1.1em;
		line-height: 1em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2f729e67 p {
		margin-block-end: 6px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-4a056e4c > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-4a056e4c.elementor-element {
		--align-self: flex-start;
	}
	
	.elementor-11920 .elementor-element.elementor-element-4a056e4c {
		font-size: 1.1em;
		line-height: 1em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-4a056e4c p {
		margin-block-end: 6px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-12de1609 {
		--width: 50%;
		--justify-content: center;
		--gap: 0px 0px;
		--row-gap: 0px;
		--column-gap: 0px;
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-12de1609.e-con {
		--align-self: center;
	}
	
	.elementor-11920 .elementor-element.elementor-element-207c641 {
		width: 100%;
		max-width: 100%;
	}
	
	.elementor-11920 .elementor-element.elementor-element-207c641 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-207c641 .elementor-button {
		font-size: 1.2em;
		letter-spacing: 1px;
		border-radius: 20px 20px 20px 20px;
		padding: 10px 20px 10px 20px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-1237ded6 {
		--gap: 10px 0px;
		--row-gap: 10px;
		--column-gap: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2df937c0 .elementor-button {
		font-size: 1.2em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-7b9ce883 > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 50px 0px 50px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-7b9ce883 {
		font-size: 1em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6080d15f {
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-738ce6a {
		--gap: 10px 0px;
		--row-gap: 10px;
		--column-gap: 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-69a9daf9 .elementor-button {
		font-size: 1em;
		letter-spacing: -.5px;
		padding: 14px 14px 14px 14px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5f72975c .elementor-button {
		font-size: 1em;
		letter-spacing: -.5px;
		padding: 14px 14px 14px 14px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5641c5ef > .elementor-widget-container {
		margin: 20px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-5641c5ef {
		font-size: .8em;
		line-height: 1.2em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6092c8fa {
		--margin-top: 0px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
		--padding-top: 40px;
		--padding-bottom: 40px;
		--padding-left: 10px;
		--padding-right: 10px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-7716a5ea > .elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 0px 20px 0px 20px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-7716a5ea .elementor-heading-title {
		font-size: 2em;
	}
	
	.elementor-11920 .elementor-element.elementor-element-2f728208 .elementor-button {
		font-size: 1em;
		letter-spacing: -.5px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-6c6ddd8b .elementor-button {
		font-size: 1.2em;
		letter-spacing: -.5px;
		padding: 14px 0px 14px 0px;
	}
}

@media (min-width:768px) {
	.elementor-11920 .elementor-element.elementor-element-179d4121 {
		--content-width: 1280px;
	}
	
	.elementor-11920 .elementor-element.elementor-element-ce31b6e {
		--width: 50%;
	}
	
	.elementor-11920 .elementor-element.elementor-element-62c0039f {
		--width: 45%;
	}
	
	.elementor-11920 .elementor-element.elementor-element-1c2d9c78 {
		--width: 50%;
	}
}

@media (max-width:1024px) and (min-width:768px) {
	.elementor-11920 .elementor-element.elementor-element-ce31b6e {
		--width: 44%;
	}
	
	.elementor-11920 .elementor-element.elementor-element-62c0039f {
		--width: 44%;
	}
	
	.elementor-11920 .elementor-element.elementor-element-1c2d9c78 {
		--width: 44%;
	}
}

/* Start custom CSS for image-carousel, class: .elementor-element-1176f3c9 */

/* =========================================================
   CARRUSEL VISIBLE EN LA PÁGINA
   ========================================================= */

/* Color automático asignado por boton-inicio-producto.js */
.carrusel-producto {
	--carousel-product-color: var(--current-product-color, #159772);
}

.carrusel-producto .swiper-slide img, .carrusel-producto .elementor-image-carousel img {
	display: block;
	width: 100% !important;
	height: auto;
	aspect-ratio: 1/1;
	object-fit: cover;
	border-radius: 25px !important;
	cursor: zoom-in;
	user-select: none;
	-webkit-user-select: none;
	-webkit-user-drag: none;
}

.carrusel-producto .swiper-slide a {
	display: block;
	width: 100%;
	overflow: hidden;
	border-radius: 25px;
	text-decoration: none;
}

.carrusel-producto .swiper-pagination-bullet {
	width: 11px !important;
	height: 11px !important;
	margin: 0 5px !important;
	background: #c9c9c9 !important;
	background: color-mix(in srgb, var(--carousel-product-color) 28%, transparent) !important;
	opacity: 1 !important;
}

.carrusel-producto .swiper-pagination-bullet-active {
	background: var(--carousel-product-color) !important;
	border-color: var(--carousel-product-color) !important;
}

/* Flechas del carrusel visible con el color automático del producto */
.carrusel-producto :is(
  .elementor-swiper-button,
  .swiper-button-prev,
  .swiper-button-next,
  .rkit-swiper-button-prev,
  .rkit-swiper-button-next
) {
	color: var(--carousel-product-color) !important;
	border-color: var(--carousel-product-color) !important;
	transition: color .25s ease, border-color .25s ease, opacity .25s ease !important;
}

.carrusel-producto :is(
  .elementor-swiper-button,
  .swiper-button-prev,
  .swiper-button-next,
  .rkit-swiper-button-prev,
  .rkit-swiper-button-next
) :is(i, svg, path), .carrusel-producto :is(
  .elementor-swiper-button,
  .swiper-button-prev,
  .swiper-button-next,
  .rkit-swiper-button-prev,
  .rkit-swiper-button-next
)::before, .carrusel-producto :is(
  .elementor-swiper-button,
  .swiper-button-prev,
  .swiper-button-next,
  .rkit-swiper-button-prev,
  .rkit-swiper-button-next
)::after {
	color: inherit !important;
	fill: currentColor !important;
	stroke: currentColor !important;
}

.carrusel-producto :is(
  .elementor-swiper-button,
  .swiper-button-prev,
  .swiper-button-next,
  .rkit-swiper-button-prev,
  .rkit-swiper-button-next
):focus-visible {
	outline: 3px solid color-mix(in srgb, var(--carousel-product-color) 35%, transparent) !important;
	outline-offset: 4px;
}

/* =========================================================
   VISOR PHOTOSWIPE
   ========================================================= */
body .pswp {
	--pswp-bg: rgba(7, 12, 18, .96);
	--pswp-icon-color: #fff;
	--pswp-icon-color-secondary: transparent;
	z-index: 9999999 !important;
	font-family: inherit !important;
}

/* Evita que Elementor quede por encima. */
body .dialog-lightbox-widget, body .elementor-lightbox {
	z-index: 999998 !important;
}

/* =========================================================
   BARRA SUPERIOR
   ========================================================= */
body .pswp .pswp__top-bar {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: 56px !important;
	padding: 8px !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

/* =========================================================
   CONTADOR DE IMÁGENES
   ========================================================= */
body .pswp .pswp__counter {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 54px !important;
	height: 38px !important;
	margin: 0 auto 0 0 !important;
	padding: 0 13px !important;
	color: #fff !important;
	background: rgba(8, 16, 25, .78) !important;
	border: 1px solid rgba(255, 255, 255, .16) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 38px !important;
	letter-spacing: .02em !important;
	opacity: 1 !important;
}

/* =========================================================
   BOTONES DE PHOTOSWIPE
   ========================================================= */
body .pswp button.pswp__button {
	appearance: none !important;
	-webkit-appearance: none !important;
	box-sizing: border-box !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	margin: 0 0 0 6px !important;
	padding: 0 !important;
	color: #fff !important;
	background: rgba(255, 255, 255, .1) !important;
	background-image: none !important;
	border: 1px solid rgba(255, 255, 255, .12) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	outline: none !important;
	text-decoration: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	cursor: pointer !important;
	transition: background-color .2s ease, border-color .2s ease, transform .2s ease !important;
}

body .pswp button.pswp__button.nitro-lazy {
	background-image: none !important;
}

/* Evita iconos añadidos por el tema. */
body .pswp button.pswp__button::before, body .pswp button.pswp__button::after {
	content: none !important;
	display: none !important;
}

body .pswp button.pswp__button:hover {
	color: #fff !important;
	background: rgba(255, 255, 255, .2) !important;
	border-color: rgba(255, 255, 255, .3) !important;
	transform: translateY(-1px) !important;
}

body .pswp button.pswp__button:active {
	transform: scale(.94) !important;
}

body .pswp button.pswp__button:focus-visible {
	outline: 2px solid #fff !important;
	outline-offset: 3px !important;
}

body .pswp button.pswp__button--zoom, body .pswp button.pswp__button--close {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	background: rgba(8, 16, 25, .78) !important;
	border-color: rgba(255, 255, 255, .16) !important;
}

body .pswp button.pswp__button--zoom:hover {
	background: rgba(255, 255, 255, .18) !important;
}

body .pswp button.pswp__button--close:hover {
	background: rgba(190, 36, 46, .9) !important;
}

body .pswp .pswp__button .pswp__icn {
	position: static !important;
	display: block !important;
	width: 22px !important;
	height: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
	fill: currentColor !important;
	transform: none !important;
}

body .pswp .pswp__icn-shadow {
	display: none !important;
}

/* =========================================================
   FLECHAS LATERALES
   ========================================================= */
body .pswp button.pswp__button--arrow--prev, body .pswp button.pswp__button--arrow--next {
	position: absolute !important;
	top: 50% !important;
	z-index: 10000001 !important;
	width: 50px !important;
	min-width: 50px !important;
	max-width: 50px !important;
	height: 50px !important;
	min-height: 50px !important;
	max-height: 50px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: rgba(8, 16, 25, .72) !important;
	border-color: rgba(255, 255, 255, .18) !important;
	border-radius: 50% !important;
	box-shadow: 0 5px 18px rgba(0, 0, 0, .25) !important;
	overflow: hidden !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transform: translateY(-50%) !important;
}

body .pswp button.pswp__button--arrow--prev {
	left: 20px !important;
	right: auto !important;
}

body .pswp button.pswp__button--arrow--next {
	right: 20px !important;
	left: auto !important;
}

body .pswp button.pswp__button--arrow--prev:hover, body .pswp button.pswp__button--arrow--next:hover {
	background: rgba(8, 16, 25, .94) !important;
	border-color: rgba(255, 255, 255, .45) !important;
	transform: translateY(-50%) scale(1.05) !important;
}

body .pswp button.pswp__button--arrow--prev .pswp__icn, body .pswp button.pswp__button--arrow--next .pswp__icn {
	width: 27px !important;
	height: 27px !important;
	transform-origin: center !important;
}

body .pswp button.pswp__button--arrow--next .pswp__icn {
	transform: scaleX(-1) !important;
}

/* =========================================================
   IMAGEN Y CURSORES
   ========================================================= */
body .pswp .pswp__img {
	user-select: none !important;
	-webkit-user-select: none !important;
	-webkit-user-drag: none !important;
}

body .pswp:not(.pswp--zoomed-in) .pswp__img {
	cursor: zoom-in !important;
}

body .pswp.pswp--zoomed-in .pswp__img {
	cursor: crosshair !important;
}

/* =========================================================
   TABLETA
   ========================================================= */
@media (max-width: 1024px) {
	body .pswp .pswp__top-bar {
		height: 54px !important;
		padding: 7px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev, body .pswp button.pswp__button--arrow--next {
		width: 46px !important;
		min-width: 46px !important;
		max-width: 46px !important;
		height: 46px !important;
		min-height: 46px !important;
		max-height: 46px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev {
		left: 12px !important;
	}
	
	body .pswp button.pswp__button--arrow--next {
		right: 12px !important;
	}
}

/* =========================================================
   CELULAR
   ========================================================= */
@media (max-width: 767px) {
	.carrusel-producto .swiper-slide img, .carrusel-producto .elementor-image-carousel img, .carrusel-producto .swiper-slide a {
		border-radius: 18px !important;
	}
	
	body .pswp .pswp__top-bar {
		height: 50px !important;
		padding: 6px !important;
	}
	
	body .pswp .pswp__counter {
		min-width: 48px !important;
		height: 36px !important;
		padding: 0 10px !important;
		border-radius: 10px !important;
		font-size: 13px !important;
		line-height: 36px !important;
	}
	
	body .pswp button.pswp__button {
		width: 38px !important;
		min-width: 38px !important;
		max-width: 38px !important;
		height: 38px !important;
		min-height: 38px !important;
		max-height: 38px !important;
		margin-left: 4px !important;
		border-radius: 10px !important;
	}
	
	body .pswp button.pswp__button--zoom, body .pswp button.pswp__button--close {
		width: 36px !important;
		min-width: 36px !important;
		max-width: 36px !important;
		height: 36px !important;
		min-height: 36px !important;
		max-height: 36px !important;
	}
	
	body .pswp .pswp__button .pswp__icn {
		width: 20px !important;
		height: 20px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev, body .pswp button.pswp__button--arrow--next {
		width: 42px !important;
		min-width: 42px !important;
		max-width: 42px !important;
		height: 42px !important;
		min-height: 42px !important;
		max-height: 42px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev {
		left: 8px !important;
	}
	
	body .pswp button.pswp__button--arrow--next {
		right: 8px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev .pswp__icn, body .pswp button.pswp__button--arrow--next .pswp__icn {
		width: 23px !important;
		height: 23px !important;
	}
}

/* End custom CSS */

/* Start custom CSS for heading, class: .elementor-element-51ad21e3 */
.nombre-producto .nombre-acento {
	color: var(--color-producto);
}

/* End custom CSS */

/* Start custom CSS for text-editor, class: .elementor-element-5b529522 */
.ficha-producto .descripcion-producto p {
	margin: 0;
}

/* End custom CSS */

/* Start custom CSS for image-carousel, class: .elementor-element-7b3a32dc */

/* =========================================================
   CARRUSEL VISIBLE EN LA PÁGINA
   ========================================================= */
.carrusel-producto .swiper-slide img, .carrusel-producto .elementor-image-carousel img {
	display: block;
	width: 100% !important;
	height: auto;
	aspect-ratio: 1/1;
	object-fit: cover;
	border-radius: 25px !important;
	cursor: zoom-in;
	user-select: none;
	-webkit-user-select: none;
	-webkit-user-drag: none;
}

.carrusel-producto .swiper-slide a {
	display: block;
	width: 100%;
	overflow: hidden;
	border-radius: 25px;
	text-decoration: none;
}

.carrusel-producto .swiper-pagination-bullet {
	width: 11px !important;
	height: 11px !important;
	margin: 0 5px !important;
	background: #c9c9c9 !important;
	opacity: 1 !important;
}

.carrusel-producto .swiper-pagination-bullet-active {
	background: #001f47 !important;
}

/* =========================================================
   VISOR PHOTOSWIPE
   ========================================================= */
body .pswp {
	--pswp-bg: rgba(7, 12, 18, .96);
	--pswp-icon-color: #fff;
	--pswp-icon-color-secondary: transparent;
	z-index: 9999999 !important;
	font-family: inherit !important;
}

/* Evita que Elementor quede por encima. */
body .dialog-lightbox-widget, body .elementor-lightbox {
	z-index: 999998 !important;
}

/* =========================================================
   BARRA SUPERIOR
   ========================================================= */
body .pswp .pswp__top-bar {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: 56px !important;
	padding: 8px !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

/* =========================================================
   CONTADOR DE IMÁGENES
   ========================================================= */
body .pswp .pswp__counter {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 54px !important;
	height: 38px !important;
	margin: 0 auto 0 0 !important;
	padding: 0 13px !important;
	color: #fff !important;
	background: rgba(8, 16, 25, .78) !important;
	border: 1px solid rgba(255, 255, 255, .16) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 38px !important;
	letter-spacing: .02em !important;
	opacity: 1 !important;
}

/* =========================================================
   BOTONES DE PHOTOSWIPE
   ========================================================= */
body .pswp button.pswp__button {
	appearance: none !important;
	-webkit-appearance: none !important;
	box-sizing: border-box !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	margin: 0 0 0 6px !important;
	padding: 0 !important;
	color: #fff !important;
	background: rgba(255, 255, 255, .1) !important;
	background-image: none !important;
	border: 1px solid rgba(255, 255, 255, .12) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	outline: none !important;
	text-decoration: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	cursor: pointer !important;
	transition: background-color .2s ease, border-color .2s ease, transform .2s ease !important;
}

body .pswp button.pswp__button.nitro-lazy {
	background-image: none !important;
}

/* Evita iconos añadidos por el tema. */
body .pswp button.pswp__button::before, body .pswp button.pswp__button::after {
	content: none !important;
	display: none !important;
}

body .pswp button.pswp__button:hover {
	color: #fff !important;
	background: rgba(255, 255, 255, .2) !important;
	border-color: rgba(255, 255, 255, .3) !important;
	transform: translateY(-1px) !important;
}

body .pswp button.pswp__button:active {
	transform: scale(.94) !important;
}

body .pswp button.pswp__button:focus-visible {
	outline: 2px solid #fff !important;
	outline-offset: 3px !important;
}

body .pswp button.pswp__button--zoom, body .pswp button.pswp__button--close {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	background: rgba(8, 16, 25, .78) !important;
	border-color: rgba(255, 255, 255, .16) !important;
}

body .pswp button.pswp__button--zoom:hover {
	background: rgba(255, 255, 255, .18) !important;
}

body .pswp button.pswp__button--close:hover {
	background: rgba(190, 36, 46, .9) !important;
}

body .pswp .pswp__button .pswp__icn {
	position: static !important;
	display: block !important;
	width: 22px !important;
	height: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
	fill: currentColor !important;
	transform: none !important;
}

body .pswp .pswp__icn-shadow {
	display: none !important;
}

/* =========================================================
   FLECHAS LATERALES
   ========================================================= */
body .pswp button.pswp__button--arrow--prev, body .pswp button.pswp__button--arrow--next {
	position: absolute !important;
	top: 50% !important;
	z-index: 10000001 !important;
	width: 50px !important;
	min-width: 50px !important;
	max-width: 50px !important;
	height: 50px !important;
	min-height: 50px !important;
	max-height: 50px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: rgba(8, 16, 25, .72) !important;
	border-color: rgba(255, 255, 255, .18) !important;
	border-radius: 50% !important;
	box-shadow: 0 5px 18px rgba(0, 0, 0, .25) !important;
	overflow: hidden !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transform: translateY(-50%) !important;
}

body .pswp button.pswp__button--arrow--prev {
	left: 20px !important;
	right: auto !important;
}

body .pswp button.pswp__button--arrow--next {
	right: 20px !important;
	left: auto !important;
}

body .pswp button.pswp__button--arrow--prev:hover, body .pswp button.pswp__button--arrow--next:hover {
	background: rgba(8, 16, 25, .94) !important;
	border-color: rgba(255, 255, 255, .45) !important;
	transform: translateY(-50%) scale(1.05) !important;
}

body .pswp button.pswp__button--arrow--prev .pswp__icn, body .pswp button.pswp__button--arrow--next .pswp__icn {
	width: 27px !important;
	height: 27px !important;
	transform-origin: center !important;
}

body .pswp button.pswp__button--arrow--next .pswp__icn {
	transform: scaleX(-1) !important;
}

/* =========================================================
   IMAGEN Y CURSORES
   ========================================================= */
body .pswp .pswp__img {
	user-select: none !important;
	-webkit-user-select: none !important;
	-webkit-user-drag: none !important;
}

body .pswp:not(.pswp--zoomed-in) .pswp__img {
	cursor: zoom-in !important;
}

body .pswp.pswp--zoomed-in .pswp__img {
	cursor: crosshair !important;
}

/* =========================================================
   TABLETA
   ========================================================= */
@media (max-width: 1024px) {
	body .pswp .pswp__top-bar {
		height: 54px !important;
		padding: 7px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev, body .pswp button.pswp__button--arrow--next {
		width: 46px !important;
		min-width: 46px !important;
		max-width: 46px !important;
		height: 46px !important;
		min-height: 46px !important;
		max-height: 46px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev {
		left: 12px !important;
	}
	
	body .pswp button.pswp__button--arrow--next {
		right: 12px !important;
	}
}

/* =========================================================
   CELULAR
   ========================================================= */
@media (max-width: 767px) {
	.carrusel-producto .swiper-slide img, .carrusel-producto .elementor-image-carousel img, .carrusel-producto .swiper-slide a {
		border-radius: 18px !important;
	}
	
	body .pswp .pswp__top-bar {
		height: 50px !important;
		padding: 6px !important;
	}
	
	body .pswp .pswp__counter {
		min-width: 48px !important;
		height: 36px !important;
		padding: 0 10px !important;
		border-radius: 10px !important;
		font-size: 13px !important;
		line-height: 36px !important;
	}
	
	body .pswp button.pswp__button {
		width: 38px !important;
		min-width: 38px !important;
		max-width: 38px !important;
		height: 38px !important;
		min-height: 38px !important;
		max-height: 38px !important;
		margin-left: 4px !important;
		border-radius: 10px !important;
	}
	
	body .pswp button.pswp__button--zoom, body .pswp button.pswp__button--close {
		width: 36px !important;
		min-width: 36px !important;
		max-width: 36px !important;
		height: 36px !important;
		min-height: 36px !important;
		max-height: 36px !important;
	}
	
	body .pswp .pswp__button .pswp__icn {
		width: 20px !important;
		height: 20px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev, body .pswp button.pswp__button--arrow--next {
		width: 42px !important;
		min-width: 42px !important;
		max-width: 42px !important;
		height: 42px !important;
		min-height: 42px !important;
		max-height: 42px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev {
		left: 8px !important;
	}
	
	body .pswp button.pswp__button--arrow--next {
		right: 8px !important;
	}
	
	body .pswp button.pswp__button--arrow--prev .pswp__icn, body .pswp button.pswp__button--arrow--next .pswp__icn {
		width: 23px !important;
		height: 23px !important;
	}
}

/* End custom CSS */

/* Start custom CSS for icon-list, class: .elementor-element-36e5a923 */
.ficha-producto .beneficios-producto .elementor-icon-list-item {
	align-items: flex-start !important;
}

.ficha-producto .beneficios-producto .elementor-icon-list-icon {
	margin-top: .2em;
}

.ficha-producto .beneficios-producto .elementor-icon-list-text {
	line-height: inherit;
}

.ficha-producto .beneficios-producto .elementor-icon-list-icon i, .ficha-producto .beneficios-producto .elementor-icon-list-icon svg {
	color: var(--color-producto) !important;
	fill: var(--color-producto) !important;
}

/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-3ef13f98 */

/* =========================================================
   COLORES GENERALES DE LA PLANTILLA
   ========================================================= */
.ficha-producto {
	--color-producto: #009982;
	--color-producto-oscuro: #006f63;
	--color-producto-suave: #f2faf8;
}

/* Variantes */
.ficha-producto.producto-verde {
	--color-producto: #009982;
	--color-producto-oscuro: #006f63;
	--color-producto-suave: #f2faf8;
}

.ficha-producto.producto-azul {
	--color-producto: #0084ff;
	--color-producto-oscuro: #001f47;
	--color-producto-suave: #f2f8ff;
}

.ficha-producto.producto-naranja {
	--color-producto: #e87924;
	--color-producto-oscuro: #9e4300;
	--color-producto-suave: #fff7f0;
}

.ficha-producto.producto-morado {
	--color-producto: #7651a8;
	--color-producto-oscuro: #49306e;
	--color-producto-suave: #f7f3fb;
}

/* =========================================================
   ACORDEÓN CLÁSICO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .elementor-tab-title {
	color: var(--color-producto) !important;
}

/* Título abierto o hover */
.ficha-producto .acordeon-producto .elementor-tab-title:hover, .ficha-producto .acordeon-producto .elementor-tab-title.elementor-active {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Icono clásico */
.ficha-producto .acordeon-producto .elementor-accordion-icon, .ficha-producto .acordeon-producto .elementor-accordion-icon i {
	color: var(--color-producto) !important;
}

/* SVG clásico */
.ficha-producto .acordeon-producto .elementor-accordion-icon svg {
	color: var(--color-producto) !important;
	fill: var(--color-producto) !important;
}

.ficha-producto .acordeon-producto .elementor-accordion-icon svg path {
	fill: var(--color-producto) !important;
	stroke: var(--color-producto) !important;
}

/* =========================================================
   ACORDEÓN NUEVO / ANIDADO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title {
	color: var(--color-producto) !important;
}

/* Texto interno del título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-text {
	color: var(--color-producto) !important;
}

/* Título abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Texto abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-text {
	color: var(--color-producto-oscuro) !important;
}

/* Hover */
.ficha-producto .acordeon-producto .e-n-accordion-item-title:hover {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Icono nuevo */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon {
	color: var(--color-producto) !important;
}

/* SVG del icono nuevo */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg {
	color: var(--color-producto) !important;
	fill: var(--color-producto) !important;
}

/* Algunos iconos utilizan stroke */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg polyline {
	fill: none !important;
	stroke: var(--color-producto) !important;
}

/* Icono cuando está abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg {
	color: var(--color-producto-oscuro) !important;
}

.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg polyline {
	stroke: var(--color-producto-oscuro) !important;
}

/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-3ef13f98 */

/* =========================================================
   COLORES GENERALES DE LA PLANTILLA
   ========================================================= */
.ficha-producto {
	--color-producto: #009982;
	--color-producto-oscuro: #006f63;
	--color-producto-suave: #f2faf8;
}

/* Variantes */
.ficha-producto.producto-verde {
	--color-producto: #009982;
	--color-producto-oscuro: #006f63;
	--color-producto-suave: #f2faf8;
}

.ficha-producto.producto-azul {
	--color-producto: #0084ff;
	--color-producto-oscuro: #001f47;
	--color-producto-suave: #f2f8ff;
}

.ficha-producto.producto-naranja {
	--color-producto: #e87924;
	--color-producto-oscuro: #9e4300;
	--color-producto-suave: #fff7f0;
}

.ficha-producto.producto-morado {
	--color-producto: #7651a8;
	--color-producto-oscuro: #49306e;
	--color-producto-suave: #f7f3fb;
}

/* =========================================================
   ACORDEÓN CLÁSICO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .elementor-tab-title {
	color: var(--color-producto) !important;
}

/* Título abierto o hover */
.ficha-producto .acordeon-producto .elementor-tab-title:hover, .ficha-producto .acordeon-producto .elementor-tab-title.elementor-active {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Icono clásico */
.ficha-producto .acordeon-producto .elementor-accordion-icon, .ficha-producto .acordeon-producto .elementor-accordion-icon i {
	color: var(--color-producto) !important;
}

/* SVG clásico */
.ficha-producto .acordeon-producto .elementor-accordion-icon svg {
	color: var(--color-producto) !important;
	fill: var(--color-producto) !important;
}

.ficha-producto .acordeon-producto .elementor-accordion-icon svg path {
	fill: var(--color-producto) !important;
	stroke: var(--color-producto) !important;
}

/* =========================================================
   ACORDEÓN NUEVO / ANIDADO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title {
	color: var(--color-producto) !important;
}

/* Texto interno del título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-text {
	color: var(--color-producto) !important;
}

/* Título abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Texto abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-text {
	color: var(--color-producto-oscuro) !important;
}

/* Hover */
.ficha-producto .acordeon-producto .e-n-accordion-item-title:hover {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Icono nuevo */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon {
	color: var(--color-producto) !important;
}

/* SVG del icono nuevo */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg {
	color: var(--color-producto) !important;
	fill: var(--color-producto) !important;
}

/* Algunos iconos utilizan stroke */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg polyline {
	fill: none !important;
	stroke: var(--color-producto) !important;
}

/* Icono cuando está abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg {
	color: var(--color-producto-oscuro) !important;
}

.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg polyline {
	stroke: var(--color-producto-oscuro) !important;
}

/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-3ef13f98 */

/* =========================================================
   COLORES GENERALES DE LA PLANTILLA
   ========================================================= */
.ficha-producto {
	--color-producto: #009982;
	--color-producto-oscuro: #006f63;
	--color-producto-suave: #f2faf8;
}

/* Variantes */
.ficha-producto.producto-verde {
	--color-producto: #009982;
	--color-producto-oscuro: #006f63;
	--color-producto-suave: #f2faf8;
}

.ficha-producto.producto-azul {
	--color-producto: #0084ff;
	--color-producto-oscuro: #001f47;
	--color-producto-suave: #f2f8ff;
}

.ficha-producto.producto-naranja {
	--color-producto: #e87924;
	--color-producto-oscuro: #9e4300;
	--color-producto-suave: #fff7f0;
}

.ficha-producto.producto-morado {
	--color-producto: #7651a8;
	--color-producto-oscuro: #49306e;
	--color-producto-suave: #f7f3fb;
}

/* =========================================================
   ACORDEÓN CLÁSICO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .elementor-tab-title {
	color: var(--color-producto) !important;
}

/* Título abierto o hover */
.ficha-producto .acordeon-producto .elementor-tab-title:hover, .ficha-producto .acordeon-producto .elementor-tab-title.elementor-active {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Icono clásico */
.ficha-producto .acordeon-producto .elementor-accordion-icon, .ficha-producto .acordeon-producto .elementor-accordion-icon i {
	color: var(--color-producto) !important;
}

/* SVG clásico */
.ficha-producto .acordeon-producto .elementor-accordion-icon svg {
	color: var(--color-producto) !important;
	fill: var(--color-producto) !important;
}

.ficha-producto .acordeon-producto .elementor-accordion-icon svg path {
	fill: var(--color-producto) !important;
	stroke: var(--color-producto) !important;
}

/* =========================================================
   ACORDEÓN NUEVO / ANIDADO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title {
	color: var(--color-producto) !important;
}

/* Texto interno del título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-text {
	color: var(--color-producto) !important;
}

/* Título abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Texto abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-text {
	color: var(--color-producto-oscuro) !important;
}

/* Hover */
.ficha-producto .acordeon-producto .e-n-accordion-item-title:hover {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Icono nuevo */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon {
	color: var(--color-producto) !important;
}

/* SVG del icono nuevo */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg {
	color: var(--color-producto) !important;
	fill: var(--color-producto) !important;
}

/* Algunos iconos utilizan stroke */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg polyline {
	fill: none !important;
	stroke: var(--color-producto) !important;
}

/* Icono cuando está abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg {
	color: var(--color-producto-oscuro) !important;
}

.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg polyline {
	stroke: var(--color-producto-oscuro) !important;
}

/* End custom CSS */

/* Start custom CSS for nested-accordion, class: .elementor-element-486e5aa */

/* =========================================================
   ACORDEÓN CLÁSICO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .elementor-tab-title {
	color: var(--color-producto) !important;
}

/* Título abierto o al pasar el cursor */
.ficha-producto .acordeon-producto .elementor-tab-title:hover, .ficha-producto .acordeon-producto .elementor-tab-title.elementor-active {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Contenedor del icono */
.ficha-producto .acordeon-producto .elementor-accordion-icon {
	color: var(--color-producto) !important;
}

/* Iconos abierto y cerrado */
.ficha-producto .acordeon-producto .elementor-accordion-icon .elementor-accordion-icon-opened, .ficha-producto .acordeon-producto .elementor-accordion-icon .elementor-accordion-icon-closed, .ficha-producto .acordeon-producto .elementor-accordion-icon i {
	color: inherit !important;
}

/* SVG del icono */
.ficha-producto .acordeon-producto .elementor-accordion-icon svg {
	color: inherit !important;
	fill: currentColor !important;
	stroke: currentColor !important;
}

/* Formas internas del SVG */
.ficha-producto .acordeon-producto .elementor-accordion-icon svg path, .ficha-producto .acordeon-producto .elementor-accordion-icon svg line, .ficha-producto .acordeon-producto .elementor-accordion-icon svg polyline, .ficha-producto .acordeon-producto .elementor-accordion-icon svg polygon, .ficha-producto .acordeon-producto .elementor-accordion-icon svg circle, .ficha-producto .acordeon-producto .elementor-accordion-icon svg rect {
	stroke: currentColor !important;
}

/* Evita rellenar los chevrons o iconos de línea */
.ficha-producto .acordeon-producto .elementor-accordion-icon svg path, .ficha-producto .acordeon-producto .elementor-accordion-icon svg line, .ficha-producto .acordeon-producto .elementor-accordion-icon svg polyline {
	fill: none !important;
}

/* Icono cuando está abierto */
.ficha-producto .acordeon-producto .elementor-tab-title.elementor-active .elementor-accordion-icon {
	color: var(--color-producto-oscuro) !important;
}

/* Icono al pasar el cursor */
.ficha-producto .acordeon-producto .elementor-tab-title:hover .elementor-accordion-icon {
	color: var(--color-producto-oscuro) !important;
}

/* =========================================================
   ACORDEÓN NUEVO / ANIDADO DE ELEMENTOR
   ========================================================= */

/* Título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title {
	color: var(--color-producto) !important;
}

/* Texto interno del título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-text {
	color: var(--color-producto) !important;
}

/* Título abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Texto abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-text {
	color: var(--color-producto-oscuro) !important;
}

/* Título al pasar el cursor */
.ficha-producto .acordeon-producto .e-n-accordion-item-title:hover {
	color: var(--color-producto-oscuro) !important;
	background-color: var(--color-producto-suave) !important;
}

/* Texto al pasar el cursor */
.ficha-producto .acordeon-producto .e-n-accordion-item-title:hover .e-n-accordion-item-title-text {
	color: var(--color-producto-oscuro) !important;
}

/* =========================================================
   ICONOS DEL ACORDEÓN NUEVO
   ========================================================= */

/* Contenedor del icono */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon {
	color: var(--color-producto) !important;
}

/* Iconos de estado abierto y cerrado */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon .e-opened, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon .e-closed {
	color: inherit !important;
}

/* Iconos de fuente */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon i {
	color: inherit !important;
}

/* SVG */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg {
	color: inherit !important;
	fill: currentColor !important;
	stroke: currentColor !important;
}

/* Formas internas del SVG */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg polyline, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg polygon, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg circle, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg rect {
	stroke: currentColor !important;
}

/* Evita que los chevrons se rellenen */
.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item-title-icon svg polyline {
	fill: none !important;
}

/* Icono cuando está abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon {
	color: var(--color-producto-oscuro) !important;
}

/* Icono al pasar el cursor */
.ficha-producto .acordeon-producto .e-n-accordion-item-title:hover .e-n-accordion-item-title-icon {
	color: var(--color-producto-oscuro) !important;
}

/* Fuerza el color oscuro en los SVG del icono abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg {
	color: var(--color-producto-oscuro) !important;
	stroke: currentColor !important;
}

/* Fuerza el color oscuro en las formas del icono abierto */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg path, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg line, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg polyline, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg polygon, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg circle, .ficha-producto .acordeon-producto .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg rect {
	stroke: currentColor !important;
}

/* =========================================================
   CONTENIDO INTERNO ALINEADO DEL ACORDEÓN
   ========================================================= */
.ficha-producto .acordeon-producto .contenido-acordeon-producto {
	margin-left: 40px;
	margin-right: 12px;
	padding: 8px 18px 18px 18px;
	background-color: #fff;
	border-right: 1px solid #dfe5e8;
	border-bottom: 1px solid #dfe5e8;
	border-left: 1px solid #dfe5e8;
	border-radius: 0 0 18px 18px;
}

/* Elimina márgenes internos del widget */
.ficha-producto .acordeon-producto .contenido-acordeon-producto .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

/* Texto */
.ficha-producto .acordeon-producto .contenido-acordeon-producto p {
	margin: 0 !important;
}

/* Tablet */
@media (max-width: 1024px) {
	.ficha-producto .acordeon-producto .contenido-acordeon-producto {
		margin-left: 42px;
		margin-right: 10px;
		padding: 8px 16px 16px 16px;
	}
}

/* Móvil */
@media (max-width: 767px) {
	.ficha-producto .acordeon-producto .contenido-acordeon-producto {
		margin-left: 34px;
		margin-right: 6px;
		padding: 8px 14px 15px 14px;
		border-radius: 0 0 14px 14px;
	}
}

.ficha-producto .acordeon-producto .e-n-accordion-item-title {
	padding-left: 14px !important;
	padding-right: 16px !important;
}

.ficha-producto .acordeon-producto .e-n-accordion-item-title-icon {
	margin-right: 10px !important;
}

/* Quitar bordes de los títulos del acordeón anidado */
.ficha-producto .acordeon-producto .e-n-accordion-item {
	border: none !important;
	box-shadow: none !important;
}

.ficha-producto .acordeon-producto .e-n-accordion-item-title {
	border: none !important;
	border-top: none !important;
	border-right: none !important;
	border-bottom: none !important;
	border-left: none !important;
	box-shadow: none !important;
	outline: none !important;
}

/* Quitar líneas divisorias entre apartados */
.ficha-producto .acordeon-producto .e-n-accordion-item + .e-n-accordion-item {
	border-top: none !important;
}

/* Quitar borde del contenedor general */
.ficha-producto .acordeon-producto .e-n-accordion {
	border: none !important;
	box-shadow: none !important;
}

/* Quitar únicamente el contorno cuadrado exterior */
.ficha-producto .acordeon-producto .e-n-accordion-item {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Quitar borde del área que envuelve título y contenido */
.ficha-producto .acordeon-producto .e-n-accordion-item[open] {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Quitar borde del contenedor interno del contenido */
.ficha-producto .acordeon-producto .e-n-accordion-item .e-con {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Mantener sin borde el título */
.ficha-producto .acordeon-producto .e-n-accordion-item-title {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
}

/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-62c0039f */
.producto-beneyus {
	--color-producto: #027b35;
	--color-producto-oscuro: #015926;
	--color-producto-suave: #e6f2eb;
}

.producto-benecafnf {
	--color-producto: #8d7632;
	--color-producto-oscuro: #665524;
	--color-producto-suave: #f4f1ea;
}

.producto-benegly {
	--color-producto: #852b3a;
	--color-producto-oscuro: #601f2a;
	--color-producto-suave: #f3eaeb;
}

.producto-nanooxa {
	--color-producto: #e52127;
	--color-producto-oscuro: #a5181c;
	--color-producto-suave: #fce9e9;
}

.producto-beneaqua {
	--color-producto: #ff7276;
	--color-producto-oscuro: #b85255;
	--color-producto-suave: #fff1f1;
}

.producto-promass {
	--color-producto: #eeb94c;
	--color-producto-oscuro: #ab8537;
	--color-producto-suave: #fdf8ed;
}

.producto-nutrifit {
	--color-producto: #e54260;
	--color-producto-oscuro: #a53045;
	--color-producto-suave: #fcecef;
}

.producto-beneox {
	--color-producto: #035c67;
	--color-producto-oscuro: #02424a;
	--color-producto-suave: #e6eff0;
}

.producto-beneloe {
	--color-producto: #3bd4ae;
	--color-producto-oscuro: #2a997d;
	--color-producto-suave: #ebfbf7;
}

.producto-beneoff {
	--color-producto: #9d2785;
	--color-producto-oscuro: #711c60;
	--color-producto-suave: #f5e9f3;
}

.producto-benedtx {
	--color-producto: #d41553;
	--color-producto-oscuro: #990f3c;
	--color-producto-suave: #fbe8ee;
}

.producto-benemov {
	--color-producto: #0098cd;
	--color-producto-oscuro: #006d94;
	--color-producto-suave: #e6f5fa;
}

.producto-benezen {
	--color-producto: #ffb1b9;
	--color-producto-oscuro: #b87f85;
	--color-producto-suave: #fff7f8;
}

.producto-beneclim {
	--color-producto: #d8ab71;
	--color-producto-oscuro: #9c7b51;
	--color-producto-suave: #fbf7f1;
}

.producto-beneforce {
	--color-producto: #001c71;
	--color-producto-oscuro: #001451;
	--color-producto-suave: #e6e8f1;
}

.producto-benemel {
	--color-producto: #cf8a00;
	--color-producto-oscuro: #956300;
	--color-producto-suave: #faf3e6;
}

.producto-capuchino {
	--color-producto: #c6ab85;
	--color-producto-oscuro: #8f7b60;
	--color-producto-suave: #f9f7f3;
}

.producto-benetea {
	--color-producto: #e73737;
	--color-producto-oscuro: #a62828;
	--color-producto-suave: #fdebea;
}

.producto-benegen {
	--color-producto: #eb9c4e;
	--color-producto-oscuro: #a97038;
	--color-producto-suave: #fdf5ed;
}

.producto-benefresh {
	--color-producto: #65baaf;
	--color-producto-oscuro: #49867e;
	--color-producto-suave: #f0f8f7;
}

.producto-benekid {
	--color-producto: #f39a1b;
	--color-producto-oscuro: #af6f13;
	--color-producto-suave: #fef5e8;
}

.producto-benecitrus {
	--color-producto: #fce511;
	--color-producto-oscuro: #b5a50c;
	--color-producto-suave: #fffce7;
}

.producto-benemega {
	--color-producto: #789904;
	--color-producto-oscuro: #566e03;
	--color-producto-suave: #f2f5e6;
}

.producto-benegut {
	--color-producto: #b05c50;
	--color-producto-oscuro: #7f423a;
	--color-producto-suave: #f7efee;
}

/* End custom CSS */

/* Start custom CSS for button, class: .elementor-element-207c641 */

/* Botón elegante reutilizable */
.boton-elegante .elementor-button {
	position: relative;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 8%), 0 1px 3px rgba(0, 0, 0, 5%);
	transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease, color .22s ease;
}

/* Elevación */
.boton-elegante .elementor-button:hover, .boton-elegante .elementor-button:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 12%), 0 2px 5px rgba(0, 0, 0, 6%);
}

/* Sensación al presionar */
.boton-elegante .elementor-button:active {
	transform: translateY(0) scale(.98);
	box-shadow: 0 3px 8px rgba(0, 0, 0, 9%);
}

/* Movimiento del icono */
.boton-elegante .elementor-button-icon {
	transition: transform .22s ease;
}

.boton-elegante .elementor-button:hover .elementor-button-icon, .boton-elegante .elementor-button:focus-visible .elementor-button-icon {
	transform: translateX(2px);
}

/* Brillo */
.boton-elegante .elementor-button::after {
	content: "";
	position: absolute;
	top: 0;
	left: -120%;
	width: 50%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 18%), transparent);
	transform: skewX(-20deg);
	transition: left .55s ease;
	pointer-events: none;
}

.boton-elegante .elementor-button:hover::after, .boton-elegante .elementor-button:focus-visible::after {
	left: 140%;
}

/* Enfoque con teclado */
.boton-elegante .elementor-button:focus-visible {
	outline: 3px solid var(--color-producto-suave, rgba(21, 151, 114, 35%));
	outline-offset: 4px;
}

/* Accesibilidad */
@media (prefers-reduced-motion: reduce) {
	.boton-elegante .elementor-button, .boton-elegante .elementor-button-icon, .boton-elegante .elementor-button::after {
		transition: none !important;
	}
	
	.boton-elegante .elementor-button:hover, .boton-elegante .elementor-button:focus-visible, .boton-elegante .elementor-button:active {
		transform: none;
	}
}

/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-1237ded6 */

/* =========================================================
   EFECTO ELEGANTE Y SUTIL PARA BOTONES
   ========================================================= */
.contacto-producto .boton-producto .elementor-button {
	position: relative;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .05);
	transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease, color .22s ease;
}

/* Elevación ligera */
.contacto-producto .boton-producto .elementor-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, .12), 0 2px 5px rgba(0, 0, 0, .06);
}

/* Sensación al presionar */
.contacto-producto .boton-producto .elementor-button:active {
	transform: translateY(0) scale(.98);
	box-shadow: 0 3px 8px rgba(0, 0, 0, .09);
}

/* Movimiento sutil del icono */
.contacto-producto .boton-producto .elementor-button-icon {
	transition: transform .22s ease;
}

.contacto-producto .boton-producto .elementor-button:hover .elementor-button-icon {
	transform: translateX(2px);
}

/* Brillo muy discreto */
.contacto-producto .boton-producto .elementor-button::after {
	content: "";
	position: absolute;
	top: 0;
	left: -120%;
	width: 50%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .18), transparent);
	transform: skewX(-20deg);
	transition: left .55s ease;
	pointer-events: none;
}

.contacto-producto .boton-producto .elementor-button:hover::after {
	left: 140%;
}

/* Accesibilidad con teclado */
.contacto-producto .boton-producto .elementor-button:focus-visible {
	outline: 3px solid var(--color-producto-suave);
	outline-offset: 4px;
}

/* End custom CSS */

/* Start custom CSS for image, class: .elementor-element-78121d29 */

/* Indica que la imagen puede presionarse */
#beneleitAbrirVideo, #beneleitAbrirVideo img {
	cursor: pointer !important;
}

/* Efecto visual opcional */
#beneleitAbrirVideo img {
	display: block;
	transition: transform .25s ease, filter .25s ease, box-shadow .25s ease;
}

#beneleitAbrirVideo:hover img, #beneleitAbrirVideo:focus-visible img {
	transform: translateY(-2px) scale(1.015);
	filter: brightness(1.03);
}

/* End custom CSS */

/* Start custom CSS for image, class: .elementor-element-23116b8b */

/* Indica que la imagen puede presionarse */
#beneleitAbrirVideo, #beneleitAbrirVideo img {
	cursor: pointer !important;
}

/* Efecto visual opcional */
#beneleitAbrirVideo img {
	display: block;
	transition: transform .25s ease, filter .25s ease, box-shadow .25s ease;
}

#beneleitAbrirVideo:hover img, #beneleitAbrirVideo:focus-visible img {
	transform: translateY(-2px) scale(1.015);
	filter: brightness(1.03);
}

/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-738ce6a */

/* =========================================================
   EFECTO ELEGANTE Y SUTIL PARA BOTONES
   ========================================================= */
.contacto-producto .boton-producto .elementor-button {
	position: relative;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .05);
	transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease, color .22s ease;
}

/* Elevación ligera */
.contacto-producto .boton-producto .elementor-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, .12), 0 2px 5px rgba(0, 0, 0, .06);
}

/* Sensación al presionar */
.contacto-producto .boton-producto .elementor-button:active {
	transform: translateY(0) scale(.98);
	box-shadow: 0 3px 8px rgba(0, 0, 0, .09);
}

/* Movimiento sutil del icono */
.contacto-producto .boton-producto .elementor-button-icon {
	transition: transform .22s ease;
}

.contacto-producto .boton-producto .elementor-button:hover .elementor-button-icon {
	transform: translateX(2px);
}

/* Brillo muy discreto */
.contacto-producto .boton-producto .elementor-button::after {
	content: "";
	position: absolute;
	top: 0;
	left: -120%;
	width: 50%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .18), transparent);
	transform: skewX(-20deg);
	transition: left .55s ease;
	pointer-events: none;
}

.contacto-producto .boton-producto .elementor-button:hover::after {
	left: 140%;
}

/* Accesibilidad con teclado */
.contacto-producto .boton-producto .elementor-button:focus-visible {
	outline: 3px solid var(--color-producto-suave);
	outline-offset: 4px;
}

/* End custom CSS */

/* Start custom CSS for button, class: .elementor-element-2f728208 */

/* =========================================================
   EFECTO ELEGANTE Y SUTIL — BOTÓN PRODUCTO
   ========================================================= */
.boton-producto .elementor-button {
	position: relative;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .05);
	transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease, color .22s ease;
}

/* Elevación ligera */
.boton-producto .elementor-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, .12), 0 2px 5px rgba(0, 0, 0, .06);
}

/* Sensación al presionar */
.boton-producto .elementor-button:active {
	transform: translateY(0) scale(.98);
	box-shadow: 0 3px 8px rgba(0, 0, 0, .09);
}

/* Movimiento sutil del icono */
.boton-producto .elementor-button-icon {
	transition: transform .22s ease;
}

.boton-producto .elementor-button:hover .elementor-button-icon {
	transform: translateX(2px);
}

/* Brillo discreto */
.boton-producto .elementor-button::after {
	content: "";
	position: absolute;
	top: 0;
	left: -120%;
	width: 50%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .18), transparent);
	transform: skewX(-20deg);
	transition: left .55s ease;
	pointer-events: none;
}

.boton-producto .elementor-button:hover::after {
	left: 140%;
}

/* Accesibilidad con teclado */
.boton-producto .elementor-button:focus-visible {
	outline: 3px solid var(--color-producto-suave);
	outline-offset: 4px;
}

/* End custom CSS */

/* Start custom CSS for button, class: .elementor-element-6c6ddd8b */

/*
   AÑADIR DESPUÉS DEL CSS ACTUAL DEL BOTÓN.
   --current-product-color lo asigna boton-inicio-producto.js.
*/

/* Evita que el encabezado fijo cubra el inicio del producto. */
#inicio-plantilla {
	scroll-margin-top: 170px !important;
}

@media (max-width: 1024px) {
	#inicio-plantilla {
		scroll-margin-top: 140px !important;
	}
}

@media (max-width: 767px) {
	#inicio-plantilla {
		scroll-margin-top: 110px !important;
	}
}

/* Elimina el espacio residual debajo del botón de Elementor. */
.boton-inicio-elegante, .boton-inicio-elegante .elementor-widget-container, .boton-inicio-elegante .elementor-button-wrapper {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	line-height: 0;
}

.boton-inicio-elegante .elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
	vertical-align: top;
}

.boton-inicio-elegante .elementor-button:hover, .boton-inicio-elegante .elementor-button:focus-visible {
	background-color: var(--current-product-color, #159772) !important;
	border-color: var(--current-product-color, #159772) !important;
	color: #fff !important;
}

/* Mantiene sincronizados el texto y el icono de Elementor. */
.boton-inicio-elegante .elementor-button:hover *, .boton-inicio-elegante .elementor-button:focus-visible * {
	color: inherit !important;
	fill: currentColor !important;
	stroke: currentColor !important;
}

/* El enfoque utiliza también el color del producto. */
.boton-inicio-elegante .elementor-button:focus-visible {
	outline-color: color-mix(in srgb, var(--current-product-color, #159772) 35%, transparent) !important;
}
