/* DEBUG GRID */
/*
.fs-grid [class*="fs-lg-"] { border:1px dotted red; }
.fs-grid .row .row [class*="fs-lg-"] { border:1px dotted red; }
*/

html {
	font-size:62.5%;
	}

#vh,
.vh {
	height:100%;
	}

html,
body {
	width:100%;
	}

body {
	height:100%;
	background-image: url(/gfx/bck.png), url(/gfx/bck.jpg);
	background-color: #3b3b3b;
	background-repeat: no-repeat, repeat;
	background-attachment: fixed;
	background-position: 100% 0, 0;
	background-size: cover, auto;
	font-family:"Exo 2", sans-serif;
	font-size:1.6rem;
	line-height:1.6;
	font-weight:300;
	color:#000;
	animation:fade-in 1500ms 1;
	-webkit-animation:fade-in 1500ms 1;
	}

body.index {
	background: url(/gfx/bck.jpg) repeat #3b3b3b fixed;
}

@-webkit-keyframes fade-in { 0% { -webkit-opacity:0; } 100% { -webkit-opacity:1; } }
@keyframes fade-in { 0% { opacity:0; } 100% { opacity:1; } }


#sidebar {
	box-sizing:border-box;
	background:#bf1e2e;
	color:#fff;
	text-align:center;
	position:fixed;
	top:0;
	left:0;
	bottom:0;
	z-index:100;
	padding:0;
	margin:0;
	min-height:100%;
	overflow:hidden;
	-webkit-transition:all 500ms ease-in-out;
	transition:all 500ms ease-in-out;
	/*
	overflow-y:auto;
	touch-action:pan-y;
	*/
	}

#sidebar .scrollbar-macosx > .scroll-element.scroll-y {
	width:20px;
	}

#sidebar .scrollbar-macosx > .scroll-element .scroll-bar {
	background:#fff;
	}

#sidebar .scrollbar-macosx > .scroll-element.scroll-y .scroll-bar {
	left:6px;
	}

#sidebarContent {
	background-image:url(/gfx/v-line.png), url(/gfx/v-line.png);
	background-position:10px 0, calc(100% - 10px) 0;
	background-repeat:repeat-y;
	min-height:100%;
	height:auto;
	overflow:hidden;
	}

#page {
	box-sizing:border-box;
	position:relative;
	-webkit-transition:all 500ms ease-in-out;
	transition:all 500ms ease-in-out;
	height:auto;
	min-height:100%;
	min-height:100vh;
	overflow:hidden;
	}

.pageIndex {
	min-height:500px !important;
	height:100% !important;
	}

#pageCover {
	visibility:hidden;
	opacity:0;
	background:rgba(0,0,0,.5);
	min-width:100%;
	min-height:100%;
	height:100%;
	position:fixed;
	z-index:100;
	top:0;
	left:0;
	}

#pageCover.load {
	-webkit-animation-name:load;
  	animation-name:load;
	-webkit-animation-duration:500ms;
  	animation-duration:500ms;
  	-webkit-animation-fill-mode:both;
  	animation-fill-mode:both;
	}

@-webkit-keyframes load {
  from {
    opacity: 0;
	visibility:visible;
  }

  to {
    opacity: 1;
	visibility:visible;
  }
}

@keyframes load {
  from {
    opacity: 0;
	visibility:visible;
  }

  to {
    opacity: 1;
	visibility:visible;
  }
}

#pageCover.unload {
	-webkit-animation-name:unload;
  	animation-name:unload;
	-webkit-animation-duration:500ms;
  	animation-duration:500ms;
  	-webkit-animation-fill-mode:both;
  	animation-fill-mode:both;
	}

@-webkit-keyframes unload {
  from {
    opacity: 1;
	visibility:visible;
  }

  to {
    opacity: 0;
	visibility:hidden;
  }
}

@keyframes unload {
  from {
    opacity: 1;
	visibility:visible;
  }

  to {
    opacity: 0;
	visibility:hidden;
  }
}

#menuButton {
	position:fixed;
	top:20px;
	left:0;
	-webkit-transform:translateX(25px);
	transform:translateX(25px);
	z-index:100;
	-webkit-transition:all 500ms ease-in-out;
	transition:all 500ms ease-in-out;
	}

#logo {
	display:block;
	width:100%;
	background-color:#000;
	background-image:url(/gfx/v-line.png), url(/gfx/v-line.png);
	background-position:10px 0, calc(100% - 10px) 0;
	background-repeat:repeat-y;
	text-align:center;
	padding:50px 35px;
	}

#logo img {
	display:inline-block;
	width:100%;
	}

#logoMobile {
	display:none;
	justify-content:flex-end;
	align-items:center;
	align-content:center;
	width:100%;
	height:83px;
	background:rgba(0,0,0,.7);
	position:absolute;
	top:0;
	left:0;
	z-index:2;
	opacity:1;
	padding:15px 28px 15px 100px;
	text-align:right;
	}

#logoMobile.hide {
	opacity:0 !important;
	}

#logoMobile img {
	display:inline-block;
	width:100%;
	max-width:200px;
	}

nav {
	position:relative;
	padding:30px 0;
	}

nav a {
	display:block;
	color:#fff;
	text-decoration:none;
	text-transform:uppercase;
	text-align:center;
	font-weight:500;
	line-height:1.1;
	padding:10px 20px;
	margin:5px 0;
	}

nav a:hover,
nav a.active {
	background:#fff;
	color:#000;
	}

nav a.active {
	font-weight:600;
	}

nav::after,
#sidebarData::after {
	content:"";
	width:calc(100% - 20px);
	height:1px;
	background:url(/gfx/h-line.png) repeat-x 0 0;
	position:absolute;
	bottom:0;
	left:10px;
	}

#sidebarData {
	position:relative;
	padding:30px 0;
	font-weight:400;
	}

#sidebarData a {
	color:#fff;
	text-decoration:none;
	}

#sidebarData a:hover {
	color:#000;
	}

#sidebarSocial {
	position:relative;
	padding:30px 0 50px;
	}

#sidebar .social svg path {
	fill:#fff;
	-webkit-transition:all 300ms ease;
	transition:all 300ms ease;
	}

#sidebar .fb:hover svg path {
	fill:#000;
	}


#mainSlider {
	box-sizing:border-box;
	position:relative;
	top:0;
	width:100%;
	height:100%;
	clear:both;
	overflow:hidden;
	background:#fff;
	z-index:1;
	}

#mainSlider .bxslider {
	z-index:10;
	}

#mainSlider .bx-viewport,
#mainSlider .bx-wrapper {
    position:relative;
    width:100%;
    height:100% !important;
	min-height:100%;
	}

#mainSlider .bxslider,
#mainSlider .bxslider .slidek {
	width:100% !important;
    height:100%;
	}

#mainSlider .bxslider .slidek {
    background-repeat:no-repeat;
	background-position:50%;
	background-size:cover;
	}

#mainSlider .bxslider .slidek .contentSlidek {
	width:100%;
	height:100%;
	min-height:100%;
	background:rgba(0,0,0,.05);
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
	}

.sliderDesc {
	width:100%;
	padding:0 20px;
	position:relative;
	background:url(/gfx/h-line.png) repeat-x 0 5px rgba(0,0,0,.5);
	color:#fff;
	font-style:italic;
	font-weight:300;
	line-height:1;
	text-transform:uppercase;
	text-align:center;
	}

.sliderDesc .sd {
	display:inline-block;
	text-align:left;
	padding:20px 0;
	margin:0;
	max-width:100%;
	width:auto;
	cursor:default;
	}

.sliderDesc .sd strong {
	font-weight:600;
	font-size:120%;
	}

.sliderDesc .sd p {
	margin:10px 0;
	}

.sliderDesc .sd p:first-child {
	margin:0;
	}

.sliderDesc .sd p:last-child {
	margin:0 0 0 20px;
	}

.sliderDesc .sd::before,
.sliderDesc .sd::after {
	content:"";
	width:1000%;
	height:19px;
	position:absolute;
	bottom:-19px;
	left:20px;
	-webkit-border-bottom-left-radius:20px;
	border-bottom-left-radius:20px;
	}

.sliderDesc .sd::before {
	background:url(/gfx/h-line.png) repeat-x 0 50%;
	z-index:2;
	border-left:22px solid #bf1e2e;
	}

.sliderDesc .sd::after {
	z-index:1;
	background:-moz-linear-gradient(45deg, #bf1e2e 1%, #f52438 6%, #bf1e2e 11%, #f52438 16%, #bf1e2e 22%, #f52438 31%, #bf1e2e 44%, #bf1e2e 100%);
	background:-webkit-linear-gradient(45deg, #bf1e2e 1%,#f52438 6%,#bf1e2e 11%,#f52438 16%,#bf1e2e 22%,#f52438 31%,#bf1e2e 44%,#bf1e2e 100%);
	background:linear-gradient(45deg, #bf1e2e 1%,#f52438 6%,#bf1e2e 11%,#f52438 16%,#bf1e2e 22%,#f52438 31%,#bf1e2e 44%,#bf1e2e 100%);
	}

footer {
	width:100%;
	background:rgba(0,0,0,.7);
	position:fixed;
	bottom:0;
	left:0;
	z-index:101;
	color:#bbb;
	font-size:78%;
	padding:5px 25px;
	}

footer strong {
	font-weight:500;
	}

footer a {
	color:#fff;
	text-decoration:none;
	}

footer a:hover {
	color:#bf1e2e;
	}

footer p {
	margin:1px 0;
	}

#copy {
	float:left;
	}

#real {
	float:right;
	}


#subpage {
	padding:0 0 50px;
	color:#f2f2f2;
	text-align:justify;
	}

#subpage h1 {
	display:block;
	position:relative;
	font-weight:600;
	font-style:italic;
	line-height:1.1;
	text-transform:uppercase;
	text-align:left;
	color:#fff;
	background-image:url(/gfx/h-line.png), url(/gfx/h-line.png);
	background-repeat:repeat-x;
	background-position:0 0, 0 100%;
	margin:25px 0 50px;
	letter-spacing:1px;
	}

#subpage h1::before {
	content:"\f0da";
	font-family:'FontAwesome';
	position:absolute;
	left:0;
	font-style:normal;
	color:#bf1e2e;
	}

hr {
	width:100%;
	height:70px;
	border:none;
	margin:0;
	padding:0;
	background:url(/gfx/h-line.png) repeat-x 50%;
	}

p + hr {
	background-position:0 calc(50% - 12px);
	}

#subpage h2,
#subpage h3,
#subpage h4 {
	display:block;
	clear:both;
	margin:0 0 20px;
	font-weight:600;
	font-style:italic;
	text-align:left;
	line-height:1.35;
	color:#fff;
	}

#subpage .innerGall h3 {
	margin-bottom:30px;
	}

#subpage .frame {
	display:block;
	margin:25px 0 30px;
	padding:23px 20px 25px 20px;
	text-decoration:none;
	background-color:#fff;
	background-image:url(/gfx/h-line2.png), url(/gfx/h-line2.png);
	background-repeat:repeat-x;
	background-position:0 8px, 0 calc(100% - 8px);
	color:#000;
	clear:both;
	}

#subpage .frame2 {
	display:block;
	margin:25px 0 30px;
	padding:23px 20px 25px 20px;
	background-color:#000;
	background-image:url(/gfx/h-line.png), url(/gfx/h-line.png);
	background-repeat:repeat-x;
	background-position:0 8px, 0 calc(100% - 8px);
	color:#fff;
	clear:both;
	}

#subpage .frame a:hover {
	color:#000;
	text-decoration:underline;
	}

#subpage .frame + .frame2,
#subpage .frame2 + .frame,
#subpage .frame + .frame,
#subpage .frame2 + .frame2 {
	margin-top:10px;
	}

#subpage .marginGalDesc .frame,
#subpage .marginGalDesc .frame2 {
	display:inline-block;
	margin-right:20px;
	padding:16px 15px 18px;
	}

#subpage p + ol,
#subpage p + ul {
	margin-top:-12px;
	}

#subpage ol,
#subpage ul {
	margin-left:0;
	margin-bottom:25px;
	padding:0;
	}

#subpage ul {
	list-style-image:url("/gfx/li.png");
	list-style-position:outside;
	}

#subpage li {
	position:relative;
	left:35px;
	margin-bottom:5px;
	padding-left:5px;
	padding-right:35px;
	text-align:left;
	}

#subpage li:last-child {
	margin-bottom:0;
	}

#subpage ul li {
	position:relative;
	margin-left:0;
	}

#subpage ol + ul {
	margin-left:35px;
	margin-top:-5px;
	}

#subpage .bigTxt {
	font-size:120%;
	line-height:1.35;
	}

#subpage .smallTxt {
	font-size:85%;
	}

#subpage .gray {
	color:#aaa;
	}

#subpage .white {
	color:#fff;
	}

#subpage .red {
	color:#f4192f;
	}

#subpage strong {
	font-weight:600;
	}

#subpage p {
	margin:0 0 25px 0;
	}

#subpage form p {
	margin-bottom:15px;
	}

#subpage a {
	color:#f63145;
	text-decoration:none;
	font-weight:400;
	}

#subpage a[href*="tel:"],
#subpage a[href*="tel:"]:hover {
	color:#eee;
	text-decoration:none;
	}

#subpage a:hover {
	color:#fff;
	}

#subpage .table-container {
	width:100%;
	overflow-y:auto;
	_overflow:auto;
	clear:both;
	margin:0 0 30px 0;
	}

#subpage .table-container table {
	margin-bottom:0;
	}

#subpage caption {
	margin:0 auto 15px;
	font-weight:600;
	font-size:105%;
	color:#fff;
	}

#subpage table {
	border-collapse:collapse;
	margin:10px auto 0;
	line-height:1.4;
	background:rgba(0,0,0,.3);
	clear:both;
	}

#subpage h2 + table,
#subpage h3 + table {
	margin-top:25px;
	}

#subpage table tr td {
	-webkit-transition:all 250ms ease;
	transition:all 250ms ease;
	}

#subpage table td,
#subpage table th {
	border-bottom:1px solid #454545;
	padding:10px 15px;
	text-align:left;
	}

#subpage table th {
	padding:10px 15px;
	background:#bf1e2e;
	color:#fff;
	}

#subpage table tr:first-child td {
	border-top:5px solid #bf1e2e;
	}

#subpage table tr:last-child td {
	border-bottom:none;
	}

#subpage table th {
	border-bottom:none;
	}

#subpage table tr:hover td {
	background:#fff;
	color:#000;
	}

#subpage table.noborder,
#subpage table.noborder tr,
#subpage table.noborder td {
	border:none !important;
	background:none !important;
	margin:0 !important;
	}

#subpage table.noborder {
	margin-bottom:25px !important;
	}

#subpage .imgLeft {
	display:inline-block;
	float:left;
	margin:5px 40px 20px 0;
	}

#subpage .imgRight {
	display:inline-block;
	float:right;
	margin:5px 0 20px 40px;
	}

#subpage img {
	display:inline-block;
	margin:5px 10px 5px;
	position:relative;
	border:6px solid #fff;
	-webkit-box-shadow:3px 3px 0px 0px rgba(0,0,0,0.2);
	box-shadow:3px 3px 0px 0px rgba(0,0,0,0.2);
	}

#subpage img.noBorder {
	border:none;
	margin:0;
	padding:0;
	-webkit-box-shadow:none;
	box-shadow:none;
	}

#subpage img.rwd {
	margin:0 auto;
	width:auto;
	max-width:100%;
	}

#subpage a img {
	display:block;
	margin:0;
	padding:0;
	max-width:100%;
	height:auto !important;
	overflow:hidden;
	}

#subpage .gall {
	text-align:center;
	}

#subpage .gall a {
	color:#fff;
	text-decoration:none;
	}

#subpage .gall a:hover {
	color:#f4192f;
	}

#subpage .gall p {
	margin:0;
	}

#subpage .gall .gall-desc {
	margin-top:2px;
	padding:0 7px;
	font-weight:400;
	font-size:105%;
	line-height:1.3;
	}

#subpage a.zoom,
#subpage .gall a p:first-child,
#subpage img.borImg {
	display:inline-block;
	position:relative;
	background:#fff;
	border:6px solid #fff;
	overflow:hidden;
	color:#fff;
	-webkit-box-shadow:3px 3px 0px 0px rgba(0,0,0,0.1);
	box-shadow:3px 3px 0px 0px rgba(0,0,0,0.1);
	}

#subpage a.zoom img,
#subpage .gall a p:first-child img {
	display:block;
	margin:0;
	padding:0;
	background:none;
	border:none;
	-webkit-box-shadow:none;
	box-shadow:none;
	}

#subpage img.borImg {
	margin:0;
	padding:0;
	max-width:100%;
	}

#subpage a.zoom span,
#subpage .gall p:first-child span {
	display:block;
	width:50px;
	height:46px;
	position:absolute;
	left:50%;
	top:50%;
	margin-top:-23px;
	margin-left:-25px;
	z-index:2;
	opacity:0;
	color:#fff;
	text-shadow:none;
	-webkit-transform:translate3d(0, -50%, 0);
	transform:translate3d(0, -50%, 0);
	text-align:center;
	}

#subpage a.zoom:hover,
#subpage .gall:hover p:first-child {
	background:#bf1e2e;
	}

#subpage a.zoom:hover img,
#subpage .gall:hover p:first-child img {
	-webkit-opacity:.4;
	opacity:.4;
	-webkit-transform:scale(1.2);
	transform:scale(1.2);
	}

#subpage a.zoom:hover span,
#subpage .gall:hover p:first-child span {
	opacity:1;
	-webkit-transform:translate3d(0, 0, 0);
	transform:translate3d(0, 0, 0);
	}

#subpage .galleries {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	align-items:flex-start;
	align-content:flex-start;
	}

.marginGalDesc {
	margin-bottom:25px;
	overflow:hidden;
	}










#breadcrumb {
	display:block;
	margin:25px 0 0 0;
	}

#subpage #breadcrumb a {
	text-decoration:none;
	}

#breadcrumb i {
	display:inline-block;
	margin:0 5px;
	}


#mapa {
	clear:both;
	width:100%;
	height:500px;
	height:100vh;
	}

#mapaCaption {
	font-size:1.4rem;
	line-height:21px;
	padding:10px;
	}

#mapaCaption strong {
	font-size:1.4rem;
	}

#mapaCaption a {
	color:#bf1e2e;
	text-decoration:none;
	}

#mapaCaption a:hover {
	color:#000;
	}

#formWraper {
	position:relative;
	}

#formWraper.formHide form {
	opacity:.3;
	}

#formLoading {
	display:flex;
	justify-content:center;
	align-items:center;
	align-content:center;
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
	opacity:0;
	width:100%;
	height:100%;
	cursor:default;
	}

#formLoading.showFormLoading {
	z-index:11;
	opacity:1;
	}

#formStatus {
	position:absolute;
	z-index:11;
	}

#contactForm textarea {
	min-height:237px;
	}

.textarea1 {
	min-height:142px;
	}

.sepTop {
	margin-top:15px;
	}
