body, html {
	background-color: rgb(245, 245, 245);
	color: #5b5b5b;
	font-family: 'Roboto', sans-serif;
	font-size: 15px;
	font-weight: 300;
	margin:0px;
	padding:0px;
}
body {
	height: 100%;
	overflow-x: hidden;
}
body.grey {
	background-color: #f6f5f5;
}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, img { display:block }
table { border:none; border-collapse:collapse }
a {
	cursor:pointer;
	text-decoration:none;
	outline:none;
}
p, form, input, ul, ol, h1, h2, h3, h4, h5, h6, figure, hr, span, blockquote, fieldset {
	margin:0px;
	padding:0px;
}
ul li { list-style-type:none; list-style-position:outside }
ol li { list-style-position: inside }
img { border:0px }
input, textarea, select {
	border-radius:0px;
	color:#2a363d;
	font-family: 'Roboto', sans-serif;
	font-size: 15px;
	font-weight: 400;
	border:none;
	resize:none;
}
* {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	position: relative;
}

strong { font-weight: 600; }
.generalWrap {
	margin: 0 auto;
	max-width:1100px;
}

h1 {
	color: #4b4b4b;
	font-family: 'Oswald', sans-serif;
	text-align: center;
	text-transform: uppercase;
	position: relative;
	padding-bottom: 41px;
}
h1.mainTitle:before {
	content: "";
	height: 4px;
	width: 73px;
	background-color: #dd3737;
	position: absolute;
	left: 50%;
	bottom: 23px;
	transform: translateX(-50%);
}


h2 {
	font-family: 'Oswald', sans-serif;
	font-weight: 700;
	font-size: 2.2em;
	text-transform: uppercase;
}

.center { text-align: center; margin-bottom: 20px;}
@media only screen and (max-width:1070px) {
	h2 {font-size: 1.8em;}
}
/* font-family: 'Oswald', sans-serif;

font-family: 'Roboto', sans-serif; */

/*-------------header--------------*/
header {
	background-color: rgba(255,255,255,1);
	/* height: 90px; */
	position: fixed;
	top: 0;
	transition:all 0.3s ease;
	width: 100%;
	z-index: 1000;
}
header.change {
	box-shadow: 0 0 60px rgba(40,40,40,.2);
}
header.white {
	background-color: #fff;
	box-shadow: 0 0 60px rgba(40,40,40,.15);
}

nav {
	display: grid;
	grid-template-columns: 1fr auto 36px;
	gap: 26px;
	align-items: center;
	width: 1080px;
	margin: 0 auto;
	justify-items: center;
}

nav a.logo {
	background-color: #fff;
	display: block;
	padding: 4px;
	width: 100%;
}
nav a.logo > img {margin: 0 auto;}
nav > a.nSearch {color: #2a363d;}
nav > a:hover { color: rgb(221, 55, 55);}

nav > .navBar, #closeMenu{
	display: none;
	color: #2a363d;
	width: 100%;
	text-align: center;
	height: 100%;
	padding: 23px;
}

nav > ul {
	display: grid;
	grid-template-columns: repeat(5,1fr);
	position: relative;
}
nav > ul > li a {
	display: block;
	padding: 20px 35px;
	font-size: 1.2em;
	color: #2a363d;
	font-family: 'Oswald', sans-serif;
	text-transform: uppercase;
    font-weight: 400;
}

nav > ul > li a:hover, nav > ul > li a.current {
	background-color: #fff;
	color: rgb(221, 55, 55);
}

/* Submenu up from mobile screens */

nav > ul > li > ul.submenu {
	display: none;
    position: absolute;
	background-color: #fff;
	width: max-content;
	max-height: 95vh;
}
nav > ul > li.btnDropdown:hover > ul.submenu {
	display: block !important;
	transition: all .3s ease;
}

 @media only screen and (max-width: 1090px){
	nav { 
		grid-template-columns: 70px auto 70px;
		gap: 0;
		width: 100%;
	}
	nav > .navBar, nav > a.nSearch {display: grid;}
	nav > a.nSearch {
		display: grid;
		width: 100%;
		text-align: center;
		height: 100%;
		align-items: center;
	}
	nav > ul { 
		display: none;
		position: absolute;
		top: 64px;
		width: 100%;
		text-align: center;
		height: 90vh;
	background-color: #fff;
	}
	nav > ul > li a {
		background-color: #fff;}

	nav > ul > li.btnDropdown > ul.submenu.open {
		display: block !important;
		position: relative;
		width: 100%;
		background-color: #fbfbfb;
		transition: all .3s ease-in;
	}
 }


footer {
	background-color: #fff;
	-webkit-box-shadow: 0px 0px 25px -15px rgba(95,95,95,0.79); 
	box-shadow: 0px 0px 25px -15px rgba(95,95,95,0.79);
}
footer > p {
	text-align: center;
	color: #434b50;
	padding: 19px 0;
	position: relative;
}
footer > p > a {
	color: #ef4444;
}
footer > p:before {
	content: "";
	height: 1px;
	background-color: #dbdbdb;
	position: absolute;
	top: 0;
	width: 70%;
	left: 50%;
	transform: translateX(-50%);
}
footer > div {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-columns: repeat(3, auto);
	position: relative;
	padding: 35px 0px;
	justify-content: center;
	gap: 36px;
}
footer > div > div {
	padding: 0 50px;
}
footer > div > .options h3 {padding-bottom: 8px;}
footer > div > .options a {
	display: block;
	color: #2a363d;
	line-height: 1.5;
	transition: all .2s ease-in;
}

footer > div > .options a:hover {
	color: rgb(221, 55, 55);
}

footer > div >  .contact p {
	padding-left: 21px;
	padding-bottom: 14px;
	position: relative;
}
footer > div >  .contact p i {
	position: absolute;
	left: 0;
	color: rgb(221, 55, 55);
}

footer > div > .rrss > a {
	display: inline-block;
	color: rgb(221, 55, 55);
	padding: 10px 14px;
	background-color: #f5f5f5;
	border-radius: 50%;
	font-size: 1.5em;
	margin-right: 17px;
	transition: all .2s ease-in;
}

footer > div > .rrss > a:hover {
	color: rgb(150, 34, 34);
	background-color: #e6e6e6;
}

@media only screen and (max-width: 1090px){
	footer > div {
		grid-template-columns: 100%;
	}

	footer > div > .rrss {
	text-align: center;
	}
}

/*-------------banner--------------*/
.banner {
	overflow: hidden;
}

#mainSlider {
	opacity: 0;
	position: relative;
	transition: opacity 1s ease;
	visibility: hidden;
}
#mainSlider.slick-initialized {
	visibility: visible;
	opacity: 1;
}
#mainSlider,
#mainSlider a {
	display: block;
	height: 710px;
}
#mainSlider figure {
	background-size: cover;
	background-position: center center;
	height: 100%;
	left: 0;
	position: relative;
	top: 0;
	width: 100%;
}

#mainSlider .overlay {
	align-items: center;
	background-color: rgba(30,30,30,.4);
	display: grid;
	padding: 49px 126px 45px 43px;
	position: absolute;
	right: 0;
	bottom: 0;
	min-width: 50%;
	z-index: 100;
}

#mainSlider .overlay.left {
	left: 0 !important;
	right: inherit;
	padding: 49px 45px 43px 126px;
}
#mainSlider .overlay h1 {
	border-bottom: 3px solid #ef4444;
	color: #fff;
	display: table;
	font-family: 'Oswald', sans-serif;
	font-size: 1.8em;
	padding-bottom: 5px;
	text-transform: uppercase;
	text-align: left;
}
#mainSlider .overlay p {
	color: #fff;
	font-size: 1.25em;
	font-weight: 400;
	line-height: 1.5em;
	margin-top: 10px;
	max-width: 410px;
}

@media only screen and (max-width:920px){
	#mainSlider, #mainSlider a {height: 100vh;}
	#mainSlider .overlay, #mainSlider .overlay.left {
		width: 100%;
		padding: 20px;
	}
}


/* Transitions */
#mainSlider .animated {
	-moz-opacity: 0;
	-khtml-opacity: 0;
	-webkit-opacity: 0;
	opacity: 0;
	-ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0 * 100);
	filter: alpha(opacity=0 * 100);
}
#mainSlider .activate {
	-moz-opacity: 1;
	-khtml-opacity: 1;
	-webkit-opacity: 1;
	opacity: 1;
	-ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=1 * 100);
	filter: alpha(opacity=1 * 100);
}

/* Productos index / New products*/

#productos, #newProducts {
	padding: 67px 0px;
	margin-bottom: 35px;
}
#newProducts a,
#productos a {
	margin: 0 20px;
}
#newProducts figure,
#productos figure {
	height: 285px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	max-width: 300px;
	position: relative;
}

#productos figure figcaption {
	color: #2a363d;
	font-weight: 400;
	bottom: 0;
	position: absolute;
	background-color: #ffffffad;
	padding: 10px;
	width: 100%;
	text-align: center;
}

#newProducts > div {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

#newProducts figure {height: 245px;}
#newProducts a > p {
	padding: 5px 0;
	font-weight: 400;
	color: #2a363d;
	font-size: 1.2em;
}

#catProducts  {
	padding-top: 142px;
}
#catProducts > div {
	display: grid;
	grid-template-columns: 230px auto;
	gap: 38px;
	justify-content: center;
}

.list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.list figure {
	height: 245px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	min-width: 190px;
	position: relative;
}
.list a > p {
	padding: 5px 0;
	font-weight: 400;
	color: #2a363d;
	font-size: 1.2em;
}
@media only screen and (max-width:940px){
	#catProducts > div {
		grid-template-columns: 94%;
	}
}

@media only screen and (max-width:890px){
	#newProducts > div {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media only screen and (max-width:690px){
	#newProducts > div {
		grid-template-columns: repeat(2, 1fr);
	}
	#newProducts figure {height: 178px;}
	#newProducts a > p, .list a > p {font-size: .82em;}
	.list figure{
		height: 180px;
	}
}

@media only screen and (max-width: 520px){
	.list {
		grid-template-columns: repeat(2, 1fr);
	}
}

/*---------------------- paginador ----------------------*/
.paginatorPage {
	display: block !important;
	margin: 25px 0px;
	text-align: center;
	top: 0;
	position: relative;
	z-index: 1000;
}

.paginatorPage span  {
	background-color: #fff;
	margin: 5px;
	padding: 3px;
	transition: all .3s ease-in;
}

.paginatorPage span:hover a  {
	background-color: #323e46;
	color: #fff;
}
.paginatorPage span a {
	color: #323e46;
	padding: 3px 5px;
	transition: all .3s ease-in;
}

.paginatorPage .active {
	background-color: #e44838;
	color: #fff;
}

.paginatorPage .active a {
	color: #fff;
}



/* Nosotros index */
#nosotros {
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}
.txtNos {
	padding: 120px 35px 100px 14%;
	width: 55%;
	background-color: #cb2020cc;
	color: #fff;
	font-size: 1.2em;
}


@media only screen and (max-width: 890px){
 .txtNos { width: 100%;}
}

#proyectos {
	padding: 67px 0;
	background-color: #fff;
	-webkit-box-shadow: 0px 0px 32px -11px rgba(95,95,95,0.77); 
	box-shadow: 0px 0px 32px -11px rgba(95,95,95,0.77);
}
#proyectos .galery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	justify-content: center;
	align-items: center;
}
#proyectos .galery a {
	display: block;
	overflow: hidden;
	height: 267px;
	cursor: pointer;
	position: relative;
}
#proyectos .galery a img {
	width: 100%;
	scale: 1.1;
	transition: all .2s ease-in;
	height: 100%;
	object-fit: cover;
}

#proyectos .galery a:hover img{
	box-shadow: inset 0 0 0 16px rgba(255,255,255,0.6), 0 1px 2px rgba(0,0,0,0.1);
	scale: 1;
}
#proyectos .galery a p {
	position: absolute;
	bottom: -46px;
}

.filtro {
	margin: 20px 0;
	padding-right: 20px;
}

.filtro a {
	display: block;
	padding: 6px 19px;
	color: #2a363d;
	border: 1px solid #2a363d;
	text-align: left;
	margin: 10px 0px;
	position: relative;
	transition: all .3s;
	font-weight: 400;
}
.filtro a:hover {
	background-color: #f21724;
	color: #ffffff;
	border: 1px solid #ffffff;
}

.filtro a > i {
	position: absolute;
	right: 19px;
}
.filtro > ul.open {
	display: none;
	transition: all .3s;
	transform: translateY(0%)
}

.bgGeneral {
	height: 450px;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position:center;
	position: fixed;
	top: 0;
}

@media only screen and (max-width: 1090px){
	#proyectos .galery {
		padding:22px;
		grid-template-columns: repeat(3, 1fr);
	}
	#proyectos .galery a {
		height: 230px;
	}
}
@media only screen and (max-width: 690px){
	#proyectos .galery a {
		height: 181px;
	}
}
@media only screen and (max-width: 490px){
	#proyectos .galery {
		grid-template-columns: repeat(2, 1fr);
	}
	#proyectos .galery a {
		height: 174px;
	}
}

/* Slider */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
.slick-list:focus { outline: none }
.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}
.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.slick-track:before,
.slick-track:after {
	display: table;
	content: '';
}
.slick-track:after { clear: both }
.slick-loading .slick-track { visibility: hidden }
.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}
[dir='rtl'] .slick-slide { float: right }
.slick-slide img { display: block !important }
.slick-slide.slick-loading img { display: none }
.slick-slide.dragging img { pointer-events: none }
.slick-initialized .slick-slide { display: block }
.slick-loading .slick-slide { visibility: hidden }
.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}
.slick-arrow.slick-hidden { display: none }

/* fcc */
.slick-dots { bottom: 94px !important }
.slick-dots li { margin: 0 0 !important }
.slick-dots li button:before { color: #8b2231 !important; font-size: 11px !important }
.slick-dots li.slick-active button:before { color: #8b2231 !important }
.slick-dotted.slick-slider { margin-bottom: 0 !important }

.slick-next:before, .slick-prev:before {
	color: rgba(255,255,255,.95) !important;
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900 !important;
	font-size: 32px !important;
	opacity: 1 !important;
	text-shadow: 0 0 4px rgba(40,40,40,.6);
}
.slick-prev:before { content: "\f053" !important }
.slick-next:before { content: "\f054" !important }
.slick-next, .slick-prev {
	height: 32px !important;
	width: 32px !important;
	z-index: 10;
}
#mainSlider .slick-next,
#mainSlider .slick-prev {
	margin-top: 45px !important;
}
.slick-prev { left: 20px !important }
.slick-next { right: 20px !important }
#slideProduct .slick-prev { left: -36px !important }
#slideProduct .slick-next { right: -36px !important }
@media only screen and (max-width:680px) {
	.slick-next, .slick-prev { display: none !important }
}
@media only screen and (max-width:560px) {
	.slick-next, .slick-prev { display: none !important }
}



/*----------------- Detalle producto --------------------*/
#detail {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 35px;
	padding: 36px 30px;
	margin: 126px auto;
	background-color: #ffffff;
	box-shadow: #323e46;
	box-shadow: -1px 0px 12px -5px rgba(125,125,125,0.75);
	-webkit-box-shadow: -1px 0px 12px -5px rgba(125,125,125,0.75);
	-moz-box-shadow: -1px 0px 12px -5px rgba(125,125,125,0.75);
}
#detail.vgalery {
	display: block;
	max-width: 980px;
}

.btnQuote {
	background-color: #ef4444;
	box-shadow: 0 0 0 3px transparent;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 1em;
	font-weight: 500;
	margin-top: 15px;
	outline: none;
	padding: 10px 35px;
	text-transform: uppercase;
	transition: all 0.3s ease;
}
.btnQuote:hover {
	background-color: #ce2626;
}


#slideProduct {
	max-width: 265px;
	overflow: hidden;
	margin: 0 auto;
	height: max-content;
}

#slideProduct img {
	height: 400px;
	object-fit: cover;
	margin: 0 auto;
}
.slidGal .slick-next, .slidGal .slick-prev,
#slideProduct .slick-next, #slideProduct .slick-prev {
	transform: translateY(-50%);
}

.slidGal { 
	width: 100%;
	margin-bottom: 15px;
	overflow: hidden;
	height: 460px;
}
.slidGal img {
	width: 100%;
}

.slide-nav {border-bottom: 1px solid #9c9c9c;}
.slide-nav a {
	width: 80px;
	margin-right: 5px;
	margin-bottom: 10px;
	overflow: hidden;
	height: 100px;
}
.slide-nav a img {
	width: 100%;
}

@media only screen and (max-width:680px){
	#detail {
		grid-template-columns: 100%;
		margin-top:62px;
	}
	#slideProduct, .slidGal {
		grid-row: 1;
	}
	.slidGal { height: 295px;}
	.slide-nav a {height: 48px;}
}

@media only screen and (max-width:480px){
	.slidGal { height: 195px;}
}

#article {
	padding-bottom: 146px;
	background-color: #ffffff;
}
#article .slide a figure {
	height: 350px;
	background-position: center;
	background-size: cover;
	width: 100%;
}

.paddTop {
	padding-top: 100px !important;
}

/*-----------mainText-----------*/
.mainText {
	text-align: justify;
	height: calc(100% - 44px);
	min-height: 380px;
	position: relative;
	/* padding: 16px 30px; */
	word-break: break-word;
	display: flow-root;
}
#article .mainText { padding: 16px 30px; display: flow-root;}
.mainText h2 {
	color: #2f414b;
	font-size: 1.2em;
	font-weight: 500;
	line-height: 1.3em;
	margin-bottom: 6px;
	text-align: left !important;
}
.mainText h2 + .sideImg,
.mainText h2 + h3 {
	margin-top: 30px
}
.mainText h2 + .sideImg.imgLeft,
.mainText h2 + .sideImg.imgRight {
	margin-top: 0;
}
.mainText h3 {
	color: #d03939;
	display: table;
	font-size: 1.6em;
	font-weight: 500;
	line-height: 1.45em;
	margin-bottom: 4px;
	text-align: left !important;
}
.mainText p {
	font-size: 1.2em;
	hyphens: auto;	
	line-height: calc(1.5em + .2vw);
	text-align: justify;
}
.mainText p:last-of-type {
	margin-bottom: 0
}
.mainText p:last-of-type + ul,
.mainText p:last-of-type + ol,
.mainText p:last-of-type + .embedContainer,
.mainText p:last-of-type + h3 {
	margin-top: 24px
}
.mainText p:last-of-type + .sideImg,
.mainText p:last-of-type + h6,
.mainText p + h2,
.mainText .sideImg + h2 {
	margin-top: 46px;
}
.mainText p a {
	color: #dd3737;
	font-weight: 400;
	text-decoration: underline;
	transition:all 0.3s ease;
}
.mainText p a:hover { color: #ee6262 }

.mainText ul,
.mainText ol {
	counter-reset: myCounter;
	margin-bottom: 24px;
}
.mainText h2 + ul,
.mainText h2 + ol {
	margin-top: 16px;
}
.mainText h3 + ul,
.mainText h3 + ol {
	margin-top: 12px;
}
.mainText ul:last-of-type,
.mainText ol:last-of-type {
	margin-bottom: 0
}
.mainText ul:last-of-type + p,
.mainText ol:last-of-type + p {
	margin-top: 24px
}
.mainText ul:last-of-type + .sideImg,
.mainText ol:last-of-type + .sideImg {
	margin-top: 36px
}
.mainText ul:last-of-type + h2,
.mainText ol:last-of-type + h2,
.mainText ul:last-of-type + h3,
.mainText ol:last-of-type + h3,
.embedContainer + h2 {
	margin-top: 46px
}
.mainText ul:last-of-type + .embedContainer,
.mainText ol:last-of-type + .embedContainer {
	margin-top: 24px
}
.mainText ul > li {
	font-size: 1.15em;
	hyphens: auto;
	line-height: calc(1.5em + .2vw);
	padding: 0 0 8px 20px;
}
.mainText ul > li a {
	color: #323e46;
	font-weight: 400;
	text-decoration: underline;
	transition:all 0.3s ease;
}
.mainText ul > li a:hover { color: #d12121 }
.mainText ul > li p {
	font-size: 1em;
}
.mainText ul > li:before {
	background-color: #d12121;
	border-radius: 50%;
	content: "";
	height: 8px;
	left: 0;
	position: absolute;
	top: 11px;
	width: 8px;
}
.mainText ol > li {
	counter-increment: myCounter;
	font-size: 1.15em;
	hyphens: auto;
	line-height: calc(1.5em + .2vw);
	list-style: none;
	padding: 0 0 10px 32px;
}
.mainText ol > li:before {
	content: counter(myCounter)".";
	left: 0;
	position: absolute;
	text-align: right;
	top: 0;
	width: 22px;
}
.mainText ol > li a {
	color: #005688;
	font-weight: 400;
	text-decoration: underline;
	transition:all 0.3s ease;
}
.mainText ol > li a:hover { color: #33a6e8 }
.mainText ol > li > ul {
	margin-top: 12px;
}
.mainText ol > li > ul > li {
	font-size: 1em;
}
.mainText .embedContainer {
	margin-bottom: 24px;
	width: 100%;
}
.mainText iframe {
	width: 100%;
}
.mainText h6 {
	border-top: 1px solid #e6e6e6;
	cursor: pointer;
	font-size: 1.5em;
	font-weight: 400;
	line-height: 1.36em;
	padding: 17px 32px 17px 0;
	position: relative;
	text-align: left;
	transition:all 0.3s ease;
}
.mainText h6 a {
	color: #443f3f;
	transition:all 0.3s ease;
}
.mainText h6:hover a {
	color: #52abdc;
	text-decoration: none;
}
.mainText h2 + h6,
.mainText h3 + h6 { margin-top: 24px }
.mainText h6:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f107";
	color: #52abdc;
	font-size: 1em;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.mainText h6.symbol:before {
	content: "\f106";
	color: #add039;
}
.mainText h6.symbol a { color:#52abdc }
.mainText blockquote {
	display: none;
	padding: 0 0 24px 0;
}
.mainText .h6line {
	background-color: #e6e6e6;
	display: block;
	height: 1px;
}

.mainText table {
	margin-bottom: 24px;
	width: 100% !important;
}
.mainText table th {
	background-color: #87898a;
	color: #fff;
	height: auto !important;
	padding: 9px 12px;
	width: auto !important;
}
.mainText table td {
	border: 1px solid #87898a;
	height: auto !important;
	padding: 9px 12px;
	width: auto !important;
}
.mainText a.zoomImage {
	display: block;
	position: relative;
}
.mainText a.zoomImage:before {
	background-color: rgba(28,30,44,0);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top:0;
	transition:all 0.3s ease;
	width: 100%;
	z-index: 999;
}
.sideImg {
	margin: 0 0 24px 0;
	width: 100%;
}
.sideImg.imgLeft,
.sideImg.imgRight {
	width: 34%;
}
.sideImg.imgLeft {
	float: left;
	margin: 6px 24px 24px 0;
}
.sideImg.imgRight {
	float: right;
	margin: 6px 0 24px 24px;
}

.sideImg.imgLeft + p:after,
.sideImg.imgRight + p:after {
	content: "";
	clear: both;
	display: block;
}

.sideImg img {
	width: 100%;
}



@media only screen and (max-width:650px) {
	/* .mainText { } */
	.mainText p { hyphens: initial; }
	.mainText ul > li { hyphens: initial; text-align: left !important }
	.mainText ol > li { hyphens: initial; text-align: left !important }
	.sideImg.imgLeft,
	.sideImg.imgRight { width: 100% }
	.sideImg.imgLeft { float: initial; margin: 6px 0 24px 0 }
	.sideImg.imgRight { float: initial; margin: 6px 0 24px 0 }
	.mainText h2 + .sideImg.imgLeft,
	.mainText h2 + .sideImg.imgRight { margin-top: 30px }
	.mainText table { display: grid; overflow-x: scroll }
}


.docs {
	/* display: grid;
	grid-template-columns: repeat(3, 1fr); */
	position: relative;
	padding: 25px 30px;
	display: block;
}

.docs p.title {
	display: block;
	color: rgb(212, 48, 48);
	padding-bottom: 7px;
	border-bottom: 1px solid #e0e0e0;
	margin-bottom: 10px;
}
.docs a {
	display: inline-block;
	margin-right: 20px;
	color: #4a555c;
	font-weight: 500;
	padding: 7px 0;
}
.docs a:hover {
	color: #dd3737 ;
}
.docs a > i {
	color: #dd3737;
	margin-right: 5px;
}

/*-----------generalForm-----------*/
.generalForm h2 {
	color: #4a555c;
	font-size: 1.8em;
	font-weight: 500;
	margin-bottom: 24px;
}
.generalForm .title {
	display: block;
	font-size: 1.05em;
	font-weight: 400;
	margin-bottom: 9px;
	text-align: left;
}
.generalForm input[type="text"],
.generalForm input[type="date"],
.generalForm input[type="password"],
.generalForm input[type="file"],
.generalForm select,
.generalForm textarea {
	border: 1px solid #6d6f7b;
	font-size: 1.05em;
	font-weight: 400;
	margin-bottom: 30px;
	outline: none;
	padding: 7px 10px;
	width: 100%;
}
.generalForm textarea {
	overflow: hidden;
	overflow-y: auto;
}
.generalForm input[type="text"].error,
.generalForm input[type="password"].error,
.generalForm input[type="file"].error,
.generalForm select.error,
.generalForm textarea.error {
	box-shadow: 0 0 0 4px #fdd5d6;
}

.generalForm input[readonly="readonly"] { background-color: #f7f7f7 !important; border: 1px solid #c5c5c5 !important }
.generalForm select[disabled="disabled"] { background-color: #f7f7f7 !important; border: 1px solid #c5c5c5 !important }

.generalForm select {
	background-color: #fff;
	background-image: url(../img/arrow.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 24px;
	margin-bottom: 30px;
	padding: 10px 24px 10px 14px;
	-webkit-appearance: none;
	-moz-appearance: none;
}
.generalForm input[type="text"]:focus,
.generalForm textarea:focus,
.generalForm select:focus {
	border-color: #646464;
}

.generalForm input[type="radio"] {
	background-color: transparent;
	border-radius: 50%;
	box-shadow: 0 0 0 1px #df3d38;
	cursor: pointer;
	height: 14px;
	margin-right: 10px;
	outline: none;
	top: 2px;
	width: 14px;
	-webkit-appearance: none;
	-moz-appearance: none;
}
.generalForm input[type="radio"]:hover { background-color: #efefef }
.generalForm input[type="radio"]:checked {
	background-color: #dd3737;
	border:3px solid #fff;
	box-shadow: 0 0 0 1px #9c9c9c;
}

.generalForm input[type="checkbox"] {
	background-color: transparent;
	box-shadow: 0 0 0 1px #3b454b;
	cursor: pointer;
	height: 14px;
	margin-right: 10px;
	top: 2px;
	width: 14px;
	-webkit-appearance: none;
	-moz-appearance: none;
}
.generalForm input[type="checkbox"]:checked {
	background-color: #dd3737;
	border:3px solid #fff;
	box-shadow: 0 0 0 2px #9c9c9c;
}
.generalForm .mChoice {
	color: #6d6f7b;
	cursor: pointer;
	display: block;
	font-size: 1.14em;
	font-weight: 400;
	margin: 6px 0 5px 2px;
}
.generalForm .captcha {
	background-position: right top;
	background-repeat: no-repeat;
	background-size: contain;
}

.generalForm input[type="submit"],
.generalForm button[type="submit"] {
	background-color: #ef4444;
	box-shadow: 0 0 0 3px transparent;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 1em;
	font-weight: 500;
	outline: none;
	padding:10px 35px;
	text-transform: uppercase;
	transition:all 0.3s ease;
}
.generalForm input[type="submit"]:hover,
.generalForm button[type="submit"]:hover {
	background-color: #dc5252;
}


/*-----------misc-----------*/
.msjError,
.msjSuccess {
	font-size: 1em;
	font-weight: 500;
	margin-top: 30px;
	padding: 14px 18px;
	text-align: center;
}
.msjError i,
.msjSuccess i { margin-right: 8px }
.msjError {
	border: 1px solid #e35d34;
	color: #e35d34;
}
.msjSuccess {
	border: 1px solid #add039;
	color: #add039;
}
.embedContainer {
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}
.embedContainer.map {
	padding-bottom: 26%;
}
.embedContainer iframe,
.embedContainer object,
.embedContainer embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.col50 {
	display: grid;
	grid-gap: 24px;
	grid-template-columns: repeat(2,1fr);
}
@media only screen and (max-width:1220px) {
	.embedContainer.map { padding-bottom: 36% }
}
@media only screen and (max-width:880px) {
	.embedContainer.map { padding-bottom: 46% }
}
@media only screen and (max-width:560px) {
	.embedContainer.map { padding-bottom: 66% }
}
@media only screen and (max-width:480px) {
	.embedContainer.map { padding-bottom: 80% }
	.col50 { grid-gap: 0; grid-template-columns: repeat(1,1fr) }
}


/* ----------- Magnific -----------*/
.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 200000;
	overflow: hidden;
	position: fixed;
	background-color: #45565c;
	opacity: 0.66;
	filter: alpha(opacity=66);
}
.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 200002;
	position: fixed;
	outline: none !important;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
}
.mfp-container:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}
.mfp-align-top .mfp-container:before { display: none; }
.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 1045;
}
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}
.mfp-ajax-cur { cursor: progress; }
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}
.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}
.mfp-auto-cursor .mfp-content { cursor: auto; }
.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}
.mfp-loading.mfp-figure { display: none; }
.mfp-hide { display: none !important; }
.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 1044;
}
.mfp-preloader a { color: #CCC; }
.mfp-preloader a:hover { color: #FFF; }
.mfp-s-ready .mfp-preloader { display: none; }
.mfp-s-error .mfp-content { display: none; }
button.mfp-close, button.mfp-arrow {
	background-color: transparent;
	overflow: visible;
	cursor: pointer;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	-webkit-box-shadow: none;
	box-shadow: none;
}
#modalBox2 button.mfp-close {
	background-color: rgba(255,255,255,0.9);
	border-radius: 0 0 0 14px;
}


button::-moz-focus-inner { padding: 0; border: 0 }
.mfp-close {
	cursor: pointer;
	font-size: 13px;
	height: 34px;
	line-height: 33px !important;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	width: 34px;
}
.mfp-close:hover, .mfp-close:focus { opacity: 1; filter: alpha(opacity=100); }
.mfp-close-btn-in .mfp-close { color: #a8b1b6 }
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
	color: #fff;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	text-shadow: 0 0 10px rgba(0,0,0,0.9);
	width: 100%;
}
.mfp-counter {
	color: #334b98;
	font-size: 12px;
	position: absolute;
	top: 7px;
	right: 10px;
	line-height: 18px;
	white-space: nowrap;
}
.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	filter: alpha(opacity=65);
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}
.mfp-arrow:active { margin-top: -54px; }
.mfp-arrow:hover, .mfp-arrow:focus { opacity: 1; filter: alpha(opacity=100); }
.mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
}
.mfp-arrow:after, .mfp-arrow .mfp-a {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px;
}
.mfp-arrow:before, .mfp-arrow .mfp-b {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7;
}
.mfp-arrow-left { left: 0; }
.mfp-arrow-left:after, .mfp-arrow-left .mfp-a { border-right: 17px solid #FFF; margin-left: 31px; }
.mfp-arrow-left:before, .mfp-arrow-left .mfp-b { margin-left: 25px; border-right: 27px solid #3F3F3F; }
.mfp-arrow-right { right: 0; }
.mfp-arrow-right:after, .mfp-arrow-right .mfp-a { border-left: 17px solid #FFF; margin-left: 39px; }
.mfp-arrow-right:before, .mfp-arrow-right .mfp-b { border-left: 27px solid #3F3F3F; }
.mfp-iframe-holder { padding-top: 40px; padding-bottom: 40px; }
.mfp-iframe-holder .mfp-content { line-height: 0; width: 100%; max-width: 900px; }
.mfp-iframe-holder .mfp-close { top: -40px; }
.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}
/* Main image in popup */
img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	padding: 40px 0 40px;
	margin: 0 auto;
}
/* The shadow behind the image */
.mfp-figure { line-height: 0; }
.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 14px rgba(41, 41, 41, 0.4);
    background: #444;
}
.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}
.mfp-figure figure { margin: 0; }
.mfp-bottom-bar {
	margin-top: -40px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}
.mfp-title {
	background-color: #fff;
	box-shadow: 0 0 14px rgba(41, 41, 41, 0.4);
	color: #303030;
	font-size: 13px;
	font-weight: 400;
	min-height: 34px;
	text-align: left;
	line-height: 18px;
	word-wrap: break-word;
	padding: 8px 36px 10px 14px;
}
.mfp-image-holder .mfp-content { max-width: 100%; }
.mfp-gallery .mfp-image-holder .mfp-figure { cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	.mfp-img-mobile .mfp-image-holder { padding-left: 0; padding-right: 0; }
	.mfp-img-mobile img.mfp-img { padding: 0; }
	.mfp-img-mobile .mfp-figure:after { top: 0; bottom: 0; }
	.mfp-img-mobile .mfp-figure small { display: inline; margin-left: 5px; }
	.mfp-img-mobile .mfp-bottom-bar { background: rgba(0, 0, 0, 0.6); bottom: 0; margin: 0; top: auto; padding: 3px 5px; position: fixed; }
	.mfp-img-mobile .mfp-bottom-bar:empty { padding: 0; }
	.mfp-img-mobile .mfp-counter { right: 5px; top: 3px; }
	.mfp-img-mobile .mfp-close { top: 0; right: 0; width: 35px; height: 35px; line-height: 35px; background: rgba(0, 0, 0, 0.6); position: fixed; text-align: center; padding: 0; }
}
@media all and (max-width: 900px) {
	.mfp-arrow { -webkit-transform: scale(0.75); transform: scale(0.75); }
	.mfp-arrow-left { -webkit-transform-origin: 0; transform-origin: 0; }
	.mfp-arrow-right { -webkit-transform-origin: 100%; transform-origin: 100%; }
	.mfp-container { padding-left: 6px; padding-right: 6px; }
}

/*--------------------------- buscador ---------------------------------*/
#modal, #modalForm, #modalSenByEmail{
	background: #fff;
	box-shadow: 0 0 20px rgba(64, 64, 64, 0.45);
	margin: 26px auto;
	max-width: 500px;
	padding: 24px 28px 26px;
	position: relative;
}
#modalSenByEmail, #modalForm.v2 { max-width: 680px }

#modalSenByEmail:focus, #modal:focus, .modalForm:focus {
	outline: none;
}
#modalSenByEmail h1, #modal h1, .inlineBox h1, .helpBox h1 {
	color: #2a363d;
	font-size: 1.5em;
	margin-bottom: 10px;
	text-align: center;
}
#modalSenByEmail p, #modal p, #modalForm p {
	margin-top: 4px;
}
#modalSenByEmail form, #modalForm form {
	margin-top:16px
}
#modalSenByEmail label, #modalForm label {
	display: block;
	font-size: .9em;
	margin-bottom: 6px;
}
#modal input[type="text"], #modal textarea,
#modalForm input[type="text"], #modalForm textarea,
#modalSenByEmail input[type="text"], #modalSenByEmail text {
	border: 2px solid #dedede;
	color: #2a363d;
	font-size: .9em;
	margin: 0 0 18px 0;
	padding: 8px 10px 8px 10px;
	width:100%;
	transition: all 0.5s ease-in-out;
	position: relative;
}
#modal input[type="text"]:focus, #modal textarea:focus,
#modalSenByEmail input[type="text"]:focus, #modalSenByEmail textarea:focus,
#modalForm input[type="text"]:focus, #modalForm textarea:focus {
	border-color: #52abdc;
}
#modal.mSearch input[type="text"] {
	padding-right: 60px;
}
#modal a.btnSearch, #modalForm a {
	display: inline-block;
	background-color: #dd3737;
	color: #fff;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 1.2em;
	padding:7px 20px 6px 20px;
	position: absolute;
	right: 29px;
}

/* Resultados de búsqueda */
.searchBox {
	position: relative;
	padding: 20px 0;
	border-bottom: 1px solid #e0e0e0;
}

.searchBox input {
	border: 2px solid #dedede;
	color: #2a363d;
	font-size: .9em;
	padding: 8px 60px 8px 10px;
	width:100%;
	transition: all 0.5s ease-in-out;
}

.searchBox a.btnSearch {
	display: inline-block;
	position: absolute;
	right: 0;
	background-color: #dd3737;
	color: #fff;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 1.2em;
	padding:7px 20px 6px 20px;
}
.searchBox a.btnSearch:hover {
	background-color: #a11b1b;
}

.results {
	position: relative;
	padding: 20px;
}

.results > p {
	font-size: 1.2em;
	padding-bottom: 10px;
}
.results > p > span {
	color: #2b2b2b;
}

.results a { 
	background-color: #fff;
	display: block;
	border-radius: 4px;
	padding: 10px 18px;
	color: #2a363d;
	line-height: 1.3;
	margin-bottom: 20px;
	box-shadow: 0 0 60px rgba(40,40,40,.15);
}

.results a > h3 {
	color: #8d8d8d;
}
.results a:hover > h3{
	color: #dd3737;
} 
#share {text-align: end;}
#share a {
	display: inline-block;
	color: rgb(156, 156, 156);
	padding: 10px 15px;
	position: relative;
}
#share a:before {
	content: "";
	height: 10px;
	width: 1px;
	background-color: #bebebe;
	position: absolute;
	right: 0;
}
#share a:last-child:before {
content: none;
}

#share a i {
	position: relative;
}
#share a i.float {
	font-size: .5em;
	position: absolute;
	right: 11px;
	top: 12px;
}
#share a:hover i {
	color: #dd3737;
}

@media only screen and (max-width:690px){
	#share {text-align: center;}
	#share a {padding: 10px 12px;}
}

#catGalery .list a {display: block;}
#catGalery .list a,
#catGalery .list a figure {
	max-width: 100% !important;
	height: 300px;
}

#catGalery .list a figure figcaption {
	width: 100%;
	background-color: rgba(247, 60, 60, 0.664);
	color: #ffffff;
	height: 300px;
	text-align: center;
	padding: 20px;
	opacity: 0;
	transition: all .3s ease-in;
}
#catGalery .list a:hover figure figcaption {opacity: 1;}
#catGalery .list a figure figcaption p {
	left: 0;
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.2em;
	font-weight: bold;
}

@media only screen and (max-width: 920px){
	#catGalery .list {padding: 0 20px;}
	#catGalery .list a figure figcaption {
		opacity: 1;
		background-color: rgba(247, 60, 60, 0.39)
	}

}
@media only screen and (max-width: 590px){
	#catGalery .list a, #catGalery .list a figure, #catGalery .list a figure figcaption {height: 216px;}
	#catGalery .list {
		grid-template-columns: repeat(2, 1fr);
		padding: 0 20px;
	}
}
@media only screen and (max-width: 490px){
	#catGalery .list {
		grid-template-columns: 100%;
	}
}

/* ---------------CONTACTO--------------- */
#contact > div {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 25px;
}

#contact  .form {
	background-color: rgba(255, 255, 255, 0.747);
	padding: 20px 25px;
}
#contact  .form p {
	padding-bottom: 18px;
	font-weight: 500;
}
#contact  .form .generalForm .title {
	font-size: 1em;
	margin-bottom: 5px;
}
#contact  .form .generalForm input[type="text"],
#contact  .form .generalForm input[type="date"],
#contact  .form .generalForm input[type="password"],
#contact  .form .generalForm input[type="file"],
#contact  .form .generalForm select,
#contact  .form .generalForm textarea {
	border: 1px solid #dd3737;
	border: 1px solid #d5d5d5;
	margin-bottom: 20px;
}

#contact .data {
	padding: 63px 25px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
}
#contact .data .contact p, #contact .data .rrss {
	background-color: rgba(255,255,255,.9);
	font-weight: 500;
	line-height: 1.4em;
	padding: 12px 16px 12px 42px;
	margin-bottom: 12px;
	position: relative;
}
#contact .data .rrss {text-align: center; padding:15px 31px ;}
#contact .data .contact p > i {
	color: #ef4444;
	position: absolute;
	top: 15px;
	left: 16px;
}
#contact .data .rrss a {
	padding: 7px 9px;
	text-align: center;
	background-color: #eeeeee;
	border-radius: 50%;
	display: inline-block;
	margin: 0 5px;
}
#contact .data .rrss a:hover {	background-color: #e4e4e4;}
#contact .data .rrss a > i {color: rgb(221, 55, 55);}

@media only screen and (max-width:780px){
	#contact > div {
		grid-template-columns: 95%;
		justify-content: center;
	}
}

 #sitemap {
	background-color: #fff;
	padding: 20px 32px;
	color: #2b2b2b;
	margin: 100px auto;
	max-width: 75%;
}

#sitemap .list > li a {
	color: #2b2b2b;
	font-size: 1.2em;
	padding-left: 15px;
	position: relative;
}
#sitemap .list > li a:before {
	content: "";
	height: 2px;
	width: 6px;
	background-color: #2f414b;
	position: absolute;
	left: 0;
	top: 9px;
}

#sitemap .list a:hover {
	color: #dd3737;
}
#sitemap .list a:hover:before {
	background-color: #dd3737;
}

#sitemap .list > li > ul >li a {
	color: #2b2b2b;
	font-size: 1em;
	padding-left: 25px;
	position: relative;
}
#sitemap .list > li > ul >li a:before {
	left: 10px;
	background-color: #dd3737;
	border-radius: 50%;
	height: 6px;
	width: 6px;
	top: 5px;
}

@media only screen and (max-width:800px){
	#sitemap {max-width: 95%;}
	#sitemap .list {grid-template-columns: 1fr;}
}