/*
========================================================================================================================
SM
========================================================================================================================
*/
/*.header { background: #333 }*/



/*
========================================================================================================================
LAYOUT
========================================================================================================================
Definición de los contenedores                                                                                        */

body {
	padding-top: 142px;
}
body.catalog {
	padding-top: 210px;
}
body.coronavirus-on.catalog {
	padding-top: 205px;
}



.content {
	position: relative;
}	



/*
========================================================================================================================
HEADER
========================================================================================================================
Cabecera principal que contiene el logotipo y los botones de navegación                                               */

.header {
	height: 55px;
	line-height: 55px;
}
	.header .logo img {
		height: 25px;
		width: auto;
	}
		.header .trigger {
			display: none;
		}
			.header .trigger i {
				line-height: 55px;
			}

		.header select {
			margin: 0 15px;
			width: calc( 100% - 30px );
		}

@media screen and (max-width: 1200px) {
	.header .container-fluid {
	  padding-right: 0;
	}
	.header button.trigger {
    width: 55px;
    height: 55px;
		line-height: 55px;
    top: 0;
    right: 0;
    left: auto;
	}
}

@media screen and (max-width: 1200px) {

	.sections li a {
		padding-left: 10px;
		padding-right: 10px;
	}

}

@media screen and (max-width: 1200px) {

	.header .trigger {
			display: inline-block;
		}

		 ul.sections {
			display: none;
			display: block;
			position: fixed;
			top: 0;
			bottom: 0;
			left: -100%;
			right: 120%;
			overflow-y: auto;
			background: #fff;
			z-index: 999999;
			transition: all 0.4s ease-out;
		}
			ul.sections.opened {
				left: 0;
				right: 55px;
				width: calc( 100% - 55px );
			}

				ul.sections li {
					display: block;
					border-bottom: 1px solid rgba(0,0,0,0.1);
					overflow: hidden;
				}

				ul.sections li:first-child {
					margin-right: 0;
					padding: 0;
				}
					ul.sections li a {
						color: #333;
						opacity: 1;
						display: block;
						cursor: pointer;
						text-align: right;
						font-size: 18px;
						line-height: 70px;
						float: none;
					}
					ul.sections li:nth-child(1) a {
						transition: all 0.2s ease;
						padding: 0 60px 0 0;
					}
					ul.sections li:nth-child(2) a {
						transition: all 0.4s ease;
						padding: 0 85px 0 0;
					}
					ul.sections li:nth-child(3) a {
						transition: all 0.6s ease;
						padding: 0 105px 0 0;
					}
					ul.sections li:nth-child(4) a {
						transition: all 0.8s ease;
						padding: 0 125px 0 0;
					}
					ul.sections li:nth-child(5) a {
						transition: all 0.9s ease;
						padding: 0 145px 0 0;
					}
					ul.sections li:nth-child(6) a {
						transition: all 1s ease;
						padding: 0 165px 0 0;
					}
					ul.sections li:nth-child(7) a {
						transition: all 1.1s ease;
						padding: 0 175px 0 0;
					}
					ul.sections li:nth-child(8) a {
						transition: all 1.2s ease;
						padding: 0 180px 0 0;
					}
					ul.sections li:nth-child(9) a {
						transition: all 1.3s ease;
						padding: 0 185px 0 0;
					}
					ul.sections.opened li a {
						padding-right: 20px;
						padding-left: 20px;
					}

				ul.sections li.selected a {
					color: #fff;
					/*background: #e91e63;*/
					background: #21438F;
				}
				ul.sections li.selected:before {
					display: none;
				}
				ul.sections li.selected i:before {
					color: #fff;
				}

			ul.sections li i {
				float: left;
				position: relative;
				top: 16px;
				left: 8px;
			}
			ul.sections li i:before {
				top: 10px;
				position: relative;
				padding-right: 10px;
				/*color: #e91e63;*/
				color: #21438F;
			}



			
			

		.header button.trigger {
			width: 55px;
			height: 50px;
			top: 0;
			right: 0;
			left: auto;
			transition: all 0.3s ease;
		}

		.overlay {
			opacity: 0;
			transition: all 1s ease;
		}
			.overlay.opened {
				display: block;
				position: fixed;
				top: 0;
				bottom: 0;
				right: 0;
				left: 0;
				background: rgba(0,0,0,0.8);
				z-index: 0;
				opacity: 1; 
			}

}


/*
========================================================================================================================
SUBHEDADER
========================================================================================================================
*/

.subheader {
	top: 55px;
	height: 70px;
	padding: 10px 0;
	background: #cbdde8;
}
	
	.subheader .btn,
	.subheader input {
		height: 50px;
		line-height: 50px;
   }

	.subheader .btn-navigation {
		width: 50px;
	}

	.subheader .icon-close,
	.subheader .icon-filter {
    padding: 14px 10px;
	}

	.subheader .searcher {
		margin: 0 10px;
		border-radius: 3px;
	}
		.subheader label {
			top: 18px;
			left: 18px;
		}
		.subheader input {
			padding: 0 15px 0 45px;
		}


/*
========================================================================================================================
MENU
========================================================================================================================
*/

.menu {
	position: fixed;
	width: 100%;
	top: 124px;
	left: 0;
	right: 0;
	height: 80px;
	padding-top: 5px;
	padding-left: 0;
	padding-right: 0;
	z-index: 888;
	background: #e0e0e0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	overflow-y: hidden;
}
	.menu ul {
		height: 163px;
		white-space: nowrap;
		overflow-y: hidden;
		overflow-x: auto;
	}
	.menu li {
		display: inline-block;
		width: 9%;
		min-width: 124px;
	}
		.menu li a {
			height: 69px;
			font-size: 10px;
			border-color: rgba(0,0,0,0.1);
			background: #eee;
		}
			.menu li a span {
				height: 20px;
				padding: 0;
				line-height: 20px;
			}
			.menu li a img {
				display: block;
				max-width: 100%;
				max-height: 45px;
			}
		.menu li.selected a {
			color: #333;
			background: #fff;
			border-color: #b3b3b3;
			opacity: 1;
		}


/*
========================================================================================================================
ITEMS
========================================================================================================================
*/

.items h2 {
	display: inline-block;
	height: 60px;
	line-height: 75px;
	font-size: 25px;
	margin: 0;
}

.items .options {
	float: right;
	padding-top: 20px;
}

.items ul.subcategories .title {
	line-height: 17px;
	padding-top: 5px;
	position: absolute;
	left: 15px;
	right: 15px;
}


	/* ITEMS > MODO GRID
	===================================================================================================================*/	

	.items ul.grid li {
		height: 340px;
	}
		.items ul.grid .title {
			line-height: 17px;
			padding-top: 5px;
			position: absolute;
			left: 15px;
			right: 15px;
			bottom: 78px;
			min-height: 63px;
		}
		.items ul.grid .price {
			position: absolute;
			bottom: 40px;
			left: 15px;
			right: 15px;
			height: 40px;
		}


	/* ITEMS > MODO LISTA
	===================================================================================================================*/	

	.items ul.list li:not(.group) {
		min-height: 340px;
		padding: 5px;
		margin: 8px 3px -2px 3px;
	}
		.items ul.list .on {
			position: absolute;
			top: 0;
			left: 0;
		}
			.items ul.list .title {
				height: 63px;
				line-height: 17px;
				margin-left: 5px;
				margin-right: 5px;
				margin-top: 5px;
			}
			.items ul.list .price {
				margin-left: 5px;
				margin-right: 5px;
				height: 40px;
																	line-height: 36px
			}
			.items ul.list .buttons {
				top: 296px;
				right: auto;
				bottom: auto;
			}


	/* ITEMS > PRECIO NETO Y PRECIO POR UNIDAD
	===================================================================================================================*/	

	.items .netprice {
		position: absolute;
		width: calc( 100% - 15px);
		bottom: 44px;
		font-size: 12px;
	}
		.cart .items .netprice {
			position: relative;
			bottom: initial;
		}

	.items ul.grid .show_net_price .price,
	.items ul.list .show_net_price .price {
		bottom: 56px;
		height: 23px;
		line-height: 23px;
	}


	/* ITEMS > RESPONSIVE
	====================================================================================================================*/

	@media screen and (max-width: 1023px) {

		.items ul.subcategories li {
			width: calc( 33.33% - 6px );
			margin: 3px;
		}

		.items ul.grid li {
			width: calc( 33.33% - 6px );
			margin: 3px;
		}

		.items ul.list li:not(.group) {
			padding-left: calc( 33.33% + 15px );
		}
			.items ul.list .on,
			.items ul.list .buttons {
				width: calc( 33.33% - 7px );
			}


	}
	@media screen and (min-width: 1024px) {

		.items ul.subcategories li {
			width: calc( 25% - 6px );
			margin: 3px;
		}

		.items ul.grid li {
			width: calc( 25% - 6px );
			margin: 3px;
		}

		.items ul.list li:not(.group) {
			padding-left: calc( 25% + 15px );
		}
			.items ul.list .on,
			.items ul.list .buttons {
				width: calc( 25% - 7px );
			}

	}
	@media screen and (max-width: 768px) {

		.items h2 {
			display: block;
			text-align: center;
			font-size: 22px;
			height: auto;
			line-height: 25px;
			margin-top: 15px;
			margin-bottom: 10px;
		}
		
		.items .options {
			padding-top: 10px;
			padding-bottom: 10px;
			width: 100%;
			text-align: left;
		}
			.items .options .grid {
				float: right;
			}

	}


/*
========================================================================================================================
FULLSCREEN
========================================================================================================================
*/

	@media screen and (orientation:portrait) {

		body.fullscreen-open .content {
			padding-top: 125px;
			padding-bottom: 45px;
		}

	}
	@media screen and (orientation:landscape) {
		
		body.fullscreen-open .content {
			padding-top: 105px;
			padding-bottom: 15px;
		}	

	}


	/* FULLSCREEN > CABECERA
	====================================================================================================================*/

	@media screen and (orientation:portrait) {

		#fullscreen .head {
			position: fixed;
			height: 75px;
			padding: 0 165px 0 90px;
			background: #333;
		}
			#fullscreen .image {
				width: 75px;
				height: 75px;
				line-height: 75px;
			}
				#fullscreen .image img {
					max-height: 71px;
					max-width: 71px;
				}

			#fullscreen .ref {
				line-height: 20px;
				font-size: 14px;
				padding: 15px 0 0 0;
				color: #fff;
			}
			#fullscreen .title {
				font-size: 18px;
				line-height: 24px;
				color: #fff;
			}

	}
	@media screen and (orientation:landscape) {

		#fullscreen .head {
			position: absolute;
			height: 90px;
			padding: 0 0 0 105px;
			right: 270px;
			border-bottom: 1px solid #ddd;
		}
			#fullscreen .image {
				width: 90px;
				height: 90px;
				line-height: 86px;
				border-right: 1px solid #ddd;
			}
				#fullscreen .image img {
					max-height: 84px;
					max-width: 84px;
				}

			#fullscreen .ref {
				line-height: 20px;
				font-size: 14px;
				padding: 24px 15px 0 0;
			}
			#fullscreen .title {
				font-size: 18px;
				line-height: 24px;
			}

	}	


	/* FULLSCREEN > NAVIGATION
	====================================================================================================================*/

	@media screen and (orientation:portrait) {

		#fullscreen .navigation {
			position: fixed;
			top: 0;
			right: 0;
			z-index: 888;
		}
		#fullscreen .navigation button {
			height: 75px;
			width: 75px;
			background: #333; 
		}
			#fullscreen button.prev {
				right: 75px;
				border-left: 1px solid #222;
			}
			#fullscreen button.next {
				right: 0;
			}
				#fullscreen .navigation i {
					line-height: 75px;
				}

	}
	@media screen and (orientation:landscape) {

		#fullscreen .navigation {
			position: fixed;
			top: 0;
			right: 0;
			z-index: 888;
		}
		#fullscreen .navigation button {
			height: 90px;
			width: 90px;
			background: #333; 
		}
			#fullscreen button.prev {
				right: 90px;
				border-left: 1px solid #222;
			}
			#fullscreen button.next {
				right: 0;
			}
				#fullscreen .navigation i {
					line-height: 90px;
				}

	}


	/* FULLSCREEN > TABS
	====================================================================================================================*/

	@media screen and (orientation:portrait) {

		#fullscreen .tabs {
			top: 75px;
			left: 0;
			right: 0;
			height: 50px;
		}
			#fullscreen .tabs button {
				width: 25%;
				height: 50px;
				line-height: 50px;
			}
				#fullscreen .tabs button i {
					padding-right: 10px;
					top: 1px;
				}
				#fullscreen .tabs button i.icon-360 {
					top: 8px;
	    		font-size: 30px;
	    		padding-right: 0;
				}
				#fullscreen .tabs button i.icon-360 + span {
					display: none;
				}

	}
	@media screen and (orientation:landscape) {

		#fullscreen .tabs {
			top: 90px;
			bottom: calc( (100% - 90px) / 5 );
			left: auto; 
			right: 0;
			width: 90px;
		}
			#fullscreen .tabs button {
				width: 100%;
				height: 25%;
				font-size: 20px;
				line-height: 25%;
				text-align: center;
				border-right: 0;
				border-left: 1px solid rgba(0,0,0,0.1);
			}
			#fullscreen .tabs button.actived {
				border-left: 1px solid #fff;
				border-bottom: 1px solid #ddd;
				background: #fff;
				color: #000;
			}
				#fullscreen .tabs button i.icon-360 {
					font-size: 30px;
				}
				#fullscreen .tabs button span {
					display: none;
				}

	}


	/* FULLSCREEN > TAB
	====================================================================================================================*/

	@media screen and (orientation:portrait) {
		
		#fullscreen .tab {
			width: 100%;
			padding: 30px;
		}

	}
	@media screen and (orientation:landscape) {

		#fullscreen .tab {
			width: calc(100% - 90px);
			padding: 30px;
		}

	}

	#fullscreen table.stock {
		margin: 0px auto 15px auto;
	}

	#fullscreen .image_big {
		margin: 30px 0 0 0;
	}		

	#fullscreen .texts {
		margin: 30px auto 0 auto;
	}
		#fullscreen .texts h2 {
			font-size: 24px;
			line-height: 28px;
			font-weight: 500;
			margin-bottom: 15px;
		}
		#fullscreen .texts p {
			font-size: 16px;
			line-height: 22px;
			font-weight: 400;
		}

	#fullscreen .tab.gallery {
		padding: 30px 15px 15px 15px;
	}

	@media screen and (orientation:portrait) {

		#fullscreen .tab.view360,
		#fullscreen .tab.video {
			top: 125px;
			bottom: 50px;
		}

	}
	@media screen and (orientation:landscape) {

		#fullscreen .tab.view360,
		#fullscreen .tab.video {
			top: 90px;
			bottom: 0;
		}

	}

	/* FULLSCREEN > ACCIONES
	====================================================================================================================*/

	@media screen and (orientation:portrait) {

		#fullscreen .actions {
			position: fixed;
			bottom: 0;
			left: 0;
			right: 0;
			height: 50px;
		}
		#fullscreen .actions button {
			line-height: 50px;
			width: 50%;
		}
		#fullscreen .actions button:first-child {
			border-right: 1px solid #ccc;
		}
			#fullscreen .actions button span {
				display: inline;
			}
			#fullscreen .actions button i {
				display: none;
			}

	}
	@media screen and (orientation:landscape) {

		#fullscreen button.cart {
			position: fixed;
			z-index: 999;
			top: 0;
			right: 180px;
			width: 90px;
			height: 90px;
			line-height: 90px;
			background: #fff;
			color: #333;
			border-bottom: 1px solid #ddd;
			border-left: 1px solid rgba(0,0,0,0.15);
		}
			#fullscreen button.cart span {
				display: none;
			}
			#fullscreen button.cart i:before {
				position: relative;
				top: 3px;
				content: "\e300";
				font-size: 20px;
			}

		#fullscreen button.minimize {
			font-size: 20px;
			position: fixed;
			z-index: 999;
			bottom: 0;
			right: 0;
			width: 90px;
			height: calc( ( ( 100% - 90px ) / 5 ) + 2px );
			line-height: calc( ( ( 100% - 90px ) / 5 ) + 2px );
			background: #e7e7e7;
			color: #333;
			border-left: 1px solid #ddd;
		}
			#fullscreen button.minimize span {
				display: none;
			}
			#fullscreen button.minimize i:before {
				content: "\e202";
			}

	}



/*
========================================================================================================================
TABLA DE TALLAS Y STOCK
========================================================================================================================
*/

@media screen and (max-width: 768px) {

	table.stock {
		font-size: 12px;
		line-height: 20px;
	}
	
}
@media screen and (min-width: 769px) {

	table.stock {
		font-size: 13px;
		line-height: 22px;
	}
	
}



/*
========================================================================================================================
CART
========================================================================================================================
*/

	/* CART > BREADCRUMB
	===================================================================================================================*/

	.breadcrumb li:first-child {
		width: calc( 20% + 15px);
	}
		.budget .breadcrumb li:first-child {
			width: calc( 33.33% + 15px);
		}

	.breadcrumb li:last-child {
		width: calc( 20% - 15px);
	}
		.budget .breadcrumb li:last-child {
			width: calc( 33.33% - 15px);
		}
		
		.breadcrumb li a {
			height: 50px;
			line-height: 50px;
			margin-right: 23px;
			padding: 0 10px 0 5px;
		}
		.breadcrumb li:first-child a {
			-moz-border-radius: 4px 0 0 4px;
			-webkit-border-radius: 4px;
			border-radius: 4px 0 0 4px;
			padding-left: 15px;
		}
		.breadcrumb li:last-child a {
			padding-right: 15px;
			-moz-border-radius: 0 4px 4px 0;
			-webkit-border-radius: 0;
			border-radius: 0 4px 4px 0;
		}
		.breadcrumb li a:before,
		.breadcrumb li a:after {
			border-width: 25px 10px;
		}
		.breadcrumb li a:before {
			left: -10px;
		}
	 
	@media screen and (max-width: 1023px) {

		.breadcrumb li span {
			display: none;
		}

	}


	/* CART > TITLE AND SUBTITLE
	===================================================================================================================*/

	.cart:not(.order) h1.title {
    font-size: 22px;
    line-height: 24px;
    border-bottom: 2px solid #ddd;
    padding-bottom: 15px;
	}
	.cart:not(.order) h2.subtitle {
    margin: 0 0 15px 0;
    padding: 15px 0;
    font-size: 16px;
    line-height: 18px;
    font-style: italic;
    font-weight: 400;
	}

	.cart.order h1.title {
    font-size: 22px;
    line-height: 24px;
		padding: 15px 15px 0 15px;
		margin-bottom: 0;
	}
	.cart.order h2.subtitle {
		margin: 0 0 20px 0;
		padding: 15px;
		font-size: 16px;
		line-height: 18px;
		font-weight: 400;
		font-style: italic;
	}


	/* CART > TABLE PRODUCTS
	===================================================================================================================*/
	table.products tbody .text span {
		padding: 0 10px;
	}



/*
========================================================================================================================
MODAL
========================================================================================================================
*/

.modal {
	top: 50px;
}
