/*Helper*/
body {
    font-family: 'Open Sans', sans-serif;
}
a{
    color: inherit;
    text-decoration: none;
}
.left{
    text-align: left;
}
.right{
    text-align: right;
}
.row {
    --bs-gutter-x: 0rem;
}
.maxWidth60{
    max-width:60%;
    margin: 0 auto;
}
.maxWidth80{
    max-width:80%;
    margin: 0 auto;
}
.center {
    text-align: center;
}
.right{
    flex-wrap: nowrap;
    justify-content: flex-end;
}
.valign-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.valign-wrapper2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.w-full {
    width: 100%;
}

.height100 {
    height: 100vh;
}
.p-0{
    padding: 0px;
}
.h-150 {
    height: 150vh;
}
.mt-100{
    margin-top: 100px;
}

.textoSecundario{
    color: #3f3f3f !important;
}
/*Preloader*/
.loader-bg {
    background:rgba(255,255,255, 0.8);
    background-size: contain;
    position: fixed;
    z-index: 10000;
    width: 100%;
    height: 100%;
    text-align: center;
  }
  
  .chil-loader {
    background-color: white;
    border-radius: 50%;
    margin-top: 40vh;
    width: 200px;
  }
  
  .loader {
    border: 0 solid transparent;
    border-radius: 50%;
    width: 150px;
    height: 150px;
    position: absolute;
    top: calc(50vh - 75px);
    left: calc(50vw - 75px);
  }
  
  .loader:after,
  .loader:before {
    content: "";
    border: 1em solid #ff5733;
    border-radius: 50%;
    width: inherit;
    height: inherit;
    position: absolute;
    top: 0;
    left: 0;
    animation: loader 2s linear infinite;
    opacity: 0;
  }
  
  .loader:before {
    animation-delay: 0.5s;
  }
  
  @keyframes loader {
    0% {
      transform: scale(0);
      opacity: 0;
    }
  
    50% {
      opacity: 1;
    }
  
    100% {
      transform: scale(1);
      opacity: 0;
    }
  }
  /*Preloader*/
/*Buscador*/
.input-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    position: relative;
  }

  .input {
    border-style: none;
    height: 50px;
    width: 50px;
    padding: 10px;
    outline: none;
    border-radius: 50%;
    transition: .5s ease-in-out;
    background-color: #2d4f99;
    box-shadow: 0px 0px 3px #f3f3f3;
    padding-right: 40px;
    color: white;
  }
  
  .input::placeholder,
  .input {
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    font-size: 17px;
  }
  
  .input::placeholder {
    color:white;
    font-weight: 100 !important;
  }
  
  .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    cursor: pointer;
    width: 50px;
    height: 50px;
    outline: none;
    border-style: none;
    border-radius: 50%;
    pointer-events: painted;
    background-color: transparent;
    transition: .2s linear;
  }

  .icon:focus ~ .input,
  .input:focus {
    box-shadow: none;
    width: 250px;
    border-radius: 0px;
    background-color: #2d4f99;
    border-bottom: 3px solid #2d4f99;
    transition: all 500ms cubic-bezier(0, 0.110, 0.35, 2);
  }
  /*Buscador*/
/*Helper*/
.navbar-nav{
    width: 100%;
}
.navbar-brand img{
    margin-left: 50px;
}
.menuAssisTerra {
    padding: 15px;
}

.menuAssisTerra img {
    width: 120px;
}

.menuAssisTerra ul {
    text-align: right;
}

.menuAssisTerra ul li {
    color: #54524f;
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    padding: 5px 30px;
    text-transform: uppercase;
}

.bgBrush {
    background: url(../img/bgBrush.png) center;
    background-size: cover;
    margin-top: -150px;
    height: 190px;
    position: relative;
}

.seccion1 {
    background: url(../img/bgSeccion1.jpeg) center;
    background-size: cover;
    background-blend-mode: multiply;
    background-color: rgba(0, 0, 0, 0.2);
    color: white;
    height: 115vh;
    padding: 0 100px;
}

.seccion1 p {
    font-size: 1.2em;
    max-width: 400px;
}

.seccion1 h2 {
    font-size: 3em;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.seccion1 h3 {
    font-style: italic;
    font-size: 1.5em;
}

.btnSlide {
    background-color: white;
    border-radius: 20px;
    color: #2a241b;
    font-weight: 900;
    font-size: 1.2em;
    width: 200px;
}
.seccion2{
    background: url(../img/bgSeccion2.jpeg) center center;
    background-size: cover;
    padding: 0 0 200px ;
}

.seccion2 h2 {
    color: #2d509a;
    font-size: 3.5em;
    font-weight: 800;
}
.seccion2 p{
    font-size: 1.2;
    color: #7f7770;
    margin: 0 auto;
}
.contents{
    max-width: 80%;
    margin: 0 auto;
}
.contents img{
    width: 100%;
}
.imagenContent{
    background-size: cover !important;
    background-repeat: no-repeat !important;
    height: 300px;
}
.textoContent{
    background: #29231b;
    color: white !important;
    padding: 30px 10px;
    height: 170px;
}
.textoContent p{
    color: white;
    max-width: 100%;
}
.truncate{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden;
    font-size: 15px !important;
}
.showMore{
    background: #fdc930;
    border-radius: 30px;
    color: white;
    padding: 15px 40px;
    font-size: 1em;
    font-weight:600;
}
.seccion3{
    background-color: #9fbd37;
}
.imagenSeccion3{
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-blend-mode: multiply !important;
    background-color: rgba(0, 0, 0, 0.4) !important;
    height: 700px !important;
}
.h-seccion3{
    height: 700px;
}
.textoSeccion3{
    color: white;
    padding: 50px;
    max-width: 70%;
    font-size: 1.2em;
}
.textoSeccion3 h2{
    font-size: 2.5em;
    font-weight: bold;
}
.seccion4{
    background-color: #2d4f99;
}
.showMore2{
    background: #29231b;
    border-radius: 30px;
    color: white;
    padding: 15px 40px;
    font-size: 1em;
    font-weight:600;
    text-decoration: none;
}
.text-truncate{
    display: -webkit-box;
  -webkit-line-clamp: 3; /* Truncates line 3 */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.seccion5{
    background: url(../img/bgSeccion5.png) center center;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100vh;
    color: white;
}
.seccion5 h2{
    color: white;
    font-size: 2em;
    font-weight: 800;
}
.seccion5{
    font-size: 1.2em;
}

.seccion6{
    background: url(../img/bgSeccion6.png) top;
    background-repeat: no-repeat;
    background-size: cover;
    height: 150vh;
    background-blend-mode: multiply;
    background-color: rgba(0,0,0,0.4);
}
.seccion6 h2{
    color: white;
    font-size: 2.5em;
    font-weight: 800;
}
.seccion6 p{
    color: white;
    font-size: 1.2em;
    font-weight: 500;
}
.topSeccion6{
    margin-top: 40%;
}
.seccion7{
    background: url(../img/bgSeccion7.png) top;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 100px 0;
}
.contentSeccion7{
    max-width: 90%;
    margin: 0 auto;
}
.seccion7 p{
    color: #333d42;
    font-size: 1.2em;
}
.seccion7 p strong{
    color: #a0be37;
    font-size: 1.3em;
}
.seccion7 h2{
    color: #2d4f99;
    font-size: 3.5em;
    font-weight: 800;
    font-style: italic;
}
.textoSeccion7{
    font-weight: 600;
    max-width: 70%;
    margin: 150px auto;
}
.seccion8{
    background: url(../img/bgSeccion8.png) top;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
    color: white;
    font-size: 1.2em;
}
.seccion8 h2{
    font-size: 2.5em;
    font-weight: 800;
}
.rowBoletin{
    max-width: 40%;
    margin: 0 auto;
}
.inputBoletin{
    border:none;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    height: 50px !important;
}
.botonBoletin{
    background-color: #b6d73f;
    border: none;
    border-radius: 25px;
    color: white;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 15px;
    width: 200px;
    box-shadow: 0px 0px 13px #b5d73f;
}
.botonBoletin:hover{
    background-color: #b6d73f;
    border: none;
    border-radius: 25px;
    color: white;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 15px;
    width: 200px;
    box-shadow: 0px 0px 13px #b5d73f;
}
footer{
    background: url(../img/bgFooter.png) top;
    background-size: cover;
    background-repeat: no-repeat;
    color: white;
    font-size: 1.2em;
    font-weight: 300;
    margin-top: -100px;
    padding: 200px 0 100px;
}
footer ul{
    padding-left: 0px
}
footer ul li{
    list-style: none;
    padding-bottom: 10px;
}
.iconoRedes img{
    width: 40px;
    margin-right: 10px;
}
.iconoRedes a{
    text-decoration: none;
}
.hide-sm{
    display: none;
}
.modal-content{
    color: #7f7770;
    font-size: 14px;
}
.modal-header{
    background-color: #271d14;
    color: white;
}
.btn-close{
    background-color: white;
}
.btn-close:hover{
    background-color: white;
}

.cardServicio{
    border: 2px solid white;
    border-radius: 20px;
    padding: 20px;
    margin: 10px;
    height: 180px;
}
.tituloSeccion{
    color: #c00611;
    font-weight: bold;
    text-align: center;
}
/*Select phone*/

/*BLOG*/
.blog{
    background-color: #f9f9f9;
    padding: 100px 50px;
}
.blog h2 {
    color: #2d509a;
    font-size: 3.5em;
    font-weight: 800;
}
.blog p{
    font-size: 1.2;
    color: #7f7770;
    margin: 0 auto;
}
.cardEntrada{
    background-color: white;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.03);
    margin: 30px 0;
}
.textoEntrada{
    background-color: white;
    font-size: 14px;
    color: #7f7770;
    padding: 30px;
}
.textoEntrada span:first-child{
    color: #ff5e10;
    font-size: 12px;
    font-weight: 500;
}
.textoEntrada span:nth-child(2){
    color: #cccccc;
    font-size: 12px;
    font-weight: 500;
}
.textoEntrada h4{
    color: black;
}
.iconoComentarios{
    opacity: 0.3;
    width: 30px;
}
.cardWidget{
    background-color: white;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.03);
    max-width: 90%;
    margin: 30px auto;
    padding: 50px 20px
}
.bgInteres{
    background-color: #271d14;
    color: white;
}
.textoBlanco{
    color: white !important;
}
.borderBottom{
    border-bottom: 1px solid #ebebeb;
    padding-bottom: 10px;
    margin-bottom: 10px !important;
}
.follow{
    font-size: 15px;
    font-weight: 600;
}
.follow img{
    width: 30px;
    margin-right: 10px;
}
.follow a{
    color: inherit;
    text-decoration: none;
}
.imgEntrada{
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    height: 500px;
}
.textoEntrada p{
    margin-bottom: 10px;
}
.copy{
    background-color: #271d14;
    color: white;
    padding: 20px 20px 10px;
    position: relative;
    z-index: 10;
}
.aviso p{
    margin-bottom:10px;
}
.wundertec{
    color: #9fbd37;
}
.telefono{
    background-color: white;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    position: fixed;
    bottom: 10px;
    right: 20px;
    text-align: center;
    padding-top: 15px;
    display: none;
}
.telefono img{
    width: 35px;
}
.logoFotter{
    border-radius: 50%;
    width: 200px;
}
/*Media query*/
@media (min-width: 300px) and (max-width: 768px) {
    
    .hide-xs{
        display: none;
    }
    .hide-sm{
        display: block;
    }
    .mt-100 {
        margin-top: 50px;
    }
    .copy{
        text-align: center;
    }
    .right{
        text-align: center;
    }
    .navbar-brand img {
        margin-left: 0px;
    }
    .seccion1 {
        background: url(../img/bgSeccion1.jpeg) center;
        background-color: rgba(0, 0, 0, 0.6);
        background-size: cover;
        height: 115vh;
        padding: 0 30px;
    }
    .seccion2 p {
        max-width: 100%;
    }
    .contents {
        max-width: 90%;
        margin: 15px auto;
    }
    .textoSeccion3 {
        padding: 50px 30px;
        max-width: 100%;
    }
    .seccion5 {
        background: url(../img/bgSeccion5.png) center center;
        background-attachment: scroll;
        height: auto;
        padding: 50px 0 100px;
    }
    .cardServicio {
        height: auto;
    }
    .seccion6 {
        background: url(../img/bgSeccion6.png);
        background-position-x: 30%;
        background-repeat: no-repeat;
        background-size: cover;
        height: 100vh;
        margin-top: -100px;
        background-blend-mode: multiply;
        background-color: rgba(0,0,0,0.5);
        padding: 10px;
    }
    .seccion6 h2 {
        color: white;
        font-size: 2.5em;
        font-weight: 800;
    }
    .seccion6 p {
        color: white;
    }
    .maxWidth80 {
        max-width: 100%;
    }
    .topSeccion6 {
        margin-top: 0%;
    }
    .bgBrush {
        background: url(../img/bgBrush.png) center;
        background-size: cover;
        margin-top: -150px;
        height: 150px;
        position: relative;
    }
    .seccion7 {
        background: url(../img/bgSeccion7.png) top;
        background-size: cover;
        background-repeat: no-repeat;
        padding: 0px 0;
    }
    .textoSeccion7 {
        font-weight: 600;
        max-width: 70%;
        margin: 50px auto;
    }
    .maxWidth60 {
        max-width: 100%;
        margin: 0 auto;
    }    
    .rowBoletin {
        max-width: 90%;
        margin: 0 auto;
    }
    footer {
        background: url(../img/bgFooter.png) top;
        background-size: cover;
        background-repeat: no-repeat;
        color: white;
        font-size: 1.2em;
        font-weight: 300;
        margin-top: -150px;
        padding: 200px 0;
    }
    .iconoRedes img {
        width: 40px;
        margin-right: 30px;
        margin-top: 30px;
    }
    .navbar-nav {
        width: 100%;
    }   
    .menuAssisTerra ul {
        text-align: center;
    } 
  }

  .error-message {
    color: red; /* Color rojo para el texto de error */
    font-size: 14px; /* Tamaño de fuente */
    margin-top: 5px; /* Espacio entre el campo de entrada y el mensaje de error */
    display: block; /* Asegura que el mensaje se muestre como bloque para ocupar todo el ancho disponible */
  }

  @media (min-width: 640px) and (max-width: 1280px) {

  }