/*CSS ELEMENTOS COMUNES EN TODAS LAS PAGINAS*/
/*---GENERAL---*/
body {
	margin: 0;
	padding: 0;
	border: 0 none;
	font-family: var(--font-main);
	font-weight: var(--font-regular);
	font-size: 19px;
	color: var(--color-texto-principal);
}
body.page_inic {    
	background: var(--color-principal) var(--fondo-pantalla-completa) center center no-repeat;
	background-size: cover;
	background-attachment: fixed;
}
a:link,a:visited {
	text-decoration: none;
	color: var(--color-texto-principal);
}
a:hover {	
	text-decoration: underline;
}
h1,h2,h3,h4,h5,h6,strong {
	font-weight: var(--font-bold);
}
.cont_larg {
	margin: 100px auto;
	width: 90%;
	max-width: 1280px;
}
.cont_cent {
	text-align: center;
}
.cont_left {
	text-align: left;
}
.cont_rght {
	text-align: right;
}
.cont_hori {
	width: 100%;
	display: flex;
	align-items: center;
}
.cont_hori > div {
	flex-grow: 1;
}
.cont_hide {
	display: none !important;
}
ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.tx-uc {
	text-transform: uppercase;
}
.tx-lc {
	text-transform: lowercase;
}
.mt-40 {
	margin-top: 40px;
}
.mt-50 {
	margin-top: 50px;
}
.mb-40 {
	margin-bottom: 40px;
}
.mb-50 {
	margin-bottom: 50px;
}
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
/*---HEADER---*/
.head_main {
	padding: 34px 0 25px;
	position: relative;
}
.head_logo {
	margin: 0 auto;
	width: 270px;
	display: block;
}
.head_titl {
	margin:15px 0 0;
	font-weight: var(--font-bold);
	font-size: 27px;
	line-height: 1em;
	text-transform: uppercase;
	text-align: center;
}
header {
	padding-bottom: 0;
	background: transparent var(--fondo-cabecera-pagina) center center repeat-x;
	background-size: contain;
	position: relative;
}
header .head_left,header .head_rght {
	margin-top: -20px;
	position: absolute;
	top: 50%;
}
header .head_left {
	left: 80px;
}
header .head_rght {
	right: 80px;
}
header .head_left > *,header .head_rght > * {
	display: inline-block;
}
header .head_rght li {
	margin-left: 20px;
	display: inline-block;
}
header .head_rght li img {
	filter: invert(71%) sepia(17%) saturate(0%) hue-rotate(252deg) brightness(90%) contrast(94%);
}
header .head_rght li.link_acti img {
	filter: unset;
}
header .head_rght li.menu_icon,.main_menu .menu_clos {
	cursor: pointer;
	display: none;
}
.main_menu .menu_clos:hover {
	opacity: 0.8;
}
header .head_rght li:nth-child(1) {
	margin-left: 0;
}
header .head_rght li:hover {
	opacity: 0.8;
}
header .head_left > a {
	padding: 0 14px 0 0;
	max-width: 220px;
	font-weight: var(--font-bold);
	font-size: 19px;
	line-height: 44px;
	text-overflow: ellipsis;
	background: transparent url('../img/icon-next.png') right center no-repeat;	
	white-space: nowrap;
	overflow: hidden;
	float: left;	
}
/*---MENU PRINCIPAL---*/
.main_menu {
	padding: 40px 0 0;
	background-color: var(--color-terciario);
	-webkit-transition: all 400ms ease-in-out;
	-moz-transition: all 400ms ease-in-out;
	-ms-transition: all 400ms ease-in-out;
	-o-transition: all 400ms ease-in-out;
	transition: all 400ms ease-in-out;
}
.main_menu ul {
	margin: 0 auto;
	padding: 0 40px 25px;
	border-bottom: 1px solid #c3c0b3;
	display: inline-block;
}
.main_menu li {
	margin-left: 40px;
	font-weight: var(--font-medium);
	font-size: 22px;
	text-transform: uppercase;
	display: inline-block;
}
.main_menu li:nth-child(1) {
	margin-left: 0;
}
.main_menu li a:link,.main_menu li a:visited {
	color: var(--color-texto-secundario);
}
.main_menu li a:hover,.main_menu li.link_acti a:link,.main_menu li.link_acti a:visited,.main_menu li.link_acti a:hover {
	color: var(--color-texto-principal);
}
/*---CONTENIDO---*/
.cont_mess {
	box-sizing: border-box;
	margin: 40px auto 60px;	
	width: 90%;
	max-width: 574px;
}
.cont_mess a {
	padding: 25px 105px 20px;
	-webkit-border-radius: 30px;
	border-radius: 30px;
	font-weight: var(--font-bold);
	font-size: 24px;
	text-transform: uppercase;
	background-color: var(--color-principal);
	display: inline-block;
}
.cont_mess a:hover {
	opacity: 0.7;
}
.cont_mess strong {
	margin: 0 0 15px;
	font-size: 26px;
	display: inline-block;
}
/*---FORMULARIO---*/
.form_titl {
	margin: 0  0 50px;
	font-size: 28px;
	line-height: 40px;
	text-transform: uppercase;
}
.form_cont form {
	box-sizing: border-box;
	margin: 15px auto 0;
	padding: 56px 116px;
	-webkit-border-radius: 30px;
	border-radius: 30px;
	width: 90%;
	max-width: 764px;
	background-color: var(--color-secundario);
} 
.form_cont h2 {	
	margin: 0 0 35px;
	font-weight: var(--font-bold);
	font-size: 20px;
	text-align: left;
	text-transform: uppercase;
} 
.form_cont label,.inpt_butt {	
	font-weight: var(--font-bold);
	font-size: 18px;
}
.form_cont label {
	text-align: left;
	display: block;
}
.inpt_text,.inpt_butt,.inpt_sele,.inpt_numb input {
	box-sizing: border-box;
	padding: 15px;
	border: 0 none;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	font-family: var(--font-main);
	font-size: 16px;
	line-height: 20px;
	background-color: #fff;
}
.inpt_text,.inpt_sele {
	margin: 10px 0 18px;
	width: 100%;
}
.form_cont textarea.inpt_text {
	height: 100px;
}
.inpt_butt {
	margin: 20px 0 0;
    padding-left: 25px;
    padding-right: 25px;
	font-size: 18px;
	color: var(--color-texto-principal);
	appearance: none;
	-webkit-appearance: none;
}
.inpt_sele {	
	background: #fff url('../img/icon-select.png') right 20px center no-repeat;	
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}
.inpt_numb {
	display: inline-block;
	position: relative; 
}
.inpt_numb input {
	padding-right: 34px;
	width: 74px;
	display: block;
}
.inpt_numb .numb_butt {
	box-sizing: border-box;
	border-left: 4px solid #fff;
	width: 34px;
	height: 50%;
	background-color: var(--color-terciario);
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	right: 0;
	cursor: pointer;
}
.inpt_numb .numb_butt:hover {
	background-color: var(--color-secundario);
}
.inpt_numb .numb_more {
	border-bottom: 2px solid #fff;
	-webkit-border-top-right-radius: 10px;
	border-top-right-radius: 10px;
	background-image: url('../img/input-arrow-up.png');
	top: 0;
}
.inpt_numb .numb_less {
	border-top: 2px solid #fff;
	-webkit-border-bottom-right-radius: 10px;
	border-bottom-right-radius: 10px;
	background-image: url('../img/input-arrow-down.png');
	bottom: 0;
}
.inpt_butt:hover {	
	background-color: #000;
	color: #fff;
	cursor: pointer;
}
a.inpt_butt {
	display: inline-block;
}
a.inpt_butt:hover {
	text-decoration: none;
}
.inpt_lock {
	color: #a5a5a5;
}
.form_cont .text_butt .inpt_text {
	width: calc(100% - 170px);
}
.form_cont .text_butt .inpt_butt {
	margin-top: 10px;
	float: right;
}
.form_cont p {
	margin: 30px 0 55px;
	font-weight: var(--font-medium);
	font-size: 18px;
}
.form_cont p small {
	font-weight: var(--font-regular);
	font-size: 16px;
}
.form_cont a {
	margin: 20px 0 0;
	font-weight: var(--font-bold);
	font-size: 15px;
    display: inline-block;
}
.mess_erro {
	width: 100%;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1;
}
.mess_erro > div {
	width: 100%;
	height: 100vh;
	text-align: center;
	display: table;
}
.mess_erro > div > div {
	display: table-cell;
	vertical-align: middle;
}
.mess_erro > div > div > div {
	box-sizing: border-box;
	padding: 30px 50px;
	-webkit-border-radius: 30px;
	border-radius: 30px;
	width: 90%;
	max-width: 480px;
	color: #ff0000;
	background-color: #fed6db;
	display: inline-block;
}
.mess_erro .mess_clos {
	margin-top: 45px;
	margin-left: -21px;
	-webkit-border-radius: 30px;
	border-radius: 30px;
	width: 42px;
	height: 42px;
	background: #fed6db url('../img/icon-close-error.png') center center no-repeat;
	display: block;
	position: absolute;
	left: 50%;
	cursor: pointer;
}
.mess_erro .mess_clos:hover {
	opacity: 0.8;
}
.mess_erro h3 {
	margin: 0 0 15px;
	font-weight: var(--font-bold);
	font-size: 23px;
	text-transform: uppercase;
}
.mess_erro p {
	margin: 0;
	font-weight: var(--font-regular);
	font-size: 18px;
}
.form_erro form {
	opacity: 0.4;
	pointer-events: none;
}
.form_erro .mess_erro {
	display: block;
}
.text_erro {
	padding: 15px 15px 15px 45px;
	-webkit-border-radius: 30px;
	border-radius: 30px;
	font-weight: var(--font-regular);
	font-size: 18px;
	background: #fed6db url('../img/icon-close-error.png') 15px center no-repeat;
}
.succ_mess {
	width: 100%;
	text-align: center;
	display: table;
	background: var(--fondo-registro-mensaje-1) left top no-repeat,var(--fondo-registro-mensaje-2) right bottom no-repeat;
	background-color: var(--color-principal);
}
.succ_mess > div {
	padding: 100px 0;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
}
.succ_mess h2,.succ_mess p {
	margin: 0 auto;
	width: 90%;
	max-width: 640px;
}
.succ_mess h2 {
	font-size: 50px;
	text-transform: uppercase;
}
.succ_mess p {
	margin-top: 50px;
	font-size: 25px;
}
.succ_mess.regi_mess h2 {
	margin-bottom: 60px;
	max-width: 950px;
}
/*---CAROUSEL/SLIDER---*/
.cont_carr {
	position: relative;
}
.cont_carr .carr_arrw {
	margin-top: -25px;
	position: absolute;
	top: 50%;
	cursor: pointer;
	z-index: 99;
}
.cont_carr .carr_arrw.arrw_left {
	left: 0;
}
.cont_carr .carr_arrw.arrw_rght {
	right: 0;
}
.cont_carr .carr_arrw:hover {
	opacity: 0.7;
}
/*---TABLE---*/
.tabl_list table {
	margin-top: 50px;
	width: 100%;
}
.tabl_list table th,.tabl_list table td {
	padding: 15px;
	font-size: 15px;
	text-align: center;
}
.tabl_list table th {
	font-weight: var(--font-bold);
	background-color: var(--color-principal);
}
.tabl_list table td {
	background-color: #faf5d7;
}
.tabl_list table thead tr th:first-child {	
	-webkit-border-top-left-radius: 30px;
	border-top-left-radius: 30px;
}
.tabl_list table thead tr th:last-child {	
	-webkit-border-top-right-radius: 30px;
	border-top-right-radius: 30px;
}
.tabl_list table tbody tr:last-child td:first-child {	
	-webkit-border-bottom-left-radius: 30px;
	border-bottom-left-radius: 30px;
}
.tabl_list table tbody tr:last-child td:last-child {	
	-webkit-border-bottom-right-radius: 30px;
	border-bottom-right-radius: 30px;
}
.cont_tabl {
	overflow-x: auto;
}
.cont_tabl img {
	margin-right: 10px;
	max-width: 60px;
	vertical-align: middle;
}
/*---CATALOGO---*/
.prod_cata > .cont_hori {
	align-items: start;
}
.prod_cata .prod_filt {
	box-sizing: border-box;
	padding-right: 20px;
	flex: 0 220px;
}
.inpt_srch {	
	box-sizing: border-box;
	padding: 0 15px 0 60px;
	border: 0 none;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	width: 200px;
	font-family: var(--font-main);
	font-weight: var(--font-regular);
	font-size: 15px;
	line-height: 45px;
	background: #e9e9e9 url('../img/icon-search.png') 15px center no-repeat;
}
.butt_srch {
	margin: 0;
	font-size: 15px;
	line-height: 15px;
	background-color: var(--color-principal);
}
.sele_srch {
	margin:20px 10px 0 0;
	padding-right: 40px;
	width: 200px;
	line-height: 15px;
	background-color: #eee;
}
.prod_cata .prod_filt h4 {
	margin: 40px 0 0;
	font-weight: var(--font-regular);
	font-size: 15px;
	text-transform: uppercase;
}
.prod_cata .prod_filt ul {
	margin-left: 25px;
	font-size: 15px;
}
.prod_cata .prod_filt ul li {
	margin-top: 10px;
}
.prod_cata .prod_filt ul li > span:hover {
	text-decoration: underline;
	cursor: pointer;
}
.prod_cata .prod_list {
	padding-left: 80px;
	border-left: 2px solid #cbcbcb;
}
.prod_cata .prod_list .cont_grid {
	display: grid;
	grid-template-columns: 260px 260px 260px;
	justify-content: space-between;
}
.prod_cata .prod_list .cont_grid > div {
	padding: 20px;
	background: var(--icono-info-catalogo) right 20px bottom 20px no-repeat;
	position: relative;
}
.prod_cata .prod_list .cont_grid > div:hover {
	background-color: #f6f6f6;
}
.prod_cata .prod_list .cont_grid > div a {
	padding-bottom: 40px;
	text-align: left;
	display: block;
}
.prod_cata .prod_list .cont_grid > div a:hover {
	text-decoration: none;
}
.prod_cata .prod_list .cont_grid > div img {
	margin-bottom: 30px;
	width: 100%;
	display: block;
}
.prod_cata .prod_list .cont_grid > div span {
	font-size: 18px;
	color: #f00;
}
.prod_cata .prod_list .cont_grid > div h3 {
	margin: 5px 0 0;
	min-height: 48px;
	font-weight: var(--font-regular);
	font-size: 19px;
	line-height: 24px;
	text-transform: uppercase;
}
.prod_cata .prod_list .cont_grid > .grid_line,.prod_cata .prod_list .cont_grid > .grid_line:hover {
	margin: 20px 0;
	padding: 0;
	height: 2px;
	background-color: #cbcbcb;
	grid-column: 1/4;
}
.prod_cata .prod_list .cont_grid > div a.adds_cart {	
	-webkit-border-radius: 4px;
	border-radius: 4px;
	padding: 4px;
	width: 30px;
	position: absolute;
	bottom: 17px;
	right: 56px;
}
.prod_cata .prod_list .cont_grid > div a.adds_cart:hover {
	background-color: var(--color-principal);
}
.prod_cata .prod_list .cont_grid > div a.adds_cart img {
	margin: 0;
	width: 100%;
}
.prod_deta {
	width: 100%;
	display: table;
}
.prod_deta > div {
	box-sizing: border-box;
	display: table-cell;
	vertical-align: bottom;
}
.prod_deta .prod_imag {
	width: 40%;
	max-width: 520px;
}
.prod_deta .prod_imag img {
	max-width: 100%;
}
.prod_deta .prod_info {
	padding-left: 70px;
	width: 40%;
}
.prod_deta .prod_info h1,.prod_deta .prod_info .prod_poin {
	margin: 0;
	font-size: 27px;
	float: left;
}
.prod_deta .prod_info h1 {
	width: 60%;
	text-transform: uppercase;
}
.prod_deta .prod_info .prod_poin {
	width: 40%;
	text-align: right;
	color: #e3032c;
}
.prod_deta .prod_info p {
	margin: 0;
}
.prod_deta .prod_info p.prod_bran {
	clear: both;
}
.prod_deta .prod_info p.prod_refe {
	margin-top: 25px;
}
.prod_deta .prod_info p.prod_desc {
	margin-top: 60px;
}
.prod_deta .prod_info p.prod_more {
	margin-top: 30px;
	font-size: 16px;
}
.prod_deta .prod_cart {
	padding-left: 50px;
	width: 20%;
}
.prod_deta .prod_cart h3 {
	margin: 0 0 10px;
	font-size: 19px;
}
.prod_deta .prod_cart .inpt_numb input {
	background-color: var(--color-terciario);
}
.prod_deta .prod_cart .inpt_butt {
	margin-top: 25px;
	padding-left: 50px;
	font-size: 19px;
	background: var(--color-principal) url('../img/icon-cart-2.png') 10px center no-repeat;
}
.prod_deta .prod_cart .inpt_butt:hover {
	color: #000;
	background-color: var(--color-secundario);
}
.prod_back {
	margin-top: 40px;
}
.prod_back .inpt_butt {
	padding-left: 56px;
	font-size: 19px;
	background: var(--color-principal) url('../img/icon-back.png') 10px center no-repeat;
}
.prod_deta .prod_cart .inpt_butt:hover,.prod_back .inpt_butt:hover {
	color: #000;
	background-color: var(--color-secundario);
}
/*---PERFIL---*/
.perf_imag {
	margin: 0 auto 45px;
	width: 230px;
	height: 230px;
}
.perf_imag > img {
	-webkit-border-radius: 200px;
	border-radius: 200px;
	width: 100%;
	display: block;
}
/*---FOOTER---*/
footer {
	box-sizing: border-box;
	background-color: var(--color-secundario);
}
footer > div {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 7px 0;	
	width: 90%;
	max-width: 1180px;
}
footer img {
	width: 90px;
}
footer ul > li {
	font-weight: var(--font-medium);
	font-size: 15px;
	line-height: 24px;
}
.foot_fixe {
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
}
/*---RESPONSIVE---*/
.mobl_show {
	display: none !important;
}
@media screen and (max-width: 1300px) { 
	.prod_deta,.prod_deta > div{display: block;float: left;}
	.prod_deta > div.prod_info,.prod_deta > div.prod_cart{padding-left: 60px;width: 60%;float: right;}
	.prod_deta > div.prod_cart{margin-top: 30px;}
	.prod_deta .prod_cart .inpt_butt{margin-top: 0;}
}
@media screen and (max-width: 1200px) { 
	.head_titl{font-size: 22px;}
	header .head_left,header .head_rght{margin-top: 0;top: 46px;}
	header .head_left{left: 30px;}
	header .head_rght{text-align: right;right: 30px;}
	header .head_left > a{padding-right: 20px;max-width: 186px;font-size: 16px;line-height: 37px;display: block;float: none;}
	header .head_rght ul img{height: 32px;}
	.main_menu ul{padding: 0 30px 25px 30px;}
	.main_menu li{margin-left: 30px;font-size: 18px;}
	.prod_cata .prod_list .cont_grid{grid-template-columns: auto auto;}
	.prod_cata .prod_list .cont_grid > .grid_line{display: none;}
	footer{padding: 0 30px;}
}
@media screen and (max-width: 900px) { 
	header .head_main{text-align: center;}
	header .head_left,header .head_rght{margin-top: 30px;text-align: center;position: static;display: inline-block;}
	header .head_left > a{margin-right: 14px;margin-left: 0;line-height: 30px;float: none;display: inline-block;}
	header .head_rght li.menu_icon{display: inline-block;}
	.main_menu{box-sizing: border-box;padding: 90px 30px;width: 50%;height: 100vh;position: fixed;top: 0;left: -100%;z-index: 1000;}
	.main_menu.menu_show{left: 0;}
	.main_menu .menu_clos{position: absolute;top: 30px;right: 30px;display: block;}
	.main_menu ul,.main_menu ul li{margin-left: 0;margin-bottom: 20px;padding: 0;text-align: left;display: block;}
	.main_menu ul{border-bottom: 0 none;}
	.main_menu ul li{font-size: 20px;}
	.prod_cata .prod_list{padding-left: 40px;}
	.succ_mess.regi_mess h2{font-size: 40px;}
}
@media screen and (max-width: 700px) { 
	.form_cont form{padding: 50px;}
	.succ_mess h2{font-size: 40px;}
	.prod_cata .cont_hori,.prod_filt > input{display: block;}
	.prod_cata .prod_filt{padding-right: 0;padding-bottom: 30px;border-bottom: 2px solid #cbcbcb;}
	.prod_cata .prod_filt > div{width: 48%;float: left;}
	.prod_cata .prod_filt > div:nth-child(3){float: right;}
	.prod_cata .prod_filt > div > h4{background: url('../img/icon-select.png') center right no-repeat;cursor: pointer;}
	.prod_cata .prod_filt > div > ul{display: none;}
	.prod_cata .prod_list{margin-top: 30px;padding-left: 0;border-left: 0 none;}
	.prod_deta .mobl_show{display: block !important;}
	.prod_deta .mobl_hide{display: none !important;}
	.prod_deta > div.prod_info,.prod_deta .prod_imag,.prod_deta .prod_info p.prod_desc,.prod_deta > div.prod_cart{padding-left: 0;width: 100%;float: none;}
	.prod_deta .prod_imag{margin: 40px auto 0;}
	.prod_deta .prod_info p.prod_desc{margin-top: 30px;}
	.prod_back .inpt_butt{margin-top: 60px;}
}
@media screen and (max-width: 600px) { 
	.succ_mess{background-size: 100px auto;}
	footer .cont_hori{display: block;}
	footer .cont_hori > div{margin: 20px 0;width: 100%;text-align: center;}
}
@media screen and (max-width: 500px) { 
	header .head_rght li{margin-left: 10px;}
	.main_menu{width: 100%;}
	.form_cont form{padding: 40px;}
	.form_cont p br{display: none;}
	.form_cont .text_butt{text-align: center;}
	.form_cont .text_butt .inpt_text,.form_cont .text_butt .inpt_butt{float: none;}
	.form_cont .text_butt .inpt_text{width: 100%;}
	.form_cont .text_butt .inpt_text{margin-bottom: 0;}
	.form_cont .text_butt .inpt_butt{margin-bottom: 18px;}
	.tabl_list .cont_hori{display: block;}
	.tabl_list .cont_hori .cont_rght{margin-top: 20px;text-align: left;}
	.prod_deta .prod_info h1,.prod_deta .prod_info .prod_poin{padding-left: 0;width: 100%;float: none;}
	.prod_deta .prod_info .prod_poin{font-size: 20px;text-align: left;}
}