@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@200;300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans+Extra+Condensed:wght@300;400;500;600;700;800&display=swap');




/* Colores y fuentes:
    color:#04264E; (azul);
    font-family: 'Montserrat', sans-serif;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
*/

/* CSS Document */
html, body {
    margin: 0;
    padding: 0;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    visibility: visible!important;
}
.white{
    background: white
}
.no_space{
    padding: 0; margin: 0
}
.info_home {
  margin: 0;
  padding: 20px 15px 10px 15px !important;
  background: #fff
}
.info_home > div {
  padding: 0;
}
.bg_body {
  margin: 0;
  padding: 0;
}
.container-main {
  margin: 0;
  padding: 0;
  background: #f5f5f5;
}
.container-top {
  background: black;
  margin: 30 0 0 0;
  padding: 30px 0 0 0;
  background: url(../images/bg_top.png) no-repeat center center black;
}

.bg_video{
  margin: 0;
  padding: 80px 0 ;
  background: black;    
}

.titOptionHome {
    text-decoration: none;
    text-align: center;
    color: #04264C;
    font-size: 40px;
    line-height: 45px;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-weight: 500;
    margin:0px auto 0px auto;
    display: table;
    text-decoration: none
}

.txtOptionHome {
  text-decoration: none;
  text-align: center;
  color: #111;
  font-size: 20px;
  line-height: 22px;
  font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-weight: 300;
  margin:0px auto 30px auto;
  display: table;
    max-width: 280px

}

.titOptionEmpresa {
    text-decoration: none;
    text-align: center;
    color: #04264C;
    font-size: 40px;
    line-height: 45px;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-weight: 500;
    margin:0px auto 0px auto;
    display: table;
    text-decoration: none
}

.txtOptionEmpresa {
  text-decoration: none;
  text-align: center;
  color: #111;
  font-size: 20px;
  line-height: 22px;
  font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-weight: 300;
  margin:0px auto 30px auto;
  display: table;
    max-width: 500px

}

.box_empresa{
    background: rgba(255,255, 255, 0.5);
    display: table;
    margin: 0 auto 150px auto;
    padding: 15px 20px;
}

a {
  text-decoration: none !important;
}

.titOptionProduct {
    text-decoration: none;
    text-align: center;
    color: #04264C;
    font-size: 25px;
    line-height: 23px;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-weight: 500;
    margin:0px auto 0px auto;
    display: table;

}

.txtOptionProduct {
  text-decoration: none;
  text-align: center;
  color: #111;
  font-size: 15px;
    line-height: 18px;
  font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-weight: 300;
  margin:0px auto 30px auto;
  display: table;
    max-width: 280px

}

.container-btn-top {
  background: black;
  margin: 0;
  background: #363636;
}

.container-btn{
    margin: 30px 0;
}

.btn-cyan{
    background-color: transparent;
    border: 3px solid #04264C;
    color: #04264C;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 18px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table
}

.btn-cyan:hover, .btn-cyan:active {
    background-color: #04264C;
    text-decoration: none;
    color: #fff;
}


.wsp-new {
  background: #99B235;
  font-size: 25px;
  padding: 10px;
  border-radius: 20px !important;
  position: fixed;
  bottom: 50px;
  right: 20px;
  color: #FFFFFF;
  display: inline;
  width: 220px;
  text-align: right;
  font-weight: bold;
  box-shadow: 1px 0px 10px rgba(0, 0, 0, 0.3);
  z-index: 200;
}
.whatsapp {
  width: 60px;
  height: 60px;
  position: fixed;
  color: #FFF;
  background: #25d366;
  text-align: center;
  bottom: 20px;
  right: 20px;
  z-index: 500;
  border-radius: 50px !important;
  -webkit-box-shadow: 2px 2px 3px #999;
  box-shadow: 2px 2px 3px #999;
}
.whatsapp a:hover {
  -webkit-animation: none;
  -moz-animation: none;
  -ms-animation: none;
  animation: none;
}
.whatsapp-2 {
  margin-top: 10px;
  color: #FFFFFF;
  font-size: 45px !important;
  margin-left: 3px;
}
.whatsapp-2 a:hover {
  text-decoration: none;
}
.separator {
  padding: 0;
  height: 300px;
  position: relative;
  margin: 0 auto;
  position: static;
  overflow-x: visible;
  overflow-y: visible;
  margin-bottom: 0px;
  background: url(../images/separator.jpg) center center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
}
img {
  border: 0px;
  margin: 0;
  padding: 0px;
}
.bg_interior {
  background: #F5F5F5;
}
.button_white {
  background-color: transparent;
  border: 1px solid #111;
  display: inline-table;
  cursor: pointer;
  color: #111;
  font-size: 15px;
  padding: 4px 20px;
  margin: 5px;
  text-decoration: none;
  font-weight: 400;
}
.button_white:hover {
  background-color: #111;
  border: 1px solid #111;
  color: #fff;
  text-decoration: none;
}
.button_white:active {
  position: relative;
  top: 1px;
}


.gsc-control-cse {
    background-color: #000 !important;
    border: 1px solid #000 !important;
    margin-top: 15px !important;
}

form.gsc-search-box {
    font-size: 13px;
    margin-top: 0px!important;
    margin-right: 0;
    margin-bottom: 0px !important;
    margin-left: 0;
    width: 100%;
    height: 34px;
}

input.gsc-input {
    padding: 1px 6px;
    border: 0px solid #fff;
    width: 99%;
    background: black !important;
    color: white;
}

.gsc-input-box {
    border: 0px solid #000 !important;
        background: transparent !important;
}

.gsc-control-wrapper-cse{
    border: 2px solid white !important;
}
.gsc-search-button-v2 {
    font-size: 0;
    padding: 6px 15px 5px 15px!important;
    width: auto;
    vertical-align: middle;
    border: 0px solid #666!important;
    border-radius: 2px!important;
    border-color: #000 !important;
    background-color: transparent !important;
    background-image: linear-gradient(top, #4d90fe, #4787ed)!important; 
}

.gsc-search-button-v2 svg {
    height: auto;
    width: 21px !important;
}


.tit_home{
    font-size:38px;
    line-height: 40px;
    font-style: italic;
    padding: 25px 0;
    font-weight: 300;
    color:#2C2A25;
    text-align: center;
    font-family: 'Raleway', sans-serif;       
}



.tit_interior2{
    font-size:30px;
    line-height: 32px;
    font-style: italic;
    padding: 25px 0;
    font-weight: 300;
    color:#2C2A25;
    text-align: center;
    font-family: 'Raleway', sans-serif;           
}

.tit_interior{
    font-size:35px;
    line-height: 35px;
    padding: 25px 15px 5px 15px;
    font-weight: 300;
    color:#2C2A25;
    text-align: left;
    font-family: 'Montserrat', sans-serif; 
    border-bottom: 1px dashed #999;
}


.subtit_interior{
    font-size:28px;
    line-height: 30px;
    padding: 0px 15px 15px 15px;
    font-weight: 300;
    color:#2C2A25;
    text-align: left;
    font-family: 'Montserrat', sans-serif; 

}
.container_txtIntro{
    padding: 0; 
    max-width: 860px;
    padding: 20px 20px;
    margin: 20px auto;
}

.container_txtIntro3{
    padding: 0; 
    max-width: 880px;
    padding: 50px 40px;
    margin: 50px auto;
    background-color: rgba(0, 0, 0, 0.45);
        backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
        border-radius: 25px;

}

.info_banner{
    width: 70%;
    display: flex;
    align-content: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;

}

.cont_info_banner{
    width: 70%;
    display: flex;
    align-content: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 500px;
    width: 100%
}

.tit_home_banner{
    font-size:55px;
    line-height: 50px;
    padding: 25px 0;
    font-weight: 400;
    color:#fff;
    text-align: center;     
}

.txt_home_banner{
    font-size:20px;
    line-height: 24px;
    padding: 0;
    font-weight: 300;
    color:#fff;
    text-align: center;
    margin: 0 auto;
    text-align: center
}

.txt_home_banner span{
    font-size:23px;

}

.img_clientes{
    margin-bottom: 50px
}

.txt_intro1{
    font-size:30px;
    line-height: 33px;
    padding: 15px 15px 15px 15px;
    font-weight: 500;
    color:#fff;
    text-align: center;
}

.txt_intro2{
    font-size:20px;
    line-height: 24px;
    padding: 0;
    font-weight: 300;
    color:#fff;
    text-align: center;
    margin: 0 auto;
    text-align: center
}

.txt_intro2 span{
    font-weight: 700;

}

.txt_intro3{
    font-size:24px;
    line-height: 26px;
    padding: 0;
    font-weight: 300;
    color:#FFF;
    text-align: center;
    margin: 0 auto 50px auto;
    text-align: center;
}

.txt_intro3 span{
    font-weight: 700;

}

.txt_introquienes1{
    font-size:36px;
    line-height: 35px;
    padding: 25px 15px 15px 15px;
    font-weight: 300;
    color:#2C2A25;
    text-align: left;
    font-family: 'Montserrat', sans-serif; 
}

.txt_introquienes2{
    font-size:17px;
    line-height: 23px;
    padding: 15px 15px 5px 15px;
    font-weight: 400;
    color:#2C2A25;
    text-align: left    ;
    font-family: 'Montserrat', sans-serif; 
    max-width: 1500px;
    margin: 0 auto 50px auto;
}

.txt_introquienes2 span{
    font-weight: 700;

}

.bread{
    font-size:14px;
    line-height: 15px;
    padding: 10px 0px 20px 0px;
    font-weight: 400;
    color:#111;
    text-align: left;
    font-family: 'Montserrat', sans-serif; 
    border-bottom: 1px dashed #999;
}

.bread span a{
    color: #111
}

.sub_tit_interior{
        font-size:30px;
    line-height: 33px;
    font-style: italic;
    padding: 5px 0;
    margin-bottom: 30px;
    font-weight: 500;
    color:#393B94;
    text-align: left;
    font-family: 'Raleway', sans-serif;  
    border-bottom: 1px dashed #393B94;
}
.sub_tit_interior2{
        font-size:30px;
    line-height: 40px;
    font-style: italic;
    padding: 30px 30px 0px 30px;
    margin-bottom: 0px;
    font-weight: 400;
    color:#393B94;
    text-align: left;
    font-family: 'Raleway', sans-serif;  
    border-bottom: 0px dashed #393B94;
}

.box_info_home{
     background-color: rgba(255, 255, 255, 0.75);
    border: 5px solid #333;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    padding: 20px 30px;
    max-width: 900px;
    top: 30px
}

.searchBar{
    margin-top: 40px
}

.tit_info_home{
    font-size:30px;
    line-height: 35px;
    font-style: italic;
    padding: 5px 0;
    font-weight: 700;
    color:#2C2A25;
    text-align: center;
    font-family: 'Raleway', sans-serif;   
}
.txt_info_home{
    font-size:15px;
    line-height: 20px;
    font-style: italic;
    padding: 5px 0;
    font-weight: 500;
    color:#2C2A25;
    text-align: center;
    font-family: 'Raleway', sans-serif; 
    margin: 0 auto
}

.subtit_banner_home {
  font-size: 30px;
  text-align: left;
  margin: 0 0 10px 0;
  color: #111;
  font-weight: 100;
  line-height: 35px;
    font-family: 'Raleway', sans-serif; 
}
.txt_banner_home {
  text-decoration: none;
  text-align: left;
  color: #fff;
  font-size: 12px;
  font-weight: 400;
  line-height: 19px;
  border: none;
    font-family: 'Raleway', sans-serif; 
  padding: 10px 25px 30px 25px;
}

.wrapper {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto
}

.tit_intro {
  text-decoration: none;
  text-align: center;
  color: #C49A6A;
  font-size: 75px;
  font-weight: 500;
  line-height: 26px;
  border: none;
  padding: 15px;
  margin: 0 auto 20px auto;
}

.tit_intro3 {
  text-decoration: none;
  text-align: center;
  color: #FFF;
  font-size: 40px;
  font-weight: 500;
  line-height: 43px;
  border: none;
  padding: 15px;
  margin: 0 auto;
}
.txt_intro {
  text-decoration: none;
  text-align: center;
  color: #111;
  font-size: 13px;
  font-weight: 500;
  line-height: 16px;
    font-weight: 400;
  border: none;
  font-family: 'Noto Sans JP', sans-serif;
  padding: 0px 30px 15px 15px;
  margin: 0 auto;
}
.tit_intro2 {
  text-decoration: none;
  text-align: center;
  color: #FFF;
  font-size: 40px;
  font-weight: 500;
  line-height: 42px;
  border: none;
  padding: 15px;
  margin: 0 auto 15px auto;
}

.tit-interior {
  font-size: 30px;
  text-align: left;
  margin: 0px;
  color: #2C2A25;
  line-height: 30px;
  font-weight: 400;
  border-bottom: 1px dashed #2C2A25;
  padding: 15px 0;
  margin: 20px 0 20px 0
}
.tit-interior2 {
  font-size: 35px;
  text-align: left;
  margin: 15px;
  color:#007930;
  line-height: 30px;
  font-weight: 700;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
  border-bottom: 1px solid #007930;
  padding: 15px;
}
.tit-interior3 {
  font-size: 35px;
  text-align: left;
  margin: 15px;
  color: #677FBF;
  line-height: 30px;
  font-weight: 700;
  font-family: 'Noto Sans JP', sans-serif;
  padding: 15px;
}

.tit-interior4 {
  font-size: 22px;
  text-align: left;
  margin: 5px 15px 50px 15px;
  color: #111;
  line-height: 30px;
  font-weight: 700;
  font-family: 'Noto Sans JP', sans-serif;
  padding: 0 15px;
}
.tit-interior5 {
  font-size: 35px;
  text-align: left;
  margin: 0px;
  color: #677FBF;
  line-height: 30px;
  font-weight: 700;
  font-family: 'Noto Sans JP', sans-serif;
  padding: 15px;
}
.tit-interior6 {
  font-size: 22px;
  text-align: left;
  margin: 5px 15px 50px 0px;
  color: #111;
  line-height: 30px;
  font-weight: 700;
  font-family: 'Noto Sans JP', sans-serif;
  padding: 0 0px;
}

.download-section {
  width: 100%;
  padding: 0px 0;
  height: 390px;
  color: #fff;
  background: url(../images/bg_color.jpg) no-repeat center center fixed;
  background-color: #000;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  -o-background-size: cover;
}

.banner_proyectos{
    position: relative;
    width: 100%;
    padding: 50px 0;
    height: 700px;
    color: #fff;
    background: url(../images/proyectos.jpg) no-repeat center center;
    background-color: #000;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;  
}

.info_banner_proyectos{
    position: absolute;
    bottom: 50px;
    left: 50%;
    transform: translate(-50%, -50%);
}



@media (max-width: 768px) {
    .tit_intro {
      font-size: 40px;
      font-weight: 500;
      line-height: 32px;
    }
    
    .info_banner_proyectos{
        position: absolute;
        bottom: -50px;
        left: 50%;
        transform: translate(-50%, -50%);
    }    
}


@media (max-width: 600px) {
  .download-section {
    width: 100%;
    padding: 50px 0;
    height: 700px;
    color: #fff;
    background: url(../images/bg_color.jpg) no-repeat center center fixed;
    background-color: #000;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
  }
}



/* ------------------------------------------------------ 
            HEADER HOME INTERIOR ALT		
*-------------------------------------------------------- */

.navbar-wrapper2{
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    width: 100%;
    transition: .2s all linear;
    z-index: 99999;
    -webkit-box-shadow: 0px 13px 25px -12px rgba(0,0,0,0.55);
    -moz-box-shadow: 0px 13px 25px -12px rgba(0,0,0,0.55);
    box-shadow: 0px 13px 25px -12px rgba(0,0,0,0.55); 
    top: 0;
    left: 0;  
}
    
.navbar-inverse {
  background-color: rgba(255, 255, 255, 0);
  border: none;
  font-size: 18px;
  font-family: Raleway, sans-serif;
  font-weight: 500;
  position: relative;
  margin: 0 0 10px 0;
  text-transform: none;
  padding-bottom: 0
}
.navbar-inverse .navbar-nav > li > a:focus, .navbar-inverse .navbar-nav > li > a:hover {
  background-color: #f5f5f5;
  padding: 8px
}
.navbar-inverse {
  background-image: none
}
.navbar-inverse {
  border-color: #5e3d93
}
.navbar-inverse .navbar-nav > li > a {
  color: #111;
  padding: 10px 5px;
  margin-left: 25px
}
.navbar-inverse .navbar-nav > li > a:hover {
  color: #000;
  margin-left: 25px;
  padding: 10px 5px
}
.navbar {
  position: relative;
  margin-bottom: 0;
  border: 0 solid transparent
}

.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: rgba(255, 255, 255, 0.85);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    z-index: 9980;
    padding: 4px 0;
    overflow: hidden;
    -webkit-transition: background-color .3s;
    -moz-transition: background-color .3s;
    transition: background-color .3s;
    transition: .2s all linear;
}
.navbar-header {
  float: none
}
.header-alt {
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    transition: .2s all linear;
    z-index: 99999;
    -webkit-box-shadow: 0px 13px 25px -12px rgba(0,0,0,0.55);
    -moz-box-shadow: 0px 13px 25px -12px rgba(0,0,0,0.55);
    box-shadow: 0px 13px 25px -12px rgba(0,0,0,0.55);    
}


.link_logotipo{
    margin: 10px auto;
    display: table;
}
.logotipo {
    position: relative;
    transition: all .5s;
    width: 350px;
}

.logotipo_alt {
  transition: all .5s;
  width: 250px;
}
.margin_nav {
    margin: 10px auto;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 4px 0;
    transition: all .5s;
}
.margin_nav_interior {
  margin-top: 25px;
  transition: all .5s
}
.margin_nav_alt {
    margin: 2px auto 10px auto;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;  
    transition: all .5s;
    font-size: 16px;
    display: table
}
.logotipo_mobile {
  display: none
}
.navbar .navbar-collapse {
  text-align: right
}

@media (max-width:1370px) {
  .navbar .navbar-nav {
    display: inline-block;
    float: right;
    font-size: 16px;
    margin-left: 120px
  }
  .navbar-inverse .navbar-nav > li > a {
    color: #111;
    padding: 10px 5px;
    margin-left: 10px
  }
  .navbar-inverse .navbar-nav > li > a:hover {
    color: #000;
    margin-left: 10px;
    padding: 10px 5px
  }
  .navbar .navbar-collapse {
    text-align: left
  }

}
@media (max-width:768px) {
  .header_alt_interior {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #ddd;
    z-index: 9980;
    padding: 4px 0;
    overflow: hidden;
    -webkit-transition: background-color .3s;
    -moz-transition: background-color .3s;
    transition: background-color .3s;
    max-width: 1903px;
    transition: .2s all linear;
    z-index: 9999;
    height: auto
  }
  .logotipo_mobile {
    display: block
  }
  .logotipo {
    display: none
  }
  .logotipo_alt {
    display: none
  }
  .navbar-inverse {
    margin-top: 0;
    padding: 10px 10px
  }
  .navbar-toggle {
    position: relative;
    float: right;
    padding: 9px 10px;
    margin-top: 10px;
    margin-right: 10px;
    margin-bottom: 8px;
    background-color: #000;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px
  }
  .navbar-toggle:focus {
    outline: 0
  }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px
  }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px
  }
  .header {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
    z-index: 9980;
    padding: 4px 0;
    overflow: hidden;
    -webkit-transition: background-color .3s;
    -moz-transition: background-color .3s;
    transition: background-color .3s;
    max-width: 1903px;
    transition: .2s all linear;
    z-index: 9999
  }
  .header-alt {
    background-color: #111;
    position: relative
  }
  .logotipo {
    margin-top: 5px;
    margin-left: 5px
  }
  .navbar .navbar-nav {
    display: inline-block;
    float: none;
    font-size: 18px
  }
}    
.navbar-wrapper {
  background: url(../images/header-int.jpg) no-repeat center center white!important;   
  margin-bottom: 30px;   
}


/* ------------------------------------------------------ 
					BANNER HOME		
*-------------------------------------------------------- */

.productos-home {
	position:relative;
	margin:0;
	padding: 0;
	background: #ffffff;
}



.bg_terapias {
	position:relative;
	margin:0;
	padding: 0;
	background: #FBF4FB;
}

.banner-home a{
    padding: 0px;
    margin: 0 auto;
	display:block;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	transition: all 0.2s linear;
	text-decoration:none;
	background:none;
}

.banner-home a:hover{
	-webkit-transform: scale(1.02);
	-moz-transform: scale(1.02);
	-o-transform: scale(1.02);
	-ms-transform: scale(1.02);
	transform: scale(1.02);	
   text-decoration:none;
}

.banner-actividades a{
    width: 240px;
    margin: 0 auto;
	display:block;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	transition: all 0.2s linear;
	text-decoration:none;
	background:none;
}

.banner-actividades a:hover{
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-o-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);	
   text-decoration:none;
}

.tit_banner_home{
    font-size:22px;
    line-height: 27px;
    padding: 5px 0;
    color:#2C2A25;
    text-align: center;
    font-family: 'Raleway', sans-serif !important;
}

.th_home{
	border: none;
	background: none;
}

.subtit_banner_home{
	font-size:30px;
	text-align:left;
	margin:0 0 10px 0;
	color:#111;
    font-weight:100;
	line-height: 35px;
      font-family: 'Raleway', sans-serif !important;

}

.txt_banner_home{
	text-decoration:none;
	text-align:center;
	color:#111;
    font-size: 13px;
	font-weight:400;
	line-height: 20px;
    font-family: 'Raleway', sans-serif !important;

}


@media (max-width: 1024px) {
    .tit_banner_home{
        font-size:18px;
        line-height: 20px;
        padding: 5px 0;
        color:#2C2A25;
        text-align: center;
    }

    .subtit_banner_home{
        font-size:18px;
        text-align:left;
        margin:0 0 10px 0;
        color:#111;
        font-weight:100;
        line-height: 20px;
    }

    .txt_banner_home{
        text-decoration:none;
        text-align:left;
        color:#111;
        font-size: 14px;
        font-weight:300;
        line-height: 16px;
        border: none;
    }
  }

@media (max-width: 768px) {
    .banner-home a{
        margin: 20px auto;
        border-bottom: 1px solid #ccc;
    }

    .arbol{
        width: 20%;
        height: 20%;

    }

}


.no_margin {
  padding: 0;
}


ul.migas {
        font-family: 'Fira Sans Extra Condensed', sans-serif;
    padding: 0.625rem 1rem;
    list-style: none;
    border: 0.063rem solid #CCC;
    display: inline-block;
    margin: 0 0 15px 0;
    font-weight: 400;
    color: #555555;
    border-radius: 0.625rem;
}

ul.migas li {
    display: inline;
    font-size: 1.5rem;
}
ul.migas li>a {
  color: #555555!important;
}

ul.migas li + li:before {
    padding: 8px;
    color: black;
    content: ">\00a0";
}

.container-interior{
    margin-top: 10px
}

@media(max-width:768px) {
    .container-interior{
        margin-top: 0px
    }

}


.line_purple1 {
  height: 6px;
  background: #AB57AB;
}

.line_green {
  height: 6px;
  background: #007930;
}
.line_purple2 {
  height: 4px;
  background: #3F1E91;
}


.btn-purple2{
    background-color: transparent;
    border: 3px solid #fff;
    color: #fff;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 18px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table
}

.btn-purple2:hover, .btn-purple:active {
    background-color: #741F2C;
    text-decoration: none;
    color: #fff;
}

.btn-purple3{
    background-color: #FFF;
    border: 3px solid #C5354A;
    color: #111;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 18px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table
}

.btn-purple3:hover, .btn-purple:active {
    background-color: #C5354A;
    text-decoration: none;
    color: #fff;
}

.cont-txt-phone {
    color: #fff;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 25px;
    font-weight: 400;
    text-align: center;
}

.cont-txt-phone-icon {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px
}

.cont-txt-phone-icon img {
    margin-right: 0px;
    margin-left: 0px;
    fill: #1D2920;
    width: 30px;
}

.txt-phone {
    color: #666;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 23px;
    font-weight: 400;
    text-align: center;
    margin-left: 10px
}

.txt-phone a {
    color: #111;
}

.logo_pie{
    width: 100px
}



.btn-blue{
    background-color: #001880;
    color: #fff;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 23px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table;
    border-radius: 6px !important
}

.btn-blue:hover, .btn-blue:active {
    background-color: #000624;
    text-decoration: none;
    color: #fff;
}

.btn-brown{
    background-color: #9A6D3D;
    color: #fff;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 45px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table;
    border-radius: 10px !important
}

.btn-brown:hover, .btn-blue:active {
    background-color: #6A4D2B;
    text-decoration: none;
    color: #fff;
}


.btn-brown2 {
	box-shadow: 0px 1px 0px 0px #ccc;
	background:linear-gradient(to bottom, #eae0c2 5%, #ccc2a6 100%);
	background-color:#eae0c2;
	border-radius:15px;
	border:1px solid #333029;
	cursor:pointer;
	color:#505739;
	font-size:20px;
	font-weight:bold;
	padding:12px 22px;
	text-decoration:none;
	text-shadow:0px 1px 0px #ffffff;
    margin: 0 auto; 
    display: table
}
.btn-brown2:hover {
	background:linear-gradient(to bottom, #ccc2a6 5%, #eae0c2 100%);
	background-color:#ccc2a6;
    color:#111;
}
.btn-brown2:active {
	position:relative;
	top:1px;
}

.btn-white{
    background-color: transparent;
    border: 2px solid #fff;
    color: #fff;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 21px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table;
    border-radius: 20px !important
}

.btn-white:hover, .btn-white:active {
    background-color: rgba(255, 255, 255, .45);
    text-decoration: none;
    color: #fff;
    border: 2px solid white;
}


.btn-black{
    background-color: #FFF;
    border: 2px solid #fff;
    color: #111;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 21px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table;
    border-radius: 0px !important;
    text-align: center;
}

.btn-black:hover, .btn-black:active {
    background-color: #111;
    text-decoration: none;
    color: #fff;
    border: 2px solid white;
}

.btn-yellow{
    background-color: #CFA24E;
    border: 2px solid #CFA24E;
    color: #fff;
    padding: 7px 30px 5px 30px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 21px;
    font-weight: 500;
    cursor: pointer;
    margin: 20px auto;
    display: table;
    border-radius: 0px !important
}

.btn-yellow:hover, .btn-yellow:active {
    background-color: #9B742B;
    text-decoration: none;
    color: #fff;
    border: 2px solid #fff;
}


.btn-green{
    background-color: #99B235;
    border: 2px solid #99B235;
    color: #FFFFFF;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 25px;
    font-weight: bold;
    cursor: pointer;
    margin: 20px auto;
    display: table;
    border-radius: 20px !important;
    padding: 10px;
}

.btn-green:hover, .btn-green:active {
    background-color: rgba(153, 178, 53, .25);
    text-decoration: none;
    color: #99B235;
    border: 2px solid #99B235;
}
@media (max-width:767px){
  .btn-green{
    font-size: 20px;
}
}
.btn-black{
    background-color: rgba(255, 255, 255, 0.85);
    border: 2px solid #000000;
    color: #000000;
    padding: 7px 20px 5px 20px;
    height: 40px;
    margin: 15px 0px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 17px;
    font-weight: 400;
    cursor: pointer;
    margin: 20px auto;
    display: table;
    border-radius: 20px !important
}

.btn-black:hover, .btn-black:active {
    background-color: rgba(153, 178, 53, .9);
    text-decoration: none;
    color: #FFFFFF;
    border: 2px solid #99B235;
}

.btn-green-mini{
    background-color: transparent;
    border: 2px solid #99B235;
    color: #99B235;
    padding: 5px 20px 3px 20px;
    height: 30px;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
    font-size: 15px;
    font-weight: 400;
    cursor: pointer;
    margin: 0 auto 0 auto;
    display: table;
    border-radius: 20px !important
}

.btn-green-mini:hover, .btn-green:active {
    background-color: rgba(153, 178, 53, .25);
    text-decoration: none;
    color: #99B235;
    border: 2px solid #99B235;
}

.txt-capacidad{
  color: #8ca431;
  font-weight: bold;
  font-size: 30px;
  text-align: center;
}
.num-capacidad{
  border-radius: 10px; /* Bordes redondeados */
  padding: 10px 15px; /* Espaciado interno para que el número no toque los bordes */
  display: inline-block; /* Permite que el ancho del cuadro se ajuste al contenido */
  text-align: center; /* Centra el texto dentro del cuadro */
  font-size: 30px; /* Tamaño grande para el número */
  line-height: 1; /* Elimina espacio extra alrededor del número */
  background-color: #8ca431; /* Fondo blanco para el cuadro */
  color: #FFF; /* Color del número */
  font-weight: bold;
}
@media (max-width:767px){
  .linea-sep-capacidad{
    border-top: 1px solid #CCCCCC;
    margin-top: 20px;
    padding-top: 20px;
  }
}
/* ------------------------------------------------------ 
					QUIENES	
*-------------------------------------------------------- */

.tit_quienes{
    font-size: 40px;
    text-align: left;
    color:#99B235;
    margin-bottom: 0px;
    font-weight: 600
}

.subtit_quienes{
    font-size: 25px;
    text-align: left;
    color: #555555;
    margin-bottom: 15px
}

.txt_quienes{
    font-size: 18px;
    text-align: left;
    color:#333
}

.tit_donde{
    font-size: 35px;
    text-align: left;
    color:#04264C;
    margin-bottom: 15px;
    border-bottom: 1px dashed #04264C
}

.txt_donde{
    font-size: 18px;
    text-align: left;
    color:#111;
    margin-bottom: 15px;
    font-weight: 400
}

.box_quienes{
    background: #E8F3FF;
    padding: 50px 70px;
    margin-bottom: 50px
}

.box_quienes2{
    background: #fff;
    padding: 20px 40px;
    margin-bottom: 10px
}

@media (max-width: 767px) {
    .box_quienes{
        background: #E8F3FF;
        padding: 20px 10px;
        margin-bottom: 50px
    }

    .box_quienes2{
        background: #fff;
        padding: 10px 15px;
        margin-bottom: 10px
    }
}


/* ------------------------------------------------------ 
					PRODUCTOS	
*-------------------------------------------------------- */


.titOptionProduct {
    text-decoration: none;
    text-align: center;
    color: #207AD5;
    font-size: 25px;
    line-height: 23px;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-weight: 500;
    margin:0px auto 0px auto;
    display: table;
    text-decoration: none
}

.txtOptionProduct {
  text-decoration: none;
  text-align: center;
  color: #111;
  font-size: 15px;
    line-height: 18px;
  font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-weight: 300;
  margin:0px auto 30px auto;
  display: table;
    max-width: 280px

}

.btn_product{
    margin-bottom: 80px;
}

.center{
    margin: 0 auto;
    display: table !important
}

.cardProduct{
    margin-bottom: 50px;
}

.img-rouded{
    border-radius:10px; 
    -moz-border-radius:10px;
    -webkit-border-radius:10px;  
}


.cardProdDetail{
    margin: 20px auto 70px auto;
}

.titOptionDetail {
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #555;
    font-size: 30px;
    line-height: 30px;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-weight: 500;
    margin:0px auto 0px auto;
    display: table;
    text-decoration: none;
    margin-top: 10px;
    text-transform: uppercase;
    left: 50%;
    bottom: 30px;
    transform: translate(-50%);
    background: white;
    padding: 13px 30px;
    border-radius: 12px
}

.txtOptionDetail {
  text-decoration: none;
  text-align: center;
  color: #111;
  font-size: 15px;
    line-height: 18px;
  font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-weight: 300;
  margin:0px auto 5px auto;
  display: table;
    max-width: 280px

}

.tit_detail_product{
    font-size: 40px;
    line-height: 40px;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-weight: 400;
    color: #555;
    margin-bottom: 20px
}

.txt_detail_product{
    font-size: 23px;
    line-height: 25px;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-weight: 300;
    color: #111;
}

.price {
  text-decoration: none;
  text-align: center;
  color: #666;
  font-size: 27px;
    line-height: 26px;
  font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-weight: 400;
  margin:10px auto 40px auto;
  display: table;
    max-width: 280px;
    margin-bottom: 100px

}

.line_yellow{
    height: 5px;
    background: #F39C00;
    margin: 50px auto;
    display: block;
    max-width: 780px
}

.line_purple{
    height: 2px;
    background: #D2C5FD;
    margin: 70px auto;
    display: block;
    max-width: 780px
}

.icon-zoom{
    position: absolute; 
    top:20px;
    right: 20px;
    z-index: 5;
    display: none
}

.icon-zoom-bg{
    z-index: 5;
    position: absolute; 
    top:5px;
    right: 20px;
}

.icon-zoom-bg::after{
    height: 40px;
    width: 40px;
    background: url(../images/bg_productos.jpg);  
    content: '';
}


/* ------------------------------------------------------ 
					CONTACTO	
*-------------------------------------------------------- */
.tit_form_contacto{
    font-size: 28px;
    text-align: left;
    margin: 0 0 30px 0; 

}

.tit_form_cotizacion{
    font-size: 28px;
    text-align: left;
    margin: 0 0 10px 0; 
    color: #382F29

}

.tit_form_home {
  font-size: 14px;
  text-align: left;
  margin-bottom: 10px
}
.box_form {
    background: #fff;
    padding: 20px 30px;
    margin: 30px auto 80px auto;
    border: 5px solid #ccc;
    background: #f5f5f5;  
    border-radius: 20px; 
}
.box_form_cotizacion {
  background: #fff;
  padding: 5px 10px;
  margin: 5px auto;

}
.bg-reservas {
  background: url(../reservas/reservas.png) right bottom no-repeat #EDE9EA;
  border-bottom: 10px solid #C6B9BC;
}
.bg-contacto {
  background: url(../contacto/contacto.png) right bottom no-repeat #EDE9EA;
  border-bottom: 10px solid #C6B9BC;
}
.reservas {}
.cont-form {
  background: transparent:
}
.contenedor_contacto {
  padding: 0 50px;
}
.contenedor_linea {
  padding: 0 80px 50px 0;
  background: url(../linea/bg_linea.jpg) right bottom no-repeat;
}
.contenedor_shows {
  padding: 15px;
}

@media (max-width: 991px) {
  .contenedor_contacto {
    padding: 0 0px;
  }
  .contenedor_linea {
    padding: 0 0 300px 0;
  }
}
.contact_form {
  padding: 15px 280px;
}
@media (max-width: 1200px) {
  .contact_form {
    padding: 15px 150px;
  }
  .cont-form {
    background: #EDE9EA;
    padding: 10px
  }
}
@media (max-width: 768px) {
  .contact_form {
    padding: 15px 50px;
  }
}
@media (max-width: 480px) {
  .contact_form {
    padding: 10px;
  }
}
.form-group {
  margin: 0 0 20px 0;
  padding: 0 15PX;
}
.form-control {
  display: block;
  width: 100%;
  height: 50px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #333;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 20px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  margin: 0;
}
.control-label {
    margin: 0;
    padding: 0;
    font-size: 20px;
}
.cont-txt-reservas {
  padding: 30px;
  background: #fff;
  font-size: 16px;
}

.separador{
    height: 1px;
    background: #ccc;
    margin: 15px auto 40px auto;
    
}
/* Required field START */
.required-field-block {
  position: relative;
}
.required-field-block .required-icon {
  display: inline-block;
  vertical-align: middle;
  margin: -0.25em 0.25em 0em;
  background-color: #E8E8E8;
  border-color: #FFDE01;
  padding: 0.5em 0.8em;
  color: rgba(0, 0, 0, 0.65);
  text-transform: uppercase;
  font-weight: normal;
  border-radius: 0.325em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background 0.1s linear;
  -moz-transition: background 0.1s linear;
  transition: background 0.1s linear;
  font-size: 75%;
}
.required-field-block .required-icon {
  background-color: transparent;
  position: absolute;
  top: 0em;
  right: 0em;
  z-index: 10;
  margin: 0em;
  width: 30px;
  height: 30px;
  padding: 0em;
  text-align: center;
  -webkit-transition: color 0.2s ease;
  -moz-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.required-field-block .required-icon:after {
  position: absolute;
  content: "";
  right: 1px;
  top: 1px;
  z-index: -1;
  width: 0em;
  height: 0em;
  border-top: 0em solid transparent;
  border-right: 30px solid transparent;
  border-bottom: 30px solid transparent;
  border-left: 0em solid transparent;
  border-right-color: inherit;
  -webkit-transition: border-color 0.2s ease;
  -moz-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}
.required-field-block .required-icon .text {
  color: #B80000;
  font-size: 26px;
  margin: -3px 0 0 12px;
}
/* Required field END */
.content {
  background: #EEE1D0;
  padding: 50px 0;
  margin: 0;
}
.center-white {
  background: #fff;
  padding: 150px 100px;
  margin: 0 auto;
}
label {
  margin-top: 17px;
  text-align: right;
  color: #333;
  font-size: 16px;
  font-weight: 400;
}


/* ------------------------------------------------------ 
						SLIDER					
*-------------------------------------------------------- */

.btn-u btn-u-blue .ls-l-1 {
  left: 45% !important;
}
.btn-u.btn-u-blue {
  display: block;
  background: #FFF;
  padding: 8px 20px !important;
  border-bottom: 0px solid #000 !important;
}
.btn-u.btn-u-blue:hover, .btn-u.btn-u-blue:focus, .btn-u.btn-u-blue:active, .btn-u.btn-u-blue.active, .open .dropdown-toggle.btn-u.btn-u-blue {
  display: block;
  background: #DAE9E2;
  padding: 15px 20px !important;
  border: 1px solid 584B9F !important;
}
.btn-u.btn-u-split-blue.dropdown-toggle {
  border-left: solid 1px #0784FF;
  font-family: 'Raleway', sans-serif !important;
}
#ls-s-2, #ls-s-3 {
  background: black;
  padding: 9px 20px;
  color: #fff font-size:25px;
  font-family: 'Raleway', sans-serif !important;
}
.tit_slide {
  font-size: 24px;
  font-weight: 400;
  border-bottom: 0px solid #111;
  font-family: sans-serif;
  margin-bottom: 0px;
  color: #111;
}
.dias_slide {
  font-size: 20px;
  font-weight: 300;
  font-family: sans-serif;
  margin-bottom: 6px;
  color: #111;
}
.desde_slide {
  font-size: 12px;
  font-weight: 400;
  font-family: sans-serif;
  margin-bottom: 2px;
  color: #666;
  width: 300px !important;
  display: table !important;
  text-decoration: underline
}
.valor_slide {
  font-size: 12px;
  font-weight: 300;
  font-family: sans-serif;
  background: #59997F;
  color: white;
  padding: 5px 10px;
  display: table;
  margin-bottom: 10px
}
.ls-l{
      text-align: left;
    font-size:50px;
    font-weight: 500;
      font-family: 'Fira Sans Extra Condensed', sans-serif;
    color: white ;
    background-color: rgba(119, 119, 119, 0.8);
    padding: 10px 25px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-radius: 25px;
}

.ls-l2{
      text-align: left;
    font-size:50px;
    font-weight: 500;
      font-family: 'Fira Sans Extra Condensed', sans-serif;
    color: white ;
    background-color: rgba(0, 217, 217, 0.8);
    padding: 10px 25px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-radius: 25px;
}

.ls-l3{
      text-align: left;
    font-size:50px;
    font-weight: 500;
      font-family: 'Fira Sans Extra Condensed', sans-serif;
    color: white ;
    background-color: rgba(170, 210, 60, 0.8);
    padding: 10px 25px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-radius: 25px;
}

.ls-l-2{
    text-align: left;
    font-size: 100px;
    font-weight: 100;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    color: white ;
    background-color: rgba(0, 24, 128, 0.5);
    padding: 10px 15px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.ls-l-1{
    text-align: left;
    font-size: 40px;
    font-weight: 500;
    margin-top: 60px;
    font-family: 'Montserrat', sans-serif;
    color: white  
}
@media (max-width: 767px) {
  .btn-u btn-u-blue .ls-l-1 {
    left: 45% !important;
  }
  .tit_slide {
    font-size: 16px;
    font-weight: 600;
    border-bottom: 1px solid #111;
    font-family: sans-serif;
    margin-bottom: 10px;
  }
  .dias_slide {
    font-size: 16px;
    font-weight: 300;
    font-family: sans-serif;
    margin-bottom: 6px;
  }
  .desde_slide {
    font-size: 12px;
    font-weight: 300;
    font-family: sans-serif;
    margin-bottom: 2px;
    display: none
  }
  .valor_slide {
    font-size: 28px;
    font-weight: 300;
    font-family: sans-serif;
    background: #0784FF;
    color: white;
    padding: 5px 15px;
    display: none
  }
}


/*=========================================
	PROYECTOS
=========================================*/

.tit_banner_proyectos{
    position: absolute;
    text-align: center;
    margin: -15px 0 0 0;
    z-index: 10;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 25px;
    font-weight: 600;
    padding: 1px 0px;
    color: white;
    text-shadow: 4px 4px 5px rgba(0,0,0,0.6);
    line-height: 27px;
    text-transform: uppercase;
    cursor: pointer;
}

.txt_proyectos{
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: #111;
    line-height: 22px;
}

.subtit_proyectos{
    font-size: 22px;
    font-weight: 600;
    line-height: 24px;
    margin-bottom: 5px
}

.img-curve{
    border-radius: 20px !important
}

.img-shadow{
    box-shadow: 0 3px 30px rgba(0,0,0,0.4);
}



/*=========================================
	SERVICIOS
=========================================*/

.tit_banner_servicios{
    position: absolute;
    text-align: center;
    margin: -15px 0 0 0;
    z-index: 10;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 25px;
    font-weight: 600;
    padding: 1px 0px;
    color: white;
    text-shadow: 4px 4px 5px rgba(0,0,0,0.6);
    line-height: 27px;
    text-transform: uppercase;
    cursor: pointer;
}

.tit_proyectos{
    font-size: 30px;
    line-height: 35px;
    font-weight: 400;
    color: #111;
    text-align: center;     
}

.subtit_proyectos{
    font-size: 20px;
    line-height: 20px;
    font-weight: 500;
    color: #666;
    text-align: center;  
    text-transform: uppercase
}


.txt_servicios{
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: #111;
    line-height: 22px;
}

.subtit_servicios{
    font-size: 22px;
    font-weight: 600;
    line-height: 24px;
    margin-bottom: 5px
}

.img-curve{
    border-radius: 20px !important
}

.img-shadow{
    box-shadow: 0 3px 30px rgba(0,0,0,0.4);
}



/*=========================================
	PRODUCTOS
=========================================*/

.banner_productos{
    margin-bottom: 60px
}

.tit_banner_productos{
    font-size: 33px;
    line-height: 35px;
    margin-top: -15px;
    font-weight: 500;
    color: #111;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: -15px;
    min-height: 70px

}
.tit_banner_productos_int{
    font-size: 25px;
    font-weight: 500;
    color: #111;
    text-transform: uppercase;
    text-align: center;

}

.txt_banner{

    font-size: 20px;
    line-height: 25px;
    font-weight: 300;
    color: #545454;
    text-align: center;
}

.txt_tecnicas{

    font-size: 18px;
    line-height: 25px;
    font-weight: 300;
    color: #000;
    text-align: left;
}
.box_tecnicas{
    background: #dddddd;
    padding: 30px 50px ;
    margin-top: 50px;
    border-radius: 20px;
}

.tit_tecnicas{
    font-size: 18px;
    line-height: 25px;
    font-weight: 600;
    color: #111;
    text-align: left;     
}

.img_banner{
    text-align: center;
    border-radius: 50px;
    margin: 0 auto 20px auto;
    display: table
}

.img_servicios{
    border-radius: 20px;
}

@media (max-width:991px){
  .box_tecnicas{
    padding: 20px;
}
}
@media (max-width:767px){
  .tit_banner_productos_int{
    font-size: 16px;

}
}


/*=========================================
	HOVER IMG HOME
=========================================*/
.figure1 {
	background: #fff;
	overflow: hidden;
    margin: 0 0 30px 0;
    padding: 0;
    border-top-left-radius: 200px!important;
    border-bottom-left-radius: 120px!important;
    border-top-right-radius: 40px!important;
    border-bottom-right-radius: 40px!important;
    
}
.figure1:hover+span {
	bottom: 0;
	opacity: 1;
}

.figure2 {
	background: #fff;
	overflow: hidden;
    margin: 0 0 30px 0;
    padding: 0;
    border-top-left-radius: 40px!important;
    border-bottom-left-radius: 40px!important;
    border-top-right-radius: 200px!important;
    border-bottom-right-radius: 120px!important;  
}
.figure2:hover+span {
	bottom: 0;
	opacity: 1;
}

.figure3 {
	background: #fff;
	overflow: hidden;
    margin: 0 0 30px 0;
    padding: 0;
    border-top-left-radius: 120px!important;
    border-bottom-left-radius: 200px!important;
    border-top-right-radius: 40px!important;
    border-bottom-right-radius: 40px!important;
    
}
.figure3:hover+span {
	bottom: 0;
	opacity: 1;
}

.figure4 {
	background: #fff;
	overflow: hidden;
    margin: 0 0 30px 0;
    padding: 0;
    border-top-left-radius: 40px!important;
    border-bottom-left-radius: 40px!important;
    border-top-right-radius: 120px!important;
    border-bottom-right-radius: 200px!important;    
    
}
.figure4:hover+span {
	bottom: 0;
	opacity: 1;
}

.hover01 .figure1 img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
    width: 100%;
    height: 100%
}
.hover01 .figure1:hover img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.hover01 .figure2 img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
    width: 100%;
    height: 100%
}
.hover01 .figure2:hover img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.hover01 .figure3 img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
    width: 100%;
    height: 100%
}
.hover01 .figure4:hover img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.hover01 .figure4 img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
    width: 100%;
    height: 100%
}
.hover01 .figure3:hover img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.tit_banner{
    font-size: 38px;
    line-height: 35px;
    font-weight: 500;
    color: #99B235;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 15px;
    min-height: 70px

}

.txt_banner{

    font-size: 20px;
    line-height: 25px;
    font-weight: 300;
    color: #545454;
    text-align: center;
}

.img_banner{
    text-align: center;
    border-radius: 20px;
    margin: 0 auto 20px auto;
    display: table
}

.img_servicios{
    border-radius: 20px;
}


.img_quienes{
    border-radius: 20px;
    margin-bottom: 50px;
}


.price-form{
    font-size: 15px;
    font-weight: 600
}


footer {
  padding: 25px 0 0 0;
  margin: 0 !important;
  position: relative;
  background: #555555;
  display: table;
  width: 100%;
  color: white
}

.title-footer{
    color: #fff;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 45px;
    font-weight: 400;
    text-align: right;
    margin-top: 10px;
    margin-bottom: 5px
}

.title-footer-left{
    color: #fff;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 45px;
    font-weight: 400;
    text-align: left;
    margin-top: 10px;
    margin-bottom: 5px
}

.text-footer{
    color: #fff;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 20px;
    font-weight: 300;
    text-align: left;
    margin-top: 0px;
    margin-bottom: 25px
}

.txt-local {
    color: #fff;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 20px;
    font-weight: 300;
    text-align: center;
    margin-top: 5px;
    margin-bottom: 20px
}

.box-address{
    background-color: #E1EAE3;
    padding: 15px 30px;
    display: block;
    margin: 20px auto;
     border: 1px solid #9DBBA4;
    border-bottom: 5px solid #9DBBA4;
}

.txt-direction {
    color: #666;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 17px;
    font-weight: 400;
    text-align: center;
}


.item_footer{
    display: flex;
    align-items: center;
}

.item_delivery{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 0;
 font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-size: 27px;
    line-height: 30px;
  font-weight: 400;
}

.item_delivery span{
  font-size: 30px;
  font-weight: 700;
}

.icon_delivery{
    margin-right: 15px;
    width: 90px
}

.logo_footer{
    width: 350px;
}

.txt-pie {
    color: #fff;
    font-family: 'Fira Sans Extra Condensed', sans-serif;
    font-size: 23px;
    font-weight: 400;
    padding-bottom: 20px;
    text-align: left;
    margin-top: -5px;
}
.txt-pie a {
  color: #fff
}

.txt-pie div a:hover {
    color: #fff;
    text-decoration: underline !important
}
.txt-pie-nav {
  color: #fff;
  font-family: 'Fira Sans Extra Condensed', sans-serif;
  font-size: 20px;
  font-weight: 200;
  padding-top: 20px;
  padding-bottom: 20px;
  z-index: 50;
  margin: 0;
  text-align: center;
  margin-top: 20px;
    font-weight: 300;
    background: #111
}
.txt-pie-nav a {
  color: #fff;
}


.txt-pie-nav a:hover {
  text-decoration: underline !important;
}
.logos-pie {
  margin-top: 0px;
    fill: green;
}

.logo-pie {
  width: 250px;
}

.container-social{
    display: flex;
    justify-content: top;
}

.container-social a{
    display: flex;
    justify-content: top;
    color: white;
    font-size: 30px;
    font-weight: 200
}

.cont-phone{
    display: flex;
    justify-content: end;
    column-gap: 10px
}


@media (max-width: 767px) {
    .cont-phone{
    display: flex;
    justify-content: center;
    column-gap: 10px;
    margin-bottom: 50px    
}
    .container-social{
            display: flex;
    justify-content: center;
        margin-bottom: 70px
    }
    .logo-pie{
        margin-top: 50px;
        margin-bottom: 50px
    }
    .title-footer{
        text-align: center;
    }

    .title-footer-left{
        text-align: center;
    }
    
  .txt_footer_right {
    text-align: left;
    padding-bottom: 25px;
  }
  .footer_img_mobile {
    display: block;
  }
  .footer_img {
    display: none;
  }
  .txt_fc {
    float: none;
    background: none;
    padding: 0;
  }
  .txt_fc a {
    padding: 25px 35px 0px 0px;
    line-height: 20px;
    font-weight: 300;
    background: url(../images/fc.png) no-repeat bottom right;
    display: table;
  }
  .txt_footer_mail {
    margin-bottom: 25px;
  }
  .txt-pie-nav {
    font-size: 16px;
    padding-bottom: 150px;
  }
}
@media (max-width: 375px) {
  .txt_footer_mail {
    margin-bottom: 25px;
    font-size: 18px;
  }
}
@media (max-width: 320px) {
  .txt_footer_mail {
    margin-bottom: 25px;
    font-size: 15px;
  }
}

/*  Bootstrap Clearfix */
/*  Tablet  */
@media (min-width:767px) {
  /* Column clear fix */
  .col-lg-1:nth-child(12n+1), .col-lg-2:nth-child(6n+1), .col-lg-3:nth-child(4n+1), .col-lg-4:nth-child(3n+1), .col-lg-6:nth-child(2n+1), .col-md-1:nth-child(12n+1), .col-md-2:nth-child(6n+1), .col-md-3:nth-child(4n+1), .col-md-4:nth-child(3n+1), .col-md-6:nth-child(2n+1) {
    clear: none;
  }
  .col-sm-1:nth-child(12n+1), .col-sm-2:nth-child(6n+1), .col-sm-3:nth-child(4n+1), .col-sm-4:nth-child(3n+1), .col-sm-6:nth-child(2n+1), .col-ms-1:nth-child(12n+1), .col-ms-2:nth-child(6n+1), .col-ms-3:nth-child(4n+1), .col-ms-4:nth-child(3n+1), .col-ms-6:nth-child(2n+1) {
    clear: left;
  }
}
/*  Medium Desktop  */
@media (min-width:992px) {
  /* Column clear fix */
  .col-lg-1:nth-child(12n+1), .col-lg-2:nth-child(6n+1), .col-lg-3:nth-child(4n+1), .col-lg-4:nth-child(3n+1), .col-lg-6:nth-child(2n+1), .col-sm-1:nth-child(12n+1), .col-sm-2:nth-child(6n+1), .col-sm-3:nth-child(4n+1), .col-sm-4:nth-child(3n+1), .col-sm-6:nth-child(2n+1) {
    clear: none;
  }
  .col-ms-1:nth-child(12n+1), .col-ms-2:nth-child(6n+1), .col-ms-3:nth-child(4n+1), .col-ms-4:nth-child(3n+1), .col-ms-6:nth-child(2n+1), .col-md-1:nth-child(12n+1), .col-md-2:nth-child(6n+1), .col-md-3:nth-child(4n+1), .col-md-4:nth-child(3n+1), .col-md-6:nth-child(2n+1) {
    clear: left;
  }
}
/*  Large Desktop  */
@media (min-width:1200px) {
  /* Column clear fix */
  .col-md-1:nth-child(12n+1), .col-md-2:nth-child(6n+1), .col-md-3:nth-child(4n+1), .col-md-4:nth-child(3n+1), .col-md-6:nth-child(2n+1), .col-ms-1:nth-child(12n+1), .col-ms-2:nth-child(6n+1), .col-ms-3:nth-child(4n+1), .col-ms-4:nth-child(3n+1), .col-ms-6:nth-child(2n+1), .col-sm-1:nth-child(12n+1), .col-sm-2:nth-child(6n+1), .col-sm-3:nth-child(4n+1), .col-sm-4:nth-child(3n+1), .col-sm-6:nth-child(2n+1) {
    clear: none;
  }
  .col-lg-1:nth-child(12n+1), .col-lg-2:nth-child(6n+1), .col-lg-3:nth-child(4n+1), .col-lg-4:nth-child(3n+1), .col-lg-6:nth-child(2n+1) {
    clear: left;
  }
}
.col-ms-1, .col-ms-2, .col-ms-3, .col-ms-4, .col-ms-5, .col-ms-6, .col-ms-7, .col-ms-8, .col-ms-9, .col-ms-10, .col-ms-11, .col-ms-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}
@media (min-width: 480px) and (max-width: 767px) {
  .col-ms-1, .col-ms-2, .col-ms-3, .col-ms-4, .col-ms-5, .col-ms-6, .col-ms-7, .col-ms-8, .col-ms-9, .col-ms-10, .col-ms-11 {
    float: left;
  }
  .col-ms-1 {
    width: 8.33333%;
  }
  .col-ms-2 {
    width: 16.66667%;
  }
  .col-ms-3 {
    width: 25%;
  }
  .col-ms-4 {
    width: 33.33333%;
  }
  .col-ms-5 {
    width: 41.66667%;
  }
  .col-ms-6 {
    width: 50%;
  }
  .col-ms-7 {
    width: 58.33333%;
  }
  .col-ms-8 {
    width: 66.66667%;
  }
  .col-ms-9 {
    width: 75%;
  }
  .col-ms-10 {
    width: 83.33333%;
  }
  .col-ms-11 {
    width: 91.66667%;
  }
  .col-ms-12 {
    width: 100%;
  }
  .col-ms-push-1 {
    left: 8.33333%;
  }
  .col-ms-push-2 {
    left: 16.66667%;
  }
  .col-ms-push-3 {
    left: 25%;
  }
  .col-ms-push-4 {
    left: 33.33333%;
  }
  .col-ms-push-5 {
    left: 41.66667%;
  }
  .col-ms-push-6 {
    left: 50%;
  }
  .col-ms-push-7 {
    left: 58.33333%;
  }
  .col-ms-push-8 {
    left: 66.66667%;
  }
  .col-ms-push-9 {
    left: 75%;
  }
  .col-ms-push-10 {
    left: 83.33333%;
  }
  .col-ms-push-11 {
    left: 91.66667%;
  }
  .col-ms-pull-1 {
    right: 8.33333%;
  }
  .col-ms-pull-2 {
    right: 16.66667%;
  }
  .col-ms-pull-3 {
    right: 25%;
  }
  .col-ms-pull-4 {
    right: 33.33333%;
  }
  .col-ms-pull-5 {
    right: 41.66667%;
  }
  .col-ms-pull-6 {
    right: 50%;
  }
  .col-ms-pull-7 {
    right: 58.33333%;
  }
  .col-ms-pull-8 {
    right: 66.66667%;
  }
  .col-ms-pull-9 {
    right: 75%;
  }
  .col-ms-pull-10 {
    right: 83.33333%;
  }
  .col-ms-pull-11 {
    right: 91.66667%;
  }
  .col-ms-offset-1 {
    margin-left: 8.33333%;
  }
  .col-ms-offset-2 {
    margin-left: 16.66667%;
  }
  .col-ms-offset-3 {
    margin-left: 25%;
  }
  .col-ms-offset-4 {
    margin-left: 33.33333%;
  }
  .col-ms-offset-5 {
    margin-left: 41.66667%;
  }
  .col-ms-offset-6 {
    margin-left: 50%;
  }
  .col-ms-offset-7 {
    margin-left: 58.33333%;
  }
  .col-ms-offset-8 {
    margin-left: 66.66667%;
  }
  .col-ms-offset-9 {
    margin-left: 75%;
  }
  .col-ms-offset-10 {
    margin-left: 83.33333%;
  }
  .col-ms-offset-11 {
    margin-left: 91.66667%;
  }
}
@media (min-width: 480px) and (max-width: 767px) {
  .container {
    max-width: 748px;
  }
  .tit_pop {
    color: #B88627;
    font-family: 'Allura', cursive;
    font-weight: 300;
    font-size: 30px;
    text-align: center;
    z-index: 50;
    margin: 0 0 5px 0;
  }
  @media screen and (min-width: 768px) {
    .modal-dialog {
      width: 900px;
    }
  }
  .table-condensed th {
    font-size: 12px;
  }
  .table-condensed td {
    font-size: 12px;
  }
}    




.cards-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 4 columnas en escritorio */
  gap: 1rem;
  align-items: stretch; /* todas las tarjetas igual de altas */
  margin-bottom: 50px;
}

.btn-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid #cccccc80;
  border-radius: 8px;
  padding: 1rem;
  background: #fff;
  text-align: center;
}

.btn-card img {
  max-width: 100%;
  height: auto;
}

/* Responsive: 2 columnas en móvil */
@media (max-width: 768px) {
  .cards-container {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Responsive: 1 columna en pantallas muy pequeñas */
@media (max-width: 480px) {
  .cards-container {
    grid-template-columns: 1fr;
  }
}

.thumbs-fotos-proyectos {
    border: 0 solid #ccc;
    border-radius: 0;
    margin-bottom: 5px;
    height: auto;
    display: block;
    background: #fff;
    font-family: 'Raleway', sans-serif;
    color: #CC6800;
    border-radius: 20px;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
}

.thumbs-fotos-proyectos a {
    display: block;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
    -ms-transition: all .2s linear;
    transition: all .2s linear;
    text-decoration: none;
    margin: 15px 0;
    padding: 10px;
    background: rgba(255, 255, 255, 0.4)
}

.thumbs-fotos-proyectos a:hover {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    text-decoration: none;
    background: rgba(255, 255, 255, 0.95)
}

.thumbs-fotos-proyectos>a>span {
    color: #111;
    text-align: center !important;
    margin: 10px auto 0;
    display: block;
    font-size: 14px;
    line-height: 17px
}

.thumbs-fotos-proyectos>a>p {
    color: #111;
    text-align: center !important;
    margin: 15px auto 0;
    display: block;
    font-size: 16px;
    line-height: 16px
}