@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700|Roboto:300,400,700,900&display=swap');

/*Estilos generales*/
body {
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	overflow-x: hidden;
	color: #57585A;
}

.Roboto {
	font-family: 'Roboto', sans-serif;
}

.RobotoCond {
	font-family: 'Roboto Condensed', sans-serif;
}

a,
button {
	color: #fff;
	transition: all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	-webkit-transition: all .2s ease-out;
}

a,
a:hover,
a:focus {
	text-decoration: none;
}

a:focus,
button:focus {
	outline: none;
}

.clearfix {
	clear: both;
	display: inline-block;
	height: 1%;
}

.visible-mobile {
	display: none;
}

.btn {
	color: #fff;
	border-radius: 0;
	border: 0;
	font-weight: 400;
	padding: 15px 50px;
	font-size: 16px;
	line-height: 1.3;
	text-align: center;
}

.btn-primary,
.btn-primary:visited {
	background-color: #003DA8;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled):active {
	background-color: #123d61;
	color: #fff;
}

.btn-default {
	color: #fff;
	background-color: #CCCCCC;
}

p {
	color: #333;
	font-size: 14px;
	font-weight: 400;
}

h1 {
	letter-spacing: -1px;
	font-size: 2.6em;
}

p.mude {
	color: #999;
	font-size: 13px;
}

.bg-intro {
	height: 100vh;
	width: 100%;
	position: relative;
	background: url("../images/bg_intro.jpg") #000 no-repeat center center;
}

.bg-intro header {
	background-color: rgba(0, 0, 0, 0.3);
}

.intro-content {
	position: absolute;
	width: 600px;
	height: 100px;
	top: 50%;
	left: 50%;
	margin-left: -300px;
	margin-top: -50px;
}

.intro-content a:first-child {
	float: left;
	width: 300px;
	background-color: #003DA8;
	color: #fff;
	padding: 20px;
	position: relative;
	text-align: center;
	height: 74px;
}

.intro-content a:first-child:before {
	content: "";
	position: absolute;
	left: -40px;
	top: 0;
	width: 0px;
	height: 0px;
	border-left: 40px solid transparent;
	border-right: 0 solid transparent;
	border-top: 74px solid #003DA8;
}

.intro-content a:last-child {
	float: right;
	width: 300px;
	background-color: #003E92;
	color: #fff;
	position: relative;
	padding: 20px;
	height: 74px;
	text-align: center;
}

.intro-content a:last-child:before {
	content: "";
	position: absolute;
	right: -40px;
	top: 0;
	width: 0px;
	height: 0px;
	border-right: 40px solid transparent;
	border-left: 0 solid transparent;
	border-bottom: 74px solid #003E92;
}

.intro-content a span {
	color: #fff;
	display: block;
	font-size: 20px;
	font-weight: 800px;
	font-family: 'Roboto Condensed', sans-serif;
}

.title {
	font-family: 'Roboto Condensed', sans-serif;
	color: #000;
	position: relative;
	font-weight: 400;
	letter-spacing: -1px;
	font-size: 40px;
}

.titlemt60 {
	margin-top: 60px;
}

.titlemt100 {
	margin-top: 100px;
}

.title b {
	font-weight: 900;
}

.subtitle {
	font-family: 'Roboto Condensed', sans-serif;
	/* color: white; */
	position: relative;
	font-size: 28px;
	font-weight: 400;
	letter-spacing: -1px;
	margin-bottom: 30px;
}

/* .subtitle:after{
	content:"";
	border-bottom:4px solid #0093D0;
	width:50px;
	position:absolute;
	bottom:-15px;
	left:0;
} */
.subtitle b {
	font-weight: 900;
}

header {
	padding: 3px 0 0;
	height: 140px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	position: absolute;
	width: 100%;
	z-index: 99999;
}

header .brand {
	display: inline-block;
	padding: 40px 0;
}

header .brand img {
	display: inline-block;
	width: auto;
	height: 35px
}

header .navbar {
	margin: 0;
	border: 0;
	border-radius: 0;
}

header .navbar-toggle {
	margin: 20px 15px;
}

header .navbar-container {
	padding: 0;
	position: relative;
}

header .nav li {
	margin: 0 5px;
	position: relative;
	bottom: -1px;
}

header .nav a {
	transition: none;
	color: #fff;
	font-weight: 700;
	opacity: 1;
	text-transform: uppercase;
	padding: 57px 15px;
	border-bottom: 3px solid transparent;
}

header .nav .active a,
header .nav .active a:hover,
header .nav a:hover,
header .nav a:focus {
	background-color: transparent;
	border-color: #003E92;
}

.nav>li.nav-mobile {
	display: none;
}

#megamenu {
	background-color: rgba(255, 255, 255, 1);
	top: 140px;
	position: absolute;
	width: 100%;
	z-index: 9999;
}

.megamenu {
	left: 0;
	right: 0;
	padding: 0;
	margin: 25px 0;
	text-align: left;
	display: flex;
	align-items: stretch;
	flex-flow: center;
	list-style: none;
}

.megamenu img {
	width: 85%;
}

.megamenu p {
	color: #666;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 30px;
}

.megamenu h3 {
	font-size: 24px;
	font-weight: 700;
}

.divRubro {
	/* padding: 10%;
	border: 1px solid black;
	border-radius: 1rem !important;
	margin: 1%;
	text-align: center;
	box-shadow: 2px 12px 15px rgba(0, 0, 0, 0.3);
	background: rgb(2,53,95);
	background: linear-gradient(0deg, rgba(2,53,95,1) 6%, rgba(0,94,167,1) 100%); */
	color: white;
	text-align: center;
	align-content: center;
	font-size: 18px;
	padding-bottom: 10%;
	height: 204px;
}

.h-social {
	float: right;
}

.h-social {
	margin: 0;
	padding: 0;
	margin-left: 30px !important;
	list-style: none;
	margin: 52px 0%;
}

.h-social>a {
	display: inline-block;
	/* padding:3% 10px; */
	/* border: 1px solid black; */
	border-radius: 0.5rem !important;
	background-color: #003DA8;

	height: 30px;
	width: 30px;
	text-align-last: center;
	align-content: center;
}

.h-social-materiales a {
	background-color: #003E92;
}

.h-social>a>img {
	height: 17px;
}

header .lang {
	position: absolute;
	top: 5px;
	right: 20px;
	color: #fff;
}

.social {
	margin: 0;
	padding: 0;
	list-style: none;
}

.social li {
	display: inline-block;
}

.social li a {
	display: block;
	padding: 4px;
}

.social li a img {
	width: 100%;
}

.cbp-bicontent {
	padding: 80px 0 0;
	color: #fff;
	max-height: 1100px;
}

.cbp-bislideshow {
	background-color: #08255D;
	height: 80vh;
}

#presentacion {
	height: 80vh;
	position: relative;
	z-index: 999;
}

#presentacion .container {
	height: 80vh;
	position: relative;
}

#presentacion .container .caption {
	height: 50vh;
	padding: 28vh 0;
	z-index: 999;
	position: relative;
}

.rowTipoProd {
	position: absolute;
	width: 100%;
	bottom: -60px;
	z-index: 99999;
}

.btnTipoProd {
	/* background: rgb(2,53,95);
	background: linear-gradient(0deg, rgba(2,53,95,1) 6%, rgba(0,94,167,1) 100%); */
	background: rgb(0, 0, 0);
	background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 14, 39, 1) 7%, rgba(0, 61, 168, 1) 100%);
	color: white;
	height: 150px;
	border-radius: 2rem !important;
	width: 17%;
	padding: 1%;
	box-shadow: 2px 12px 15px rgba(0, 0, 0, 0.3);
	font-size: 16px;
	font-weight: bold;
	border: 0px
}

.modal-content {
	border: none;
}

.btnTipoProd img {
	width: 80%;
}

.cbp-bislideshow h2 {
	font-size: 28px;
	color: #fff;
	margin: 0 0 10px;
	font-weight: 300;
}

.cbp-bislideshow h1 {
	font-size: 60px;
	color: #fff;
	margin: 0 0 30px;
	font-weight: 900;
	position: relative;
}

.cbp-bislideshow p {
	color: #fff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.4;
	margin-bottom: 20px;
	height: 80px !important;
}

.cbp-bislideshow .btn {
	margin-top: 30px;
}

.product-tabs {
	padding: 60px 0;
}

.product-tabs .nav-tabs {
	border-bottom: 0;
	display: inline-block;
}

.product-tabs .nav-tabs>li {
	margin-bottom: 0;
}

.product-tabs .nav-tabs>li>a {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 20px;
	font-weight: 400;
	border: 0;
	color: #666;
	border-radius: 0;
	padding: 0 12px;
	border-right: 2px solid #666;
	margin-right: 0;
}

.product-tabs .nav-tabs>li.active>a,
.product-tabs .nav-tabs>li.active>a:focus,
.product-tabs .nav-tabs>li.active>a:hover {
	/* color:#005DA7; */
	border: 0;
	border-right: 2px solid #666;
}

.product-tabs .nav-tabs>li:last-child>a,
.product-tabs .nav-tabs>li:last-child>.active>a,
.product-tabs .nav-tabs>li:last-child>.active>a:focus,
.product-tabs .nav-tabs>li:last-child>.active>a:hover {
	border-right: 0 !important;
}

.product-tabs nav>li>a:focus,
.product-tabs .nav>li>a:hover {
	background-color: transparent;
}

.product-tabs .tab-content {
	padding-top: 40px;
}

.tab-content b {
	color: black;
}

.product-tabs .tab-content .tab-pane ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	position: relative;
}

.btnMasInfo {
	/* margin-top: 2%; */
	padding: 9px 20px;
}

.product-tabs .tab-content .tab-pane ul li {
	width: calc(22% - 30px);
	padding: 40px 15px;
	text-align: left;
}

.product-tabs .tab-content .tab-pane ul li.labelled {
	width: 1%;
	position: relative;
	padding: 0;
}

.product-tabs .tab-content .tab-pane ul li.labelled:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 170px;
	width: 2px;
	border-left: 2px solid #ccc;
}

.product-tabs .tab-content .tab-pane ul li.labelled span {
	position: absolute;
	top: 0;
	left: 10px;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 18px;
	font-weight: 400;
	color: #000;
}

.product-tabs .tab-content .tab-pane ul li img {
	width: 100%;
}

.product-tabs .tab-content .tab-pane ul li a b {
	display: block;
	min-height: 50px;
}

.product-tabs .tab-content .tab-pane ul li p {
	line-height: 1.2;
}

.block-news {
	padding: 60px 0;
}

.block-news article {
	padding: 0;
	background-color: #003DA8;
}

.block-news article figure {
	position: relative;
	overflow: hidden;
	margin: 0;
}

.block-news article figure .img {
	height: 260px;
	width: 100%;
}

.block-news article figure .social {
	position: absolute;
	right: 10px;
	top: 10px;
	z-index: 9;
}

.block-news article figure .social li a img {
	height: 16px;
	width: auto;
}

.block-news article .caption {
	padding: 30px;
	margin: 0;
}

.block-news article .caption .date {
	font-size: 16px;
	color: #fff;
	margin-bottom: 30px;
	position: relative;
}

.block-news article .caption .date:after {
	content: "";
	border-bottom: 3px solid #0093D0;
	width: 50px;
	position: absolute;
	bottom: -12px;
	left: 0;
}

.block-news article .caption a {
	display: block;
}

.block-news article .caption h1 {
	color: #fff;
	font-size: 22px;
	font-weight: 300;
	line-height: 1.3;

}

.prefooter {
	/* background-color:#F2F2F2; */
	background: linear-gradient(to bottom, #ffffff 50%, #F2F2F2 50%);
	padding: 40px 0;
}

.prefooter .btn-prefooter {
	display: block;
	padding: 5%;
	padding-top: 20%;
	height: 150px;
	align-content: end;
	/* padding-bottom: 1
	/* padding:15px; */
	/* background-color:#005DA7; */
	/* background-image: url('/web/images/banner_envios.jpg'); */
	background-size: cover;
	color: #fff;
}

.prefooter .btn-prefooter:hover {
	background-color: #123d61;
}

.prefooter .btn-prefooter img {
	height: 40px;
	margin-bottom: 20px;
}

.prefooter .btn-prefooter p {
	color: #fff;
	font-size: 18px;
	position: relative;
	padding-right: 30px;
	margin-bottom: 0;
}

.prefooter .btn-prefooter p i {
	position: absolute;
	right: 0;
	top: 0;
	height: 20px;
	display: inline-block;
	width: 20px;
	background: url(../images/chevron.svg) no-repeat bottom right;
}

.prefooter .btn-prefooter h3 i {
	position: absolute;
	right: 40px;
	bottom: 25px;
	height: 24px;
	display: inline-block;
	width: 36px;
	background: url(../images/chevron.svg) no-repeat bottom right;
}

footer {
	position: relative;
	color: #fff;
	background-color: #003DA8;
	padding: 30px 0;
}

footer .bordered {
	border-top: 1px solid #ffffff66;
	border-bottom: 1px solid #ffffff66;
	margin: 30px auto;
	padding: 30px 0;
}

footer .container {
	padding-right: 0;
	padding-left: 0;
}

footer .brand-footer {
	width: auto;
	height: 40px;
	display: inline-block;
	margin: 10px auto;
}

footer .social {
	text-align: right;
}

footer .social li a {
	/* padding:12px 15px;
	padding: 10px; */
	border: 2px solid;
	border-radius: 0.5rem !important;

	height: 40px;
	width: 40px;
	text-align-last: center;
	align-content: center;

}

footer .social li a img {
	height: 24px;
	width: auto;
}

footer .copyright {
	font-size: 14px;
	color: #fff;
}

footer .menu-footer {
	margin: 20px 0;
	padding: 0;
	list-style: none;
	text-align: right;
}

footer .menu-footer li {
	display: inline-block;
}

footer .menu-footer li a {
	display: block;
	padding: 0 14px;
}

footer .menu-footer li:last-child a {
	padding-right: 0;
}

.subfooter {
	padding: 20px 0;
	background-color: #000000;
	position: relative;
}

.subfooter .container {
	padding-right: 0;
	padding-left: 0;
}

.subfooter .agency {
	float: right;
}

.subfooter .agency img {
	height: 9px;
}

.menu-aside {
	position: fixed;
	top: 36%;
	right: 0;
	width: 50px;
	list-style: none;
	padding: 0;
	margin: 0;
	z-index: 9999;
}

.menu-aside li {
	display: block;
	width: 50px;
	height: 50px;
	margin-bottom: 1px;
	position: relative;
}

.menu-aside li a {
	border-radius: 4rem !important;
	display: block;
	height: 50px;
	width: 200px;
	padding: 12px;
	background-color: #009FE3;
	/*Azul  #003E92; */
	position: relative;
	left: 0;
}

.menu-aside li a span {
	line-height: 16px;
	padding-left: 14px;
}

.menu-aside li a:hover {
	background-color: #003DA8;
	left: -120px;
}

.menu-aside li a:hover span {
	color: #fff;
}

.menu-aside li a img {
	width: 26px;
	height: 26px;
}

.menu-aside li:nth-child(5) a {
	background-color: #0093D0;
}

.menu-aside li:nth-child(5) a:hover {
	background-color: #000F21;
}

/*Paginas internas*/
.top-banner {
	height: 250px;
}

.top-banner-interio-productos {
	height: 250px;
}

.top-about {
	background: url("../images/banner_about.jpg") #08255D no-repeat bottom center;
}

.top-products {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	height: 60vh;
	/*100vh;*/
}

.top-contact {
	background: url("../images/banner_contact.jpg") #08255D no-repeat bottom center;
}

.top-news {
	background: url("../images/banner_novedades.jpg") #08255D no-repeat bottom center;
}

.top-calidad {
	background: url("../images/banner_calidad.jpg") #08255D no-repeat bottom center;
}

.top-tiendacotizacion {
	background: url("../images/banner_tiendacotizacion.jpg") #08255D no-repeat bottom center;
}

.top-envios {
	background: url("../images/IMAGEN-TOP-MATERIALES.webp") #08255D no-repeat bottom center;
}

.top-productosmetalurgicos {
	background: url("../images/IMAGEN-TOP-MATERIALES.webp") #08255D no-repeat top center;
}

.top-usados {
	background: url("../images/IMAGEN-TOP-USADOS.webp") #08255D no-repeat top center;
}

.top-autoparts {
	/*background:url("../images/banner_autoparts.jpg") #08255D no-repeat bottom center;*/
	background: url("../images/IMAGEN-TOP-TIENDA-DE-REPUESTOS.webp") #08255D no-repeat bottom center;
}

.top-locations {
	background: url("../images/banner_locations.jpg") #08255D no-repeat bottom center;
}

.top-plandeahorro {
	background: url("../images/IMAGEN-TOP-PLAN-DE-AHORRO.webp") #08255D no-repeat bottom center;
}

.top-postventa {
	background: url("../images/IMAGEN-TOP-SERVICIO-POST-VENTA.webp") #08255D no-repeat bottom center;
}

.content {
	padding: 60px 0;
}

.content p {
	margin-bottom: 30px;
	line-height: 1.5;
	font-size: 16px;
	font-weight: 400;
	color: #666;
}

.content .text-blue {
	font-size: 20px;
	color: #0093D0;
	font-weight: 300;
}

.content .product-thumb {
	margin-top: 50px;
}

.content .product-thumb.row {
	margin-left: 3px;
	margin-right: 3px;
}

.content .product-thumb .col-xs-4 {
	padding-left: 3px;
	padding-right: 3px;
}

.content .product-thumb .thumbnail {
	border: 0;
	padding: 0;
}

.content .product-thumb .thumbnail .caption {
	background-color: #08255D;
	color: #fff;
	padding: 20px 10px;
	text-align: center;
	min-height: 115px;
}

.content .product-thumb .thumbnail .caption p {
	color: #fff;
	line-height: 1.2;
	margin: 0;
}

.banners {
	position: relative;
	margin-bottom: 60px;
}

.banners .banners-img.container-fluid,
.banners .banners-img .row,
.banners .banners-img .col-xs-12 {
	margin: 0;
	padding: 0;
}

.banners .banners-img img {
	width: 100%;
}

.banners .banners-content {
	position: relative;
}

.block-banner {
	background-color: #003DA8;
	padding: 50px;
	color: #fff;
	position: relative;
	min-height: 450px;
	margin-top: -80px;
	margin-bottom: 30px;
}

.block-banner h2 {
	color: #0093D0;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 150px;
	position: absolute;
	right: 5px;
	top: 5px;
	margin: 0;
	line-height: 1;
	font-weight: 400;
}

.block-banner h1 {
	color: #fff;
	margin-top: 60px;
	margin-bottom: 40px;
	font-size: 22px;
	font-weight: 400;
	position: relative;
}

.block-banner h1:before {
	content: "";
	border-bottom: 4px solid #0093D0;
	width: 50px;
	position: absolute;
	top: -30px;
	left: 0;
}

.block-banner.celeste {
	min-height: 350px !important;
}

.block-banner.celeste h1:before {
	content: "";
	border-bottom: 4px solid #003DA8;
	width: 50px;
	position: absolute;
	top: -30px;
	left: 0;
}

.block-banner p {
	color: #fff;
	margin-bottom: 30px;
}

.text-list {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 40px;
}

.text-list li {
	margin-bottom: 20px;
	font-size: 16px;
	color: #666;
	position: relative;
	padding-left: 20px;
}

.text-list li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 7px;
	width: 10px;
	height: 10px;
	background-color: #003DA8;
}

.knowmore {
	margin: 40px 0;
}

.knowmore p {
	color: #000;
	font-weight: 700;
	font-size: 18px;
	margin-bottom: 15px;
}

.title-p {
	color: #000 !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	margin-bottom: 15px !important;
	text-transform: uppercase !important;
}

.banner-aside {
	width: 100%;
	max-width: 410px;
}

.catalog-header {
	position: relative;
}

.catalog-header select {
	max-width: 250px;
	position: absolute;
	bottom: 0;
	right: 0;
}

.catalog-list {
	margin-bottom: 60px;
	display: flex;
	flex-wrap: wrap;
}

/* Estilos mejorados para la paginación */
.custom-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px 0;
}

.custom-pagination .pagination {
	margin: 0;
	display: flex;
	list-style: none;
	padding: 0;
	gap: 5px;
	flex-wrap: wrap;
	justify-content: center;
}

.custom-pagination .pagination li {
	display: inline-block;
}

.custom-pagination .pagination li a,
.custom-pagination .pagination li span {
	display: inline-block;
	padding: 10px 15px;
	margin: 0 2px;
	border-radius: 4px;
	color: #333;
	background-color: #fff;
	border: 1px solid #ddd;
	font-size: 14px;
	font-weight: 500;
	transition: all 0.3s ease;
	min-width: 40px;
	text-align: center;
}

.custom-pagination .pagination li a:hover {
	background-color: #007bff;
	color: #fff;
	border-color: #007bff;
	text-decoration: none;
}

.custom-pagination .pagination li.active span,
.custom-pagination .pagination li.active a {
	background-color: #007bff;
	color: #fff;
	border-color: #007bff;
	font-weight: 600;
}

.custom-pagination .pagination li.disabled span,
.custom-pagination .pagination li.disabled a {
	background-color: #f5f5f5;
	color: #999;
	border-color: #e0e0e0;
	cursor: not-allowed;
}

.custom-pagination .pagination li.disabled span:hover,
.custom-pagination .pagination li.disabled a:hover {
	background-color: #f5f5f5;
	color: #999;
	border-color: #e0e0e0;
}

/* Estilo especial para botones Anterior/Siguiente */
.custom-pagination .pagination li:first-child a,
.custom-pagination .pagination li:first-child span,
.custom-pagination .pagination li:last-child a,
.custom-pagination .pagination li:last-child span {
	padding: 10px 20px;
	font-weight: 600;
}

/* Ocultar input de salto si existe */
.custom-pagination .pagination input[type="text"],
.custom-pagination .pagination input[type="number"] {
	display: none;
}

.catalog-list article {
	border: 1px solid #ccc;
	padding: 0px;
	margin: 0 0 15px;
	background: #fff;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.catalog-list article:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.catalog-list article figure {
	padding-bottom: 65% !important;
	/* Reducido de 90% a 65% para más compacto */
	display: block;
	height: 0;
	overflow: hidden;
	position: relative;
	z-index: 1;
	margin: 0;
	width: 100%;
	background: #f8f9fa;
}

.catalog-list article figure img {
	vertical-align: top;
	bottom: 0;
	display: block;
	height: auto;
	left: 0;
	margin: auto;
	max-width: 100%;
	position: absolute;
	right: 0;
	top: 0;
}

.catalog-list article figure .badge {
	position: absolute;
	top: 0;
	right: 0;
	padding: 4px 12px;
	background-color: #FF6600;
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	border-radius: 0 0 0 4px !important;
	z-index: 3;
	font-family: "Roboto Condensed", sans-serif;
}

#form_excel_importacion {
	text-align: center;
	margin-bottom: 5%;
	background-color: red;
}

/* .catalog-list article figure .badge:after{
	content:"";
	position:absolute;
	top:20px;
	right:0;
	width: 0px;
	height: 0px;
	border-left: 10px solid transparent;
	border-right: 0;
	border-top: 10px solid #FF6600;
} */
.catalog-list article .name {
	color: #333;
	font-size: 15px;
	line-height: 1.3;
	height: 42px;
	overflow: hidden;
	margin: 12px 10px 8px;
	font-family: "Roboto Condensed", sans-serif;
	padding: 0;
	font-weight: 500;
}

.catalog-list article .price {
	color: #003DA8;
	font-size: 22px;
	line-height: 1.2;
	margin: 0 10px 5px;
	font-weight: 700;
	padding: 0;
	font-family: "Roboto Condensed", sans-serif;
}

.price {
	color: #003DA8;
	font-size: 22px;
	line-height: 1.2;
	margin: 0 10px 5px;
	font-weight: 700;
	padding: 0;
	font-family: "Roboto Condensed", sans-serif;
}

.unidadVenta {
	color: #666;
	font-size: 13px;
	line-height: 1.2;
	margin: 0 10px 10px;
	font-weight: 400;
	padding: 0;
	font-family: "Roboto Condensed", sans-serif;
}

.containerUnidadVenta {
	display: block;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 8px;
}

.catalog-list article .buttons {
	text-align: center;
	padding: 0 10px 8px;
}

.catalog-list article .buttons .btn {
	margin: 0 1px;
	width: 48%;
	display: inline-block;
	padding: 8px 4px;
	font-size: 13px;
	border-radius: 4px;
	font-weight: 600;
}

.product-title {
	position: relative;
	padding: 210px 0 0;
	z-index: 99;
	text-align: center;
}

.product-title h2 {
	font-size: 28px;
	color: #fff;
	margin-top: 0;
	font-weight: 300;
	margin-bottom: 15px;
}

.product-title h1 {
	font-size: 40px;
	color: #fff;
	margin-top: 0;
	font-weight: 900;
}

.direct-access {
	position: relative;
}

.direct-access .da-link {
	display: block;
	padding: 30px;
	/* background-color:#003DA8; */
	background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 14, 39, 1) 7%, rgba(0, 61, 168, 1) 100%);
	color: #fff;
	margin-top: -60px;
	border-radius: 2rem !important;
	text-transform: uppercase;
	font-weight: 700;
}

.direct-access .da-link p {
	margin-top: 0%;
}

.direct-access .da-link img {
	height: 40px;
	margin-bottom: 20px;
}

.direct-access .da-link p {
	color: #fff;
	font-size: 18px;
	position: relative;
	padding-right: 30px;
	margin-bottom: 0;
}

.direct-access .da-link p i {
	position: absolute;
	right: 0;
	top: 0;
	height: 20px;
	display: inline-block;
	width: 20px;
	background: url(../images/chevron.svg) no-repeat bottom right;
}

.data-list {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 40px;

}

.data-list li {
	font-size: 16px;
	min-height: 15px;
	/* min-height: 34px; */
	color: #666;
	position: relative;
	padding-left: 20px;
	padding-right: 130px;
}

.data-list.ulZonasEnvio {
	margin-bottom: 5px;
	min-height: 825px;
	padding: 10%;
}

.data-list.ulZonasEnvio li,
.data-list.ulZonasEnvio .subtitle {
	color: white !important;
}

.data-list.ulZonasEnvio li {
	padding-right: 0px;
	min-height: 28px;
}

.data-list li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 6px;
	width: 10px;
	height: 10px;
	background-color: #000;
	border-radius: 50%;
}

.data-list li .buttons {
	position: absolute;
	top: 0;
	right: 0;
}

.data-list li .buttons .btn {
	font-size: 13px;
	padding: 8px 12px;
	display: inline-block;
	margin-left: 3px;
}

.scrolloff {
	pointer-events: none;
}

.contact-info {
	padding: 60px 0 0;
}

.contact-info p {
	font-weight: 400;
}

.liIconEmpresa {
	width: 40% !important;
	align-content: center;
}

.liIconEmpresa img {
	width: 90%;
}

@media(max-width: 769px) {
	.liIconEmpresa img {
		width: 50%;
	}

	.prefooter {
		background: #F2F2F2;
	}

	.menu-aside li a {
		/* border-radius: 0% !important; */
	}

	.divRubro {
		background-repeat: round;
	}

	.prefooter {
		padding-top: 0%;
		padding-bottom: 0%;
	}

	.main-picture {
		height: 300px !important;
	}
}

.data-contact {
	text-align: center;
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-flow: row nowrap;
}

.data-contact li {
	background-color: #003DA8;
	color: #fff;
	width: calc(20% - 20px);
	/* padding:40px 10px; */
	padding: 30px 5px;
	margin: 5px;
	border-radius: 2rem !important;
	align-content: center;
}

.data-contact img {
	height: 60px;
	margin: auto;
	display: block;
	margin-bottom: 5px;
}

.data-contact p {
	text-align: center;
	font-size: 12px;
	line-height: 1.3;
	font-weight: 300;
	color: #fff;
	margin: 0;
}

.contact-form {
	padding: 60px 0;
}

.buy-form {
	padding-top: 40px;
}

.form input,
.form select,
.form-control {
	height: 44px;
	padding: 8px 12px;
	font-size: 16px;
	color: #333;
	font-weight: 400;
}

.form input,
.form select,
.form textarea,
.form-control {
	border-radius: 0;
	box-shadow: none;
	border: 1px solid #EEEEEE;
	background: #EEEEEE;
}

.form input:focus,
.form select:focus,
.form textarea:focus,
.form input:active,
.form select:active,
.form textarea:active {
	box-shadow: none;
	border-color: #FF6600;
}

.form .form-group {
	/*margin-bottom:25px;*/
	position: relative;
}

.form .form-action {
	text-align: left;
}

.form input:required,
.form textarea:required {
	background: #EEEEEE url(../images/red_asterisk.png) no-repeat 98% center;
}

.form input:required:valid,
.form textarea:required:valid {
	background: url(../images/valid.png) no-repeat 98% center;
	background-color: #EEEEEE;
}

.form input:focus:invalid,
.form textarea:focus:invalid {
	background: url(../images/invalid.png) no-repeat 98% center;
	background-color: #EEEEEE;
}

.form_hint {
	background: #d45252;
	border-radius: 3px 3px 3px 3px;
	color: white;
	margin-left: 8px;
	padding: 1px 6px;
	z-index: 999;
	position: absolute;
	display: none;
}

.form_hint::before {
	content: "\25C0";
	color: #d45252;
	position: absolute;
	top: 1px;
	left: -6px;
}

.form input:focus+.form_hint {
	display: inline;
}

.form input:required:valid+.form_hint {
	background: #28921f;
}

.form input:required:valid+.form_hint::before {
	color: #28921f;
}

#mensajes .thanks {
	font-size: 18px;
	padding: 10px;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	font-weight: 600;
	background-color: #89C04A;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}

#mensajes .thanks_error {
	font-size: 14px;
	padding: 6px;
	line-height: 120%;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	font-weight: 700;
	background-color: #C35F63;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}

.working {
	margin-bottom: 20px;
	font-family: "Open Sans", sans-serif;
	font-size: 18px;
	padding: 10px;
	text-align: center;
	border-radius: 4px;
	color: #999;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	font-weight: 600;
	background-color: #ddd;
	text-shadow: 0 -1px 0 rgba(255, 255, 255, 0.2);
}

label.error {
	font-size: 13px;
	color: red;
	font-weight: 300;
	position: absolute;
	left: 0;
	padding: 2px 0;
	background: transparent;
	margin-top: 3px;
}

.form input.error,
.form textarea.error {
	color: #e9322d;
	border-color: #e9322d;
	background-color: #F5E0E0;
}

.form input.valid,
.form textarea.valid {
	border-color: #85B200;
}

.map {
	height: 350px;
}

.dealers-map .map-wrapper {
	margin-bottom: 60px;
}

.dealers-map .map-wrapper .dealers-list {
	background-color: #F1F1F1;
	overflow-y: auto;
	height: 300px;
	margin-bottom: 10px;
}

@media (min-width: 768px) {
	.btnTipoProd img {
		width: 60%;
	}
}

@media screen and (min-width: 575px) {
	.dealers-map .map-wrapper .dealers-list {
		height: 538px;
	}

	.RobotoCond br {
		display: none;
	}
}

.dealers-map .map-wrapper .dealers-list li {
	list-style: none;
	padding: 15px;
	padding-bottom: 0px;
	-moz-transition: all, .3s;
	-o-transition: all, .3s;
	-webkit-transition: all, .3s;
	transition: all, .3s;
}

.dealers-map .map-wrapper .dealers-list .dealer-item {
	border-bottom: 1px solid white;
}

.dealers-map .map-wrapper .dealers-list li h4 {
	cursor: pointer;
}

.dealers-map .map-wrapper .dealers-list li a {
	color: #333;
}

.dealers-map .map-wrapper .map {
	margin-bottom: 10px;
	height: 600px;
}

.dealers-map .map-wrapper .dropdown {
	background: #f0f0f0;
	padding: 10px;
}

.dealers-map .map-wrapper .map .gmap {
	height: 100%;
}

.gm-style {
	font: 400 11px Roboto, Arial, sans-serif;
	text-decoration: none;
}

.dropdown__button {
	text-align: left;
	color: #333;
	display: inline-block;
	background: white;
	border: 1px solid #999;
	padding: 10px;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	-ms-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	font-size: 16px !important;
	margin-left: 0;
	width: 100%;
}

/* Estilo genérico para dropdowns - NO aplica al carrito */
.dropdown:not(.cart) .dropdown-menu {
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	border-radius: 0px;
	padding: 0px;
	max-height: 300px;
	overflow: auto;
	z-index: 1080;
	border: 1px solid #999;
	margin-top: -1px;
	top: auto;
	width: 340px;
	left: 10px;
}

.dropdown-item {
	display: block;
	width: 100%;
	padding: .5em 1.5em;
	clear: both;
	font-weight: 400;
	color: #212529;
	text-align: inherit;
	white-space: nowrap;
	background-color: transparent;
	border: 0;
}

.dropdown-toggle::after {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	border-top: .3em solid;
	border-right: .3em solid transparent;
	border-bottom: 0;
	border-left: .3em solid transparent;
	float: right;
	margin-top: .5em;
	margin-left: 10px;
}

.gm-style-iw-d a {
	color: #003DA8;
}

.btn-up {
	position: absolute;
	right: 20px;
	bottom: 20px;
}

.btn-up {
	opacity: 0.7;
	font-weight: bold;
	font-size: 13px;
	color: #fff;
}

.btn-up:hover {
	opacity: 1;
	color: #fff;
}

.btn-up img {
	display: inline-block;
	height: 12px;
	margin-left: 3px;
	position: relative;
	top: -2px;
}



/*Directivas del Responsive*/
@media (max-width:1359px) {
	.btn-up {
		right: auto;
		left: 50%;
		margin-left: -30px;
		bottom: 10px;
	}
}

@media (max-width:1199px) {
	header {
		height: 120px;
	}

	header .brand img {
		height: 36px;
	}

	header .nav a {
		font-weight: 400;
		padding: 47px 10px;
	}

	.h-social {
		margin: 42px 0%;
	}

	.h-social>a {
		padding: 3% 10px;
	}

	.h-social>a>img {
		height: 16px;
	}

	#presentacion .container .caption {
		margin-left: 30px;
	}

	#megamenu {
		top: 120px;
	}

	.megamenu .title {
		font-size: 32px;
	}

	.megamenu p {
		font-size: 16px;
	}

	.prefooter .container,
	.prefooter .container .row .col-xs-12 {
		padding-left: 7px;
		padding-right: 7px;
	}

	.prefooter .container .row {
		margin-left: -7px;
		margin-right: -7px;
	}

	.prefooter .btn-prefooter p {
		font-size: 16px;
		padding-right: 20px;
	}

	footer {
		padding: 20px 0;
	}

	footer .bordered {
		margin: 20px auto;
		padding: 20px 0;
	}

	footer .brand-footer {
		height: 40px;
	}

	footer .copyright {
		font-size: 12px;
	}

	footer .menu-footer li a {
		padding: 0 15px;
	}

	footer .social li a {
		padding: 10px;
		border: 2px solid;
		border-radius: 0.5rem !important;
	}

	footer .social li a img {
		height: 20px;
	}

	.subfooter {
		padding: 10px 0;
		padding-bottom: 70px;
	}

	.block-news article figure .img {
		height: 220px;
	}

	.block-banner {
		min-height: 450px;
	}

	.video {
		width: 100%;
	}

	.catalog-list article .name {
		font-size: 18px;
		height: 40px;
	}

	.catalog-list article .buttons .btn,
	.infoVendido {
		margin: 1px;
		width: 48%;
		padding: 12px 5px;
		font-size: 12px;
	}

	.direct-access .da-link p {
		font-size: 16px;
	}

	.data-contact li {
		width: calc(20% - 10px);
		padding: 20px 5px;
		margin: 5px;
	}

	.data-contact p {
		font-size: 13px;
	}

	.btnTipoProd {
		font-size: 16px;
	}
}

@media (max-width:992px) {
	.btnTipoProd {
		font-size: 12px;
	}

	.h-social {
		position: absolute;
		right: 0px;
		top: 5px;
	}

	.h-social>a {
		padding: 0 5px;
	}

	.h-social>a>img {
		height: 14px;
	}

	header .lang {
		top: 7px;
		right: 90px;
	}

	.navbar-right {
		margin-right: -20px;
	}

	header .nav li {
		margin: 0;
	}

	.megamenu-caption {
		position: relative;
	}

	.megamenu-caption .btn {
		position: absolute;
		right: 0;
		top: 5px;
	}

	.cbp-bislideshow h2 {
		font-size: 24px;
	}

	.cbp-bislideshow h1 {
		font-size: 45px;
	}

	.cbp-bislideshow p {
		color: #fff;
		font-size: 24px;
		font-weight: 700;
	}

	.cbp-bislideshow .btn {
		margin-top: 20px;
	}

	.product-tabs .tab-content .tab-pane ul li {
		width: calc(23% - 30px);
	}

	.product-tabs .tab-content .tab-pane ul li p {
		line-height: 1.2;
		font-size: 13px;
		margin-top: 5px;
	}

	.block-news article figure .img {
		height: 180px;
	}

	.block-news article .caption .date {
		font-size: 14px;
	}

	.block-news article .caption h1 {
		font-size: 16px;
	}

	.prefooter .btn-prefooter {
		min-height: 140px;
		height: auto;
	}

	footer .bordered {
		border-top: 0;
		margin: 0 auto 20px;
		padding-top: 0;
	}

	footer,
	footer .menu-footer {
		text-align: center;
	}

	footer .copyright {
		margin-bottom: 30px;
	}

	.block-banner {
		padding: 20px;
	}

	.block-banner h2 {
		font-size: 90px;
	}

	.block-banner h1 {
		margin-top: 45px;
		margin-bottom: 25px;
	}

	.block-banner p {
		font-size: 13px;
		margin-bottom: 20px;
	}

	.catalog-list article .buttons .btn {
		margin: 2px;
		width: 47%;
		font-size: 14px;
	}

	.direct-access .da-link {
		min-height: 150px;
	}

	.data-list li {
		font-size: 14px;
	}

	.data-list li span {
		display: inline-block;
		padding: 6px 0;
	}

	.data-list li:before {
		top: 10px;
	}

	.data-contact {
		flex-flow: row wrap;
	}

	.data-contact li {
		width: calc(29% - 10px);
	}

	.data-contact li:nth-child(4),
	.data-contact li:nth-child(5),
	.data-contact li:nth-child(6),
	.data-contact li:nth-child(7) {
		width: calc(50% - 10px);
	}

}

@media (max-width:767px) {
	header {
		height: 75px;
	}

	.direct-access .da-link {
		padding: 15px;
	}

	header .brand {
		padding: 15px 0;
		position: relative;
		z-index: 999;
	}

	header .navbar-container {
		position: absolute;
		width: 100%;
	}

	header .navbar-collapse .navbar-nav {
		margin: 0;
	}

	header .navbar-collapse {
		width: 100%;
	}

	header .navbar-toggle {
		margin: 10px;
	}

	header .navbar-toggle.collapsed {
		color: #fff;
	}

	header .nav li {
		margin: 0;
	}

	header .nav li a {
		color: #333;
		padding: 10px 15px;
		border: none;
	}

	header .nav .active a,
	header .nav .active a:hover,
	header .nav a:hover {
		background: #003DA8;
		color: #fff;
	}

	header .navbar-collapse {
		position: static;
		right: 21px;
		margin: 0;
		padding: 0;
		z-index: 9;
		top: 71px;
		border: 0;
		background: #fff;
		text-align: right;
		overflow-y: hidden !important;
	}

	.h-social {
		display: none;
	}

	header .lang {
		position: relative;
		bottom: 0;
		top: auto;
		right: auto;
		left: 0;
		width: 100%;
		text-align: right;
	}

	header .lang span {
		display: block;
		padding: 8px 15px;
		color: #333;
	}

	header .lang span a {
		color: #333;
	}

	#presentacion .container .caption {
		padding: 20vh 0;
		margin-left: 0;
		text-align: center;
	}

	#presentacion,
	#presentacion .cbp-bislideshow,
	#presentacion .container,
	#presentacion .container .caption {
		height: 65vh;
	}

	.title,
	.subtitle {
		text-align: center;
	}

	.subtitle {
		font-size: 24px;
	}

	.subtitle:after {
		left: 50%;
		margin-left: -25px;
	}

	.product-tabs .nav-tabs {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.product-tabs .nav-tabs>li {
		flex: 1 1 auto;
		min-width: 1%;
		float: none;
	}

	.product-tabs .nav-tabs>li>a {
		font-size: 16px;
		text-align: center;
	}

	.product-tabs .tab-content .tab-pane ul {
		justify-content: center;
		text-align: center;
	}

	.product-tabs .tab-content .tab-pane ul li.labelled:before {
		height: 50px;
	}

	.product-tabs .tab-content .tab-pane ul li {
		width: calc(28% - 30px);
	}

	.product-tabs .tab-content .tab-pane ul li p {
		font-size: 12px;
		text-align: center;
	}

	p.mude {
		font-size: 11px;
		text-align: center;
	}

	.block-news article {
		max-width: 400px;
		margin: auto;
		margin-bottom: 30px;
	}

	.block-news article figure .img {
		height: 220px;
	}

	.prefooter .btn-prefooter {
		min-height: inherit;
		max-width: 400px;
		margin: auto;
		margin-bottom: 3px;
		text-align: left;
	}

	footer .container,
	.subfooter .container {
		padding-left: 15px;
		padding-right: 15px;
	}

	footer .menu-footer li a {
		padding: 0 12px;
	}

	.nav>li.nav-mobile {
		display: block;
	}

	.nav>li.nav-desktop {
		display: none;
	}

	.content .text-blue {
		font-size: 16px;
	}

	.block-banner {
		min-height: inherit;
		margin-top: 15px;
		margin-bottom: 15px;
		/*background-color:transparent;*/
	}

	/*.block-banner h1{*/
	/*color:#0093D0;*/
	/*}*/
	.content p,
	.block-banner p {
		font-size: 14px;
		/*color:#333;*/
		line-height: 1.4;
		margin-bottom: 30px;
	}

	.data-contact p {
		font-size: 14px;
		color: #fff;
		margin-bottom: 0;
	}

	.top-banner {
		height: 350px;
	}

	.catalog-header select {
		position: relative;
		margin: 20px auto;
		right: auto;
		top: auto;
	}

	.knowmore {
		text-align: center;
	}

	.knowmore p {
		margin-bottom: 10px;
	}

	.banner-aside {
		margin: auto;
		width: auto;
		max-width: 280px;
		display: block;
	}

	.direct-access .da-link {
		min-height: inherit;
		margin-top: 10px;
	}

	.top-products {
		height: 450px;
	}

	.product-title {
		padding: 100px 0 0;
	}

	.product-title h2 {
		font-size: 20px;
	}

	.product-title h1 {
		font-size: 30px;
	}

	.form .form-action {
		text-align: center;
	}

	.intro-content {
		width: 500px;
		margin-left: -250px;
	}

	.intro-content a:first-child,
	.intro-content a:last-child {
		width: 250px;
	}

	.rowTipoProd {
		display: none;
	}

}

@media (max-width:576px) {
	#presentacion .container .caption {
		padding: 120px 0 0;
	}

	#presentacion,
	#presentacion .cbp-bislideshow,
	#presentacion .container,
	#presentacion .container .caption {
		height: 450px;
	}

	.cbp-bislideshow h2 {
		font-size: 18px;
	}

	.cbp-bislideshow h1 {
		font-size: 30px;
	}

	.cbp-bislideshow p {
		font-size: 20px;
		font-weight: 400;
	}

	.cbp-bislideshow .btn {
		padding: 12px 30px;
	}

	.cbp-bicontrols {
		display: none;
	}

	.product-tabs {
		padding: 30px 0;
	}

	.title {
		font-size: 32px;
	}

	.product-tabs .nav-tabs {
		flex-flow: row wrap;
	}

	.product-tabs .nav-tabs>li {
		flex: 1 1 auto;
		min-width: 48%;
		float: none;
	}

	.product-tabs .tab-content {
		padding: 30px 0;
	}

	.product-tabs .nav-tabs>li>a {
		font-size: 16px;
		text-align: center;
		border: 0 !important;
		padding: 5px;
	}

	.tab-pane ul li.labelled {
		display: none;
	}

	.product-tabs .tab-content .tab-pane ul li {
		width: calc(50% - 10px);
		padding: 10px;
	}

	.block-news {
		padding: 30px 0;
	}

	footer .brand-footer {
		height: 25px;
	}

	footer .social li a {
		padding: 5px;
	}

	footer .social li a img {
		height: 14px;
	}

	footer .copyright {
		font-size: 11px;
	}

	footer .menu-footer li a {
		padding: 0 5px;
		font-size: 12px;
	}

	.menu-aside {
		top: auto;
		bottom: 0;
		width: 100%;
		height: 50px;
		display: flex;
		flex-flow: row nowrap;
	}

	.menu-aside li {
		width: 20%;
	}

	.menu-aside li a {
		width: 100%;
		padding: 4px;
		text-align: center;
		left: auto;
	}

	.menu-aside li a span {
		display: block;
		padding: 1px;
		font-size: 8px;
	}

	.menu-aside li a:hover {
		left: auto;
	}

	.catalog .container,
	.catalog .container .row .col-xs-6 {
		padding-right: 5px;
		padding-left: 5px;
	}

	.catalog .container .row {
		margin-left: -5px;
		margin-right: -5px;
	}

	.catalog-list article {
		margin-bottom: 10px;
		text-align: center;
	}

	.catalog-list article .buttons .btn {
		width: calc(100% - 4px)
	}

	/* .catalog-list article .buttons .btn-details{
		color:#337ab7;
		background-color:transparent;
		font-weight:bold;
		text-decoration:underline;
	} */
	.data-list {
		text-align: center;
	}

	.data-list li {
		padding: 10px;
		border-bottom: 1px solid #ddd;
	}

	.data-list li:before {
		display: none;
	}

	.data-list li .buttons {
		position: inherit;
		right: auto;
		top: auto;
	}

	.data-contact {
		flex-flow: column wrap;
	}

	.data-contact li {
		width: 100% !important;
		max-width: 400px !important;
		margin: auto;
		margin-bottom: 5px;
	}

	#contact_form {
		max-width: 400px;
		margin: auto;
	}

	.bg-intro {
		background: url("../images/bg_intro_mobile.jpg") #000 no-repeat center center;
	}

	.intro-content {
		width: 100%;
		margin-left: auto;
		left: 0;
	}

	.intro-content a:first-child,
	.intro-content a:last-child {
		width: 100%;
		padding: 15px;
		height: 60px;
	}

	.intro-content a:first-child:before {
		border-top: 60px solid #003DA8;
	}

	.intro-content a:last-child:before {
		display: none;
	}

	.intro-content a:last-child:after {
		content: "";
		position: absolute;
		top: auto;
		left: 50%;
		margin-left: -40px;
		right: auto;
		bottom: -20px;
		width: 0px;
		height: 0px;
		border-left: 40px solid transparent;
		border-right: 40px solid transparent;
		border-top: 20px solid #003E92;
	}

	.intro-content a:first-child:before {
		display: none;
	}

	.intro-content a:first-child:after {
		content: "";
		position: absolute;
		top: auto;
		left: 50%;
		margin-left: -40px;
		right: auto;
		top: -20px;
		width: 0px;
		height: 0px;
		border-left: 40px solid transparent;
		border-right: 40px solid transparent;
		border-bottom: 20px solid #003DA8;
	}
}


.azul1 {
	background-color: #003DA8 !important;
}

.azul1 a:hover,
.azul2 a:hover,
.data-contact p a:hover {
	color: #003E92 !important;
	/* font-weight: 600; */
}

.azul2 {
	background-color: #003DA8 !important;
}

.celeste {
	background-color: #009FE3 !important;
}

.gris {
	background-color: #cacccd !important;
}

.txtazul1 {
	color: #003DA8 !important;
}

.txtazul2 {
	color: #003DA8 !important;
}

.txtceleste {
	color: #003E92 !important;
}


/*botones mobile carrito */
@media screen and (max-width: 640px) {
	.btn-goshop {
		margin-bottom: 20px;
	}

	.btn-goshop button {
		margin-bottom: 20px;
	}

	.btn-goshop a {
		margin: 20px;
		display: inline-block;
	}
}

.preloader {
	/*display:none;*/
	position: fixed;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	z-index: 999999;
	background-color: rgba(0, 0, 0, 0.8);
	-webkit-transition: all 1s ease-in;
	transition: all 1s ease-in;
	overflow: hidden;
}

.preloader.loaded {
	top: -150%;
}

.preloader p {
	width: 260px;
	position: absolute;
	margin: auto;
	top: 50%;
	left: 50%;
	margin-top: -30px;
	margin-left: -130px;
	color: #fff;
	font-weight: bold;
	line-height: 1.3;
	font-size: 14px;
	text-align: center;
}

@-webkit-keyframes rotate {
	100% {
		-webkit-transform: rotate3d(0, 0, 1, 360deg);
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

@keyframes rotate {
	100% {
		-webkit-transform: rotate3d(0, 0, 1, 360deg);
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

.xs-preload {
	-webkit-transform: rotate3d(0, 0, 1, -90deg);
	transform: rotate3d(0, 0, 1, -90deg);
	position: absolute;
	right: 0;
	bottom: 0;
	top: -20%;
	margin: auto;
	left: 0;
}

.xs-preload circle {
	fill: none;
	stroke: #fff;
	stroke-width: 2px;
	will-change: transform;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	-webkit-animation-name: rotate;
	animation-name: rotate;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

.xs-preload .inner {
	stroke: #fff;
	stroke-dasharray: 200.96;
	stroke-dashoffset: 160.96;
	-webkit-animation-delay: 200ms;
	animation-delay: 200ms;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
}

.loading .preloader {
	display: block;
}


/* carro */

header .cart {
	position: absolute;
	top: 137px;
	right: 20px;
}

header .cart .dropdown-toggle {
	padding: 20px 22px;
	display: block;
	text-align: center;
	background-color: #fff;
	color: #337ab7;
	vertical-align: middle;
	height: 60px;
}

header .cart .dropdown-toggle img.icon-cart {
	height: 20px;
	display: inline-block;
}

header .cart .dropdown-toggle img.icon-cart-white {
	display: none;
}

header .cart .dropdown-toggle .qty {
	font-size: 13px;
	font-weight: 900;
	padding: 0 5px;
	display: inline-block;
	position: relative;
}

header .cart .dropdown-toggle .qty:before {
	content: "(";
	position: absolute;
	left: 0;
}

header .cart .dropdown-toggle .qty:after {
	content: ")";
	position: absolute;
	right: 0;
}

header .cart .dropdown-toggle .label {
	display: inline-block;
	font-size: 13px;
	font-weight: 600;
	margin: 0;
	padding: 0;
	margin-left: 3px;
	color: #337ab7;
}

header .cart .dropdown-toggle:hover {
	text-decoration: none;
}

header .cart .dropdown-toggle:after {
	display: none;
}

header .cart.dropdown .dropdown-menu {
	right: 0;
	left: auto;
	border: 0;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	border-radius: 8px;
	background-color: #f2f2f2;
	padding: 0;
	min-width: 380px;
	max-width: 420px;
	margin-top: 5px;
	overflow: hidden !important;
	max-height: none !important;
}

header .cart.dropdown .dropdown-menu .item-list {
	margin: 0;
	padding: 0;
	list-style: none;
	max-height: 320px;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
}

header .cart.dropdown .dropdown-menu .item-list li.cart-item {
	padding: 8px 12px;
	border-bottom: 1px solid #E6E6E6;
	color: #333;
	font-size: 12px;
	display: block;
	background-color: #fff;
	transition: background-color 0.2s ease;
}

header .cart.dropdown .dropdown-menu .item-list li.cart-item:hover {
	background-color: #f8f9fa;
}

header .cart.dropdown .dropdown-menu .item-list li.cart-item:last-child {
	border-bottom: none;
}

/* Contenedor principal del item */
.cart-item-content {
	width: 100%;
}

/* Header del item: nombre y botón eliminar */
.cart-item-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 6px;
	gap: 8px;
}

.cart-item-header .item-name {
	flex: 1;
	font-weight: 600;
	font-size: 13px;
	color: #333;
	line-height: 1.3;
	margin: 0;
	padding-right: 8px;
}

.cart-item-header .btn-delete {
	flex-shrink: 0;
	padding: 5px 7px;
	background-color: #fff;
	border: 1px solid #dc3545;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.2s ease;
	margin: 0;
	opacity: 0.8;
}

.cart-item-header .btn-delete img {
	filter: brightness(0) saturate(100%) invert(25%) sepia(95%) saturate(7471%) hue-rotate(349deg) brightness(87%) contrast(90%);
	opacity: 0.9;
}

.cart-item-header .btn-delete:hover {
	background-color: #dc3545;
	border-color: #dc3545;
	opacity: 1;
	transform: scale(1.05);
}

.cart-item-header .btn-delete:hover img {
	filter: brightness(0) invert(1);
	opacity: 1;
}

/* Detalles del item: cantidad, precio, subtotal */
.cart-item-details {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-left: 0;
}

.cart-item-details > span {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 11px;
	line-height: 1.2;
}

/* Etiquetas (Cantidad, Precio unit, Subtotal) */
.quantity-label,
.price-label,
.total-label {
	color: #6c757d;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 10px;
	letter-spacing: 0.2px;
}

/* Valores destacados */
.quantity-value {
	background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
	color: white;
	padding: 2px 8px;
	border-radius: 10px;
	font-weight: 700;
	font-size: 12px;
	min-width: 35px;
	text-align: center;
	box-shadow: 0 2px 4px rgba(0, 123, 255, 0.2);
}

.price-value {
	color: #495057;
	font-weight: 600;
	font-size: 12px;
}

.total-value {
	color: #28a745;
	font-weight: 700;
	font-size: 12px;
	background-color: #d4edda;
	padding: 2px 8px;
	border-radius: 4px;
	border: 1px solid #c3e6cb;
}

header .cart.dropdown .dropdown-menu .cart-footer {
	background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
	padding: 10px;
	border-top: 2px solid #dee2e6;
	border-radius: 0 0 8px 8px;
}

header .cart.dropdown .dropdown-menu .cart-footer span {
	margin-right: 0;
	color: #337ab7;
	font-size: 14px;
	font-weight: 600;
	display: block;
	margin-bottom: 8px;
	text-align: center;
	padding: 6px;
	background-color: #fff;
	border-radius: 6px;
	border: 1px solid #dee2e6;
}

header .cart.dropdown .dropdown-menu .cart-footer .btn {
	padding: 8px 16px;
	font-size: 13px;
	font-weight: 600;
	width: 100%;
	background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
	border: none;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 123, 255, 0.3);
	transition: all 0.3s ease;
}

header .cart.dropdown .dropdown-menu .cart-footer .btn:hover {
	background: linear-gradient(135deg, #0056b3 0%, #004085 100%);
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(0, 123, 255, 0.4);
}

.btn-delete {
	padding: 5px 8px;
}

.btn-delete img {
	height: 12px;
}


@media (max-width:1199px) {
	header .cart {
		top: 116px;
	}

	.divRubro {
		height: 172px;
	}
}


@media (max-width:992px) {

	header .cart {
		top: 116px;
		right: 5px;
	}

	header .cart .dropdown-toggle {
		padding: 8px;
	}

}


@media (max-width:767px) {
	header .cart {
		top: 71px;
	}

	header .cart .dropdown-toggle img.icon-cart {
		height: 16px;
	}
	
	header .cart.dropdown .dropdown-menu {
		min-width: 90vw;
		max-width: 95vw;
		right: 5px;
		left: auto;
	}
	
	.cart-item-details {
		font-size: 11px;
	}
	
	.cart-item-header .item-name {
		font-size: 13px;
	}
}

@media (max-width:576px) {
	header .cart {
		top: 13px;
		right: 50px;
	}

	header .cart .dropdown-toggle {
		background: transparent;
		padding: 0;
	}

	header .cart .dropdown-toggle img.icon-cart {
		display: none;
	}

	header .cart .dropdown-toggle img.icon-cart-white {
		display: inline-block;
		height: 26px;
		margin: 5px 10px;
	}

	header .cart .dropdown-toggle .label {
		display: none;
	}

	header .cart .dropdown-toggle .qty {
		line-height: 1.2;
		display: inline-block;
		padding: 3px;
		position: absolute;
		right: -2px;
		top: -2px;
		border-radius: 100%;
		height: 20px;
		width: 20px;
		background: #003DA8;
		font-size: 12px;
		color: #fff;
	}

	header .cart .dropdown-toggle .qty:before,
	header .cart .dropdown-toggle .qty:after {
		display: none;
	}

	/*.block-banner h1,p {*/
	/*color: #ffffff !important;*/
	/*}*/
}



.tabla-title {
	color: #0d4d91 !important;
	font-weight: 600;
	font-family: 'Open Sans', 'HelveticaNeue', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	text-align: center;
}

.tabla-subtitle {
	color: #0d4d91 !important;
	font-family: 'Open Sans', 'HelveticaNeue', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	text-align: center;
}

#loader {
	border: 12px solid #f3f3f3;
	border-radius: 50%;
	border-top: 12px solid #444444;
	width: 70px;
	height: 70px;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	100% {
		transform: rotate(360deg);
	}
}

.center {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.main {
	margin: 25px 0 20px;
}

.table-mobile {
	display: block;
	margin: 0 auto;
	border-collapse: collapse;
	text-rendering: optimizeLegibility;
}

.payment {
	background-color: #F1F2F4;
	padding: 20px;
	margin-bottom: 20px;
}

.img-responsive {
	width: 100%;
	margin-bottom: 20px;
}

.modal-dialog {
	margin: 0 auto !important;
	/* position: absolute; */
	top: 50% !important;
	transform: translateY(-50%) !important;
}


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

	.product-gallery .gallery-thumb a {
		width: 22%;
	}

	.table-mobile {
		display: block;
		margin: 0 auto;
		border-collapse: collapse;
		text-rendering: optimizeLegibility;
	}

	.table-mobile tbody {
		display: block;
	}

	.table-mobile tbody td {
		width: 100% !important;
		background: #eee;
		display: block;
		color: #000;
	}

	.table-mobile tbody tr {
		display: block;
	}

	.table-mobile tbody tr:not(:last-child) {
		border-bottom: 2px solid #666;
	}

	.table-mobile tr.details-booking {
		display: none;
	}

	.table-mobile tr.details-booking.collapse.in {
		display: block !important;
	}

	.table-mobile thead {
		display: none;
	}

	.table-mobile tbody td:before {
		content: attr(data-th);
		display: inline-block;
		width: 150px;
		color: #000;
		font-size: 15px;
		font-weight: bold;
	}

	.table-mobile .btn {
		background: transparent;
		color: #0087CA;
		padding: 0;
		height: auto;
	}

	.table-mobile .btn:hover {
		text-decoration: underline;
	}

	.table-mobile .details-booking td:before {
		display: none;
	}

	/**/

	.table-account td:nth-of-type(1):before {
		content: "Orden";
	}

	.table-account td:nth-of-type(2):before {
		content: "Fecha";
	}

	.table-account td:nth-of-type(3):before {
		content: "Estado";
	}

	.table-account td:nth-of-type(4):before {
		content: "Pago";
	}

	.table-account td:nth-of-type(5):before {
		content: "Envío";
	}

	.table-account td:nth-of-type(6):before {
		content: "Total";
	}

	.table-account td:nth-of-type(7):before {
		content: "Imprimir";
	}

	.table-cart td:nth-of-type(1):before {
		content: "Producto";
	}

	.table-cart td:nth-of-type(2):before {
		content: "Cantidad";
	}

	.table-cart td:nth-of-type(3):before {
		content: "Precio";
	}

	.table-cart td:nth-of-type(4):before {
		content: "Subtotal";
	}

	.table-cart td:nth-of-type(5):before {
		content: "Quitar";
	}


	.shopping .payment {
		margin-top: 20px;
	}

	.shopping .total {
		margin-bottom: 20px;
	}

	.shopping .table span {
		width: 290px;
	}

	.form-module {
		padding: 30px 50px;
	}

	.zoomContainer {
		display: none !important;
	}

	/*.block-banner h1,p {*/
	/*color: #ffffff !important;*/
	/*}*/
	.product-gallery .main-picture {
		width: 100% !important;
	}

	.product-gallery .gallery-thumb a {
		width: 125px !important;
	}
}

.img-table {
	width: 80px;
	height: auto;
	max-height: 80px;
	border: 1px solid #ccc;
	margin-right: 10px;
}

#cartTable tbody td {
	vertical-align: middle;
}

.product-gallery {
	margin-bottom: 20px;
}

.product-gallery .main-picture {
	text-align: center;
	position: relative;
	background-color: #fff;
	margin-bottom: 15px;
	/* border: 1px solid #ccc; */
	width: 500px;
	height: 400px;
	display: flex;
	align-items: center;
	justify-content: center
}

.product-gallery .main-picture>div {
	margin: auto;
	position: relative;
}

.product-gallery .main-picture>div>img {
	left: 0px;
}

.product-gallery .gallery-thumb {
	text-align: left;

}

.product-gallery .gallery-thumb a {
	display: inline-block;
	/* border:1px solid #ccc; */
	/* margin:0 5px; */
	margin-bottom: 2px;
	width: 127px;
}

.product-gallery .gallery-thumb a img {
	width: 100%;
}

.product-gallery .gallery-thumb a:first-child {
	margin-left: 0;
}

.product-gallery .gallery-thumb a:last-child {
	margin-right: 0;
}

.product-gallery .active {
	border: 1px solid #333 !important;
}

.header-details {
	margin: 60px 0 20px;
	border-bottom: 1px solid #ccc;
}

.header-details h1 {
	font-size: 27px;
	letter-spacing: -1px;
}

.payment {
	background-color: #F1F2F4;
	padding: 20px;
	margin-bottom: 20px;
}

.postal-code {
	margin-bottom: 15px;
	border-bottom: 1px solid #ccc;
}

.buy {
	margin-bottom: 15px;
	border-bottom: 1px solid #ccc;
}

.buy .form-control {
	border: 2px solid #ddd;
	padding: 6px;
	text-align: center;
	font-size: 17px;
}

.buy .btn {
	font-weight: bold;
	min-width: 200px;
	max-width: 240px;
}

.description {
	padding-top: 20px;
}

.description h4 {
	letter-spacing: -0.5px;
	font-size: 15px;
	font-weight: bold;
}

.description p {
	font-size: 13px;
}

.catalog .listaRubro,
.catalog .listaTipo {
	list-style: none !important;
	padding: 0px !important;
}

.listaRubro li a,
.listaTipo li a {
	color: #000 !important;
}

.listaRubro,
.listaTipo {
	padding: 0px;
}

.listaRubro li,
.listaTipo li {
	padding: 10px 10px;
}

.listaRubro li.active,
.listaTipo li.active {
	padding: 10px 10px;
	background-color: #FF6600;
}

.listaRubro li.active a,
.listaTipo li.active a {
	color: white !important;
}

.btn-materiales,
.li-materiales {
	background-color: #009FE3 !important;
	/*//azul #003E92*/
}

.btn-semirremolques,
.li-usados {
	background-color: #009FE3 !important;
	/*//azul #003E92*/
}

.price-materiales {
	color: #009FE3 !important;
	/*//azul #003E92*/
}

.infoVendido {
	background-color: #bc0000;
}

.infoVendido:hover {
	color: white;
	cursor: auto;
}

/*colores de vehiculos*/
.titulocolores {
	color: white;
	font-size: 18px;
	cursor: pointer;
	margin-top: 10vh;
}

.square {
	width: 30px;
	height: 30px;
	margin: 0px 10px 0px 0px;
	cursor: pointer;
}

.red {
	background-color: red;
}

.blue {
	background-color: blue;
}

.green {
	background-color: green;
}

.yellow {
	background-color: yellow;
}

.Lightblue {
	background-color: Lightblue;
}

@media(max-width: 769px) {
	.titulocolores {
		margin-top: 3vh;
	}

	.square {
		width: 30px;
		height: 30px;
		margin: 0px 20px 0px 0px;
		cursor: pointer;
	}
}

/* ===== MEJORAS VISUALES AVANZADAS PARA CATÁLOGO ===== */

/* Efectos hover mejorados para productos */
.catalog-list article {
	border: 1px solid #e0e0e0;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	position: relative;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.catalog-list article:hover {
	transform: translateY(-8px) scale(1.02);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15);
	border-color: #007bff;
}

/* Efecto de imagen con zoom suave */
.catalog-list article figure img {
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.catalog-list article:hover figure img {
	transform: scale(1.1);
}

/* Overlay sutil en hover */
.catalog-list article figure::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(135deg, rgba(0, 123, 255, 0.1) 0%, rgba(0, 123, 255, 0.05) 100%);
	opacity: 0;
	transition: opacity 0.3s ease;
	pointer-events: none;
	z-index: 1;
}

.catalog-list article:hover figure::after {
	opacity: 1;
}

/* Badge mejorado con animación */
.catalog-list article figure .badge {
	background: #FF6600 !important;
	box-shadow: 0 2px 8px rgba(255, 102, 0, 0.3);
	border-radius: 20px;
	transform: translateY(0);
	opacity: 1;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 2;
}

.catalog-list article:hover figure .badge {
	transform: scale(1.05);
	box-shadow: 0 4px 12px rgba(255, 102, 0, 0.4);
}

/* Información del producto con mejor jerarquía */
.catalog-list article .name {
	font-weight: 600;
	transition: color 0.2s ease;
}

.catalog-list article:hover .name {
	color: #007bff;
}

/* Precio con efecto destacado */
.catalog-list article .price {
	font-weight: 700;
	transition: all 0.2s ease;
}

.catalog-list article:hover .price {
	color: #0056b3;
	transform: scale(1.05);
}

/* Botones con efectos avanzados */
.catalog-list article .buttons .btn {
	border-radius: 8px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.catalog-list article .buttons .btn::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
	transition: left 0.5s ease;
}

.catalog-list article .buttons .btn:hover::before {
	left: 100%;
}

.catalog-list article .buttons .btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 123, 255, 0.3);
}

.catalog-list article .buttons .btn-details {
	background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
	border: none;
}

.catalog-list article .buttons .btn-details:hover {
	background: linear-gradient(135deg, #218838 0%, #1e7e34 100%);
}

/* Selector de opciones mejorado */
.catalog-list article select {
	border: 2px solid #e9ecef;
	border-radius: 8px;
	transition: all 0.2s ease;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.catalog-list article select:focus {
	border-color: #007bff;
	box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.1);
	outline: none;
}

/* Animación de entrada para productos */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.catalog-list .col-xs-6,
.catalog-list .col-md-4 {
	animation: fadeInUp 0.6s ease-out;
	display: flex;
	flex-direction: column;
}

.catalog-list .col-xs-6:nth-child(1) {
	animation-delay: 0.1s;
}

.catalog-list .col-xs-6:nth-child(2) {
	animation-delay: 0.2s;
}

.catalog-list .col-xs-6:nth-child(3) {
	animation-delay: 0.3s;
}

.catalog-list .col-xs-6:nth-child(4) {
	animation-delay: 0.4s;
}

.catalog-list .col-xs-6:nth-child(5) {
	animation-delay: 0.5s;
}

.catalog-list .col-xs-6:nth-child(6) {
	animation-delay: 0.6s;
}

/* Efecto de pulso en botones de acción */
@keyframes pulse {
	0% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.05);
	}

	100% {
		transform: scale(1);
	}
}

.catalog-list article .buttons .btn:active {
	animation: pulse 0.3s ease;
}

/* ===== SIDEBAR DE RUBROS MEJORADO - v2.1 - 2025-01-28 ===== */

/* Contenedor del sidebar SOLO en materiales */
.catalog .row .col-sm-3:has(.listaRubro) {
	background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
	border-radius: 8px;
	padding: 12px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	margin-bottom: 20px;
}

/* Título del sidebar */
.catalog .row .col-sm-3:has(.listaRubro) h3 {
	color: #2c3e50;
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 10px;
	padding-bottom: 8px;
	border-bottom: 2px solid #007bff;
	position: relative;
}

.catalog .row .col-sm-3:has(.listaRubro) h3::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 25px;
	height: 2px;
	background: linear-gradient(90deg, #007bff, #28a745);
	border-radius: 2px;
}

/* Lista de rubros */
.listaRubro {
	list-style: none;
	padding: 0;
	margin: 0;
}

.listaRubro li {
	margin-bottom: 0;
	position: relative;
}

/* Enlace "Todos los productos" especial */
.listaRubro li:first-child {
	margin-bottom: 6px;
	padding-bottom: 6px;
	border-bottom: 1px solid #e9ecef;
}

.listaRubro li:first-child a {
	background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
	color: #fff !important;
	font-weight: 600;
	border-radius: 8px;
	padding: 10px 12px;
	display: flex;
	align-items: center;
	box-shadow: 0 3px 10px rgba(40, 167, 69, 0.3);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.listaRubro li:first-child a:hover {
	background: linear-gradient(135deg, #218838 0%, #1e7e34 100%);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(40, 167, 69, 0.4);
	text-decoration: none;
}

.listaRubro li:first-child a i {
	margin-right: 6px;
	font-size: 14px;
}

/* Rubros normales */
.listaRubro li:not(:first-child) a {
	background: #fff;
	color: #495057;
	font-weight: 500;
	font-size: 14px;
	border-radius: 4px;
	padding: 6px 12px;
	display: block;
	border: 1px solid #e9ecef;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.listaRubro li:not(:first-child) a::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(0, 123, 255, 0.1), transparent);
	transition: left 0.5s ease;
}

.listaRubro li:not(:first-child) a:hover::before {
	left: 100%;
}

.listaRubro li:not(:first-child) a:hover {
	background: #f8f9fa;
	border-color: #007bff;
	color: #007bff !important;
	transform: translateX(8px);
	box-shadow: 0 4px 12px rgba(0, 123, 255, 0.15);
	text-decoration: none;
}

/* Rubro activo */
.listaRubro li.active a {
	background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
	color: #fff !important;
	font-weight: 600;
	border-color: #007bff;
	box-shadow: 0 4px 12px rgba(0, 123, 255, 0.3);
	transform: translateX(5px);
	padding: 6px 12px;
}

.listaRubro li.active a::after {
	content: '→';
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
	font-weight: bold;
}

/* Indicador de ofertas */
.listaRubro li a:contains("(Oferta)") {
	position: relative;
}

.listaRubro li a:contains("(Oferta)")::after {
	content: '🔥';
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
}

/* Efectos adicionales */
.listaRubro li:not(:first-child):hover {
	transform: translateX(3px);
}

/* Responsive */
@media (max-width: 768px) {
	.catalog .row .col-sm-3:has(.listaRubro) {
		padding: 15px;
		margin-bottom: 15px;
	}

	.catalog .row .col-sm-3:has(.listaRubro) h3 {
		font-size: 20px;
		margin-bottom: 15px;
	}

	.listaRubro li:not(:first-child) a:hover {
		transform: translateX(4px);
	}
}

/* Mejoras en el formulario de búsqueda */
.search-form .input-group {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	border-radius: 8px;
	overflow: hidden;
}

.search-form .form-control {
	border: 2px solid #e9ecef;
	border-right: none;
	transition: all 0.2s ease;
}

.search-form .form-control:focus {
	border-color: #007bff;
	box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.1);
}

.search-form .btn {
	border: 2px solid #007bff;
	border-left: none;
	background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
	transition: all 0.2s ease;
}

.search-form .btn:hover {
	background: linear-gradient(135deg, #0056b3 0%, #004085 100%);
	transform: translateY(-1px);
}

/* Mejoras en el contador de resultados */
.results-info {
	background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
	border-left: 4px solid #007bff;
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	transition: all 0.2s ease;
}

.results-info:hover {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	transform: translateY(-1px);
}

/* Mejoras en el selector de orden */
.form-control {
	border: 2px solid #e9ecef;
	border-radius: 8px;
	transition: all 0.2s ease;
}

.form-control:focus {
	border-color: #007bff;
	box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.1);
}

/* Efecto de carga mejorado */
@keyframes shimmer {
	0% {
		background-position: -200px 0;
	}

	100% {
		background-position: calc(200px + 100%) 0;
	}
}

.loading-skeleton {
	background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
	background-size: 200px 100%;
	animation: shimmer 1.5s infinite;
}

/* Mejoras responsivas */
@media (max-width: 768px) {
	.catalog-list article:hover {
		transform: translateY(-4px) scale(1.01);
	}

	.catalog-list article .buttons .btn {
		width: 100%;
		margin: 2px 0;
		padding: 12px 8px;
	}

	.listaRubro li:hover {
		transform: translateX(2px);
	}

	.search-form .input-group {
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	}
}

/* ===== SISTEMA DE NOTIFICACIONES MEJORADO ===== */

/* Toast Notification */
#notification-container {
	position: fixed !important;
	top: 20px !important;
	right: 20px !important;
	z-index: 99999999 !important;
	pointer-events: none;
	isolation: isolate !important;
}

.toast-notification {
	position: fixed !important;
	top: 20px !important;
	right: 20px !important;
	background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
	color: white;
	padding: 16px 24px;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(40, 167, 69, 0.3);
	z-index: 99999999 !important;
	transform: translateX(400px);
	opacity: 0;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	max-width: 350px;
	display: flex;
	align-items: center;
	gap: 12px;
	isolation: isolate !important;
	pointer-events: auto !important;
}

.toast-notification.show {
	transform: translateX(0);
	opacity: 1;
}

.toast-notification.error {
	background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
	box-shadow: 0 8px 32px rgba(220, 53, 69, 0.3);
}

.toast-notification .toast-icon {
	font-size: 20px;
	flex-shrink: 0;
}

.toast-notification .toast-content {
	flex: 1;
}

.toast-notification .toast-title {
	font-weight: 600;
	font-size: 16px;
	margin: 0 0 4px 0;
}

.toast-notification .toast-message {
	font-size: 14px;
	margin: 0;
	opacity: 0.9;
}

/* Overlay suave */
.cart-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(2px);
	z-index: 9999998;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
}

.cart-overlay.show {
	opacity: 1;
	visibility: visible;
}

/* Animación del botón */
.btn-loading {
	position: relative;
	overflow: hidden;
	pointer-events: none;
}

.btn-loading::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
	animation: loading-shimmer 1.5s infinite;
}

@keyframes loading-shimmer {
	0% {
		left: -100%;
	}

	100% {
		left: 100%;
	}
}

.btn-loading .btn-text {
	opacity: 0.7;
}

.btn-loading .btn-icon {
	animation: spin 1s linear infinite;
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

/* Animación de éxito en el botón */
.btn-success-animation {
	animation: success-pulse 0.6s ease-out;
}

@keyframes success-pulse {
	0% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.05);
		background-color: #28a745;
	}

	100% {
		transform: scale(1);
	}
}

/* Contador de carrito animado */
.cart-counter {
	position: relative;
	display: inline-block;
}

.cart-counter.animate {
	animation: counter-bounce 0.5s ease-out;
}

@keyframes counter-bounce {
	0% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.3);
	}

	100% {
		transform: scale(1);
	}
}

/* Responsive para notificaciones */
@media (max-width: 768px) {
	.toast-notification {
		top: 10px;
		right: 10px;
		left: 10px;
		max-width: none;
		transform: translateY(-100px);
	}

	.toast-notification.show {
		transform: translateY(0);
	}
}