



body {
	font-size: 1em;
	line-height: 1.5em;
	font-family: 'Jost', sans-serif !important;
	color: black;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
  background: #fbfbfb;
}

h1 {
  font-size: 50px;
  font-weight: bold;
  font-family: 'Jost', sans-serif;
  color: white;
  font-style: italic;
  width: 600px;
  margin-top: 300px;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.64);
}

h2 {
  font-size: 38px;
  font-family: 'Jost', sans-serif;
  font-style: italic;
  font-weight: 700;
  margin: 0;
  padding: 0;
}

h2 span {
  font-weight: 300;
  font-size: 23px;
}

img {
	max-width: 100%;
}

section {
	clear: both;
}

a {
	color: inherit;
}

a:hover {
	text-decoration: none;
	color: inherit;
}

.modal-content {
	color: black;
  font-size: 20px;
  font-weight: lighter;
  letter-spacing: 1px;
  line-height: 20px;
}

.modal-title {
  margin: 0;
  line-height: 25px;
  font-family: 'Jost', sans-serif !important;
  font-size: 25px;
  text-transform: uppercase;
}
}

hr {
    margin: 0;
}

:target:before {
content:"";
display:block;
height:90px; /* fixed header height*/
margin:-90px 0 0; /* negative fixed header height */
}

.anchor{
  display: block;
  height: 75px; /*same height as header*/
  margin-top: -75px; /*same height as header*/
  visibility: hidden;
}

@media screen and (max-width:768px) {
  h1 {
    margin-top: 0;
    max-width: fit-content;
  }
}

/*LOADER*/

/* Paste this css to your style sheet file or under head tag */
/* This only works with JavaScript, 
if it's not present, don't show loader */
.no-js #loader { display: none;  }
.js #loader { display: block; position: absolute; left: 100px; top: 0; }
.se-pre-con {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background: url(../elements/loader/images/loader-64x/rolling.gif) center no-repeat #000;
}

/****************** HEADER ********************/

header {
    color: white;
    position: fixed;
    z-index: 11;
    width: 100%;
    background: linear-gradient(black,rgba(0, 0, 0, 0));
}


header ul li {
  list-style: none;
  display: inline-block;
  padding: 20px 0px;
  vertical-align: top;
}

header ul li a {
    padding: 30px 10px;
}

header ul li a:hover {
    background: red;
}

.lh-logo {
  position: absolute;
  right: 0;
  top: 70px;
}

@media screen and (max-width:768px) {
    header {
        margin: 0;
        position: inherit;
        background: #9b1400;
    }

    header .logo {
      margin-bottom: 10px;
    }
}

.logo {
  max-width: 150px;
}

/* Remove margins and padding from the list, and add a black background color */
ul.topnav {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: transparent;
}

/* Float the list items side by side */
/*ul.topnav li {float: left;}
*/
/* Style the links inside the list items */
ul.topnav li a {
  display: inline-block;
  color: #f2f2f2;
  text-align: center;
  padding: 5px 10px;
  text-decoration: none;
  transition: 0.3s;
  font-size: 18px;
  text-transform: uppercase;
  font-style: italic;
  font-family: 'Jost', sans-serif;
  font-weight: 300;
}

/* Change background color of links on hover */
ul.topnav li a:hover {
  color: #00af19;
  background: none;
}

/* Hide the list item that contains the link that should open and close the topnav on small screens */
ul.topnav li.icon {display: none;}

/* When the screen is less than 680 pixels wide, hide all list items, except for the first one ("Home"). Show the list item that contains the link to open and close the topnav (li.icon) */
@media screen and (max-width:680px) {
  ul.topnav li:not(:first-child) {display: none;}
  ul.topnav li.icon {
    float: right;
    display: inline-block;
  }
}

/* The "responsive" class is added to the topnav with JavaScript when the user clicks on the icon. This class makes the topnav look good on small screens */
@media screen and (max-width:680px) {
  ul.topnav.responsive {position: relative;}
  ul.topnav.responsive li.icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  ul.topnav.responsive li {
    float: none;
    display: inline;
  }
  ul.topnav.responsive li a {
    display: block;
    text-align: left;
  }
}

.shadow {
    background: url(../img/shadow.png);
    background-repeat: no-repeat;
    height: 140px;
    background-position: center;
    background-color: #e1e1e1;
    margin-top: -83px;
}

.img-slider2 {
  float: left; 
  margin-left: -100px;
}

@media screen and (max-width: 600px) {
  .img-slider2 {
    margin-left: 0;
  }
}


.barra-mex {
  background: url(../img/barra-mex.jpg);
  background-repeat-y: no-repeat;
  height: 39px;
}


.portada p {
  font-size: 14px;
  line-height: 20px;
  border-top: 1px solid #9b1400;
  max-width: 740px;
  color: white;
  padding: 10px 0;
}


/****************** DESCRIPCION ********************/

#descripcion {
  background: url(../img/biografia-bg.jpg);
  background-size: cover;
  color: #f5f5f5;
  text-align: justify;
  font-size: 15px;
  font-weight: 100;
  line-height: 1.7em;
  padding: 80px 20px;
  position: relative;
}

#descripcion h2 {
  color: white;
  margin: 30px 0 20px;
}

.profile {
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 768px) { 
  
  .profile {
    width: 130px;
    margin: 0px 20px 0px 0px;
    float: left;
  }

}


/****************** BIOGRAFIA ********************/

.biografia-title h2 {
  margin-bottom: -100px;
  position: relative;
  background: #111111;
  color: white;
  padding: 10px 0;
  border-top: 1px solid white;
  border-bottom: 1px solid white;
}
#biografia {
    background: url(../img/bio-bg.jpg);
    background-position: right;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 514px;
    z-index: 1;
    position: relative;
}

#biografia p {
    font-size: 1.3em;
    line-height: 1.7em;
}

.bio {
    background: linear-gradient(0deg, rgba(17, 62, 57, 0.8),rgba(25, 135, 122, 0.8));
    border: 1px solid white;
    margin-top: 70px;
    min-height: 250px;
    margin-bottom: 70px;
}

.nav-tabs>li>a {
    color: rgba(255, 255, 255, 0.6);
    cursor: auto;
    background-color: transparent;
    border: none;
    border-bottom-color: transparent;
    font-weight: bold;
    font-size: 1.8em;
}

.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover {
    color: white;
    cursor: default;
    background-color: transparent !important;
    border: none;
    border-bottom-color: transparent;
    font-weight: bold;
    font-size: 1.8em;
}

.trayectoria {
  color: white;
  margin-top: 25px;
  text-align: justify;
  margin-right: 10px;
}


/****************** TIMELINE *****************/

#timeline img {
  max-width: initial;
}

#timeline { 
    overflow-x: scroll;
    overflow-y: hidden;
  } 

/* relevant styles */
.img__wrap {
  position: relative;
  height: auto;
  width: 203px;
}

.img__description_layer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.8);
  font-size: 15px;
  color: #fff;
  visibility: hidden;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;

  /* transition effect. not necessary */
  transition: opacity .2s, visibility .2s;
}

.img__wrap:hover .img__description_layer {
  visibility: visible;
  opacity: 1;
}

.img__description {
  transition: .2s;
  transform: translateY(1em);
}

.img__description th,
.img__description td {
  padding:2px;
}

.img__wrap:hover .img__description {
  transform: translateY(0);
}

/****************** NOTICIAS ********************/

#noticias {
  padding: 30px 0;
  background: url(../img/noticias-bg.jpg);
  border-bottom: 5px solid #000009;
}

#noticias h2 {
	text-align: center;
}

#noticias h3 {
  color: #000000;
  font-size: 17px;
  font-family: 'Jost', sans-serif !important;
  font-weight: 900;
}

#noticias p {
  font-size: 15px;
  font-weight: 100;
  line-height: 19px;
}

#owl-demo .item{
  margin: 3px;
}
#owl-demo .item img{
  display: block;
  width: 100%;
  height: auto;
}

.btn-success {
  color: #fff;
  background: #00913d !important;
  border: none !important;
  border-radius: 0;
  padding: 8px 20px;
  font-size: 15px;
}

.modal-dialog {
  margin: 30px auto !important;
}

.modal-open .modal {
    background: rgba(0, 0, 0, 0.5) !important;
}

/****************** GALERIA ********************/

.galeria {
  background: #050311;
  color: white;
  padding: 60px 0;
  border-top: 2px solid #a0a0a0;
  border-bottom: 2px solid #c52000;
}

#galeria {
    background: #e1e1e1;
}

#galeria h2 {
	text-align: center;
	display: -webkit-inline-box;
  margin-bottom: 30px;
}

#galeria .img-galeria {
	opacity: 0.7;
    filter: alpha(opacity=50); /* For IE8 and earlier */
}

#galeria .img-galeria:hover {
	opacity: 1.0;
    filter: alpha(opacity=100); /* For IE8 and earlier */
}

.galeria-elemento {
    padding: 0;
}


/* ---- button ---- */

.button {
  display: inline-block;
  padding: 10px 18px;
  margin-bottom: 10px;
  background: #EEE;
  border: none;
  border-radius: 7px;
  background-image: linear-gradient( to bottom, hsla(0, 0%, 0%, 0), hsla(0, 0%, 0%, 0.2) );
  color: #222;
  font-family: sans-serif;
  font-size: 16px;
  text-shadow: 0 1px white;
  cursor: pointer;
}

.button:hover {
  background-color: #8CF;
  text-shadow: 0 1px hsla(0, 0%, 100%, 0.5);
  color: #222;
}

.button:active,
.button.is-checked {
  background-color: #28F;
}

.button.is-checked {
  color: white;
  text-shadow: 0 -1px hsla(0, 0%, 0%, 0.8);
}

.button:active {
  box-shadow: inset 0 1px 10px hsla(0, 0%, 0%, 0.8);
}

/* ---- button-group ---- */

.button-group:after {
  content: '';
  display: block;
  clear: both;
}

.button-group .button {
  float: left;
  border-radius: 0;
  margin-left: 0;
  margin-right: 1px;
}

.button-group .button:first-child { border-radius: 0.5em 0 0 0.5em; }
.button-group .button:last-child { border-radius: 0 0.5em 0.5em 0; }



/****************** CONTACTO ********************/

#contacto {
  background: url(../img/contacto-bg.jpg) fixed;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 70px 0;
  text-align: center;
  border-top: 6px solid #000009;
}

#contacto h2 {
    color: white;
}

#contacto p {
  font-size: 15px;
  margin: 5px 0 20px;
  color: white;
}

input,
textarea {
  background: #f3f3f3;
  padding: 12px 15px 8px;
  border: none;
  width: 100%;
  margin: 6px 0px;
  font-size: 11px;
  color: #242424;
}

input[type="submit"] {
  background: rgba(0, 0, 0, 0.7);
  border: none;
  width: initial;
  padding: 10px 20px;
  font-size: 18px;
  float: right;
  color: white;
  font-family: 'Jost', sans-serif;
  letter-spacing: 0;
}

input[type="submit"]:hover {
    background: black;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #242424;
  font-size: 1.4em;
  font-family: 'Jost', sans-serif !important;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #242424;
  font-size: 1.4em;
  font-family: 'Jost', sans-serif !important;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #242424;
  font-size: 1.4em;
  font-family: 'Jost', sans-serif !important;
}
:-moz-placeholder { /* Firefox 18- */
  color: #242424;
  font-size: 1.4em;
  font-family: 'Jost', sans-serif !important;
}

#contacto .tel {
    float: left;
    font-size: 28px;
    margin-top: 10px;
}

.social-media {
  font-size: 1.8em;
  letter-spacing: .2em;
  background: url("../img/socialmedia-bg.jpg");
  background-size: cover;
  padding: 50px 0px;
}


/****************** FOOTER ********************/

footer {
    background: #161616;
    padding: 16px 5px 10px 5px;
    color: white;
    text-align: center;
    font-size: 1.3em;
    font-weight: 100;
    padding: 50px 0;
}

footer p {
  font-size: 15px;
  margin: 10px 0 30px;
}

@media screen and (max-width:768px) {
    footer img {
        max-width: 70px;
    }
}

footer .col-md-4 {
  margin-bottom: 20px;
}

footer ul li {
  display: inline-block;
  padding: 0 20px;
}

footer ul li a {
  font-family: 'Jost', sans-serif;
  font-weight: 500;
  font-style: italic;
  font-size: 18px;
  vertical-align: middle;
}

footer ul li i {
  background: white;
  color: #0f0f0f;
  border-radius: 50%;
  padding: 4px;
  font-size: 20px !important;
  width: 30px;
  height: 30px;
  vertical-align: middle;
  text-align: center;
}