/* ------------ MENU -----------*/
.navbar-default {
  background: #FFFFFF;
  padding: 20px 0;
  position: fixed;
}
.navbar-default .navbar-nav > li > a {
  font-size: 18px;
  color: #4c4b4c;
  text-transform: uppercase;
  text-align: center;
  font-family: 'Abel', sans-serif;
  margin-top: 10px;
}
.category {
  color: #4c4b4c;
  text-align: left;
  list-style-type: none;
  font-family: 'Abel', sans-serif;
}
.category > ul li {
    display: inline-block;
    position: relative;
    background: #FF7368;
}
.category li a {
    display: block;
    text-decoration: none;
    font-size: 5px;
    line-height: 2.5rem;
    color: #444;
}
.category li:hover a, .category li a:focus {
    color: #000000;
}
#menu1 li ul {
    position: absolute;
    width: 0;
    overflow: hidden;
}
#menu1 li:hover ul, #menu1 li:focus ul {
    width: 100%;
    margin: 0 -6rem -6rem -3rem;
    padding: 0 1rem 1rem 1rem;
    background: #ffffff;

}
#menu1 li:hover li a, #menu1 li:focus li a {
    width: 100%;
    font-family: 'Abel', sans-serif;
    font-size: 13px;
    line-height: 3rem;
}
/* ------------ BANNER -----------*/
.banner{
  background: url("../images/back1.jpg");
  padding: 100px;
  padding-bottom: 10px;
}
.banner img{
  max-width: 100%;
  display: block;
  margin: 0 auto;
  align-content: center;
}
/* ------------ PIE PAGINA -----------*/
.itemactive{
  position: relative;
  width: 100%;
}
.pie h1{
  margin: 0;
  font-size: 15px;
  font-family: 'Abel',sans-serif;
  text-align: center;
  background-color: #a4a6a3;
  background-size: 10px;
  padding-top: 30px;
  padding-bottom: 30px;
  color: #ffffff;
}

/* ------------ ABOUT US -----------*/
.aboutus{
  background: url("../images/back2.jpg");
  font-family: 'Abel',sans-serif;
  padding-top: 100px;
  height: 100%;
}
.aboutus h1{
  text-align: left;
  font-size: 30px;
  letter-spacing: 5px;
  color: #201545;
}
.aboutus h2{
  text-align: center;
  font-size: 3em;
  letter-spacing: 3px;
  color: #231f20;
}
.aboutus .container{
  margin: 0 auto;
}
.aboutus img{
  width: 100%;
}
.aboutus button{
  padding-top: 2px;
  border: none;
  background-color: inherit;
  text-decoration: underline;
  font-weight: bold;
  font-size: 15px;
  color: #201545;
}
.modal-backdrop{
  z-index: 0;
}
.aboutus .modal-content{
  font-family: 'Abel',sans-serif;
  background-color: #201545;
  color: #ffffff;
  font-size: 20px;
  padding-top: 20px;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
  margin-top: 200px;
  text-align: justify;
}
.aboutus p{
  font-size: 2em;
  color: #231f20;
  text-align: center;
  line-height: 200%;
}

/* ------------ CONTENIDO -----------*/
.ryl{
  background: url("../images/back2.jpg");
  font-family: 'Abel',sans-serif;
  padding-top: 100px;
  width: 100%;
}
.ryl img{
  margin: auto;
  display: block;
  width: 20%;
}
.ryl h1{
  font-size: 20px;
  text-align: center;
  color: #231f20;
  line-height: 30px;
  letter-spacing: 3px;
}
.ryl .fotos{
  margin: auto;
  display: block;
  width: 60%;
  padding-top: 10px;
  padding-bottom: 10px;
}
.ryl p{
  text-align: justify;
  font-size: 18px;
  line-height: 30px;
  color: #231f20;
  padding-top: 30px;
  padding-bottom: 50px;
}

/* ------------ CONTENIDO OPER-----------*/
.oper{
  background: url("../images/back2.jpg");
  font-family: 'Abel',sans-serif;
  padding-top: 100px;
  width: 100%;
}
.oper img{
  margin: auto;
  display: block;
  width: 50%;
}
.oper .fotos{
  margin: auto;
  display: block;
  width: 60%;
  padding-top: 10px;
  padding-bottom: 10px;
}
.oper p{
  text-align: justify;
  font-size: 18px;
  line-height: 30px;
  color: #231f20;
  padding-top: 30px;
  padding-bottom: 50px;
}

/* ------------ CONTENIDO MECA-----------*/
.meca{
  background: url("../images/back2.jpg");
  font-family: 'Abel',sans-serif;
  padding-top: 100px;
  width: 100%;
}
.meca h1{
  font-size: 60px;
  text-align: center;
  color: #231f20;
  line-height: 90px;
  letter-spacing: 20px;
}
.meca .fotos{
  margin: auto;
  display: block;
  width: 60%;
  padding-top: 10px;
  padding-bottom: 10px;
}
.meca p{
  text-align: justify;
  font-size: 18px;
  line-height: 30px;
  color: #231f20;
  padding-top: 30px;
  padding-bottom: 50px;
}

/* ------------ CONTENIDO PROYECTOS-----------*/
.proyectos {
  background: url("../images/back2.jpg");
  font-family: 'Abel',sans-serif;
  padding-top: 180px;
}
.proyectos h1{
    text-align: center;
    font-size: 30px;
    letter-spacing: 5px;
    color: #201545;
}
.proyectos h2{
  text-align: justify;
  font-size: 20px;
  color: #427574;
}
.proyectos h3{
  text-align: center;
  letter-spacing: 10px;
  font-size: 20px;
  color: #201545;
}
.proyectos h4{
  text-align: center;
  font-size: 20px;
  color: #f37320;
  letter-spacing: 20px;
}
.proyectos p{
  text-align: justify;
  font-size: 18px;
  color: #231f20;
  line-height: 30px;
  font-weight: lighter;
}
.proyectos img{
  padding-top: 80px;
  display: block;
  max-width: 100%;
  margin: 0 auto;
}


/* ------------ CONTENIDO -----------*/
.bolsa {
  background: url("../images/back.jpg");
  padding: 100px;
  font-family: 'Abel',sans-serif;
}
.bolsa h1{
  text-align: center;
  font-size: 3em;
  letter-spacing: 5px;
  color: #201545;
}
.bolsa h2{
  text-align: center;
  font-size: 30px;
  letter-spacing: 5px;
  color: #201545;
}
.bolsa p{
  text-align: justify;
  font-size: 18px;
  color: #231f20;
  line-height: 30px;
  font-weight: lighter;
  padding-top: 200px;
}
.bolsa p1{
  text-align: justify;
  font-size: 1.7em;
  color: #231f20;
  line-height: 30px;
  font-weight: lighter;
}
/* ------------ CARRUSEL -----------*/
.itemactive{
  position: relative;
  width: 100%;
}

.carousel-inner .item img.especial {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: 5%;
}
/* ------------ FORMULARIO -----------*/
/* === Remove input autofocus webkit === */
*:focus {
    outline: none;
}
/* === Form Typography === */
.contact_form h2, .contact_form label {
    font-family: 'Abel',sans-serif;
}
.form_hint, .required_notification {
    font-size: 11px;
}
/* === List Styles === */
.contact_form ul {
    width: 100%;
    list-style-type: none;
    list-style-position: outside;
    margin: 0px;
    padding: 0px;
}
.contact_form li {
    padding: 12px;
    position: relative;
}
/* === Form Header === */
.contact_form h2 {
    margin: 0;
    display: inline;
}
.required_notification {
    color: #d45252;
    margin: 5px 0 0 0;
    display: inline;
    float: right;
}
/* === Form Elements === */
.contact_form label {
    width: 100px;
    margin-top: 3px;
    display: inline-block;
    padding: 3px;
}
.contact_form input {
    height: 20px;
    width: 300px;
    padding: 15px 8px;
}
.contact_form input[type="file"]{
  padding-left: 20px;
  display: block;
  width: 300px;
  padding: 50px;
}
.contact_form textarea {
    padding: 8px;
    width: 300px;
}
/* form element visual styles */
.contact_form input, .contact_form textarea {
    border: 1px solid #aaa;
    box-shadow: 0px 0px 3px #ccc, 0 10px 15px #eee inset;
    border-radius: 2px;
    padding-right: 30px;
    -moz-transition: padding .25s;
    -webkit-transition: padding .25s;
    -o-transition: padding .25s;
    transition: padding .25s;
}
.contact_form input:focus, .contact_form textarea:focus {
    background: #fff;
    border: 1px solid #555;
    box-shadow: 0 0 3px #aaa;
    padding-right: 70px;
}
/* === HTML5 validation styles === */
.contact_form input:required, .contact_form textarea:required {
    background: #fff url(images/red_asterisk.html) no-repeat 98% center;
}
.contact_form input:required:valid, .contact_form textarea:required:valid {
    background: #fff url(images/valid.html) no-repeat 98% center;
    box-shadow: 0 0 5px #5cd053;
    border-color: #28921f;
}
.contact_form input:focus:invalid, .contact_form textarea:focus:invalid {
    background: #fff url(images/invalid.html) no-repeat 98% center;
    box-shadow: 0 0 5px #d45252;
    border-color: #b03535;
}
/* === Form hints === */
.form_hint {
    background: #d45252;
    border-radius: 3px 3px 3px 3px;
    color: white;
    margin-left: 8px;
    padding: 1px 6px;
    z-index: 999; /* hints stay above all other elements */
    position: absolute; /* allows proper formatting if hint is two lines */
    display: none;
}
.form_hint::before {
    content: "\25C0";
    color: #d45252;
    position: absolute;
    top: 1px;
    left: -6px;
}
.contact_form input:focus + .form_hint {
    display: inline;
}
.contact_form input:required:valid + .form_hint {
    background: #28921f;
}
.contact_form input:required:valid + .form_hint::before {
    color: #28921f;
}
/* === Button Style === */
button.submit {
    background-color: #201545;
    border: 1px solid #a4a6a3;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    color: white;
    padding: 6px 20px;
    text-align: center;
}
button.submit:hover {
    opacity: .85;
    cursor: pointer;
}
button.submit:active {
    border: 1px solid #201545;
    box-shadow: 0 0 10px 5px #a4a6a3 inset;
    -webkit-box-shadow: 0 0 10px 5px #a4a6a3 inset;
    -moz-box-shadow: 0 0 10px 5px #a4a6a3 inset;
    -ms-box-shadow: 0 0 10px 5px #a4a6a3 inset;
    -o-box-shadow: 0 0 10px 5px #a4a6a3 inset;
}

/* ------------ CONTENIDO -----------*/
.contacto {
  font-family: 'Abel',sans-serif;
}
.contacto h1{
  text-align: center;
  font-size: 2.7em;
  letter-spacing: 5px;
  color: #201545;
  padding: -100px;
}
.mapa{
  max-width: 100%;
  display: block;
  margin: 0,auto;
}
label {
  display:block;
  margin-top:20px;
  letter-spacing:1px;
  color: #000000;
}
form {
  margin:0 auto;
  width:400px;
  color:#000000;
  margin-top:5px;
}
input, textarea {
  width:380px;
  height:27px;
  background:#d3d3d3;
  border:2px solid #f6f6f6;
  margin-top:5px;
  font-size:10px;
  color:#000000;
}
textarea {
  height:150px;
}
#submit {
width:85px;
height:35px;
border:none;
margin-top:20px;
cursor:pointer;
}
.contacto p{
  font-size: 15px;
  letter-spacing: 5px;
  text-align: left;
  color: #201545;
  padding-left: 80px;
}
