/* BUG: Interfiere con la posición sticky del header */
/* DOC: Corrige el desbordamiento del contenido en ciertas resoluciones */
/* body, html
{
	overflow-x: hidden;
} */

html
{
    scroll-behavior: smooth;
	scroll-padding-top: 130px;
}

body
{
	background-color: #FFFFFF !important;
	line-height: 1.2;
}

/* Fuentes */
body,
p, ul, li, ol, a
{
	color: #111314;
}

.text-transform-none
{
	text-transform: none;
}

/* Backgrounds */
.bg-primary
{
	color: inherit;
	background-color: #E6E9EE !important;
}

.bg-secondary
{
	background-color: #A6B277 !important;
}

/* Colors */
.text-white
{
	color: #FFFFFF;
}

/***** HEADER *****/

/* Top Bar */
.profesional
{
	background-color: #111314;
	color: #FFFFFF;
}

.profesional .presen
{
	color: #FFFFFF;
	margin: 0;
}

.profesional .btn_slider.btn-outline-white
{
	border-color: rgba(255,255,255,0.2);
	border-radius: 0;
	padding-top: 0.7rem;
	padding-bottom: 0.7rem;
}

/* Menu */
body > header
{
	position: sticky;
	top: 0;
	z-index: 120;
	/* padding: 1rem 0; */
	background-color: #FFFFFF;
}

body > header > #menu,
body > header > #menu_movil
{
	margin-top: 1rem;
	margin-bottom: -1rem;
}

body > header > .container
{
	display: flex;
	white-space: nowrap;
	justify-content: space-between;
	align-items: center;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

body > header .container::before,
body > header .container::after
{
	content: none;
}

/* Modal */
.modal-rs
{
	position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 111111;
	display: none;
	font-weight: 300;
	font-family: 'Roboto', sans-serif;
}

.modal-rs .modal-rs-dialog
{
    position: absolute;
    /* top: 50%; */
    top: 0;
    left: 50%;
    /* transform: translate(-50%, -50%) !important; */
    transform: translateX(-50%) !important;

	padding: 0;
	/* border-radius: 2rem; */
}

.modal-rs h2,
.modal-rs .modal-rs-title,
.modal-rs p,
.modal-rs a
{
	color: inherit;
	font-weight: inherit;
	font-family: inherit;
}

.modal-rs .modal-rs-title
{
	font-weight: 300;
}


/* Modals */
.modal-rs.modal-image .modal-rs-content,
.modal-rs.modal-2 .modal-rs-content
{
	position: relative;
	border-radius: 2rem;
	margin: 1rem;
	overflow: hidden;
}

/* Modal 2 */
.modal-rs.modal-2 .modal-rs-content
{
	background-color: #A6B277;
	color: #FFFFFF;
	padding: 5rem;
	/* border-radius: 2rem;
	margin: 1rem; */
}

/* Modal Image */
/* .modal-rs.modal-image .rs-close
{
	mix-blend-mode: difference;
} */

.modal-rs.modal-image .modal-rs-body img
{
	width: 100%;
}

.modal-rs .modal-rs-footer h2
{
	font-weight: 400;
}

.modal-rs.modal-2 hr
{
	border-color: #FFFFFF;
}

.modal-rs .rs-close
{
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	z-index: 1;
	width: 2rem;
	transition: 0.2s ease-out;
}

.modal-rs .rs-close:hover
{
	transform: rotate(90deg);
	transition: 0.2s ease-in;
}

.modal-rs .rs-close img
{
	width: 100%;
}

.modal-rs .modal-icons img
{
	height: 5rem;
}

.modal-rs.modal-2 .modal-separators > div
{
	border-left: 0.5px solid rgba(255,255,255,0.5);
}

/* .modal-rs.modal-2 .modal-dialog .modal-content
{
	all: unset;
} */

/* .modal-rs.modal-2 .modal-dialog .modal-footer
{
	all: unset;
} */

/* Form Header */
body > header input[type="text"]
{
	width: 100px;
	border-width: 0;
	border-bottom-width: 1px;
	border-color: #111314;
	outline: 0;
	padding: 0;
}

body > header input[type="image"]
{
	border: 0;
	padding: 0;
}

body > header #buscador_header,
body > header #menu_header
{
	height: 2.5rem;
}

body > header .visible-lg #buscador_header,
body > header input[type="image"]
{
	width: 1.75rem;
	margin-left: 5px;
	vertical-align: bottom;
}

/* Menú Principal */
body > header .menuprin
{
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	gap: 3rem;
}

body > header .menuprin > li,
body > header .menuprin > li.letter
{
	padding: 0;
	font-size: 1.2rem;
}

body > header .menuprin > li.letter.letter-primary > a
{
	color: #A6B277;
}

/* body > header .menuprin > li + li::before
{
	content: "";
	margin-right: 1.5rem;
} */

body > header .menuprin > li > a,
body > header .menuprin > li > span
/* body > header .menuprin > li + li::before */
{
	/* line-height: 0.8;
	display: inline-block;
	vertical-align: middle; */
	font-size: 13px;
	color: #111314;
}

body > header form
{
	margin-bottom: 1rem;
}

/* body > header .menuprin > li > a,
body > header .menuprin > li > span,
body > header input[type="image"]
{
	vertical-align: bottom;
} */


/* Submenu */
/* body > header .menuprin li.submenu */
/* body > header > .container
{
	position: relative;
} */


/* Menu Movil */
body > header #menu_movil .submenu > ul,
body > header .menuprin li.megamenu > ul
{
	margin-top: 1rem;
    list-style: none;
    padding: 1rem 2.5rem;
}

/* body > header #menu_movil > .option_menu_movil span
{
	font-weight: bold;
	color: #323F4E;
} */

body > header #menu_movil .submenu
{
	position: relative;
	padding-right: 0;
}

body > header #menu_movil .submenu > ul
{
	display: none;
	list-style: none;
	padding: 0;
}

body > header #menu_movil .submenu .submenu li
{
	border: 0;
}

body > header #menu_movil .submenu > .menu-title::after
{
	display: block;
	content: "";
	position: absolute;
	top: 2rem;
	right: 1.5rem;
	width: 1.25rem;
	height: 1.25rem;
	background-image: url('/media/img/icons/icon-arrow-right-gray.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	transition: 0.2s linear;
}

body > header #menu_movil .submenu.show > .menu-title::after
{
	/* background-image: url('/media/img/icons/icon-arrow-down-black.svg'); */
	transform: rotate(90deg);
	transition: 0.2s linear;
}

body > header #menu_movil .submenu.show > ul
{
	display: block;
}

body > header #menu_movil .submenu.show > ul > li:last-child
{
	border: 0;
}




.megamenu ul
{
	list-style: none;
}

.megamenu > span
{
	position: relative;
}

.megamenu > span::after
{
	display: inline-block;
    content: "";
    width: 0.75em;
    height: 0.75em;
    margin-left: 0.5rem;
    background-image: url('/media/img/icons/icon-arrow-right-black.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
	transform: rotate(90deg);
    transition: 0.2s linear;
}

.megamenu:hover > span::after
{
	transform: rotate(-90deg);
    transition: 0.2s linear;
}

.megamenu > .megamenu-tab
{
	position: absolute;
    top: 100%;
    left: 0;
	width: 100%;
	padding: 2rem 0;
    background: #FFF;
    white-space: nowrap;
	/* border: 1px solid #000; */

	opacity: 0;
	visibility: hidden;
	transition: 0.3s linear;
}

.megamenu:hover > .megamenu-tab
{
	opacity: 1;
	visibility: visible;
	transition: 0.3s linear;
}

.megamenu:hover > span
{
	font-weight: 500;
}

.megamenu > .megamenu-tab > ul
{
	display: flex;
    flex-direction: column;
    gap: 2rem;
}

.megamenu > .megamenu-tab .submenu > a
{
    display: inline-block;
	min-width: 12rem;
    margin-bottom: 1rem;
	padding-right: 0.5rem;
	border-bottom: 1px solid #111314;
	color: #111314;
	font-size: 1.3rem;
	font-weight: 500;
	text-decoration: none;
}

.megamenu > .megamenu-tab .submenu > ul[grid]
{
	display: grid;
	padding-left: 2.5rem;
}

.megamenu > .megamenu-tab .submenu > ul[grid="5"]
{
	grid-template-columns: repeat(5, 1fr);
}

.megamenu > .megamenu-tab .submenu > ul[grid="3"]
{
	grid-template-columns: repeat(3, 1fr);
}

.megamenu > .megamenu-tab .submenu > ul[grid] > li > a
{
	font-size: 1.2rem;
	color: #111314;
	font-weight: 300;
}

/***** END HEADER *****/


/* FOOTER */
.main_footer
{
	background-color: transparent !important;
}

.main_footer .backfooter
{
	background-color: #111314;
}

.main_footer .backfooter,
.main_footer .backfooter h3,
.main_footer .backfooter p,
.main_footer .backfooter a:not(#enviar_form_footer),
.main_footer .backfooter span,
.main_footer .backfooter label
{
	color: #FFFFFF !important;
}

.main_footer .backfooter #politicas_footer a
{
	text-decoration: underline;
}

.link_item__footer
{
	position: initial;
	bottom: auto;
}

.main_footer .form-control
{
	font-size: 1.5rem;
}

/* .main_footer .bottom-bar
{
	position: relative;
	z-index: 2;
	background-color: #FFFFFF;
} */

/* END FOOTER */

/* Forms */

.form-control,
#selects select.select_style,
.input-file .select-view
{
	padding: 0.25em 0.75em;
    font-size: 1.8rem;
    border-radius: 0.5em;
}

.form-control
{
	height: auto;
    border-color: #e8e8e8;
	color: #555;
	background-color: #FFFFFF;
}

.form-control::placeholder
{
    color: #e8e8e8;
}

#selects select.select_style,
.input-file .select-view
{
	border: 1px solid #000000;
	background-image: url('/media/img/icons/icon-arrow-right-black.svg');
    background-color: #F0F1F4;
    background-repeat: no-repeat;
    background-position: right 0.5em center;
	background-size: 0.5em;
    appearance: none;
	color: #656D78;
	padding-right: 3em;
	transition: 0.3s linear;
}

.input-file label.select-view
{
	display: block;
    font-weight: normal;
    /* margin: 0; */
}

#selects select.select_style:hover,
.input-file .select-view:hover
{
	cursor: pointer;
    background-color: transparent;
	transition: 0.3s linear;
}

/* select.select_style,
.input-file .select-view
{
	border-color: #000 !important;
	border-radius: 1rem !important;
} */

.input-file input[type="text"]
{
	margin-top: 1em;
	border: 0;
	outline: none;
	background-color: transparent;
	width: 100%;
}

select.select_style option
{
	font-size: 1.4rem;
}

.input-file input[type="file"]
{
	display: none;
}


/***** Buttons *****/
.btn_slider,
.btn_slider2,
#btn_bucador.btn_slider2
{
	display: inline-block;
	max-width: initial;
    padding: 1em 2.5em;
    /* margin: 0; */
}

/* Button 1 */
.btn_slider
{
	background-color: transparent;
	color: #111314;
	border: 1px solid #111314;
	border-radius: 2em;
	padding: 0.5em 2.5em;
	text-transform: uppercase;
	text-decoration: none;
	transition: 0.2s linear;
	font-size: 1.2rem;
}

.btn_slider:hover
{
	cursor: pointer;
	background-color: #111314;
	color: #FFFFFF;
	text-decoration: none;
	transition: 0.2s linear;
}

.btn_slider.btn-third
{
	border-color: #2a2a2a;
	background-color: #2a2a2a;
	color: #FFFFFF;
}

.btn_slider.btn-solid
{
	background-color: #111314;
	color: #FFFFFF;
}

.btn_slider.btn-third:hover
{
	background-color: transparent;
	color: #2a2a2a;
}

.btn_slider.btn-solid:hover
{
	background-color: transparent;
	color: #111314;
}

.btn_slider.btn-outline-white
{
	background: transparent;
    border-color: #FFFFFF;
	color: #FFFFFF;
}

.btn_slider.btn-outline-white:hover
{
	background-color: #FFFFFF;
	color: #111314;
}

.btn_slider.btn-white
{
	color: #A6B277;
	background-color: #FFFFFF;
	border-color: #FFFFFF;
}

.btn_slider.btn-white:hover
{
	background-color: transparent;
	color: #FFFFFF;
}

.btn_slider.btn-green
{
	border-color: transparent;
	background-color: #A6B277;
	color: #FFFFFF;
}

.btn_slider.btn-green:hover
{
	border-color: #A6B277;
	background-color: transparent;
	color: #A6B277;
}

.btn_slider.btn-squared
{
	border-radius: 0.25em;
	padding: 0 0.75em;
}




/* Button 2 */
.btn_slider2.btn-secondary
{
	border-color: #A6B277 !important;
	color: #A6B277;
	padding: 0.5rem 1rem;
}

.btn_slider2.btn-secondary:hover
{
	background-color: #A6B277;
	color: #FFFFFF;
}

.btn_slider2.btn-outline:not(:hover)
{
	background-color: transparent;
}


/* Button Slim */
.btn_slider.btn-slim,
.btn_slider2.btn-slim
{
	padding: 0.5rem 1.5rem;
}

/* Button Rounded */
.btn-rounded
{
	width: auto !important;
	padding: 1.5rem 3rem !important;
    font-size: 2rem;
	border-radius: 50px;
}

.btn.btn-rounded
{
	border-radius: 3rem;
}

/* Button One Trust */
#onetrust-consent-sdk button
{
	display: inline-block !important;
	max-width: initial !important;
    padding: 1em 2.5em !important;
	border-radius: 2em !important;
	outline: 0 !important;
}

/* Tags */

.tag-item
{
	display: inline-block;
	padding: 0.5rem 1.5rem;
	color: #FFFFFF;
	background-color: #A6B277;
}

.title-separator
{
	display: block;
	border-bottom: 1px solid #A6B277;
}

/* Social Networks */
.social-networks
{
	position: fixed;
	right: 1rem;
	z-index: 3;
	padding: 0;
	color: #FFFFFF;

	bottom: 1rem;
	/* width: 100%; */
	display: flex;
	margin: 0;
	/* justify-content: center; */
	/* align-items: center; */
	gap: 0.5rem;
	flex-direction: column;
	transition: 0.3s ease-out 0.3s;
}

.social-networks.active
{
	transition: 0.3s ease-out;
}

.social-networks li
{
	display: block;
}

.social-networks li a
{
	position: relative;
	display: block;
	padding: 1rem;
	background-color: #111314;
	border-radius: 1.25rem;
}

.social-networks li a span
{
	position: absolute;
	top: 50%;
	right: 100%;
	z-index: -1;
	/* transform: translateY(-50%); */
	margin-right: 1rem;
	color: white;
	background-color: #111314;
	white-space: nowrap;
	padding: 0.5rem 1rem;
	border-radius: 1rem;
	opacity: 0;
	visibility: hidden;
	/* transform: translate(100%, -50%) scaleX(0); */
	transform-origin: right;
	/* transform: translate(100%, -50%) scale(0); */
	transform: translate(6rem, -50%) scale(0);
	transition: 0.3s ease-out;
}

.social-networks li a:hover span
{
	opacity: 1;
	visibility: visible;
	transform: translate(0, -50%) scale(1);
	transition: 0.3s ease-in;
}


.social-networks.active li.marked a,
.social-networks.active li.marked a span
{
	background-color: #A6B277;
}

.social-networks li img
{
	width: 2rem;
	height: 2rem;
	/* width: 100%; */
}

/***** Section Extends *****/
.flex-simple-item
{
	display: flex;
	flex-wrap: wrap;
}

.flex-item,
.flex-item-vertical
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 1.5rem;
}

.flex-item
{
	align-items: center;
}

.flex-item-vertical
{
	flex-direction: column;
}

.flex-item-vertical > .item-full,
.flex-item > .item-full
{
	flex: 1;
}

.container.flex-middle
{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

.container.flex-middle > div
{
	display: flex;
	align-items: center;
}

.col-full-left,
.col-full-right
{
	position: relative;
}

.col-full-left::before,
.col-full-right::after
{
	position: absolute;
	top: 0;
	width: 100vw;
	height: 100%;
	background-color: inherit;
}

.col-full-left::before
{
	right: 100%;
}

.col-full-right::after
{
	left: 100%;
}

/***** Spinner *****/
.spinner-wrapper
{
	display: none;
}

.spinner-wrapper[type="fixed"]
{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 3000;
	width: 100%;
	height: 100%;
	background-color: #484747;
}

.spinner-wrapper.active
{
	display: block;
}

.spinner-wrapper .spinner
{
	border: 0.3em solid rgba(0, 0, 0, 0.3);
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	border-left-color: #A6B277;
	/* margin: 0 auto;
	margin-top: 20px; */
	display: none;
}

.spinner-wrapper[type="fixed"] .spinner
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.spinner-wrapper.active .spinner
{
	display: block;
	animation: spin 1s ease infinite;
}
  
@keyframes spin
{
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/***** Specific modules overrides *****/
#content_option_home
{
	/* padding-top: 0;
	padding-bottom: 20px; */
	background-color: #eaeceb;
}

#content_option_home img
{
	max-height: 6rem;
}

#productos_list
{
	padding-top: 20px;
}


/* Typography */

.p
{
	font-size: 1rem;
}

/* Spacing */
.mr10 {margin-right:10px !important;}
.ml30 {margin-left:30px !important;}
.mt10 {margin-top:10px;}	.pt10 {padding-top:10px;}
.mt20 {margin-top:20px;}	.pt20 {padding-top:20px;}
.mt30 {margin-top:30px;}	.pt30 {padding-top:30px;}
.mt40 {margin-top:40px;}	.pt40 {padding-top:40px;}
.mt50 {margin-top:50px;}	.pt50 {padding-top:50px;}
.mt60 {margin-top:60px;}	.pt60 {padding-top:60px;}
.mt70 {margin-top:70px;}	.pt70 {padding-top:70px;}

.mb10 {margin-bottom:10px;}		.pb10 {padding-bottom:10px;}
.mb20 {margin-bottom:20px;}		.pb20 {padding-bottom:20px;}
.mb30 {margin-bottom:30px;}		.pb30 {padding-bottom:30px;}
.mb40 {margin-bottom:40px;}		.pb40 {padding-bottom:40px;}
.mb50 {margin-bottom:50px;}		.pb50 {padding-bottom:50px;}
.mb60 {margin-bottom:60px;}		.pb60 {padding-bottom:60px;}
.mb70 {margin-bottom:70px;}		.pb70 {padding-bottom:70px;}

.mb-0 { margin-bottom: 0; }
.m0 { margin: 0 !important; }

.ml-10 { margin-left: 1rem; }
.ml-20 { margin-left: 2rem; }
.ml-30 { margin-left: 3rem; }
.ml-40 { margin-left: 4rem; }
.ml-50 { margin-left: 5rem; }

.mr-10 { margin-right: 1rem !important; }
.mr-20 { margin-right: 2rem; }
.mr-30 { margin-right: 3rem; }
.mr-40 { margin-right: 4rem; }
.mr-50 { margin-right: 5rem; }

.p-0 { padding: 0; }
.p-10 { padding: 1rem; }
.p-20 { padding: 2rem; }
.p-30 { padding: 3rem; }
.p-40 { padding: 4rem; }
.p-50 { padding: 5rem; }

.pl-10 { padding-left: 1rem; }
.pl-20 { padding-left: 2rem; }
.pl-30 { padding-left: 3rem; }
.pl-40 { padding-left: 4rem; }
.pl-50 { padding-left: 5rem; }

.pr-10 { padding-right: 1rem; }
.pr-20 { padding-right: 2rem; }
.pr-30 { padding-right: 3rem; }
.pr-40 { padding-right: 4rem; }
.pr-50 { padding-right: 5rem; }

h1, .h1
{
    font-size: 3.6rem;
}

h2, .h2
{
    font-size: 3rem;
}

h3, .h3
{
    font-size: 2.4rem;
}

h4, .h4
{
    font-size: 1.8rem;
}

h5, .h5
{
    font-size: 1.4rem;
	line-height: 1.2;
}

h6, .h6
{
    font-size: 1.2rem;
}

/* Responsive Desktop */
@media (min-width: 992px)
{
	.col-full-left::before,
	.col-full-right::after
	{
		content: "";
	}

	/* .social-networks.active li a span */
	.social-networks.active li.marked a span
	{
		opacity: 1;
		visibility: visible;
		transform: translate(0, -50%) scale(1);
		transition: 0.3s ease-in;
	}
}

/* Responsive Mobile */
/* .height-slider img.visible-xs
{
	object-fit: cover;
	width: 100% !important;
} */

@media (max-width: 991px)
{
	/* Menu */
	body > header
	{
		max-height: 100vh;
		overflow: auto;
	}

	.main_footer .option_footer_especial img
	{
		margin-left: 0px;
	}

	.main_footer .ico_siguenos 
	{
		text-align: left;
		padding-top: 25px;
		margin-bottom: 6px;
	}
}
