/* General */

body {
    font-family: "Archivo", sans-serif;
    font-size: 15px;
    line-height: normal;
    font-weight: 400;
}

.site-container {
    background-color:#ffffff;
    margin-left: 0;
    margin-right: 0;
}

.container {
    margin-left: 0;
    margin-right: 0;
}

.light-btn, .serv-btn {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: #333333;
  
    border: 2px solid #EC673C;
    display: block;
    margin: 10px auto 10px auto;
    padding: 10px 25px;
    background-color: rgba(255, 255, 255, 0.8);
    text-align: center;
}

.light-btn:hover {
    color: white;
    border: 2px solid #B22818;
    background-color: #B22818;
    transition: .2s ease;
}

.light-btn:active, .serv.btn:active {
    color: white;
    border: 2px solid #5E1311;
    background-color: #5E1311;
    transition: .2s ease;
}

.dark-btn {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: white;
    
    border: 2px solid #EC673C;
    display: block;
    margin: 10px auto 10px auto;
    padding: 10px 25px;
    background-color: rgba(60, 60, 60, 0.9);
    text-align: center;
}

.dark-btn:hover {
    color: white;
    border: 2px solid #EC673C;
    background-color: #EC673C;
}
.dark-btn:active {
    color: white;
    border: 2px solid #B22818;
    background-color: #B22818;
}

h1-l {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 36px;
    text-transform: uppercase;
    font-style: italic;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: white;
}

.h1-l-border {
    border-bottom: 4px solid white;
    width: 70px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 7px;
}

.h1-l-border-izq {
    border-bottom: 4px solid white;
    width: 70px;
    margin-left: 54px;
    padding-top: 7px;
}

h1-d {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 36px;
    text-transform: uppercase;
    font-style: italic;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: #333333;
}


.h1-d-border {
    border-bottom: 4px solid #EC673C;
    width: 70px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 7px;
}

h3-l {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 21px;
    text-transform: uppercase;
    font-style: italic;
    font-weight: 800;
    letter-spacing: 1.5px;
    color:white
}

h3-d {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 21px;
    text-transform: uppercase;
    font-style: italic;
    font-weight: 800;
    letter-spacing: 1.5px;
    color:#333333;
}

p-l {
    font-family: "Archivo", sans-serif;
    font-size: 17px;
    color:white;   
}


p-d {
    font-family: "Archivo", sans-serif;
    font-size: 17px;
    color:#333333; 
}

p-d-cond {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 17px;
    color:#333333; 
}

.section-title {
    padding: 0 0 60px 0;
}

.fa-2x {
    font-size: 1.5em !important;
}

.fa-3x {
    font-size: 2.5em !important;
}

.fa-1x {
    font-size: 2.1em !important;
}

a {
    text-decoration: none;
    color: white;
}

a:hover {
    transition: .2s ease;
}

/* Hero */

.hero {
    background-image: url("../img/lgr-header-19.png");
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    height: 640px;
}

.hero-image {
    padding-left: 0;
    padding-right: 0;
    height: 640px;
}

.hero-text {
    position:relative;
    top:40%;
    bottom:60%;
}

.logo2 {
    padding: 0 0 10px 0;
}

.tagline-p {
    font-family: "Archivo Narrow", sans-serif;
    font-weight: 800;
    color: white;
    text-transform: uppercase;
    font-size: 20px;
    padding: 0 50px 20px 0;
}

hero-p {
    font-family: "Archivo", sans-serif;
    font-size: 18px;
    line-height: 1.5;
    color: white;
    text-align: left;
    padding: 25px 25px 25px 0;
}

.hero-btn {
    font-family: "Archivo Narrow", sans-serif;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: white;
    margin: 35px 0 0 0;
    
    border: 2px solid #EC673C;
    display: inline-block;
    padding: 10px 25px;
    color: white;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    background-color: rgba(60, 60, 60, 0.9);
    text-align: center;
    display: block;
}

.hero-btn:hover {
    color: white;
    border: 2px solid #EC673C;
    background-color: #EC673C;
    transition: .2s ease;
}
.hero-btn:active {
    color: white;
    border: 2px solid #B22818;
    background-color: #B22818;
}

/* Nav */

.navbar {
    background-color: rgba(30, 30, 30, 0.5);   
    position: fixed;
    width:100%;
    z-index: 10;
    transition: 0.4s;
    overflow: hidden;
/*    padding: 10px 0px;*/
    top: 0;
}

.logo {
    max-width: 80px;
    transition: 0.4s;
}

.logo > a > img {
    width:100%;
    padding: 10px 0 10px 0;
    margin-left: 30px;
    }

.navbar-middle, .navbar-right {
    display: flex;
    list-style: none;
    font-family: "Archivo Narrow", sans-serif;
    font-size: 17px;
    font-style: italic;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: white;
    margin-top: 16px;
}

.navbar-middle > li {
    padding-left:30px;
    padding-right: 30px;
}
.navbar-right > li {
    padding-left:30px;
    padding-right: 30px;
}

.navbar-middle, .navbar-right > li > a {
    color: white;
}

.navbar-middle-selected > li > a {
    border-bottom: 3px solid #EC673C;
    padding-bottom: 7px;
}

.navbar-middle > li > a:hover,
.navbar-right > li > a:hover {
    color: #EC673C;
}

.navbar-middle > li > a:active,
.navbar-right > li > a:active {
    color: #B22818;
}

#ham-menu-toggle {
  opacity: 0;
}

#ham-menu-toggle:checked~.ham-menu-btn>span {
  transform: rotate(45deg);
}

#ham-menu-toggle:checked~.ham-menu-btn>span::before {
  top: 0;
  transform: rotate(0);
}

#ham-menu-toggle:checked~.ham-menu-btn>span::after {
  top: 0;
  transform: rotate(90deg);
}

#ham-menu-toggle:checked~.ham-menu-box {
  visibility: visible;
  left: 0;
}

.ham-menu-btn {
        display: none;
  align-items: center;
  position: absolute;
  top: 30%;
/*  left: 88%;*/
  right: 7%;
  width: 32px;
  height: 32px;
  cursor: pointer;
  z-index: 2;
}

.ham-menu-btn>span {
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #ffffff;
  transition-duration: .25s;
}

.ham-menu-btn>span::before,
.ham-menu-btn>span::after {
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #ffffff;
  transition-duration: .25s;
}

.ham-menu-btn>span::before {
  content: '';
  top: -8px;
}

.ham-menu-btn>span::after {
  content: '';
  top: 8px;
}

.ham-menu-box {
  display: block;
  position: fixed;
  visibility: hidden;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 80px 0;
  list-style: none;
  background-color: #B22818;
  box-shadow: 1px 0px 6px rgba(0, 0, 0, 0.2);
  transition-duration: .25s;
  z-index: 1;
    text-align: center;
}

.ham-menu-item {
  display: block;
  padding: 12px 24px;
  transition-duration: .25s;
    font-family: "Archivo Narrow", sans-serif;
    font-size: 17px;
    font-style: italic;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: white;
    text-transform: uppercase;
    text-decoration: none;
}

.ham-menu-item:hover,
.ham-menu-item:active {
  color: #ffffff;
}

/* Servicios */

.servicios {
    background-color: white;
    text-align: center;
    padding: 75px 0 75px 0;
    margin: auto;
    width: 90%
}

.serv-item {
    display: inline-block;
    padding: 10px 15px 10px 15px;
    width:100%;
    overflow: hidden;
}

.serv-item-title {
    padding: 20px 0 5px 0;
}

.serv-item > .serv-item-overlay {
    position: relative;
    display: inline-block;
    background: white;
}

.serv-item > .serv-item-overlay::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: .5s ease;
    
    background: -moz-linear-gradient(top, rgba(0,47,75,0.6) 0%, rgba(220, 66, 37, 0.6) 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(220, 66, 37, 0.6)), color-stop(100%,rgba(0,47,75,0.6))); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, rgba(236, 103, 60, 1) 0%,rgba(178, 40, 24, 0) 90%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, rgba(236, 103, 60, 1) 0%,rgba(178, 40, 24, 0) 90%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, rgba(236, 103, 60, 1) 0%,rgba(178, 40, 24, 0) 90%); /* IE10+ */
    background: linear-gradient(to bottom, rgba(236, 103, 60, 1) 0%,rgba(178, 40, 24, 0) 90%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002f4b', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
}

.serv-item > .serv-item-overlay:hover::before {
    opacity: 0.9;
}

.serv-item > .serv-btn:hover {
    color: white;
    border: 2px solid #B22818;
    background-color: #B22818;
    transition: .2s ease;
}


.serv-item-desc {
    padding: 5px 0 10px 0;
}

/* Marcas */

.marcas {
    background-color: #f5f5f5;
    text-align: center;
    padding: 75px 0 75px 0;
    position: relative;
}

.marcas-list {
    display: block ruby;
    margin: auto;
    list-style: none;
}

.marcas-list > li {
    padding: 0 50px 0 50px;
}

.marcas-logos-horiz > img {
    max-width:150px;
}

.marcas-logos-vert > img {
    max-height:100px;
}

.control-marcas > .carousel-control-prev,
.control-marcas > .carousel-control-next {
    width: 15%;
}

/* Mapa */

.mapa {
    background-color: #EC673C;
    text-align: center;
    height: 100%;
}

.mapa > .container-fluid > .row > .col-md-6 {    
    padding: 0 0 0 0
}

.mapa-izq {
    padding: 75px 0 75px 0;
}

.mapa-izq-info {
    list-style: none;
    display: inline-block;
    text-align: left;
}

.mapa-izq-info > li {
    display: flex;
    padding: 13px 0 13px 0;
}
.mapa-izq-info > li > i {
    padding: 0 15px 0 0;
    color: white;
    width: 48px;
}

.mapa-mapa-outer {
    position: relative;
    text-align: right;
    height: 100%;
    width: 100%;
    padding: 0;
}

.mapa-mapa {
    position: relative;
    overflow: hidden;
    background: white;
    height: 100%;
    width: 100%;
    padding: 0;
}


/* Testimonios */

.testimonios {
    background-color: white;
    text-align: center;
    padding: 75px 0 75px 0;
    position: relative;
    height: 470px;
}

.testimonios-texto {
    font-family: "Archivo", sans-serif;
    font-size: 22px;
    line-height: 1.3;
    margin: 0 30% 10px 30%;
}

.p-testimonios-autores {
    font-size: 17px;
    font-family: "Archivo Narrow", sans-serif;
}

.carousel-control-prev, .carousel-control-next {
    color: #EC673C;
    opacity: 1;
    transition: none;
    width: 40%;
    z-index: 0;
    bottom: 70px;
}

.carousel-control-prev:hover, .carousel-control-next:hover {
    color: #B22818;
}

.carousel-control-prev:active, .carousel-control-next:active {
    color: #333333;
}

.carousel-control-prev:focus, .carousel-control-next:focus {
    color: #333333;
}

/* Contacto */

.contacto {
    background-color: #EC673C;
    text-align: center;
    padding: 75px 0 75px 0;
    background-image: url(../img/lgr-contacto-19.png);
    background-position: top;
    background-repeat: no-repeat;
    height:100%;
}

.form-control {
    display: block;
    width: 100%;
    padding: 0.375rem 0.75rem;
    margin-bottom: 20px;
    font-family: "Archivo", sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.5;
    color: #333333;
    background-color: #fff;
    opacity: 0.7;
    background-clip: padding-box;
    border: 1.5px solid #616160;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: border-color 0.15s ease-in-out, opacity 0.15s ease-in-out;
}

.form-control:focus {
    color: #333333;
    background-color: #fff;
    opacity: 1;
    border: 1.5px solid #B22818;
    border-radius: 0;
    outline: 0;
    box-shadow: none;
}

.form-control::placeholder {
  color: #616160;
}

.form-group {
    position: relative;
}

.form-select-arrow {
    position: absolute;
    right: 0;
    padding: 10px;
    margin: 1px 15px;
    font-size: 1rem !important;
    pointer-events: none;  
    z-index: 2;
    color: #333333;
}

label {
    display: none;
}

.list-unstyled {
    color: white;
    text-align: left;
}

/* Footer */

.footer {
    background-color: #B22818;
    font-family: "Archivo", sans-serif;
    font-size: 15px;
    color: white;
    padding: 20px 0 5px 50px;
}

.footer-text > p > a {
    color: white;
    text-decoration: underline;
}

.footer-text > p > a:hover {
    color: #F09D8C;
    text-decoration: underline;
}
.footer-text > p > a:active {
    color: #B2B2B2;
    text-decoration: underline;
}

/* Presupuesto */

.presupuesto {
    background-color: white;
    background-image: url(../img/lgr-presup-19.png);
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
    padding: 175px 0 105px 0;
}

.card-presup {
    padding: 50px 20px 50px 20px;
    border-radius: 0;
    width: 90%;
    margin: auto;
    background-color: #EC673C;
}

/* Responsive */

@media screen and (min-width: 576px) {
    .body {
        font-size: 15px;
    }
    .navbar {
        padding: 10px 0px;
    }
    .logo2 {
        width: 100%;
    }
}

@media screen and (max-width: 860px) {
    /*.navbar-middle,
    .navbar-right {
        padding-left: 0;
    }*/
        
    .navbar-middle, .navbar-right {
        display: none;
    }
    .ham-menu-btn {
        display: flex;
    }
}

@media screen and (max-width: 992px) {
    .logo > a > img {
        margin-left: 0;
    }
    .navbar-middle > li {
        padding: 0 17px 0 17px;
    }
    .navbar-right > li {
        padding: 0 25px 0 25px;
    }    
    .navbar-right {
        padding-left: 0;
    }
    .marcas-list > li {
    padding: 10px 20px 10px 20px;
    }
}

@media all and (max-width: 768px) {
    .marcas-list {
        display: block;
    }
    
    /*.testimonios {
    height: 470px;
    }*/
}

@media all and (max-width: 320px) {
   /* .testimonios {
    height: 420px;
    }*/
    .testimonios-texto {
        font-size: 16px;
    }
}

@media all and (max-width: 576px) {
    .light-btn, .serv-btn, .dark-btn {
        font-size: 14px;
    }
    h1-l, h1-d {
        font-size: 24px;
    }
    h3-l, h3-d {
        font-size: 18px;
    }
    p-l, p-d {
        font-size: 15px;
    }

    
    .hero-btn {
        font-size: 14px;
    }
    .hero-text {
        padding-left: 20px;
    }
    
    .navbar-middle, .navbar-right {
        display: none;
    }

    .ham-menu-btn {
        display: flex;
    }
    .navbar {
    position: fixed;
    width:100%;
    z-index: 10;
    overflow: hidden;
    padding: 0px 0px;
    top: 0;
}
    .logo {
    max-width: 50px;
}
    .logo > a > img {
    margin-left: 0;
    }
    
    .hero {
        background-image: url("../img/lgr-header-mobile-22.png");
    }

    .hero-text {
        top: 30%;
    }
    .tagline-p {
        font-size: 19px;        
    }
    hero-p {
        font-size: 16px;
    }
    .logo2 > img {
        width: 250px;
    }
    
    offset-2, .offset-2 {
        margin-left: 0;
    }

    
    .marcas-logos-horiz > img {
    max-width:200px;
    margin-bottom: 20px;
    }

    
    .testimonios {
        height: 400px;
    }
    .testimonios-texto {
        font-size: 18px;
        margin:0 15% 10px 15%;
    }
    .p-testimonios-autores {
        font-size: 15px;
    }
    .carousel-control-prev, .carousel-control-next {
    width: 10%;
    }

    
    .footer {
        padding: 20px 0 5px 20px ;
        font-size: 14px;
    }
}


